Havok — Можете ли вы изменить цвет объектов во время выполнения?

Для тех, кто имеет некоторый опыт работы с физическим движком Havok:

Есть ли способ изменить цвет сетки / объектов во время выполнения? Я работаю с демо-фреймворком и хочу изменить цвет всех мешей / объектов (в демо), которые находятся в движении (velocity > 0). Это мой первый раз, используя Havok. Ничего не могу найти в документации, которая у меня есть.

Спасибо!

Об одном замечании: я заметил, что есть очень мало вопросов о Havok о stackoverflow, и когда я ищу вопросы о Havok в Интернете, я не могу ничего найти. Где все разработчики Havok идут в чат? У них есть форум или что-то?

0

Решение

Решение с использованием HVD — Havok Visual Debugger:

// Needed for calling color change macro
#include <common\visualize\hkdebugdisplay.h>

// You'll of course need any other headers for any other physics stuff
// you're doing in your file

void SetColorForPhysicsDebugger( unsigned int Red, unsigned int Green,
unsigned int Blue, unsigned int Alpha,
const hkpCollidable* pCollidable )
{
// Havok takes an unsigned int (32-bit), allowing 8-bits for
// each channel (alpha, red, green, and blue, in that
// order).

// Because we only need 8-bits from each of the 32-bit ints
// passed into this function, we'll mask the first 24-bits.
Red &= 0x000000FF;
Green &= 0x000000FF;
Blue &= 0x000000FF;
Alpha &= 0x000000FF;

// Now we pack the four channels into a single int
const uint32_t color = (Alpha << 24) | (Red << 16) | (Green << 8) | Blue;

// We use the macro provided by Havok
HK_SET_OBJECT_COLOR( reinterpret_cast<hkulong>( pCollidable ), color );
}

Для получения дополнительной информации о HVD: HVD и камера ,Настройка цвета сетки

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]