glclearcolor



Gluttimerfunc

Автор Ѐагим Рагимов задал вопрос в разделе Другие языки и технологии

Вопрос по С++ OpenGL и получил лучший ответ

Ответ от Ra[гуру]
> Да что за бред не копируется текст! Чтобы код не протухал, его надо публиковать на сайте pastebin.com, а сюда вместе с вопросом ссылку на pastebin. > когда я прописываю (500, Timer, 0) не работает, любое значение меньше 1000 не работает. А вы попробуйте нужное время срабатывания таймера прописывать не только в функции main, но и в функции Timer(): void Timer(int) {     switch(Npr)     {         case 1: krd2+=20.0;         break;         case 2: krd2-=20.0;         break;         case 3: krd1-=20.0;         break;         case 4: krd1+=20.0;         break;     }     if (krd1>199||krd1<-199||krd2>199||krd2<-199)     {         dl=1;         krd1=-20.0, krd2=-20.0;         score-=100;     }     glutTimerFunc(500, Timer, 0);     Draw(); } и все должно работать. А лучше определите константу для значения таймера и используйте ее в обеих функциях > Александр > ничего не понял > Timer будет себя передавать в вызов функции glutTimerFunc, которая будет опять же дёргать таймер, который вызовет функцию glutTimerFunc, которая будет опять же дёргать таймер.. . Да, так и есть. Там таймеры однократные (срабатывают только один раз) , и чтобы его опять запустить, надо снова вызвать glutTimerFunc(). Это можно сделать либо в самой функции-обработчике таймера, а можно где-нибудь в другом месте. Получается вот такая псевдорекурсия, которая на самом деле рекурсией не является.

Ответ от Александр[гуру]
ничего не понял Timer будет себя передавать в вызов функции glutTimerFunc, которая будет опять же дёргать таймер, который вызовет функцию glutTimerFunc, которая будет опять же дёргать таймер, который вызовет функцию glutTimerFunc, которая будет о

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: Вопрос по С++ OpenGL
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*