0
我有一個Open GL項目,其中有一個2D對象,應該移動到目標點直到它碰到它,然後它將停止,直到currentX和Y到達目標X並且Y.這裏是我在我的glutTimerFunc代碼:OpenGL正弦函數移向點
void callbackTimerGlutFunc(int value)
{
spinX += SPEED_X;
spinZ += SPEED_Z;
if (spinX > 360.0) {
spinX = spinX - 360.0;
}
if (spinZ > 360.0) {
spinZ = spinZ - 360.0;
}
if (xPos != DESTINATION_X || yPos != DESTINATION_Y)
{
if (xPos < DESTINATION_X)
xPos += speed;
if (xPos > DESTINATION_X)
xPos -= speed;
yPos = cosf(xPos); // THIS IS THE NEW Y CALCULATION
}
glutPostRedisplay();
glutTimerFunc(100, callbackTimerGlutFunc, value);
}
基本上,我增加基於當前x(XPOS)羯羊它的更遠或更近遠到目標X.漂亮顯然,這是行不通的。我很積極,我只是使用cosf錯了。任何人都知道我能如何在我的目的地x和y上獲得一種很好的「正弦波」?
OH,我使用這個功能在我的顯示功能:
glTranslatef(xPos, yPos, 0.0);
仍然在解決這個問題? – chux