Wednesday, September 18, 2013

A Whole New World

Alas, I must admit defeat...

No, I must not,

Aye, I must...

That has been my thought process for the past month as new issues kept arising in my current game engine using the component-entity model. And alas, after realizing I was over-engineering, I admitted defeat.

But I had a secret weapon, and that was re-engineering my existing code to reflect a traditional OOP design architecture.

I know, not as intuitive, but I must digress, I need something to SHOW other than just a cube. And so far it has been successful. What I mean by this is that I have complete integrating a Shader class that is derived from and create any shader. I have a render-able Prop with colliders. And now I am fine tuning the collision system to implement Rigidbody Physics.

Within the month I will have a demo video showing as I still have to work on my projects with EverFire Studios, Inc.

Wish me luck and I promise I will have something to show you and a thorough technical post in regards to it.

And as always, enjoy game programming!

Sunday, September 8, 2013

Rendering Architecture Established

For a while I have spent time on getting my DirectX 10 rendering system architecture established, and I am successful in that end of my engine. However, in doing this implementation, I have realized a few setbacks for my system. One such, that I will be swiftly reengineering, is the loss of data as my Entities fall out of scope (this is because I only use pointers after their initialization to do the rest of the work). What also happens is that iterating through each component registered does not match components correctly with 'brother' components (components of the same entity). This causes wrong calculations and issues within the system that are completely unacceptable.

Now, the re-engineering I plan on doing is creating hash values for each Entity within the system, use an Entity Manager, and correctly mapping components to their respective Entities. This will also make debugging entities simpler as that has been and issue.

Now, for the picture proof of my renderer actually working: