Название: GL засунуть в нить Отправлено: west от Ноябрь 16, 2008, 20:20 То что надо рисовать в ГПИ я знаю. А вот чего функции OpenGL'я по расчету каких-нибудь массивов в потоках валятся? Или весь Gl потоконебезопасный? Я в нем вообще не спец, так, докручиваю готовый код. Пытаюсь вот ускорить отделные моменты, или хоть GUI пользователя освободить во время расчета, фацетов, например. Подскажите, плз, потоки и GL как-то совместимы (настройки, например), или на будет заводить кучу дочерних процессов?
Название: Re: GL засунуть в нить Отправлено: Sergeich от Ноябрь 16, 2008, 21:27 А под какую платформу надо? если под Х, то и сами иксы потоконебезопасны, если не пользовать XInitThreads. Если под вынь, глянь сюды: http://support.microsoft.com/kb/128122
Название: Re: GL засунуть в нить Отправлено: west от Ноябрь 17, 2008, 11:49 Платформа Linux... А XInitThreads может помочь?
Название: Re: GL засунуть в нить Отправлено: Sergeich от Ноябрь 17, 2008, 15:03 А XInitThreads может помочь? Если ты юзаешь иксовые вызовы из разных потоков (в том числе GLX-вызовы), то просто должен ее использовать.Название: Re: GL засунуть в нить Отправлено: west от Ноябрь 17, 2008, 15:19 Сейчас я вызываю GLX функцию (gluScaleImage) в QThread нитке. Использовать XInitThreads для таких дел? А приложение от QApplication может остаться? Надо порыться по поводу XInitThreads, честно говоря...
Название: Re: GL засунуть в нить Отправлено: west от Ноябрь 17, 2008, 15:29 В man'е по XInitThreads() :
"This function must be the first Xlib function a multi-threaded program calls, and it must complete before any other Xlib call is made." - чего-то я не въехал, пишу, получается XInitThreads() в main() своего приложения, и все заработало? |