![]() |
|
Модераторы: Rickert, Alexeis, BorisVorontsov |
![]()
|
|
| kurlyak |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 218 Регистрация: 7.11.2007 Репутация: 1 Всего: 3 |
Добавил в програму хеадеры:
Прилинковал opengl32.lib glu32.lib glaux.lib glut32.lib. Код такой:
А ошибка такая: BitScrollDlg.cpp f:\mymfc\2005 myopengl mfc proj\bitscroll\bitscrolldlg.cpp(278) : error C2065: 'GLMmodel' : undeclared identifier f:\mymfc\2005 myopengl mfc proj\bitscroll\bitscrolldlg.cpp(278) : error C2065: 'pmodel' : undeclared identifier f:\mymfc\2005 myopengl mfc proj\bitscroll\bitscrolldlg.cpp(279) : error C3861: 'glmReadOBJ': identifier not found f:\mymfc\2005 myopengl mfc proj\bitscroll\bitscrolldlg.cpp(280) : error C3861: 'glmUnitize': identifier not found f:\mymfc\2005 myopengl mfc proj\bitscroll\bitscrolldlg.cpp(281) : error C3861: 'glmFacetNormals': identifier not found f:\mymfc\2005 myopengl mfc proj\bitscroll\bitscrolldlg.cpp(282) : error C3861: 'glmVertexNormals': identifier not found f:\mymfc\2005 myopengl mfc proj\bitscroll\bitscrolldlg.cpp(283) : error C2065: 'GLM_SMOOTH' : undeclared identifier f:\mymfc\2005 myopengl mfc proj\bitscroll\bitscrolldlg.cpp(283) : error C2065: 'GLM_MATERIAL' : undeclared identifier f:\mymfc\2005 myopengl mfc proj\bitscroll\bitscrolldlg.cpp(283) : error C3861: 'glmDraw': identifier not found Как решить мою проблему? Что тут надо исправить. Если нужно больше кода- говорите. |
||||
|
|||||
| Solomon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 471 Регистрация: 23.1.2006 Где: Украина Киев Репутация: нет Всего: 2 |
glm??? что то сомневаюсь что это функции беблиотеки glut... я вообще с расширениями Опена не работал,но что бы функции Glut имели префикс gml это маловероятно.
-------------------- Если не идти до конца к поставленным целям и не пытатся их достигнуть, каким бы тяжелым не казался путь, то лучше и не ставь их перед собой, но тот кто не ставит перед собой труднодоступные цели, никогда не ощутит эйфорию настоящей победы... победы над миром... Соломон 2008 |
|||
|
||||
| ama_kid |
|
|||
![]() АСУТП-кодер ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1460 Регистрация: 5.3.2007 Где: Москва Репутация: нет Всего: 95 |
и иже с ними - это вроде как из библиотеки glm.h:
попробуй прикрепи к своему проекту еще файл <glm.h> из аттача... Это сообщение отредактировал(а) ama_kid - 12.11.2007, 15:22 Присоединённый файл ( Кол-во скачиваний: 20 )
glm.rar 14,63 Kb-------------------- самурай без меча подобен самураю с мечом, но только без меча |
|||
|
||||
| kurlyak |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 218 Регистрация: 7.11.2007 Репутация: 1 Всего: 3 |
Прикрепил glm.h теперь линкер выдает ошибки:
Linking... LINK : warning LNK4076: invalid incremental status file '.\Debug/BitScroll.ilk'; linking nonincrementally BitScrollDlg.obj : error LNK2019: unresolved external symbol "void __cdecl glmDraw(struct _GLMmodel *,unsigned int)" (?glmDraw@@YAXPAU_GLMmodel@@I@Z) referenced in function "public: void __thiscall CBitScrollDlg::DrawScene(void)" (?DrawScene@CBitScrollDlg@@QAEXXZ) BitScrollDlg.obj : error LNK2019: unresolved external symbol "void __cdecl glmVertexNormals(struct _GLMmodel *,float)" (?glmVertexNormals@@YAXPAU_GLMmodel@@M@Z) referenced in function "public: void __thiscall CBitScrollDlg::DrawScene(void)" (?DrawScene@CBitScrollDlg@@QAEXXZ) BitScrollDlg.obj : error LNK2019: unresolved external symbol "void __cdecl glmFacetNormals(struct _GLMmodel *)" (?glmFacetNormals@@YAXPAU_GLMmodel@@@Z) referenced in function "public: void __thiscall CBitScrollDlg::DrawScene(void)" (?DrawScene@CBitScrollDlg@@QAEXXZ) BitScrollDlg.obj : error LNK2019: unresolved external symbol "float __cdecl glmUnitize(struct _GLMmodel *)" (?glmUnitize@@YAMPAU_GLMmodel@@@Z) referenced in function "public: void __thiscall CBitScrollDlg::DrawScene(void)" (?DrawScene@CBitScrollDlg@@QAEXXZ) BitScrollDlg.obj : error LNK2019: unresolved external symbol "struct _GLMmodel * __cdecl glmReadOBJ(char *)" (?glmReadOBJ@@YAPAU_GLMmodel@@PAD@Z) referenced in function "public: void __thiscall CBitScrollDlg::DrawScene(void)" (?DrawScene@CBitScrollDlg@@QAEXXZ) .\Debug/BitScroll.exe : fatal error LNK1120: 5 unresolved externals |
|||
|
||||
| kurlyak |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 218 Регистрация: 7.11.2007 Репутация: 1 Всего: 3 |
В принципе уже сдела- линкер ничего не говорит, ошибок нет, но когда я запускаю программу, окно серенькое блымнет, и все, а дальше идет дамп моего объектного файла с рисунком. что делать?
|
|||
|
||||
| kurlyak |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 218 Регистрация: 7.11.2007 Репутация: 1 Всего: 3 |
Вроде исправил все ошибки- изображение самолета есть, но оно белое, бесцветное. То есть фон у меня черный, а самолет весь белый, только очертания его обрисованы и внутри тоже белый. Что делать? Где цвет?
|
|||
|
||||
| Rickert |
|
|||
|
Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: 2 Всего: 52 |
kurlyak, а ты текстру накладываешь?
-------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
| kurlyak |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 218 Регистрация: 7.11.2007 Репутация: 1 Всего: 3 |
Нет, текстуры я не накладываю. У меня есть два файла с рисунком, созданные в 3D StudioMax.
Эти файлы f-16.obj и f-16.mtl. Причем пишу я программу в MFC. Самолет в окне отображаеться исключительно белым цветом, одни его очертания, контуры, и залита фигура самолета - тоже белым. весь он короче белый, без раскраски.
Добавлено через 2 минуты и 59 секунд причем я видел как эти файлы рисунка самолета используються в одном примере программы (но не MFC)- все нормально, самолет цветной. но мне нужно под MFC, а там в чистом виде все с нуля написано в примере. кстати там как то glut инициализируеться, окно его создаеться. у меня в MFC уже создано окно OpenGL, разве я не могу вывести в него из файла рисунок как мне нужно? |
|||
|
||||
| t_gran |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 621 Регистрация: 13.11.2007 Где: г.Усть-Илимск Репутация: нет Всего: 37 |
Укажи векторы нормали, а то так и будет просто пятно.
Это сообщение отредактировал(а) t_gran - 11.2.2008, 10:51 -------------------- Я знаю, что ничего не знаю© Сократ ![]() |
|||
|
||||
| GLeBaTi |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 129 Регистрация: 1.2.2008 Где: г.Чебоксары Репутация: нет Всего: 0 |
Я долго думал и наконецто нашел ответ !!! :
скачиваешь http://home.clara.net/paulyg/download/glut.zip , заменяешь файлы из архива: *.h можно все если предложит заменить то лучше не заменять (там скорее всего все будут кроме glut.h) сюда: C:Program Files BORLAND CBuilder6 Include Gl История про Lib::: и суешь *.lib за исключением opengl32.lib (24 кб) сюда C:Program Files BORLAND CBuilder6 Lib Psdk DDL - в С:\windows\system Версии Microsoft файлов opengl32.lib, glu32.lib, glut32.lib для Borland C++ не подходят и следует использовать только совместимые версии. Чтобы создать такие версии, надо использовать стандартную программу ‘implib, которая находится в каталоге ..\BorlandC\Bin. Для этого надо выполнить команды вида implib ..\BorlandC\Lib\filename.lib ..\filename.dll для перечисленных файлов, которые создают нужный *.lib файл из соответствующего *.dll файла. Кроме того, надо отметить, что компилятор BorlandC не может по неизвестным причинам использовать файл glaux.lib, входящий в состав BorlandC++5.02, при компиляции приложения, использующего библиотеку GLAUX, поэтому возможно от этой библиотеки придется отказаться. Для создания приложения надо выполнить следующие действия: Создание проекта: для этого надо выбрать File->New->Other->Console Wizard, OK. -> В появившемся окне выбрать Source Type – С++, Console Application, сбросить опции ‘Use VCL’, ‘Use CLX’, ‘Multi Threaded’. Нажать ОК. -> Текст программы можно либо разместить в созданном текстовом файле, либо удалить его из проекта (Project->Remove From Project) и добавить файл с расширением *.c или *.cpp в проект (выбрав Project->Add To Project). ->Сохраните созданный проект в желаемом каталоге (выбрав File->Save All). ->Подключить к проекту библиотеку GLUT. Для этого надо выбрать Project->Add To Project и добавить файл glut32.lib ->Для компиляции выбрать Project->Build …, для выполнения – Run->Run. -> Когда программа готова, рекомендуется перекомпилировать ее в режиме ‘Release’ для оптимизации по быстродействию и объему. Для этого сначала надо выбрать Project->Options->Compiler и нажать кнопку ‘Release’. |
|||
|
||||
| kurlyak |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 218 Регистрация: 7.11.2007 Репутация: 1 Всего: 3 |
t_gran - если бы я еще знал что такое векторы нормали!!! но я только по примерам пытаюсь понять как работает OpenGL и еще не все знаю. если можешь объясни. И еще объясни как указать диффузию и материю? я просто не знаю как это выразить в коде.
GLeBaTi - я работаю в Visual Studio 6.0, glut уже скачал и установил по папочкам. к тому же по твоей ссылке пишеться, что файл отсутствует. мне нужно под MFC писать прогу а не под Builder. а вобще конечно спасибо за помощь! |
|||
|
||||
| kurlyak |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 218 Регистрация: 7.11.2007 Репутация: 1 Всего: 3 |
о! добавил свет и все получилось!
|
|||
|
||||
![]()
|
| Вы можете найти полезным что... | |
|
|
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Мультимедия, OpenGL/DirectX | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |