Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.09.04;
Скачать: CL | DM;

Вниз

OGL - Again Arrays   Найти похожие ветки 

 
grouzd[E]v ©   (2005-05-11 15:36) [0]

Вы уж конечно извините, но я выношу свой неразрешенный вопрос в отдельную тему из топика Lists vs. Arrays.
В OGL есть такая функция glEnableClientState, которая позволяет рисовать сразу массивом. Так вот: объясните дураку как правильно ей пользоваться (хотя бы для вершин)


 
petya-kurochkin ©   (2005-05-11 21:59) [1]

Ладно...
Во - первых: команда glEnableClientState, не может рисовать массивом, она лишь включает такой режим рисования.
Ну а во - вторых: эта команда расширение OpenGL и его может у тебя не быть.
И в третьих: Вот описание:(для тех как ты себя описал, шучу, шучу:))
Сначала создаешь двухмерны массив вершин(Можно так же и цветов);
К примеру:
Vershini: array[0..3,0..2] of GLFloat;

Двумерный он вот почему: [0..3] - это количество точек в данном случае их 4(0,1,2,3), а [0..2] - это означает, то что вершины обозначаются с помощью трёх координат [x,y,z], можно так же написать [0..1] тогда вершины будут обозначаться с помощью 2 - ух координат[x,y].
Потом ппишешь:
glVertexPointer(3,GLFloat,0,@Vershini);
Сдесь в общем то всё понятно, но поясню всё равно:
Первый аргумент: цифра 3 обозначает количество координат для определения точки(В нашем случае 3 это x,y,z, можно ещё и просто x,y, тогда я будет = 0).
Второй параметр обозначает тип чисел, который используется для определения координат.
Третий параметр: Сам не знаю(Пусть тогда лучше будет 0)ж
Четвёртый собственно указатель но массив вершин.
Дальше пишем:
glEnableClientState(GL_VERTEX_ARRAY)//Собственно включение самого режиа:)
Ну я думаю тут пояснений не требуется=-)
Далее:
glDrawArrays(GL_POLYGON,0,4)//Рисование
Тут вот что:
1 - ый параметр: Любое значение, которое ты можешь применит для GLBegin
2 - ой параметр: С какого элемента массива мы начинаем рисовать.
3 - ий параметр: Сколько элементов рисовать(В нашем случае 4 - е)
Далее всё отключаем:
glDisableClientState(GL_VERTEX_ARRAY);
Вроде всё должно работать.
Вот и всё. Если что спрашивай.



Страницы: 1 вся ветка

Текущий архив: 2005.09.04;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.049 c
14-1123724503
inew
2005-08-11 05:41
2005.09.04
Вопрос по теории СУБД.


2-1093966312
Mihass
2004-08-31 19:31
2005.09.04
Нужна Помощь в разработке программы


4-1121430528
JohnSmith
2005-07-15 16:28
2005.09.04
Работа с Mutex


9-1115578163
Qwertyk
2005-05-08 22:49
2005.09.04
Как описать карту


8-1113403006
Unknown user
2005-04-13 18:36
2005.09.04
Разрешение картинки