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

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

Текстурные координаты [VC]


VolanD666 ©   (2006-06-13 12:07:00) 

Привет, всем!
Можно ли «сказать» D3D, что я хочу задавать текстурные координаты не в масштабе [0,1], а в пикселях?


VolanD666   (2006-06-15 19:57:00) [1]

Cash, пока сам задаю, а потом посмотрим )


Cash   (2006-06-15 17:47:00) [2]

VolanD666   (15.06.06 15:51) [14]:
... а TextureWidth и TextureHeight (высоту/ширину) текстуры как определяеш???


ancara   (2006-06-15 17:47:00) [3]

И почему у тебя там полосы по диагонали, они же вдоль ребра должны быть, или нет?
 Я не знаю как в D3D, но в OGL, если рисовать примитив GL_QUAD, то вершины располагать надо так
 1____2
  |     |
  |___|
 4      3

а если GL_TRIANGL_STRIP то так
 1____2
  |  / |
  |/__|
 3      4

может там что напуталось у тебя?


ancara   (2006-06-15 16:04:00) [4]

хранить в отдельных файлах?


VolanD666   (2006-06-15 15:51:00) [5]

Хм... Отключил всю фильтрацию текстуры и заработало, а "чё" делать- без фильтрации плохо?


VolanD666   (2006-06-15 15:40:00) [6]

Ancara, я lightmap в bmp храню, это я что бы вам много не качать в jpg переделал :)


ancara   (2006-06-15 14:28:00) [7]

О! Еще мысль!! Я щас скачал твой лайтмап и посмотрел на него с большим зумом, там за счет JPEG-сжатия на стыках полосок наблюдается усреднение цветов, может оно и создает артефакты??
Попробуй с максимальным качеством сохранить или вообще без сжатия.


a22   (2006-06-15 14:24:00) [8]

видимо, текстурные координаты неверны. либо они совсем неправильные, либо ты не учитываешь, что tc = {u,v} задает координаты центра текселя, а не левого-верхнего угла.


ancara   (2006-06-15 14:21:00) [9]


> VolanD666   (15.06.06 14:08) [8]

мне кажется, тебе надо создать такую же текстурку как твой лайтмап, только вмесо самих лайтмапов нарисовать разноцветные прямоугольники, и посмотреть, какой цвет вылезает ввиде полосы.
 Уверен на 90%, что проблема в текст. координатах. А преобразовать пиксели в текст. координаты проще простого:
 X  = U * TextureWidth
где Х это Х-координата на текстуре в пикселях
а U это U-координата в диапазоне от 0 до 1.


ancara   (2006-06-15 14:21:00) [10]


> VolanD666   (15.06.06 14:08) [8]

мне кажется, тебе надо создать такую же текстурку как твой лайтмап, только вмесо самих тайтмапов нарисовать разноцветные прямоугольники, и посмотреть, какой цвет вылезает ввиде полосы.
 Уверен на 90%, что проблема в текст. координатах. А преобразовать пиксели в текст. координаты проще простого:
 X  = U * TextureWidth
где Х это Х-координата на текстуре в пикселях
а U это U-координата в диапазоне от 0 до 1.


VolanD666   (2006-06-15 14:08:00) [11]

http://www.gamedev.ru/images/?id=12272


a22   (2006-06-15 12:03:00) [12]

а накладываемая текстура как выглядит? на ней нет полос?


VolanD666   (2006-06-15 04:50:00) [13]

http://www.gamedev.ru/images/?id=12266


a22   (2006-06-14 17:36:00) [14]

покажи скриншот


VolanD666   (2006-06-14 17:00:00) [15]

Просто я тут lightmap увлекся и когда вторую текстуру накладываю, то на ней появляются полосы, мне кажется, что это из-за не верных текстурных координат ( типа 0,307697 ).


MeF Dei Corvi   (2006-06-13 16:56:00) [16]

А какой смысл задавать текстурные координаты в пикселях? Это же бред.
ИМХО, аффтар чего-то не понимает.


Cash   (2006-06-13 13:05:00) [17]

Не верится мне в это, да и в спраке вроде про это ничего не сказано, говорят только как из системы 0..Width перевести в систему 0..1, и все.
(вроде...)


RzCoDer   (2006-06-13 12:11:00) [18]

А что тебе мешает перевести координаты [0;1] в пиксели? Если текстура 256*256 то 1=256. реши уровнение X=128 или X=64


Наверх

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