Skip to main content
GameDev.net gamedev.net

PRO Tired of ads? Read GameDev.net ad-free and help keep the community independent with GameDev Pro — $3/month.

Black Triangle

Black Triangle

JTippetts
JTippetts
/* Why you crying? */ · · 1 min read
2,017 2
Jay Barnson talks about a concept he refers to as a "Black Triangle": that stage in a game development cycle when you have accomplished a milestone of sorts that on the surface doesn't look like much, but which, underneath, represents a significant step towards making real progress. The "black triangle" being rendered on screen, after passing through the content creation pipeline and the game's scene management and rendering pipelines. I've achieved such a milestone:



It's not much, of course, but there it is. It's the first screen of a component-based game system built upon Lua and Ogre, featuring a third-person chase camera.

After my previous posts about the beauties of object composition, I've revisited a few of my core concepts. I've come to realize that component/entity type systems all try to implement a sub-set of features common to dynamically typed languages such as Lua. After writing the bare-bones of a object comp. framework in straight C++ using a central message passing framework, I have switched to a Lua-based system where objects are Lua tables populated with components, and all of the logic happens in Lua. Critical sub-systems such as the Ogre interface layer are C++, but the heart of the game is written in Lua.

The next step is to stress test it to determine a theoretical upper-limit to the number of entities allowed. Since Lua is an interpreted dynamically-typed language, there are performance consequences attendant with its use in such a central task.

Anyway, hopefully to update with more details and (of course) better screenies after the holidays have passed. Merry Christmas, folks.

Discussion

Loading comments...