![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Запутался совсем...
ArchangelM © (2004-04-17 14:45:00)Значит вот:
Мы ресуем карту с помощью цикла из массива r:
for i:=-25 to 23 do
begin
glEnable(Gl_texture_2D);
glBegin(GL_TRIANGLE_STRIP);
for j:=-25 to 23 do
begin
glTexCoord2f((i)*10,(j)*10); glVertex3fv(@r[i ,j ]);
glTexCoord2f((i+1)*10,(j)*10); glVertex3fv(@r[i+1,j ]);
end;
glEnd;
end;
И есть соответственно Позиция плеера по X и Y.
Нам же нада отрисовывть лишь ту часть карты на которой находится игрок то есть примерно 4*4 "ячейки" под нагами... Есть еще одно условие: Высота и длинна ячейки = 256.
Чтоб добится нужной нам отрисовки надо указыватьв цикле "от" и "до" как позицию игрока по по X и Y тоесть типа:
for i:=X-4 to X+4 do
begin
glEnable(Gl_texture_2D);
glBegin(GL_TRIANGLE_STRIP);
for j:=Y+4 to Y+4 do
begin
Но неполучается!! Подскажите в чем я ошибся??? а то совсем уже нессображаю....
ArchangelM (2004-04-17 14:47:00) [1]Опечатка:
for i:=X-4 to X+4 do
begin
glEnable(Gl_texture_2D);
glBegin(GL_TRIANGLE_STRIP);
for j:=Y-4 to Y+4 do
begin
...
...
...