スプライトが別の形状に衝突すると、スプライトが消えて元のx / y位置に再描画されますが、理由がわかりません。
スプライトが消えるのを止め、代わりに最初の衝突前の場所にとどまるようにコードを変更することを誰かが提案できますか?
を逆にして、関数glTranslation
の値をに設定して移動を停止しようとしましたが、失敗しました。0
move()
void move(){
if(check_collision(sprite,platform1) || check_collision(sprite,platform2)){ //if colliding
//x_Vel = 0; y_Vel = 0;
}
else{ //if not colliding
glTranslatef(x_Vel, y_Vel, 0.0);
}
}
void drawSprite (RECT rect) { ... }