Hi, I'm Janelle

I'm a Computer Scientist with a focus on game development and visual computing

About Me

Hi, my name is Janelle Pfeifer, and I'm 24 years old. I have a bachelor's degree in Computer Science and a master’s degree in Visual Computing and Games Technology. I enjoy developing useful tools and bringing video game worlds to life.
As early as my bachelor's degree, I decided to specialize in visual computing because I was looking for something that would combine my creativity and love of art with my talent for computer science. The visual medium brings me joy, and especially the creation of computer games is really fun. With the eyes of a computer scientist, I like to look for an elegant way to implement whichever project I'm working on. I have experience in the programming languages: Python, C#, C++, Java and most recently Lua, which I learned for my Master's thesis.
With my studies finished, I am now looking to enter the world of game development.

Project Portfolio

A Portal System with support for Particles

  • Unity 3D
  • C#
  • 3D math
  • Solo-Project

I am currently working on a teleportation system for Unity 3D and planing on publishing it as a Unity package. I initially created the teleportation system for a game where particle effects - fire magic - needed to be teleported through portals. My goal is to make the teleportation system flexible, robust and easy to use. Flexibility is needed to accommodate the needs of different game designs, and I'm making my system easy to use with custom editor scripts.

Beatmania

  • Unity 3D
  • C#
  • Team-Project

Beatmania is a rhythm based 2D platformer with combat elements. I worked on this project in a group of three people. My main responsibilities were programming and 2D art assets. To emphasize the importance of the rhythm, the actions of NPCs coincide with it. Additionally, there are animated plants in the background, swaying with the rhythm of the game. I set up an Observer Pattern to inform every 'Vibing Entity' about a change in beat. Each 'Vibing Entity' then adjusts the speed and start of their animation loops, to suit the new rhythm. Leveraging Unity's animation system allowed me to reduce the workload and improve the game's performance. Beyond that I implemented various gameplay elements like NPC behavior, moving platforms, a checkpoint system, item collection and a parallax background.

Shadow Mapping

  • OpenGL
  • C++
  • Solo-Project

As homework for a programming course, I implemented shadow mapping in OpenGL with C++. Two Shaders (DepthShaderLightSpaceTransform and DepthShaderDepthToTexture) render a DepthMap, from the light source's point of view. With this information, two more Shaders (ShadowMappingVertex and ShadowMappingFragment) render the objects in the scene from the camera's point of view. The DepthMap is used to calculate where the shadows should fall.

Master Thesis: A Payday 2 Mod

  • Lua and Python
  • Solo-Project

My Master thesis posed the question of how visual, auditory and haptic feedback could simulate the pain a virtual avatar would be feeling, without causing any real pain for the player. The goal is to enhance the game experience. I modified the first-person shooter Payday 2, to change its visual and auditory damage feedback. Beyond that, I added haptic feedback through a haptic vest with integrated vibration actuators, as well as cold thermal feedback with Peltier devices.

Summoner Tracker: A tool for League of Legends

  • Python
  • Multithreading
  • Solo-Project

As a project for fun, I made an overlay application that can be used to track long cooldown spells in League of Legends. This project uses multithreading with shared resources to display a UI while counting down timers in the background. Both the UI and the count-down thread are able to change the state of a spell - it's on cooldown or not. The access to the shared resource is managed by blocking the threads. I also put a lot of effort into designing an intuitive user interface, as well as making the installation and update process user-friendly.

Contact Me

Send me an Email at janelle.pfeifer@gmail.com

Check out my GitHub

Find me on LinkedIn