When to use GameTaskQueueManager?


Is there any thumb rule when exactly to use GameTaskQueueManager within Swing applications?

For example, do I have to use GameTaskQueueManager when I write

CameraNode cameraNode = new CameraNode();



or are there special functions which MUST be called within the GameTaskQueueManager queue and other which need not. Is there a list?



You always have to use GameTaskQueueManager when you are accessing objects that the GL-Thread uses and you are on another thread. As explained in the last thread, the reason for the Queue is the threads. In the wiki there is a (not complete) list of some calls that definitely have to be made from the OpenGL thread here. Some other stuff may even work when you access it concurrently (like vectors) but they might crash or produce errors if the concurrent access is too frequent. Things like loading models etc. can be done on another thread without problems, until they are added to the scene.