![]() |
|
Модераторы: Rickert, Alexeis, BorisVorontsov |
![]()
|
|
| Reptor |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1213 Регистрация: 29.12.2004 Репутация: нет Всего: 0 |
Я вот токо вот начинаю изучать MFC и ещё OpenGL. Так вот у меня такой вопрос ну и задача:
Мне необходимо нарисовать какуюто фигуру в OpenGL но проблема не в этом проблема в том что наскоко я понял OpenGL создаёт своё окно для рисования а если делать какето GUI на MFC то там же окно по 2-ому создается. Так вот мне надо что было место где рисовалась фигура и какието контролы для того что б ей управлять - это к примеру какойто toolBar с какимито кнопками маштабирвания поворота ну и тому подобное. Так вот как мне объеденить это всё в одно приложение. |
|||
|
||||
| Graf_h |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 482 Регистрация: 18.10.2007 Где: г. Ровно, Украина Репутация: -1 Всего: 5 |
кто сказал что по другому? В Windows все окна одинаково создаются -------------------- Иногда переменная - это просто переменная |
|||
|
||||
| Reptor |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1213 Регистрация: 29.12.2004 Репутация: нет Всего: 0 |
Graf_h, нет ну я не имел в виду по другому в плане кода по 2-ому. Ну или как в OpenGL
а обычное окно в MFC что то типа такого (часть кода)
Добавлено через 22 секунды это я так понимаю |
||||
|
|||||
| Graf_h |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 482 Регистрация: 18.10.2007 Где: г. Ровно, Украина Репутация: -1 Всего: 5 |
Это просто интерфейс для создания окна, реально оно также создается!Если очень нужно могу написать код окна для опенЖЛ! насчет контролов, то с ними в VisualC++ работать не приходилось, по мне так Borland C++ проще! хотя и Visual C++ также есть готовые компоненты! -------------------- Иногда переменная - это просто переменная |
|||
|
||||
| Reptor |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1213 Регистрация: 29.12.2004 Репутация: нет Всего: 0 |
Graf_h, код окна для опенЖЛ я знаю как делать и знаю как в MFC тоже делать окна и кнопки а вот как это соеденить я что то не понимаю
|
|||
|
||||
| Solomon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 471 Регистрация: 23.1.2006 Где: Украина Киев Репутация: нет Всего: 2 |
Когда мне подобное надо было я использовал немодальные окна.. т.е. само окно OpenGL, и отдельно создаешь еще одно типа как панелька в томже photoshop...
-------------------- Если не идти до конца к поставленным целям и не пытатся их достигнуть, каким бы тяжелым не казался путь, то лучше и не ставь их перед собой, но тот кто не ставит перед собой труднодоступные цели, никогда не ощутит эйфорию настоящей победы... победы над миром... Соломон 2008 |
|||
|
||||
| bronislav |
|
||||||||||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 334 Регистрация: 29.1.2008 Где: Украина::Донецк Репутация: нет Всего: 3 |
Для того, чтобы включить инициализировать OpenGL в окне MFC надо действовать немного по другому, например так:
Это сообщение отредактировал(а) bronislav - 21.5.2008, 15:27 -------------------- ![]() иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes |
||||||||||||||
|
|||||||||||||||
| Graf_h |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 482 Регистрация: 18.10.2007 Где: г. Ровно, Украина Репутация: -1 Всего: 5 |
bronislav, автор темы говорит что умеет все это делать! Он просто не может скомпоновать! Но если честно, я так и не понял что именно у него не получается
-------------------- Иногда переменная - это просто переменная |
|||
|
||||
| bronislav |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 334 Регистрация: 29.1.2008 Где: Украина::Донецк Репутация: нет Всего: 3 |
Судя по использования библиотеки glut и него не получается рисовать в окне MFC (т.к. glut создает свое окно). Мой же код позволяет рисовать непосредственно в окне MFC не создавая дополнительных окон. -------------------- ![]() иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes |
|||
|
||||
| Reptor |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1213 Регистрация: 29.12.2004 Репутация: нет Всего: 0 |
Graf_h, да я умею это делать но када оно всё отдельно.
Во в этом у меня была и проблема мне надо было опенЖЛ как то импортировать или вшить в MFC bronislav, спасибо попробую разобраться что к чему. Ди и сорри если неккоректно задал вопрос. Добавлено через 56 секунд bronislav, да и ещё я тут смогу добовлять меню и тулбар ну может ещё что понадобится? |
|||
|
||||
| Rickert |
|
|||
|
Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: 2 Всего: 52 |
Я сам неделю назад инжектил OGL в MFC. Мне надо было на модальном окне разложить 4 контекста OGL'а. Решается это просто: создаёшь на форме 4 статика и к при инициалиазции OGL подсовываешься вместо контекста устройства окна - контекст устройства статика.
-------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
| Reptor |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1213 Регистрация: 29.12.2004 Репутация: нет Всего: 0 |
bronislav, а можно попросить приатаченный уже готовый файл? так как у меня не получается что то собрать это.
|
|||
|
||||
| bronislav |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 334 Регистрация: 29.1.2008 Где: Украина::Донецк Репутация: нет Всего: 3 |
Конечно Это сообщение отредактировал(а) bronislav - 21.5.2008, 15:25 Присоединённый файл ( Кол-во скачиваний: 87 )
empty_project.zip 52,67 Kb-------------------- ![]() иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes |
|||
|
||||
| ProfessorBraz |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 17.7.2007 Репутация: нет Всего: нет |
Где бы взять такойже примерчик, только для Борланд С++? Может поделиться кто, т.к. такаяже ситуация, хочется рисовать во фрейме Виндовского окна.
|
|||
|
||||
| bronislav |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 334 Регистрация: 29.1.2008 Где: Украина::Донецк Репутация: нет Всего: 3 |
Посмотри в прилагающихся примерах. Насколько я знаю там есть пример использования OpenGL. -------------------- ![]() иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes |
|||
|
||||
| Lеstat |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 76 Регистрация: 28.12.2005 Где: Москва Репутация: нет Всего: нет |
вот собрал пример... написано с использованием GLUI, а не MFC, но возможно поможет
оставил минимум кода и даже наверно излишне прокомментил чтобы врубаться было легче) код рисует вот такое окно: ![]()
Буду рад если поможет! Удачи! Это сообщение отредактировал(а) Lеstat - 25.5.2008, 01:03 |
|||
|
||||
| bronislav |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 334 Регистрация: 29.1.2008 Где: Украина::Донецк Репутация: нет Всего: 3 |
Никто, не спорит, что с помошью библиотеки glut все это делается на раз. Но, вопрос то был в создании с помошью MFC. Да и еще я бы не советовал использовать glut, ибо она есть не на всех компах и от этого приложение становиться не переносимымм. И glut не очень хорошо сделана так, что для серьезных приложений не рекомендуется ее вообще использовать.
В Универе у нас за использование glut снижали оценки. -------------------- ![]() иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes |
|||
|
||||
| Reptor |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1213 Регистрация: 29.12.2004 Репутация: нет Всего: 0 |
bronislav, я всеровно что то не так делаю и ничего у меня не выходит. Там так много файлов и не моге даже толком запустить.
Добавлено через 14 минут и 24 секунды
А что тогда использовать?? И подскажите как такое луче сделать.?? Это моё первое прилоджение и я мало что понимаю ещё в этой области. Подскажите пожалуйта. |
|||
|
||||
| Reptor |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1213 Регистрация: 29.12.2004 Репутация: нет Всего: 0 |
Да и выходит что мне не обязательно MFC и OpenGL я просто подумал что подругому никак. Мне нужен верный путь
|
|||
|
||||
| bronislav |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 334 Регистрация: 29.1.2008 Где: Украина::Донецк Репутация: нет Всего: 3 |
Там в архиве проект для VS 2003, запускаешь проект и компилируешь. Посмотри уроки от NeHE тут, а тут перевод. В принципе можешь и glut использовать чтобы понять как рисовать, но если ты захочешь сделать что-то серьезное, а не просто попробывать, то надо будет писать инициализацию на чистом API. -------------------- ![]() иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes |
|||
|
||||
| Reptor |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1213 Регистрация: 29.12.2004 Репутация: нет Всего: 0 |
bronislav, а можеш а 2-ух словах расказать что значит на чистом API писать инициализацию.
|
|||
|
||||
| bronislav |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 334 Регистрация: 29.1.2008 Где: Украина::Донецк Репутация: нет Всего: 3 |
Т.е. не использую дополнительных библиотек типа glut и им подобных
В первом уроке от NeHE объяснено подробнее -------------------- ![]() иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes |
|||
|
||||
| Rickert |
|
|||
|
Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: 2 Всего: 52 |
bronislav, нет, чистый API имеется ввиду winAPI, без MFC. А человеку нужен именно MFC.
Reptor, почему ты проигнорировал моё сообщение? Ничем, абсолютно ничем не будет отличаться инициализация OGL в WinAPI и MFC, заисключение указания контекста устройства: в winAPI - это у тебя оконо, а в MFС ты спокойно можешь привязать его к любому объекту, который имеет метод GetDC(); -------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
| bronislav |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 334 Регистрация: 29.1.2008 Где: Украина::Донецк Репутация: нет Всего: 3 |
Rickert, был задан вопрос и я дал на него ответ. Насколько я понял Reptor хочет изучить OGL, а не MFC
Это сообщение отредактировал(а) bronislav - 26.5.2008, 06:10 -------------------- ![]() иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes |
||||||
|
|||||||
| Reptor |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1213 Регистрация: 29.12.2004 Репутация: нет Всего: 0 |
Rickert, не в коем случаи не проигнорировал. Просто проблема в том что я не знаю как это сделать.
Ааа ребята я совсем запутался что мне использовать и как луче Раньше я думал что это возможно сделать только через MFC так как в нём можно создавать окна и разные элементы управления а оказыывается это плохо для сложных приложений. Пожалуста подскажите что мне делать сроки идут а я даже не знаю ещё какие технологии использовать или MFC с OpenGL или WinApi с OpenGL Вот bronislav, и ещё я смотрел те уроки так там используется WinApi и GLUT же тоже используется или не так что то понял?? Единственое что мне понятно так это то что мне не подхолит GLUI так как там не все элементы управления есть (ну или может я их просто не отыскал) bronislav, а ты ж мне пример на MFC давал - чем это хуже чем WinApi?? Подскажите что мне надо использовать какие технологии какие библиотеки для написания серьозного приложения с OpenGL и окном с различными кнопками менюшками и тому подобное??? У меня паника я запутался окончательно |
|||
|
||||
| bronislav |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 334 Регистрация: 29.1.2008 Где: Украина::Донецк Репутация: нет Всего: 3 |
В университете на парах мы делали через MFC, а я когда разбирался более глубоко и писал пробный движок использовал WinAPI. И вовсех графических движках используется WinAPI. А если используешь MFC, то появляются не нужные зависимости. -------------------- ![]() иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes |
|||
|
||||
| Reptor |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1213 Регистрация: 29.12.2004 Репутация: нет Всего: 0 |
Хорошо я так понимаю что надо использовать WinApi с OpenGL.
Я просто не видел как на WinAPI делать различные кнопки, тулбары и тому подобное?? Может есть какаято хорошая литература по этому поводу? |
|||
|
||||
| bronislav |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 334 Регистрация: 29.1.2008 Где: Украина::Донецк Репутация: нет Всего: 3 |
Поиск по форуму. Эта тема поднималась уже не один раз. -------------------- ![]() иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes |
|||
|
||||
| Rickert |
|
|||
|
Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: 2 Всего: 52 |
Reptor, www.firststeps.ru там есть уроки по VisualC++
-------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
| Lenkov |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 61 Регистрация: 27.5.2008 Репутация: нет Всего: нет |
Можно ли сделать то же самое (что сделано с помощью GLUI), только на Visual C++ и что бы потом в этом окне был у меня 3D проект?
|
|||
|
||||
| bronislav |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 334 Регистрация: 29.1.2008 Где: Украина::Донецк Репутация: нет Всего: 3 |
Что именно тебе надо?
Окно в котором отображается 3d сцена, или в этом окне еще должны быть менюшки, кнопочки всякие? -------------------- ![]() иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes |
|||
|
||||
| Lenkov |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 61 Регистрация: 27.5.2008 Репутация: нет Всего: нет |
мне нужно окно 3D а так же разные кнопки и много чего другого (элементы диалога) в одном приложении, ну почти как в том примере.
|
|||
|
||||
| bronislav |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 334 Регистрация: 29.1.2008 Где: Украина::Донецк Репутация: нет Всего: 3 |
Ну вот так и испольуй как в том примере.
Про инициализацию на WinAPI я писал, что испольуется если надо создать окно, без элементов диалога. Потому, что элементы диалога можно создать и с помошью WinAPI, но "овчинка выделки не стоит". Больше сил потратить на обработку событий. Используй какой-нибудь GUI toolkit, и там инициализируй. Хотя в некоторых toolkit'ах инициализация уже ниписана, надо только соответствуюший метод вызвать. -------------------- ![]() иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes |
|||
|
||||
| Lenkov |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 61 Регистрация: 27.5.2008 Репутация: нет Всего: нет |
||||
|
||||
| kapralov |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 28.11.2007 Репутация: нет Всего: нет |
Народ! всем привет , вот созал окошко в opengl, таким макаром:
файлик Main.cpp
файл main.h
ну и наконец init.cpp
в конечном итоге получаю просто черное окно , вопрос как в это окно я могу вставить кнопу , или текстовое окно? с помощью winapi |
||||||
|
|||||||
| Lenkov |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 61 Регистрация: 27.5.2008 Репутация: нет Всего: нет |
скажите какую книгу лучше приобрести, для того что бы писать такие проги!
|
|||
|
||||
| kapralov |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 28.11.2007 Репутация: нет Всего: нет |
Ладно черт с ним в winapi пока, у меня стоит VS2003 скачал с сайта библиотеку glaux что то никак не могу ее заюзать , какие файлы куда надо перенести , чтоб оно работало , хоть примеры посматреть
|
|||
|
||||
| bronislav |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 334 Регистрация: 29.1.2008 Где: Украина::Донецк Репутация: нет Всего: 3 |
Ты хочешь создать в окне елементы управления, как объекты 3d сцены? Тогда тебе надо писать свои GUI классы.
Приведенный выше код не есть пример для подражания. Для начала загляни в эту и эту темы. -------------------- ![]() иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes |
||||
|
|||||
| Rickert |
|
|||
|
Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: 2 Всего: 52 |
Не тема, а мусорка.
Это сообщение отредактировал(а) Rickert - 30.5.2008, 07:35 -------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
| Lenkov |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 61 Регистрация: 27.5.2008 Репутация: нет Всего: нет |
народ помогите. Ошибка auxIdleFunc( display ); error C2065: 'display' : undeclared identifier. Не знаю как еще попробовать.
|
|||
|
||||
| bronislav |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 334 Регистрация: 29.1.2008 Где: Украина::Донецк Репутация: нет Всего: 3 |
Полностью согласен. Просьба к модератору закройте тему. Для дополнительныйх вопросов надо создавать отдельные темы. -------------------- ![]() иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes |
|||
|
||||
| kapralov |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 28.11.2007 Репутация: нет Всего: нет |
Lеstat я просто прошу объяснить как мне использовать в vs2003 библиотеку GLUI , скачал версию GLUI 2.2 , как ее использовать, вот и все что я хотел узнать , а насчет мусорки , не нравица не отвечайте и не выпендривайтесь. Форум для того и создан чтоб новички могли спросить что да как.
|
|||
|
||||
| bronislav |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 334 Регистрация: 29.1.2008 Где: Украина::Донецк Репутация: нет Всего: 3 |
В правилах сказано, что для каждого вопроса надо создавать новую тему. Так что... В данном топике был вопрос про использование MFC + OpenGL Для всех остальный вопросов создавайте отдельные топики -------------------- ![]() иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes |
|||
|
||||
| Rickert |
|
|||
|
Ситхи не пройдут! ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3356 Регистрация: 11.7.2006 Где: Лакрима Репутация: 2 Всего: 52 |
Модератору отправил уже репорт - пока молчат.
-------------------- Ни что не внушает сна крепче, чем день приисполненный трудов! |
|||
|
||||
![]()
|
| Вы можете найти полезным что... | |
|
|
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Мультимедия, OpenGL/DirectX | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |