Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Мультимедия, OpenGL/DirectX > Где логика?


Автор: bosscs 22.6.2013, 22:52
Объясните пожалуйста, у меня видимо что-то не так с логикой.
Код

            glBegin(GL_TRIANGLE_STRIP);
            for(i; i <= degree; i++)
            {
                float 
                sunX=-200/2*cos(i*M_PI/180),
                sunZ=200/2*sin(i*M_PI/180);

                    glVertex3f(0, 0, 0);
                    glVertex3f(sunX, 0, sunZ);
            }
            glEnd();


Так все работает.
Код

            
            for(i; i <= degree; i++)
            {
                float 
                sunX=-200/2*cos(i*M_PI/180),
                sunZ=200/2*sin(i*M_PI/180);
                                glBegin(GL_TRIANGLE_STRIP);
                    glVertex3f(0, 0, 0);
                    glVertex3f(sunX, 0, sunZ);
                glEnd();
            }
            


Так vertex'ов нет. Не выводятся совсем.
Почему glBegin(GL_TRIANGLE_STRIP) и glEnd() должны быть не в цикле?

Мне нужно в этом же цикле выполнить другой код для вывода текста:
Код

    glPushAttrib(GL_LIST_BIT);
    glListBase(1000);
    glCallLists(strlen(text), GL_UNSIGNED_BYTE, text);
    glPopAttrib();


Но если написать ее между glBegin(GL_TRIANGLE_STRIP); и glEnd(); - он не работает.
А написать его за этим gl-началом и концом я не могу, так как это будет не внутри цикла. 

Автор: volatile 23.6.2013, 00:04
Цитата(bosscs @  22.6.2013,  22:52 Найти цитируемый пост)
                                glBegin(GL_TRIANGLE_STRIP);
                    glVertex3f(0, 0, 0);
                    glVertex3f(sunX, 0, sunZ);
                glEnd();
            }
Так vertex'ов нет

Чтобы вывести треугольник сколько точек нужно? 
Вы, например, сможете по двум точкам нарисовать треугольник?
Вот и OpenGL тоже не может...
 smile 


Автор: bosscs 23.6.2013, 00:20
Низкий вам поклон.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)