Baby snatching lumberjacks, education and more!
Education and Misery (from the cold)
This week has been a battle of school work and an infuriating cold. At least the the school project is more or less done now. Only a presentation and a written report left, wish me luck!
The weekend has been smacked by awesome game jam action! Jurgen the Baby Snatcher (the title of our jam) is about escaping a baby snatching heist by sliding down the snowy mountain. Don’t lose the babies on the way though! I’ve mainly been doing level design and 3D-graphics.
Finishing schoolwork, pitch preparations, and project planning. Stay tuned!
This week I have only been working on school related things. I am animating a stop-motion styled character in 3D for a course I am currently attending, which is very interesting.
In order to create an illusion that the character is animated in stop-motion and not in 3D, besides from making it look like a clay figure, I added some minor irregularities to the character’s movement curves. The goal was for this to give the viewer/player the impression that each frame in the animation has been modelled by hand, and not calculated by a computer. I also exported the animation in 12 frames per second, which creates a contrast to the higher framerate rendered in the game engine.
That’s all from me, was going to talk about UI more this week but some other things came up.
Academic assignments ahoy!
Unfortunately the academic life style of a future rock star has (finally?) caught up, and I couldn’t keep ignoring the assignments. But fret not! It was insightful and stupid fun!
PS. I apologize for the lack of images, unfortunately at the time of writing I don’t have access to any images nor my programs.
For my physics course I have been implementing 2D ragdolls using Verlet integration. It’s nothing revolutionary but was incredibly fun to make! There is something about broken physics and flinging around innocent stick-figures that is sort of therapeutic in it’s own fucked up kind of way. Of course since it’s academic work, it can’t all be fun, and I had to follow up my programming session by writing a paper on the assignment.
Wowser, here is the real treat! The A.I course has been incredible fun this semester. I only have a few assignments left (and a huge report). I spent my weekend finishing up a level generator based on Wasteland Kings by Vlambeer using evolutionary techniques to breed and mutate levels with each other to get the crème de la crème of levels. It was insanely fun to make, although difficult to structure the algorithm in such a way that the levels could produce offspring that mimics the layout of the level based on both parents.
In the end I ended up doing a form of action stream implementation which could be spliced. The implementation uses almost 0 heap allocations and is packed tightly in stack memory for lightning fast iteration. I was surprised in the end by how fast it was to generate a level (using a population of 100, genome length of 300 and about 25~ generations of breeding and mutating took roughly 0.8 seconds). Needless to say, cache is king.
More A.I using artificial neural networks (or ANN for short!)
With a ton of schoolwork on my back I haven’t worked very actively on games this week, here’s a cool song I made for our game jam this week though!
I have not been working on a whole lot of Flamebait related shenannigans apart from Jurgen the Baby Snatcher game jam this weekend. During the jam I worked on the environment assets, the death chopper, and a sled (without the babies). Because of time constraints I also did the texturing on Jurgen.
The deadline for the course assignment is approaching and the environment has been progressing nicely. Once it is done I will write more in depth about some production aspects in Unreal Engine.
Game Jam Programming
I participated in the game jam doing programmy things. The features I worked on include but is not limited to:
– Track generation, including collider as well as mesh generation.
– Intense Helicopter physics
– Ultra realistic fall damage
Next week I’ll spend somewhat regretting I didn’t do the reports for school instead.