Нужна небольшая функция для поворота вертекса или вектора по Y. Сам написал, но почему-то она глючит при повороте сложных объектов, хотя точку поворачивает нормально.
Public Sub Vec3RotateY(Vec3Out As D3DVECTOR, Vec3In As D3DVECTOR, Angle As Single)
Dim mx As Single, my As Single
Dim rad As Single
Dim r As Double
mx = Vec3In.X
my = Vec3In.z
rad = GetDist(0, 0, mx, my)
If my >= 0 Then r = Atn(mx / my)
If my < 0 Then r = Atn(mx / my) - Pi
r = r + Angle
Vec3Out.X = Cos(r) * rad
Vec3Out.z = Sin(r) * rad
End Sub
Кто что скажет?