Помогите с текстурными координатами

Работа с 2D и 3D графикой, видео, звуком.

Модератор: Mikle

DirectXManiac
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1543
Зарегистрирован: 03.11.2005 (Чт) 13:32
Откуда: из DirectX SDK

Помогите с текстурными координатами

Сообщение DirectXManiac » 01.02.2007 (Чт) 6:08

Значит проблема такая. Я построил сферу для рисование через Triangle Strip. Строиться просто. Задаеться количество колец и сегментов и строиться через косинус и синус... Построилось без проблем, а вот как посчитать текстурные координаты для каждой точки?
Код: Выделить всё
For ring = 0 To Prim.Rings - 1
        r0 = Sin((ring + 0) * RingAngle)
        r1 = Sin((ring + 1) * RingAngle)
        y0 = Cos((ring + 0) * RingAngle)
        y1 = Cos((ring + 1) * RingAngle)
    For seg = 0 To Prim.Segments
     x0 = r0 * Sin(seg * SegAngle)
     z0 = r0 * Cos(seg * SegAngle)
     x1 = r1 * Sin(seg * SegAngle)
     z1 = r1 * Cos(seg * SegAngle)
     
     v(i + 0).Pos = Vec3(x0, y0, z0)
     v(i + 0).TU = 1
     v(i + 0).TV = 1
     i = i + 1
     
     v(i + 0).Pos = Vec3(x1, y1, z1)
     v(i + 0).TU = 1
     v(i + 0).TV = 1
     i = i + 1
    Next seg
Next ring

SegAngle = 2PI / Segments
RingAngle = Pi / Rings
Пока поставил по 1. Подскажите как можно посчитать координаты в таком коде. Чё то не пойму! :oops:
#define ROFL 0xDDDD

Mikle
Изобретатель велосипедов
Изобретатель велосипедов
Аватара пользователя
 
Сообщения: 4148
Зарегистрирован: 25.03.2003 (Вт) 14:02
Откуда: Туапсе

Сообщение Mikle » 01.02.2007 (Чт) 11:19

DirectXManiac
Координаты на сферу можно наложить по разному, что конкретно нужно?
А саму сферу прекрасно строит D3DX.

DirectXManiac
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1543
Зарегистрирован: 03.11.2005 (Чт) 13:32
Откуда: из DirectX SDK

Сообщение DirectXManiac » 01.02.2007 (Чт) 17:01

Mikle
Мне нужно наложить текстуру,любую, на сферу и продублировать заданое TexScale количество раз. Только вот незнаю как! :oops:
#define ROFL 0xDDDD

Mikle
Изобретатель велосипедов
Изобретатель велосипедов
Аватара пользователя
 
Сообщения: 4148
Зарегистрирован: 25.03.2003 (Вт) 14:02
Откуда: Туапсе

Сообщение Mikle » 01.02.2007 (Чт) 19:04

DirectXManiac
Можно сделать так:
vert(x).tu = RND
vert(x).tv = RND
Тоже наложится текстура, тебя устроит?
То есть проблема наложить текстуру проистекает из проблемы наличия самой текстуры, важно под кокой алгоритм наложения она рассчитана. А вот Scale при любом наложении можно будет изменять простым умножением.

DirectXManiac
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1543
Зарегистрирован: 03.11.2005 (Чт) 13:32
Откуда: из DirectX SDK

Сообщение DirectXManiac » 01.02.2007 (Чт) 19:17

Mikle
Как на плоскость текстура накладываеться... Вот так мне и надо!
#define ROFL 0xDDDD


Вернуться в Мультимедиа

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 19

    TopList  
cron