{{notification.text}}

MirGames

18.11.15 18:09
0

Здравствуйте, столкнулся с проблемой что при загрузке 3d моделей не отображаются текстуры. Во всех демках текстуры тоже не отображаются.

Аннотация

Код:

SetCurrentDir('texture');

Table := TGLFreeForm.CreateAsChild(GLScene1.Objects);

Table.MaterialLibrary := GLMaterialLibrary1;

Table.Material.Texture.Disabled :=False;

Table.LoadFromFile('model.3DS');

Table.Scale.SetVector(0.1, 0.1, 0.1);

Table.Direction.SetVector(0, 1, 0);

Когда запускаю скачанный готовый проект то текстуры есть, но после компиляции сразу пропадают текстуры.
Использую Delphi XE7.
Подскажите пожалуйста, что можно сделать?

Отредактировано: 18.11.15 19:49
#1
MirGames Dev
19.11.15 01:07
2

Когда запускаю скачанный готовый проект то текстуры есть, но после компиляции сразу пропадают текстуры.

Глупое, наверное, предположение, но может быть просто файл не загружается? Скажем, он не попадает в папку "texture", или программа пытается загружать его не оттуда, откуда должна? Я бы предложил указать абсолютный путь в SetCurrentDir на случай, если по какой-то причине CurrentDir при запуске отличается от ожидаемого (что GetCurrentDir до этого вызова возвращает?).

Или версия GLScene отличается от той, что использовалась в готовом проекте, и с тех пор API поменялся.

#2
19.11.15 01:18
0

Указал полный путь, ничего не изменилось.
Спасибо за ответ.

#3
MirGames Dev
19.11.15 01:27
2

Здесь, кстати, у людей схожая проблема. Судя по всему, это баг в GLScene, который уже должен быть исправлен. В обсуждении речь шла о том, что в GLGraphics.pas используется метод glTextureParameterf с неправильной сигнатурой. Возможно, что вы используете версию без фикса, а скомпилированный exe файл содержит этот фикс.

Отредактировано: 19.11.15 01:28
#{{post.Index}}
{{post.Author.Login}}
{{post.CreatedDate | date:'dd.MM.yy HH:mm'}}
{{post.VotesRating}}
Отредактировано: {{post.UpdatedDate | date:'dd.MM.yy HH:mm'}}