Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2005.10.09;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.013 c
11-1107841870
DmiSb
2005-02-08 08:51
2005.10.09
Как изменить шрифт в PopupMenu ?


14-1127306450
Антоний
2005-09-21 16:40
2005.10.09
Завершение lsass.exe


9-1117777196
SSG
2005-06-03 09:39
2005.10.09
Мировые координаты.


14-1127121377
kot andrei
2005-09-19 13:16
2005.10.09
Украли ноутбук :(


1-1126946533
testerr
2005-09-17 12:42
2005.10.09
скопировать экран TWebBrower





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский