Bagikan melalui


enumerasi D3DXTRANSITION_TYPE

Menentukan gaya transisi antara nilai animasi jala.

Sintaks

typedef enum D3DXTRANSITION_TYPE { 
  D3DXTRANSITION_LINEAR         = 0x000,
  D3DXTRANSITION_EASEINEASEOUT  = 0x001,
  D3DXTRANSITION_FORCE_DWORD    = 0x7fffffff
} D3DXTRANSITION_TYPE, *LPD3DXTRANSITION_TYPE;

Konstanta

D3DXTRANSITION_LINEAR

Transisi linier antar nilai.

D3DXTRANSITION_EASEINEASEOUT

Transisi spline yang mudah dan mudah antar nilai.

D3DXTRANSITION_FORCE_DWORD

Memaksa enumerasi ini untuk mengkompilasi ke ukuran 32 bit. Tanpa nilai ini, beberapa pengkompilasi akan memungkinkan enumerasi ini dikompilasi ke ukuran selain 32 bit. Nilai ini tidak digunakan.

Keterangan

Perhitungan untuk ramp dari kemudahan masuk hingga kemudahan keluar dihitung sebagai berikut:

T(t) = 2(x - y)t³ + 3(y - x)t² + x

di mana ramp adalah fungsi Q(t) dengan properti berikut:

  • T(t) adalah spline kubik.
  • T(t) menginterpolasi antara x dan y sebagai t berkisar antara 0 hingga 1.
  • T(t) adalah horizontal ketika t = 0 dan t = 1.

Secara matematis, ini diterjemahkan ke dalam:

T(t) = At³ + Bt² + Ct + D (dan oleh karena itu, Q'(t) = 3At² + 2Bt + C) 2a) Q(0) = x 2b) Q(1) = y 3a) Q'(0) = 0 3b) T'(1) = 0

Pemecahan untuk A, B, C, D:

D = x (dari 2a) C = 0 (dari 3a) 3A + 2B = 0 (dari 3b) A + B = y - x (dari 2b dan D = x)

Karena itu:

A = 2(x - y), B = 3(y - x), C = 0, D = x

Persyaratan

Persyaratan Nilai
Header
D3dx9anim.h

Lihat juga

Enumerasi D3DX