You're looking at a programmer!
I'm ready to do the work that needs to be done. From coding gameplay to implementing assets and doing VFX work, I'll make sure it gets into the game!

Company works
Streiff Studio Project
My first industry internship, and later my first industry job!
Timeframe
- 9 months, Nov-Aug 2022-2023
(employed last two months)
Company:
- Streiff Studio
Game engine
- UE 5
Team size
- 15, including Ann-Louise Jonsson (founder & CEO) and me.
Source control
- Subversion, and later Git.
Target platform
- PC
Status
- On hiatus due to lack of funding, but not canceled.
My Role
- Game Programmer
My contributions
• Building and programming the horse-riding system, my main responsibility. This includes:
- Horse movement and controls, speeding up, slowing down, jumping, turning and side-stepping.
- Horse & rider animation implementation, using a horse animation pack.
- Animation retargeting for both horse and rider meshes. I communicated with the 3D modeler how their meshes should be mapped to the animation pack skeleton in Blender for me to get the best retargeting results.
- Mounting the horse. The player can mount the horse from left, right, front or back with smooth animations and with a seamless character possession from rider to horse regardless if the horse is moving when mounting.
- Calling the horse. The player can whistle for the horse to come if it's far away.
- Hair physics on both horse and rider, using Unreal's Cloth Simulation System.
- Rider ducking sideways while riding the horse. The player can lean left or right while riding the horse to engage a stealth mode to avoid being spotted by enemies.
The horse-riding system took up around 75% of my time at Streiff Studio. The rest of my time was spent on other things which are specified below.
• Helping out with the enemy AI, this includes:
- Enemy AI behavior, specifically player detection with vision cone. The AI will slowly look in the player's direction when they're about the be detected. When the player is detected, the AI will whistle for the nearest horse. The AI will mount the horse when it has arrived regardless if it's still galloping.
- Enemy AI horse movement, pretty much a re-use of the Call Horse functionality when chasing the player. The enemy AI horses aim to move beside player during a chase. This allows the enemy riders to perform a sword attack (which I didn't work on).
• Shader work:
- Tree sway shader. No swaying at the trunk of the tree, more swaying further up the tree. Works with Nanite.
- Grass height blend shader. Grass meshes sink below the ground when close to a footpath in the world.
- Volumetric fog shader. Localized to any volume or applied as Niagara particles. Option in the shader to stick to Distance Field geometry, meaning that instead of the fog just filling a volume, the fog shader will specifically stick to any static meshes inside the volume, such as trees, rocks and the landscape.
• Project clean-up & version control:
- Cleaning up and organizing the entire Unreal project file structure on two occasions.
- My final contribution was migrating the entire project, with commit history, from their home computer Subversion repository to GitHub switching from SVN to Git in the process.
Wanna know more? Check out my work sample here:
Streiff Studio work sample PDF (opens a new window to a Google Drive PDF)
BanDan: Robot Rampage
A game developed, shipped and sold by the UF-företag Acrylic Games UF.
Info: Me and two fellow classmates started a UF-företag in our third year at Björknäsgymnasiet in Boden. We wanted to create a video game and sell it. We chose to make an endless 2D PvE wave-based arena brawler and named it BanDan: Robot Rampage. The 9 months that followed were oh so fun, yet challenging in a good way. Our selling price was 100kr and we sold the game for one week in May 2021 and managed to sell 15 copies during that week. After that, it was time to dismantle our UF-företag in accordance with the end of our studies at Björknäsgymnasiet.
Timeframe
- 9 months, Sept-May 2020-2021
Note: developed only on Fridays
Company
- Acrylic Games UF
Game engine
- GameMaker Studio 2
Team size
- 3, Me, Alfons Hedström & Oskar Modig
Source control
- Git with GitHub repository
Target platform:
- PC
Status
- Shipped. Sold. No further development planned.
- The UF-företag was dismantled in June 2021.
My Roles
- CEO
- 2nd programmer
My Contributions (CEO)
- Keeping contact with customers.
- Representing the UF-företag at events such as SM for Innovation of the Year and interviews.
- Keeping in touch with our advisor, Oskar Pettersson.
- Holding the team together, especially through lockdowns.
- Pitching the game.
- Company website & web shop management.
- Recording and directing an ad-video to help get more students for the very first year of the GameDev Program at Björknäsgymnasiet.
My Contributions (2nd programmer)
- Menus & HUD UI.
- Keyboard & controller button-mapping.
- All sound-implementation done by me.
- High Score save file.
- Intro animation.
- First time start up, special condition where you can only play the tutorial. The game writes to another save file when the tutorial is finished, so any other time the game is started other than the first time it won't be mandatory to play the tutorial anymore.
Wanna know more? Check out the full (100 page) company report here (in Swedish):
Acrylic Games UF Gymnasiearbete PDF (opens a new window to a Google Drive PDF)
Wanna play the game? Check it out on itch.io here:
School works
BREACHED
Timeframe
- 4 weeks, Sept-Oct 2024
School
- Futuregames Boden
Game engine
- UE 5
Team size
- 11, see credits on video or itch.io
Source control
- Perforce, and later Git
Target platform
- PC
Status
- No further development planned.
My Roles
- Audio implementer & Programming Assistance
My contributions
- All audio implementation was done by me, using FMOD for Unreal Engine. This includes the radio, ambience, all sound effects and dialogue voice overs. All audio was created by our sound guy, except the dialogue voices.
- Radio, I made a radio in FMOD. The player can change radio stations with the scroll wheel. All music there was made by our sound guy!
- Radio HUD. The text on the Radio HUD changes depending on what radio station the player listening to.
- VFX implementation, all of the explosions, bullet tracers, bullet ground hits, blood splatter, damage sparks and portals was implemented by me.
- Animation implementation for the player's mech, most of it. This includes movement, recoil, and melee attacks.
- Dialogue manager, handles playing the voice overs and subtitles for the dialogue.
- Compass HUD. The player can see what direction enemies are on the compass.
- Grenade launcher. I programmed the grenades to land where the player is aiming.
Wanna know more? I reflect on this project here:
BREACHED reflection (opens a new window to a Google document)
Wanna play the game? Check it out on itch.io here:
The Book Keeper
Timeframe
- 7 weeks, Apr-Jun 2024
School
- Futuregames Boden
Game engine
- UE 5
Team size
- 12, see credits on video or itch.io
Source control
- Perforce
Target platform
- PC
Status
- No further development planned.
My Roles
- Gameplay, Movement & Controls Programmer
My contributions
- Character capture functionality. You can catch different 2D book characters in this game. You can spawn these characters and control them once you've caught them in your book.
- Character spawning, complete with smooth a camera transition when possessing a new character.
- C++ UE enhanced input implementation.
- Troll character movement. Troll can be launched like a bowling ball. You can also turn the troll while he's rolling.
- Slime character movement. Slime has tank controls and can move along any surface, no matter the angle. The player can bounce on the Slime as either the Princess or the Troll.
- CameraBoom collision fix. I modified the camera behavior in this third person game so that the camera's spring arm only activates whenever the camera itself collides with something, instead of just activating whenever an object is in front of the camera.
- Magic book floating movement. The magic book follows the princess magically!
- Animation implementation. On the princess and the 2D book characters.
- Magic book VFX, Dust particles VFX, Floor mist VFX, Utilizing Unreal's Niagara system and Material editor.
Wanna know more? I reflect on this project here:
The Book Keeper reflection (opens a new window to a Google document)
Wanna play the game? Check it out on itch.io here:
Down The Hill
Timeframe
- 4 weeks, Jan-Feb 2024
School
- Futuregames Boden
Game engine
- Unity 2022
Team size
- 17, see credits on video or itch.io
Source control
- Perforce
Target platform
- Mobile
Status
- No further development planned.
My Role
- Vehicle programmer
My contributions
- Vehicle controls and physics-based movement.
- Vehicle customization system. Swap parts to your liking in the main menu. Worked closely with artists and created a template in Blender to ensure new vehicle parts would align seamlessly with my system in Unity.
- Vehicle damage system. Parts of the vehicle can start loosening and eventually detach upon impact.
- Tools for adjusting the vehicle's behavior, e.g. center of mass and steering speed.
- Tools for adjusting the damage behavior, e.g. the impact required to detach a part of the vehicle.
- Animation implementation.
- UI tweaking. Specifically to make sure the UI scaled well on different smartphones.
Wanna know more? I reflect on this project here:
Down The Hill reflection (opens a new window to a Google document)
Wanna play the game? Check it out on itch.io here:
The Rodent's Tale
Timeframe
- 3 weeks, Oct-Nov 2023
School
- Futuregames Boden
Game engine
- Unity 2022
Team size
- 11, see credits on video or itch.io
Source control
- Perforce
Target platform
- PC
Status
- No further development planned.
My Roles
- Lead programmer
- Perforce assistance
My contributions
- Setting up Perforce repo for the project.
- Showing entire team how to use Perforce with P4V and Unity.
- Helping team members with any errors they had with Perforce.
- Mentoring the two other programmers a little. Giving them some tips.
- Player movement with controller support.
- Player camera sway.
- Animation implementation. Rat player, Cat paw & Sword obstacles.
- Shooting cannonball physics object.
- Sound effects implementation using FMOD.
- Adaptive music & ambiance implementation using FMOD.
- Unity inspector tool for the adaptive music.
- Push & pull objects mechanic.
Wanna know more? I reflect on this project here:
The Rodent's Tale reflection (opens a new window to a Google document)
Wanna play the game? Check it out on itch.io here:
Reflection
(Gameplay video unavailable)
Description: Horror demo set in a museum during a hurricane storm. The player needs to avoid the person looking for them by hiding in the shadows or behind art exhibits. Navigate out of the museum to end the game.
Timeframe
- 8 weeks, Oct-Dec 2022
School
- Sunderby Folkhögskola
Game engine
- UE 5
Team size
- 7, Me, Alice Rydevik, Rasmus Rönnqvist
Joel Andersson, Konrad Heleander,
Dennis Eriksson & Taher Alzoubi.
Source control
- Subversion (SVN) connected to UE 5
Status
- No further development planned.
Context: This was the last game project at the Indie Game Dev Education at Sunderby Folkhögskola, the so called Magnum Opus project of the education. I only ended up participating in this project for the first 2 weeks, during pre-production. After that was when I started my internship at Streiff Studio. However, I wouldn't leave the Reflection team empty handed.
The story:
The project needed a detection system based on whether the player was standing inside a shadow or not. I took it upon myself to do research on this and found a blueprint framework "AdvancedLights" made by Christian Sparks AKA hippowombat on GitHub. It seemed like just the thing we needed, and it had an MIT licence so it was free to use when credited! After I did the initial testing on his work it was decided that I would do thorough testing, experimenting, debugging and import this system into our project.
When I felt I knew the ins and outs of how the system works and how to set it up, I decided to write a document outlining this and everything I knew. This document was meant for whoever in the team would end up working with this light detection system when the levels were finalized and populated with assets, since I would be on internship by then. I'm proud of this document, not only because I believe I did a good job writing it, but especially because it would end up salvaging the project in the final week.
Reflection had a very rocky production from what I heard from the team. A lot of time was spilled due to people being sick. Some folks got sick back-to-back! This meant the crucial stuff like art, sound and programming was delayed and didn't get the time to be iterated on. The team ended up in a situation where they didn't have a core gameplay feature - light detection - implemented into the levels during the final week. But my document came in handy for the team at that time, and they've told me that the project wouldn't have made it to MVP, gameplay wise, if it weren't for my work on this document.
So here it is, my contribution to Reflection:
Reflection Shadow Light Detection Documentation (opens a new window to a Google document)
Rödbergsfortet VR Experience
Timeframe
- 6 weeks, Apr-Jun 2022
School
- Sunderby Folkhögskola
Game engine
- Unity 2020
Team size
- 24, Entire class of Indie 2021 students in Boden
Source control
- Git with GitHub repository
Target platform:
- PC
Status
- No further development planned.
My Roles
- Head of Environment building
- Lead Asset importer & model overseer
- General 3D mesh and Texture artist
- Flexitarian
My Contributions
Context: I had 1 of 4 VR headsets available setup to my PC, the others were designated to programmers.
My 5 main contributions are as follows:
- Number 1: I did around 70% blockout of the agreed playable area, three sections of the inside of the fort. I made sure the scale in VR was accurate to the real-life fort.
- Number 2: I did around 70% of asset importing. Many artists in the team didn't know how to import their stuff into Unity so the pipeline became to upload them to the cloud and let me handle the importing.
- Number 3: Around 90% of asset placement in levels was done by me. I was the only person with a VR headset who could check all assets in VR to make sure they looked right. There was a lot of back and forth with the reference photos we took and communication with artists to fix small issues.
- Number 4: Optimizing textures for file size and performance in the engine came with the task of importing assets. In later stages of development, performance tweaks needed to be done to reduce motion sickness in VR, so I went ahead and set up Occlusion Culling as well as optimizing texture resolution on all assets to get a more pleasant experience.
- Number 5: I also created some meshes in Blender and textured a few team members meshes in Substance Painter 3D for the project, all of which can be viewed on my Sketchfab.
The Joy of Fishing
Timeframe
- 4 weeks, Dec-Jan 2021-2022
School
- Sunderby Folkhögskola
Game engine
- Unity 2021
Team size
- 5, Me, Erik Lindahl, Elias Wassberg,
Aaron Marklund & Rasmus Rönnqvist.
Source control
- Git with GitHub repository
Target platform:
- PC
Status
- No further development planned.
My Roles
- Design Lead
- UI programmer
My contributions
- Parallax backgrounds.
- HUD UI & Pause Menu.
- 1st iteration of Fishing Line code.
- Holding design meetings in pre-production, discussing with all team members about the game we wanted to make in deep detail.
- Setting up free-to-choose tasks for everyone.
Wanna play the game? Check it out on itch.io here:
Smaller Works
Procedural Snow technical test
Timeframe
- 2.5 weeks, Sept-Oct 2022
School
- Sunderby Folkhögskola
Game engine
- UE 5
Team size
- 2, Me & Andreas Zweifel
Source control
- Git with GitHub repository
Status
- No further development planned.

My contributions
- Procedural Snow with dynamic ground accumulation, growth and deformation.
- Procedural Snow for objects placed in world, without deformation.
- Horse, able to deform snow with hooves and knees in deeper snow.
- Falling snow particles.
- Dynamic Resolution Scaling.
Darklands, Level Design 3D assignment
Timeframe
- 1.5 weeks, Oct 2022
School
- Sunderby Folkhögskola
Game engine
- UE 5
Team size
- 2, Me & Erik Lindahl
Source control
- Git with GitHub repository
Status
- No further development planned.
My contributions
- Grab objects physics system, reminiscent of Half-life 2 & Portal.
-Tower with environmental storytelling and level design using said physics system.
Controller Vibration technical test
Timeframe
- 1 day, July 2022
Game engine
- UE 5
Team size
- 1, Me
Source control
- Git with GitHub repository
Status
- No further development planned.
My contributions
- C++ implementation of controller vibration.
You have reached the finish line!
If you have any questions, please inquire me on Discord or via Email.
My Discord:
chisanaotokonoko
My Email: