Программирование графики с использованием Direct3D

       

Функция TargetWin::MoveTarget()


Функция обратного вызова MoveTarget() обновляет анимационную последовательность один раз при каждом системном обновлении. Код функции выглядит так:

void TargetWin::MoveTarget(LPDIRECT3DRMFRAME, void* p, D3DVALUE) { LPDIRECT3DRMANIMATION animation = (LPDIRECT3DRMANIMATION)p; static D3DVALUE time; time += D3DVALUE(.5); animation->SetTime(time); }

Сначала функция подготавливает указатель на экземпляр интерфейса Direct3DRMAnimation, управляющего движением цели. Статический счетчик используется для отслеживания текущей позиции анимационной последовательности. При каждом вызове функции переменная увеличивается, а затем используется как аргумент функции SetTime() интерфейса Direct3DRMAnimation.



Содержание раздела