Форум: "Игры";
Текущий архив: 2005.08.28;
Скачать: [xml.tar.bz2];
ВнизНаложение текстуры на OGL - е Найти похожие ветки
← →
parovoZZ © (2005-04-14 09:37) [0]А чтобы наложить текстуру на полигон, его вершины обязательно должны быть нормированы (а также для текстуры)?
← →
Pa5ha (2005-04-14 12:25) [1]Нет. Модно просто отключить освещение ( glDisable(GL_LIGHTING) ) или: glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_DECAL); // цвет примитива не учитывается
← →
parovoZZ © (2005-04-14 12:31) [2]Не, имеется ввиду не нормаль, а координаты вершин. То есть я могу наложить текстуру на треугольник с рёбрами больше единицы?
← →
П7 (2005-04-14 17:44) [3]да, но тогда текстура растянется...
← →
parovoZZ © (2005-04-14 20:39) [4]Получается, что координаты вершин обязательно надо нормировать?
← →
П7 (2005-04-14 20:42) [5]зачем? не обязательно.
Например текстура имеет размеры 256 на 256, на квадрат, который мы выводим на экран имеет единичную длинну. При этом получаемые экранные размеры квадрата примерно равны 256 на 256. В итоге на экране у нас всё нормально... (: Сумбурно объяснил, но надеюсь врубишься...
← →
XProger © (2005-04-14 23:03) [6]Система координат текстуры:
0..1 - вся ширина текстуры
0..1 - вся высота текстуры
Если ставишь в параметрах GL_REPEAT то сможешь повторять текстуру на полигоне:
glBegin(GL_TRIANGLES);
glTexCoord2f(0, 0); glVertex2f(0, 0);
glTexCoord2f(2, 0); glVertex2f(100, 0);
glTexCoord2f(2, 2); glVertex2f(100, 100);
glEnd;
Выведет полигон с текстурой повторённой 2 раза.
Поэкспериментируй и всё прочувствуй :)
← →
parovoZZ © (2005-04-25 09:29) [7]ИСЧо вопрос: при удалении полигона от камеры что лучше делать - вручную накладывать уменьшенную копию текстуры или же делать это программно (читай аппаратно через OGl).
← →
П7 (2005-04-25 19:45) [8]Иди читай учебник по OpenGL.
← →
parovoZZ © (2005-04-26 08:46) [9]В учебнике написано, что OGl сам позаботится об этом. А если с расстоянием я кол-во полигонов уменьшаю на еденицу площади, тады гуляй вася, надо всё делать вручную.
← →
П7 (2005-04-26 12:09) [10]Как-то мутно ты пишешь, я тебя практически не понима. Ты можешь свою проблему нормально сформулировать?
← →
XProger © (2005-04-26 18:23) [11]
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR_MIPMAP_LINEAR);
...
gluBuild2DMipmaps(GL_TEXTURE_2D, c, Width, Height, b, GL_UNSIGNED_BYTE, Data);
Хоть в 1 млн раз уменьшай...
← →
parovoZZ © (2005-04-26 19:42) [12]Т. е. от того, сколько у меня текстур, производительность не меняется? Всё зависит от полигонов?
← →
XProger © (2005-04-26 19:49) [13]parovoZZ, зависит в некоторой степени и от качества этих самых текстур...
Текстурку 1024х1024 явно будет сложнее обработать чем 16х16 ;)
← →
parovoZZ © (2005-04-26 19:57) [14]Я хочу сделать ландшафт. Однотонный и однообразный меня не интересует, поэтому и встал вопрос о размере текстур и об их количестве. У меня в зависимости от расстояния меняется кол-во полигонов, но вот с текстурой я не понял: накладывать ту же или сделать уменьшенную копию и потом её рендерить. Можно поэкспериментировать, но хотелось бы сперва узнать.
← →
XProger © (2005-04-26 20:46) [15]MIPMAP сделает всё за тебя. Просто при уменьшании кол-ва полигонов перерасчитывай координаты текстуры в зависимости от координат вершин получившегося ландшафта.
← →
parovoZZ © (2005-04-27 09:30) [16]А зачем тода в *dds предусмотрены мипмапы?
← →
XProger © (2005-04-28 07:17) [17]Разве мы не об OpenGL говорим? ;)
*.dds очень гибкий формат, а это для понта ИМХО... :P
← →
parovoZZ © (2005-05-01 18:33) [18]Так это самое, как сохранять dds: с мипмапами или без? (Один хрен - фотошоп не генерит мипмапы почему-тА). И если у меня dds без мипмапов, то при уменьшении текстуры при рендеринге какая интерполяция будет применяться.
← →
XProger © (2005-05-01 19:52) [19]Как создаются мипмап:
Имеем текстуру 256х256
Создаём для неё мипмапы, простым скалированием.
128х128 64х64 32х32 16х16 8х8 4х4 2х2 1х1
Всё.
МИПМАПЫ ГЕНЕРИРУЕТ OpenGL!!! Не парься ты... gluBuild2DMipmaps за тебя и текстуру до размера 2^n увеличит и мипматы создаст...
Страницы: 1 вся ветка
Форум: "Игры";
Текущий архив: 2005.08.28;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.037 c