I know that a lot of you don’t like the idea of Rendering Thread after you had done stuff with AWT, but I have been doing some thinking and figured out that I could probably increase the OVERALL performance by implementing a rendering thread.
As far as I understand, Sun has put a lot of time into the threads and the VM can JIT optimize them pretty well. I know that to most of you this sounds like taking back a step, but the truth is, there is no point of letting the computer render over 100 fps(or insert your own preferance there). This would leave a lot room for the AI and physics to take place, which actually improve the game play a lot. I mean ragdoll physics, everybody loves ragdoll. Besides the real truth about FPS is that you can brag on interweb boards about your coooooool engine.
Now another point is that with LWJGL you don’t have the retard threads running(argh AWT-brainmelt-event-theincredibleCoffeeMachine thread) behind you slowing you down.
Since the static void main is one thread itself(the vm thread) and it could work as your rendering thread, you could put AI and game loop into another thread and then give that thread the time left by the rendering thread.
Now the rendering thread would be left with all the graphics wise important things, such as physics, camera, culling, lodding and finally rendering. This all comes from the fact that tight loops are simply not the best ways to do games, I mean they are great if you want to show off your FPS, but when you have complex game events running behind you it is an overkill and results in very uncontrollable performance.
You could this without rendering thread. Just an idea. Can you list any pros or cons that go with the idea? How about LWJGL, how thread (un)safe is it? I know for the fact that Cas (sarcasm)absolutely loves threads(sarcasm), so that is probaly the main reason why LWJGL rox with threads.
