CoalNova

Recent Posts

June 19, 2022

Manipulation

The next step in the process is terrain manipulation. This is a difficult one, not in theory, but in execution. It is not difficult to conceptualize iterating a kernel over a height grid. The issues that present themselves are that of performance. Currently, terrain normals are calculated at mesh generation, which means that for height adjustment, new terrain mesh must be generated for each adjustment to show. The data generated for the mesh is not saved in RAM, but is carted off to the GPU once completed. Thus, the data cannot be directly accessed to be adjusted. Several methods are possible to save processing time, with tradeoffs.

June 06, 2022

Ray

This week has been less productive than I’d like, but so it goes. Much time was spent on figuring out how to perform a raycast on terrain gemoetry from scratch.

June 06, 2022

Queries

Much of this week has been spent migrating over ideas and plans into the Trello board, cleaning up this this blog, and other such housecleaning duties. So instead, allow me to ramble for a bit about concepts and features. Many ideas I have had for the project lay on the chopping block, a few have already been stricken. Often times it’s easy to get lost in the “what might be”s of any such endeavor. I know what I’d like, but each and every one of us learns through life that it will never be so. Our eyes are too hungry, our imaginations too ungrounded, or worst of all, what we assume we want is not actually the case. Weeding out these oft-too-lofty desires is vital to completing any sizeable project.

May 29, 2022

CoalStar

Igniting a Star Welcome to the development web log for the CoalStar game engine. It is an engine which is purposed built towards open world gameplay. It is developed in C++ using the Simple-Direct Media Layer, GL Math, ZLIB, and GL Extension Wrangler libraries. CoalStar currently targets OpenGL 3.3 on Windows 10 and will (hopefully) become platform independant. The operational goal is to allow for larger than standard world sizes while maintaining a high level of precision. Additionally, the engine will allow for faster than normal travel through streamlining data’ loading and processing. Technically, it will handle instance batching of static meshes, batching and psuedo-atlasing of textures, multithreading support for loadspreading, LUA-based script management, and more. As I consider myself an amateur at C++ and at programming in general, the code will not initially made public to save myself shame and embarrassment. In the future, the engine may become opensource to allow for community input and possibly use by other individuals/organizations for their own projects.