當一個點到達底部時,我試圖將其反彈。不幸的是,它只是不斷下降。這裏是代碼:在動畫中需要幫助Opengl c/C++
void Timer(int value) {
if (value) {
if(initMpoints[1][1] <= 500 && initMpoints[0][1] >= 0) {
txForC -= 0;
tyForC -= 5; //Move C downward.
txForM -= 0;
tyForM -= 5;
if (initMpoints[0][1] == 0) {
txForC += 0;
tyForC += 5; //Move C downward.
txForM += 0;
tyForM += 5;
}
}
}
glutPostRedisplay();
glutTimerFunc(50, Timer, value);
}
我該如何解決這個問題?
這裏的代碼沒有完全做到。請告訴我,如果我從一開始就做了什麼。提前致謝。 –
看起來是一個很好的機會[學習如何使用調試器](http://ericlippert.com/2014/03/05/how-to-debug-small-programs/)。 –
你能發佈一個更有意義的代碼片段嗎?爲什麼在initMpoints [0] [1] == 0時撤消對'txForC'等的修改,而不是簡單地從第一個'if()'語句中排除這個條件?這些變量代表什麼?你的代碼是如何知道一個點到底的?你是否檢查過了底部位置會發生什麼? –