manschloemark

About Me

My name is Mark and this is my site. I have an A.S. in C.S. from Brookdale CC and I'm currently studying at Rutgers University.

Skills

Languages (ordered by experience)

  • Python
  • JavaScript
  • Bash scripting
  • C/C++
  • Java

Software / Technology

  • Linux
  • Git & GitHub
  • HTML & CSS
  • SQL (MySQL & SQLite)
  • Windows

Projects

I have a lot of personal projects but I haven't had the time to include all of them on this page.
If you're interested, more of them can be found on my github.

Glitch Art Tools

View Repo

Various python scripts for creating glitch art images.
I also created a GUI using Qt which makes it easy to experiment.

Features

Pixel Sorting
I wanted to learn more about Python generators so I wrote a pixel sorting script using nothing but generators to iterate through an image's pixels. It made for a fun project and the results can be pretty neat.
Swizzling
I don't know if swizzling is the proper term, but this feature basically lets you reroute the bands of an RGB image. Say you want to map red pixels to blue lights, and blue to red. It's a simple glitch that can make for cool color swaps.
Line Offsets
You can wrap an image around the edges by a constant amount or make it wavy by using sine/cosine to move lines.
Qt GUI
I used PySide to make a GUI for these tools. I wrote some custom widgets for viewing and editing the images.
Rene Magritte's painting \
Rene Magritte's work 'The Banquet' which I use to demonstrate the program's features
The Banquet with a pixelsort applied to it.
A diagonal pixel sort applied to the image
The banquet with the green and blue channels swapped.
The green and blue channels swapped
The Banquet with lines offset by using the sine function.
Making the image wavy by offsetting lines by a trig function
The Banquet with lines offset faded on top of the original image
A wave-like offset applied with a ghosting effect

Weather ATM

View Site View Repo

As part of The Odin Project's curriculum I made a web page that uses the OpenWeatherMap Weather API to fetch the weather of any location you enter.


Ray Tracer

View Repo

I read Peter Shirley's Ray Tracing in One Weekend book series and wrote along with his examples.
After finishing the books I added some new features on my own, such as parallelization, triangle rendering, command-line argument parsing, and textures.
Ray Tracing is one of the most interesting things I've learned. How cool is it that you can draw imaginary scenes in 3D on a 2D screen with the math you learn in high school? Note: this project was made in Linux and has a build.sh script to make compiling it more convenient. I don't think it will work in other OSes at the moment.

Personal Additions

  • Parallelized the program to significantly reduce render times
  • Command-line argument parsing so I could change settings without recompiling
  • Triangle rendering using the Möller Trumbore algorithm
  • Added various textures playing around with math and Perlin noise
A demo of spheres, triangles, rectangles, and rectangular prisms in various textures and materials.
A demo trying to fit all of the shapes, textures, and materials together
An example of a texture I made, in 4 different scales.
A texture I made with Perlin noise and trig functions, at 4 different scales
A rendered scene of our solar system
Our solar system rendered with my program, not quite to scale