Allegro.cc - Online Community

Allegro.cc Forums » Game Design & Concepts » Where to get Fellow Developers.... ?

This thread is locked; no one can reply to it. rss feed Print
Where to get Fellow Developers.... ?
Thinkal VB
Member #16,859
May 2018

Hai, My Game Engine along with the game is progressing its development. My entire work till date is in Git and wonders how can I get more peoples to work with it?
How do you evaluate my coding ? is it bad, or not futuristic or buggy - please evaluate and let me know your opinions so I can improve.
https://github.com/ThinkalVB/NearEarth

Edgar Reynaldo
Major Reynaldo
May 2007
avatar

Thinkal VB
Member #16,859
May 2018

Thank you, Edgar Reynaldo for your valuable instructions and suggestion,

I want to run the Rendering engine Independently (for performance). The main thread shouldn't proceed unless all the assets are loaded into the memory by the rendering engine. Because other sub-classes will take references to these loaded resources and will break due to null pointer exception (if not loaded)- hence I implemented a blocking call. Need to change it?
I tried to load bitmaps using other threads which didn't call al_init() .... and other such functions in the https://github.com/ThinkalVB/NearEarth/blob/master/RenderingEngine/RenderingEngine.cpp#L29-L86 and it failed, hence i had to fall back to this desighn paradigrim.
Keep it coming ...........

Edgar Reynaldo
Major Reynaldo
May 2007
avatar

It's a blocking call that is waiting on the thread it started to finish, but it doesn't do anything else, so there's no point even starting a thread. You might as well have called setupObjectRenderer from main.

I tried to load bitmaps using other threads which didn't call al_init()

You can load images and resources on any thread you want. The problem is they will be memory bitmaps if they are not loaded on the same thread that created the display. In that case, you have to call al_convert_memory_bitmaps();.

Thinkal VB said:

The main thread shouldn't proceed unless all the assets are loaded into the memory by the rendering engine. Because other sub-classes will take references to these loaded resources and will break due to null pointer exception (if not loaded)- hence I implemented a blocking call. Need to change it?

You're blocking on the wrong thing then. Block on an assetsLoaded flag, not the keepRendering flag. And you also need a way to detect whether or not they loaded successfully.

Thinkal VB
Member #16,859
May 2018

Thank you Edgar Reynaldo, for your replay

Actually, I didn't want to make another bool variable to keep track of the status - for whether the asset is loaded or not - hence I used the same keepRendering flag for the same purpose since as soon as the asset loading is complete the rendering engine starts.

If the asset loading fails a detailed report will be generated inside the EngineLog.log file describing it. (AssetLoader class deals with the error reporting)

I just wanted to automate the starting of the rendering engine without any interference from outside, that's why I only exposed startRendering() and stopRendering() in the public scope of the RenderingEngine class.

Also, a lot of changes were made in the RenderingEngine Project. Tomorrow I am planning to add some terrain details to the RenderingEngine project. I am thinking of procedural generation - the land is plain like a paper (i meant snow, sand, muddy, hard ....(a combination of these)). Please leave your insight into this idea.

I am planning to play with the RenderingEngine for this month - test it, make it better before moving to network part(next month).

Go to: