![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Текстуры в DelphiX [Delphi, Windows]
Lin1 © (2002-10-29 02:43:00)Народ. Допустим я объявил текстуру
FTexture: array[0..0] of TDirect3DTexture;
И хочу из файла
"Ashen.jpg" (512*256)
загрузить эту текстуру.
При попытке
MeshFrame.SetTexture(FTexture[0])
ошибка.
НуженIDirect3DRMTexture<.CODE>
Как мне наложить текстуру на объект запускаемый из х-файла?
Если никак, то хоть как мне создать этот объект текстурированым?
Как мне создатьIDirect3DRMTexture<.CODE> из этого файла.
3d[Power] (2002-10-29 19:09:00) [1]Не знаю как для д3дрм, но для d3d8 нуна юзать D3DFVF_TEX1, и для каждого вертекса указывать его координаты на самой текстуре.
Sapersky_ (2002-10-29 16:48:00) [2]Во-первых. "FTexture: array[0..0] of TDirect3DTexture;" - это массив (array) текстур, неопределённой длины (нужно выделять память в процессе исполнения). Надеюсь, ты в курсе? :)
Во-вторых. Что за TDirect3DTexture? Зачём оно? См. пример wrap (в комплекте DelphiX) - там используется именно IDirect3DRMTexture, и все счастливы.
В-третьих. Если в x-файле указана текстура и текстурные координаты, и эта текстура лежит в той же директории в виде .bmp или .ppm, то она при загрузке .x (IDirect3DRMMeshBuilder.Load) загрузится и будет рисоваться автоматически (за что я в своё время так любил D3DRM :)). Если .jpeg - нужно вручную грузить через JpegImage или ещё как-то, вручную создавать IDirect3DRMTexture... в общем, муть. Или вот ещё такой извращенский метод - загрузить как jpeg, сохранить как bmp, загрузить через D3DRM. Зато работает :).