Making a video game

2008/03/10 - games

March 10th 2008

Wall collisions are now working nicely. Only the walls that are in the same quadrant are checked for collisions. But now I am increasingly disappointed with progress on my other world entities like models and landscapes. I am considering implementing some sort of cheap 3d, almost like a 5 sided box made up of images. I can then stretch each image based on how far from the view center it is.

TODO:

Implement new 3d methods for rotation on any axis and cheap topdown models.

Finished:

Implemented recording binary format serialized files and playing them back in attract mode ( very fast! finally )
Decided that my projection screen for a 3d effect needed modifcation ( removed it temporarily for dev purposes )

My first game

March 16th 2008

I have finally implemented 3D in my game. The perspective finally looks perfect, and I can finally start creating some 3D models for the entities. My plan for the player entity for example is to find some simple sides that connect like the shoulders and the head, or the waist and the chest, an make them separate tiny images that connect in game. So when the player rotates or walks each little picture with move accordingly. Sound be pretty simple graphics, I can't imagine an entity taking any more then 12 pieces.

My main concern is speed. I am not sure if it is the way I am implementing the 3D library, or if it is Slagcore (the language and game engine it is being written in). I was told that matrix manipulation could be built into the native layer, so maybe in the future I won't have to worry about this problem. Before I was calculating 1 point for every 'tile' on screen at a time. Probably about 12x12 so 144 calculations 60 times per second. It seems like a lot but they are very simple calculations, multiplication and addition. With that many calculations it was lagging a bit.

Here you can seen the perspective with the debug lines:

mfg2

TODO:

Implement some 3D models
Interaction between enemies and other entities with the walls
Create a 2 dimensional array for dead enemies so we only draw the ones that can be seen

Finished:

Implementing 3D in the view controller

Update 2019 - Some other engineers in the class ahead of me were making a video arcade box, this is probably where a lot of my inspiration came from. It was very similar to this arcade machine below.

Arcade box