Witam.
Mam problem z skokiem w OpenGL.
Piszę grę i chciałbym napisać skok , spróbowałem takim kodem :
if Key = VK_SPACE then
begin
yg_pos := Y_pos;
for i_k := 1 to c_k do
begin
yp_min := Vertex_knew[i_k].Y - 0.8;
if (yg_pos >= yp_min) and (yg_pos <= yp_max)
then
begin
collision := 1;
end;
end;
if collision = 1 then
begin
Y_pos := Y_pos_old;
end;
if collision = 0 then
begin
i_k := 1;
for i := 1 to c do
begin
Vertex[i].Y := Vertex[i].Y - sin((Heading+90)*pi/180)*FrameTime/300;
end;
for i_k := 1 to c_k do
begin
Vertex_k[i_k].Y := Vertex_k[i_k].Y - sin((Heading+90)*pi/180)*FrameTime/300;
end;
if Head = 0 then
begin
HeadMovement := HeadMovement + 0.005;
if HeadMovement >= 0.05 then
begin
Head := 1;
end;
end;
if Head = 1 then
begin
HeadMovement :=HeadMovement - 0.005;
if HeadMovement <= 0 then
begin
Head := 0;
end;
end;
glDraw();
end;
end;
Lecz ten kod "lewituje" postać :/
Prosiłbym o pomoc , szukałem w google i też nic ;/
Dziękuje.