で困っていopengl
ます。前進/後退中に車両を回転させたい。ここに私の問題を正確に示す写真があります。現在のコードの効果は青色で表示されています - 車を動かした後、現在の場所ではなく、開始場所の上を回転します。赤で表示したいのは、車両が現在の位置を超えて回転し、後で正しく前後に移動する状況です。
私の現在のコード:
lxr=sin(angle);
lzr=cos(angle);
xr+=speed*lxr;
zr+=speed*lzr;
totalangle+=angle
glRotatef(totalangle,0.0,1.0,0.0);
glTranslatef(0.0,0.0,xr);
drawVehicle();