Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.09;
Скачать: CL | DM;

Вниз

Проблема с затекстуриванием   Найти похожие ветки 

 
WandR   (2005-05-30 21:46) [0]

Есть такая демка Archipelago там текстурка разбивается на куски и потом натягивается на ландшафт.
В стандартной демке ландшафт 512х512 и код производящий наложение выглядит так:

var
htfHD : THeightData;
i, j, n : Integer;
offset : TTexPoint;
begin
with heightData do
htfHD:=GLHeightTileFileHDS1.GetData(XLeft, YTop, Size, DataType);
if (htfHD.DataState=hdsNone) then
heightData.DataState:=hdsNone
else begin
i:=(heightData.XLeft div 128);
j:=(heightData.YTop div 128);
if (Cardinal(i)<4) and (Cardinal(j)<4) then begin
heightData.MaterialName:=format("texture_%d_%d.png", [i, j]);
heightData.TextureCoordinatesMode:=tcmLocal;
n:=((heightData.XLeft div 32) and 3);
offset.S:=n*0.25;
n:=((heightData.YTop div 32) and 3);
offset.T:=-n*0.25;
heightData.TextureCoordinatesOffset:=offset;
heightData.TextureCoordinatesScale:=TexPointMake(0.25, 0.25);
heightData.DataType:=hdtSmallInt;
htfHD.DataType:=hdtSmallInt;
heightData.Allocate(hdtSmallInt);
Move(htfHD.SmallIntData^, heightData.SmallIntData^, htfHD.DataSize);
heightData.DataState:=hdsReady;
heightData.HeightMin:=htfHD.HeightMin;
heightData.HeightMax:=htfHD.HeightMax;
end else heightData.DataState:=hdsNone
end;
GLHeightTileFileHDS1.Release(htfHD);

Я решил загрузить ландшафт 1024х1024 соотвецтвенно поменял строки:
i:=(heightData.XLeft div 128);
j:=(heightData.YTop div 128);
на
i:=(heightData.XLeft div 256);
j:=(heightData.YTop div 256);
Но текстура накладывается криво=(
http://kreker.info-com.ru/files/bug.JPG

Кто знает как это поправить?


 
keal   (2005-05-31 12:56) [1]

написать все самому :)


 
WandR   (2005-05-31 13:39) [2]

Обламывает=)


 
WandR   (2005-05-31 13:40) [3]

Обламывает=)


 
Zer0 ©   (2005-05-31 14:25) [4]

Используй думательное устройство! Не дай развится Фимозу Гойловного Мосга!

ну можно поиграться с
n:=((heightData.XLeft div 32) and 3);
offset.S:=n*0.25;
n:=((heightData.YTop div 32) and 3);
offset.T:=-n*0.25;
heightData.TextureCoordinatesOffset:=offset;
heightData.TextureCoordinatesScale:=TexPointMake(0.25, 0.25);

и вместо цифирь 0.25 вписать 0.5


 
WandR   (2005-05-31 16:03) [5]

Это я пробовал первым делом, не катит текстура смазывается...


 
WandR   (2005-05-31 16:09) [6]

http://kreker.info-com.ru/files/bug2.JPG


 
Кефир87   (2005-05-31 18:15) [7]


> http://kreker.info-com.ru/files/bug2.JPG

А что? Красиво 8)


 
WandR   (2005-05-31 20:50) [8]

=)))


 
Кефир87   (2005-06-01 17:43) [9]

А можно задать не скромный вопрос. А с использованием чего это написано? Я видел префик GL... Это ГЛСцен?


 
WandR   (2005-06-01 18:21) [10]

Ага GLScene
Народ ну че молчите??? У меня проект простаивает=(


 
П7   (2005-06-01 18:39) [11]

А кого это должно волновать? Кроме тебя, конечно... (:


 
WandR   (2005-06-03 21:32) [12]

=(



Страницы: 1 вся ветка

Текущий архив: 2005.10.09;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.035 c
6-1118740988
_xtz_
2005-06-14 13:23
2005.10.09
Создание подключений Vpn и PPPoE.


2-1124905795
095
2005-08-24 21:49
2005.10.09
расскажите как можно с помощью Delphi запрограмить запуск странич


2-1125150534
shaih
2005-08-27 17:48
2005.10.09
Запись изображения и последующее отображение из бд


2-1125034401
Евгений2
2005-08-26 09:33
2005.10.09
xml в первый раз


14-1127070344
Fl@sh
2005-09-18 23:05
2005.10.09
Винт+перезагрузка