портинг модуля из Дельфи

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

Сообщение Romtek » 26.05.2005 23:38:02

Собрался спортировать модуль для загрузки моделей GMS из Delphi в FPC и столкнулся с такой проблемой:
при запуске программы, скомпилированной в Дельфи, модель отображается без проблем, а в версии для FPC вываливается ошибка типа "An Unhadled exception occured at...EAccessViolation: ..."
Применяются модули Gl, Glu, Glut (OpenGL) и компилятор FPC версии 1.9.6

Исходники одни и те же, а результаты разные. Кто знает, куда копать?

Исходники для обоих компиляторов со всеми необходимыми файлами закодированы UUE и открываются в Тотал Коммандере и Винраре (т.к. нет функции прикрепления файлов к сообщению).

Файл gmsmodel.uue (29.4 KB):
<span style='color:red'>...
Порезано модератором. Если файл ещё нужен, то уже можно его закачать на сайт и сделать ссылку.
...</span>
Аватара пользователя
Romtek
постоялец
 
Сообщения: 190
Зарегистрирован: 22.05.2005 12:29:35
Откуда: Рамат Ган

Сообщение Bohdan » 27.05.2005 12:02:26

Архив битый :(
Bohdan
новенький
 
Сообщения: 87
Зарегистрирован: 11.05.2005 11:31:46
Откуда: Ukraine, Kyiv

Сообщение Sniper » 27.05.2005 13:22:31

Постави после program вот это и всё пройдёт =)
{$IFDEF FPC}{$MODE Delphi}{$ENDIF}
Sniper
 

Сообщение Romtek » 29.05.2005 23:24:51

Bohdan, архив не битый, я проверял.

Sniper
Спасибо, работает! :)
Аватара пользователя
Romtek
постоялец
 
Сообщения: 190
Зарегистрирован: 22.05.2005 12:29:35
Откуда: Рамат Ган

Сообщение Cheb » 06.06.2005 16:30:00

GLUT - полное, стопроцентное, абсолютное оно!!
Я сам долго лбом бился (в Линуксе), методы ковыряния в исходниках показали, что динамическая библиотека не грузится, GLUT модуль это молча глотает (там за каким-то бесом проверка успешности закомментирована), и дальше всё летит при загрузке процедур...

Я, в конце концов, просто забил на GLUT, и создал её упрощённый аналог с нуля (Win32&Linux), прямо на ФриПаскале. Если интересно - <a href='http://www.chebmaster.narod.ru/cge/cheblib_winman.html' target='_blank'>лежит тут</a>. Только там, конечно, пара багов есть неисправленных. Более совершенная версия существует, но она уже намертво вшита в мой движок, и если хотите использовать, выдирать придётся с мясом...
Аватара пользователя
Cheb
энтузиаст
 
Сообщения: 994
Зарегистрирован: 06.06.2005 15:54:34

Сообщение SovNarKom » 12.06.2005 20:36:52

А уменя не работает -> External... 000000 типа нет в длл такой...
PixelFormat:=ChoosePixelFormat(DC, @PFDescriptor);
Директивы в норме.
SovNarKom
постоялец
 
Сообщения: 389
Зарегистрирован: 28.05.2005 10:37:39
Откуда: Воронеж [vrn] [36]

Сообщение SovNarKom » 12.06.2005 21:41:21

О! С сайта www.delphi3d.net обновил GL.pas
Пришлось правда немного поправить. Если кому нужен - могу залить.
SovNarKom
постоялец
 
Сообщения: 389
Зарегистрирован: 28.05.2005 10:37:39
Откуда: Воронеж [vrn] [36]

Сообщение Cheb » 14.06.2005 10:10:18

А уменя не работает -> External... 000000 типа нет в длл такой...

Под Виндовс эта функция приносит немеряную головную боль.
Если кратко, она должна быть в opengl32.dll, а та, что в gdi32.dll - устаревшая (так, вроде?), и попытка её вызвать вызовет жестокие глюки, а под 98-й и полный крах системы.

Я, честно, просто плюнул на всё это, оставив у себя толькоо загрузку из opengl32.dll.

Народ, если кому не лень - проверьте мои примеры (вес в исходниках - всего 100 килобайт) - не будет оно жаловаться на отсутствие этих ф-й?..
Аватара пользователя
Cheb
энтузиаст
 
Сообщения: 994
Зарегистрирован: 06.06.2005 15:54:34

Сообщение Romtek » 14.06.2005 23:07:52

Cheb и SovNarKom, не отклоняйтесь от темы!

GLUT тут нипричём, т.к. проблема была именно с модулем Mesh. А он как раз не использовал её!

Не надо предлагать использовать мне другие библиотеки. Тем более, существует проект
<a href='http://openglut.sourceforge.net/' target='_blank'>OpenGLUT</a>. ;)
Аватара пользователя
Romtek
постоялец
 
Сообщения: 190
Зарегистрирован: 22.05.2005 12:29:35
Откуда: Рамат Ган


Вернуться в Free Pascal Compiler

Кто сейчас на конференции

Сейчас этот форум просматривают: Google Adsense [Bot] и гости: 14

Рейтинг@Mail.ru