Again, nothing interesting has been happening lately on the game engine front. I’ve spent this weekend implementing the necessary classes for doing frustum culling. For those who don’t know what that is, this will allow me to figure out which objects are actually within the camera’s frustum and only render those objects. This, however, does not take occlusion into account, so I could be looking at a wall and it will still return objects that are behind the wall. Solving that problem is another post for another time.
To summarize, I’m working towards getting a rendering pipeline properly integrated in my engine’s environment. I also have an improvement to make to my resource loading tasks. Currently, each task loads data from the disk and then processes it all in one go. One, I could potentially have tasks running in parallel trying to read from disk all at once. Unless I can guarantee that the user is running off an SSD, this is probably not wise. The optimization I wish to make is to split each resource loading task into a “read data from disk” task and a “process data” task. Using my thread pool system, I will ensure that the “read data from disk” tasks will only be processed one at a time.
So, that’s what I’m up to currently. I unfortunately don’t have anything interesting to show off. Once I complete the aforementioned changes, I will get to work on implementing a camera system. Until next time!