Building up momentum again. Finally figured out the problem that was keeping me from scaling details up and down — the xml conversion function, which I was also using to pass particle info between threads, didn’t properly load scaling data. Dumb problem, and frustrating to solve, but that’s why you try to be careful about details like that on the first pass. With this, particle processing time is under the 17ms mark it needs to hit to update at 60fps — but I’m still not getting 60fps. It turns out that a lot of entity behavior processing, most notably that which is used for animation and inter-entity collisions, is really slow and inefficient. So that’s the next thing I’m going to tackle.
Also did some streaming today.