PhysX - функция pxCreateTerrain

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

Модератор: Mikle

djalex777
Постоялец
Постоялец
 
Сообщения: 461
Зарегистрирован: 23.03.2006 (Чт) 16:02

PhysX - функция pxCreateTerrain

Сообщение djalex777 » 30.07.2008 (Ср) 17:13

Посмотрел в документации и примере на блитз бейсике. Первый параметр размер terrain. Т.е. например 64, что означает размер 64x64. Второй параметр указатель на массив высот, третий, четвертый и пятый параметры - маштабирование по соответствующим осям.
Так вот, возникает проблема с массивом высот.

...
Dim s() as single
redim s((64*64)-1)
...
Заполняем массив s значениями
h=pxCreateTerrain(64,s(0),0,0,0)
Все создается нормально. Но столкновения с terrain и объектом обрабатываются неправильно, т.е. объект в большинстве мест може провалиться на какую нибудь глубину или подскочить вдруг неожиданно. Есть подозрение, что неверный второй параметр функции pxCreateTerrain. Как нужно правильно пользоваться этой функцией?

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

Сообщение Mikle » 30.07.2008 (Ср) 18:23

А масштабирование нулями, это нормально? Может h=pxCreateTerrain(64,s(0),1,1,1) ?

djalex777
Постоялец
Постоялец
 
Сообщения: 461
Зарегистрирован: 23.03.2006 (Чт) 16:02

Сообщение djalex777 » 30.07.2008 (Ср) 18:29

Я неправильно написал в форуме, конечно же 1.

djalex777
Постоялец
Постоялец
 
Сообщения: 461
Зарегистрирован: 23.03.2006 (Чт) 16:02

PhysX - функция pxCreateTerrain

Сообщение djalex777 » 13.08.2008 (Ср) 15:43

Может кому интересно, разобрался я с функцией. Всё дело было во втором параметре (это указатель на карту высот). Карта высот должна иметь тип single и её значения изменяются от 0 до 1. Т.е. если мы загружаем в качестве карты высот файл tga (градация черного), то значение байта делем на 255


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

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

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

    TopList