-
2D Metaballs Demo using Marching Squares
04 April 2022
Metaballs are organic looking blob like balls that merge and split
apart based on their distances from each other. They can be defined as a
single function or a summation of functions across the x and y plane. By
computing the contours, a very cool picture can be produced in real time
as shown below. However, computing the entirety of the function plane to
a high degree of precision is very expensive. To make it less expensive
and produce a good high quality contour marching squares can be
used. It samples 4 points of a function and interpolates where a
threshold value occurs to draw the outline. I was inspired by
Reducible’s video on how computers can draw weird shapes.
-
Interactive Encryption and Decryption using RSA
14 March 2022
I had a bit of inspiration recently with Fermat’s Attack on RSA and
decided to make an RSA demonstrator. It shows all the steps in
performing an RSA encryption using 2 known primes. It might be useful
during a CTF when trying to determine small RSA keys by hand. I’ll
eventually post a follow up for implementing that attack for small p
and q.
-
Interactive Breadth First Search in a Grid
20 December 2020
Breadth first search(BFS) is a very powerful and useful algorithm for
exploring graph like structures. A BFS searches it’s nearest neighbors first
before moving on. It’s main use is to find a path using
the fewest hops. Here we use it to explore a grid that can be modified
by a user. In this grid, we have verticies (the grid boxes), and edges
(the box north, south, east and west).
-
Lights Out Game
29 July 2020
Shown below is a lights out kind of game. Scores are not tracked or anything
it’s just something meant for fun. The goal is to get the board either completely
lit up or completely black. It inverts the color of whatever you click on and those directly adjacent squares. Those squares directly to the north, south, east and west.
-
Sine-Cosine Demo App
06 September 2016
I had to create a sine-cosine demonstrator for a class, this is that demo.