Hi everyone, I am working for a simple gl program. The program create a thread to watch a directory, if one shader changed, the program will load it then render scene with it. In my current implemention the process owns 2 threads, so the gl thread must to wait until the others thread set event, then it will render scene again, so the scene seems like dead, the overlapped part can’t be refresh. So what can I do ?
I have a question, and I dont open another thread. But do all Opengl’s calls must be in main thread? Can I use the second thread for all Opengl’s calls? The main thread runs also the dispatch of window’s messages, the second not.
All gl calls MUST be from thread which have wglMakeCurrent(dc,rc) call.
It is perfectly legal to have main thread with Windows message loop and another thread which create gl context make it current and call gl functions. In case of resize main window you “notify” render thread about that and in next render loop update your viewport.