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

Вниз

VertexArray и с чем его едят?   Найти похожие ветки 

 
Zak3D[@Tm] ©   (2005-03-10 16:44) [0]

VertexArray - я слышал, что с помощью него можно без особых потерь выводить большие числа объектов. Может кто работал с этим и поможет?...
Меня в частности интересует 2Д и OpenGL.


 
NE_Parovoz   (2005-03-10 19:58) [1]

http://www.progz.ru/articles.php?view=60
2.7 Вершинные массивы


 
Zak3D[@Tm] ©   (2005-03-11 08:29) [2]

ммм... хорошая сатья, но почему-то длефи не знает таких ф-ыий : (. Она даже не может подключить вертексный массив - glEnableClientState () протсо пишет такой ф-ции нет и всё : (.
В чем моя ошибка?


 
Afon   (2005-03-11 10:10) [3]

Есть ли где-нибудь примеры по данной теме?


 
XProger ©   (2005-03-11 20:57) [4]

Zak3D[@Tm], у дельфи заголовки старой OpenGL! Качай начиная с версии 1.2 :)

P.S.
По не понятным причинам у меня существенного прироста к фпс на 1.5 млн полигонах с использованием вершенных буферов не наблюдается... :) (GF FX 5200 128 mb)

Но ещё один плюс этой лабуды в том, что ты можешь забиндить этот буфер вертексов и вершин в памяти видюхи и уже не передавать каждый раз гигантское кол-во байт меша, что существенно снизит нагрузку на шину


 
Zak3D[@Tm] ©   (2005-03-11 21:20) [5]

XProger
Я разобрался, как использовать Вертексные массивы для полигонов, но теперь не могу наложить на них текстуры : (. Как задать их координаты?
1.5 миллионов объектов!!?!?!?!?! Как ты это делаешь?


 
XProger ©   (2005-03-12 04:26) [6]

"1.5 миллионов объектов"
не объектов, а плигонов :)
Вот код с текстуркой:

type
TVector2D = record
 X, Y : single;
end;

TVector = record
 X, Y, Z : single;
end;

TPolyIdx = record
 v : array [0..2] of WORD;
end;

var
Vertex : array of TVector;
Poly   : array of TPolyIdx;
Normal : array of TVector;
TexCoord : array of TVector2D;
...
// биндим тектуру
glEnableClientState(GL_VERTEX_ARRAY);
glEnableClientState(GL_NORMAL_ARRAY);
glEnableClientState(GL_TEXTURE_COORD_ARRAY);

glVertexPointer(3, GL_FLOAT, 0, @Vertex[0]);
glNormalPointer(GL_FLOAT, 0, @Normal[0]);
glTexCoordPointer(2, GL_FLOAT, 0, @TexCoord[0]);

glDrawElements(GL_TRIANGLES, Length(Poly)*3, GL_UNSIGNED_SHORT, @Poly[0]);
glDisableClientState(GL_VERTEX_ARRAY);
glDisableClientState(GL_NORMAL_ARRAY);
glDisableClientState(GL_TEXTURE_COORD_ARRAY );


P.S.
Я глубоко сомневаюсь, что это пригодится в 2д, т.к. там мир не из полигонов в основном строится ;)


 
Zeqfreed ©   (2005-03-12 16:33) [7]

XProger ©   (12.03.05 4:26) [6]
Неужели из точек и линий? А может быть даже сплайнов...


 
Zak3D[@Tm] ©   (2005-03-12 17:15) [8]

XProger
Для того, что бы использовать эти команды я должен добавить описание прототипов эитих процедур, и тут возникает вопрос, как мне описать glDrawElements ?
И ещё Делфя говорит, что не знает GL_TEXTURE_COORD_ARRAY , а знает только :
GL_TEXTURE_COORD_ARRAY_EXT
GL_TEXTURE_COORD_ARRAY_SIZE_EXT
GL_TEXTURE_COORD_ARRAY_TYPE_EXT
GL_TEXTURE_COORD_ARRAY_STRIDE_EXT
GL_TEXTURE_COORD_ARRAY_COUNT_EXT
GL_TEXTURE_COORD_ARRAY_POINTER_EXT
-----------------------------------
Что делать?


 
XProger ©   (2005-03-12 20:55) [9]

Я же сказал хидеры OpenGL15.pas скачай и будет тебе счастье...
А суть "Неужели из точек и линий? А может быть даже сплайнов..." я так и не понял...


 
Zeqfreed ©   (2005-03-12 21:03) [10]

XProger ©   (12.03.05 20:55) [9]
Это относилось к разделу p.s. твоего поста [6]
Из твоих слов получается, что мир в 2д строится в основном из линий/точек/сплайнов, т.к. других примитивов, afaik, в стандартных граф. библиотеках не существует.


 
Zak3D[@Tm] ©   (2005-03-12 21:28) [11]

OpenGL15.pas нашёл, буду пробовать с ним...


 
XProger ©   (2005-03-13 00:26) [12]

По поводу моего P.S. в действительности ты же не будешь в 2д игре делать модели из 3000 полигонов? Достаточно двух с текстуркой :)
Вот это я и имел ввиду...


 
Zak3D[@Tm] ©   (2005-03-14 10:00) [13]

XProger
С тобой можно как-небудь в аське связаться?


 
XProger ©   (2005-03-15 02:10) [14]

мозя :)
199965550



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

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

Наверх




Память: 0.47 MB
Время: 0.087 c
3-1115524614
MickL
2005-05-08 07:56
2005.06.14
BLOB поле


14-1116788413
Qwertyk
2005-05-22 23:00
2005.06.14
Тотализаторы(попытка № 2 :) )


3-1115113838
kyn66
2005-05-03 13:50
2005.06.14
Как закрыть базу Access (mdb) ?


1-1117073077
jcrush
2005-05-26 06:04
2005.06.14
Шифрование по паролю, косяк с пробелами


3-1115211791
pavel_guzhanov
2005-05-04 17:03
2005.06.14
Как в базу данных поместить картинку?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский