Rev
- 4 Devlogs
- 16 Total hours
A 2D physics engine
A 2D physics engine
I’ve been working on multithreading and general optimizations. I use OMP for it, it makes multihreading much easier however I still needed to make some changes. I split away everything rendering related from physics and lighting updates. I am using OMP as well because CA is much more of a problem of throughput than one of on demand updates. As you update millions of pixels every frame and don’t need to care about splitting physics and sound. However in the future I will ideally have a combination of both. Let’s say 4 threads manually controlled for sound, enemy ai, physics so that they can be responsive while CA uses 8 threads for pure throughput. Please keep in mind light updates are not done every frame, so it being 39157 us doesn’t mean it actually runs at sub 60 fps. One other thing I improved as well is support for larger world. You can have any size you want as long as it is smaller than the 32 bit integer limit.
In the meantime, I’ve worked on optimizing the project. I am trying to implement a more traditional physics solver but I am tired of rigid bodies constantly failing. So I am shipping it as it is in a bit. I will come back and work on it in the future as I still want to play around with it
I’ve been working on Rev, I have implemented simple lighting, and improved the code structure. The world size can be edited however it’s still tied to the window size. Something I plan on changing. I want to support large worlds. Have a wonderful day
I’ve been working on a physics engine. I’ve implemented basic CA behavior along with chunking and dirty chunks and different cell behaviors and rules like gases, liquids, static objects, dissolving. Alongside basic terrain gen.