Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Несколько текстур на цилиндр OpenGL [D5, WinXP]


Гарри Поттер ©   (2004-03-03 17:48:00) 

Как натянуть одну текстуру на цилиндр я знаю:
glBindTexture(GL_TEXTURE_2D, tex_1 );
gluQuadricTexture (quadObj, TRUE);
gluCylinder (quadObj, {св.цилиндра});
А как мне одеть на цилиндр 3 текстуры? Есть 3 отдельных тектуры их надо натянуть на цилиндр, думаю надо указать координаты каждой, но у Краснова нет примера как это сделать, а сам не могу разобраться. Помогите, дайте пример, ПЛЗ,


Гарри Поттер   (2004-03-05 17:38:00) [1]

Это немного не то..
Как мне уже объяснили, GLU совершенно ничего НЕ знает про мультитекстурирование, то нужно отрендерить несколько текстур в одну текстуру и нанести стандартным способом. Я решил делать так. Примерно: Тектура - это массив пикселей, три текстуры - три массива, если эти три массива объединить, получу одну текстуру которую и буду одевать на цилиндр стандартно.

tex:=ttexture.Load(tex_logo,'images/logo.jpg');
glBindTexture(GL_TEXTURE_2D, tex.ID);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
gluBuild2DMipmaps(GL_TEXTURE_2D, 3, tex.width, tex.height, GL_RGB, GL_UNSIGNED_BYTE, tex.pixels);

Вот если оперировать с tex.pixels , я смогу сделать как задумал? Если я не прав поправьте. И нехочется изобретать велосипед, может кто-то уже делает подобное, дайте примерчик?


ProvAd   (2004-03-05 13:21:00) [2]

http://www.gamedev.ru/articles/read.shtml?id=20107


Гарри Поттер   (2004-03-04 10:16:00) [3]

Ап.
Помогите, дайте кто-нить пример как разместить 3 текстуры на цилиндре.


Наверх

Титульная страница Поиск, карта сайта Написать письмо