Ava Engine: Update 3

I have been hard at work on Ava. I’m still following the OpenGL tutorials I found. I’m about half way through the lighting tutorials. I’ve implemented tons of new features and broken countless more! The 2D engine is completely messed up right now due to the sheer amount of shader modification I’m performing. On the bright side, 3D!!! I’ve also ported the sound engine from SDL_Mixer to FMOD. It gives more for file type support and 3D sound. I started work on the Quad Tree feature and I have it implemented, but it does not work at all. It needs to be fixed in many places, not sure what is wrong. I need text drawing and primitive drawing to draw debug info, and there is only so much you can do with std::cout and printf. Once I have more features, I will go back and make sure it works.

This first picture is a 3D test with textures. I have a camera class that the user can use to hide the mouse, keep it in the center of the screen and move based on where you are looking with WASD. Q and E are used for easy up and down movement. The cubes generated here were static and unmovable, so I worked on changing that with the next section.

Ava_3D_Texture

This second picture features a new 3D API for positioning cubes and setting their colors. The big cube rotates and the little white cube stays still. The rotations here use Quaternions. I’ve never used them before, so they were new to me. The math involved was vastly simplified thanks to GLM (OpenGL Mathematics) and I think I’ve implemented them correctly. The lighting here is bad in my opinion. I just have to remember that I’m only half way the lighting section. Lighting Maps are next on the list to learn.

Ava_3D_Light

Overall, this project is very fun. If I’m not on Fallout 4, I’m working on Ava. My school projects are on the back-burner but not in a bad way. I’m still getting A+s on my assignments, I’m just rushing them more than I’d like. Source Code for Ava will be available on my Bitbucket account when I get done with the lighting and model loading sections of the tutorials. I feel the engine and API will be more stable at that time. It will still be heavily modified as I update it, but it should be in a mostly working order. As always, I will post again when I have news!

Leave a Reply

%d bloggers like this: