Üçgenimi döndürmek istiyorum ancak bazı sorunlar var. Üçgen döndürme deformasyona neden oluyor
Onun varsayılan form:benim ok tuşlarıyla dönen ediyorum ama üçgen şeklinde bazı deformasyonlar vardır Gördüğünüz gibi:
typedef struct {
point_t pos; // position of the triangle
float angle; // view angle
float r;
} weapon_t;
void drawPlayer(weapon_t tw) {
glBegin(GL_TRIANGLES);
glColor3f(0.1, 0.2, 0.3);
glVertex2f(tw.pos.x, tw.pos.y);
glVertex2f(tw.pos.x + 150 * cos(tw.angle * D2R), tw.pos.y + 100 * sin(tw.angle * D2R) + 8);
glVertex2f(tw.pos.x + 150 * cos(tw.angle * D2R), tw.pos.y + 100 * sin(tw.angle * D2R) - 8);
glEnd();
}
void onTimer(int v) {
glutTimerFunc(TIMER_PERIOD, onTimer, 0);
if (right) {
if (weapon.angle != -45)
turnWeapon(&weapon, -3);
}
if (left) {
if (weapon.angle != 45)
turnWeapon(&weapon, 3);
}
: Burada
benim kodudur
Fikriniz var mı?
sayesinde benim ders eğitmenden formüller aldı :) i şöyle değişti: glVertex2f (tw.pos.x + 150 * c- 8 * s, ikiyönlü + 150 * s + 8 * c); \t glVertex2f (tw.pos.x + 150 * c + 8 * s, tw.pos.y + 150 * s - 8 * c); ve tamamen çalışıyor. –