| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > Камера в OpenGL |
| Автор: Evgesha 8.2.2014, 21:05 | ||
| Здравствуйте Кто подскажет как сделать управление камеры мышкой Чтото уменя крышняк уже едит Вот кусок кода
|
| Автор: tzirechnoy 9.2.2014, 11:11 |
| Я, конечно, вижу минимум одну вроде как ошыбку в Вашэм коде -- но можэт Вы сами словами расскажэте, что Вам не нравится? А то можэт это конкретно и не ошыбка, а так задумано. |
| Автор: Evgesha 9.2.2014, 19:43 |
| Да прошу прощения что сразу не расказалю Было такой ощущение что все понимают проблему ну ладно. Хотелось бы крутить мышкой объект если мышка в области панели и удержаной левой кнопки мышки если мышка в области панел и левая кнопка отжата чтоб не крутилость но самое важное сам объект както крутиться не так как хочу хотелось бы как в играх а что за ошибка |
| Автор: tzirechnoy 10.2.2014, 12:35 | ||
Ага. То есть крутится. Тогда я, можэт быть, угадал ошыбку. Дело в том, что glRotate*() поворачивает текущую сцэну. То есть у Вас угол поворота -- накапливается в переменных lookupdown и heading, а потом на этот угол доворачивается ужэ текущая сцэна. То есть, фактически, в lookupdown и heading получается скорость поворота, а не угол, как Вы, вероятно, планировали. В общем, измерения движэния мышы накапливаются дважды -- и в переменных и в матрицэ opengl. Да, если всё ещё непонятно -- попробуйте просто ничего не накапливать в lookupdown/heading, а просто крутить на oldx - Mouse->CursorPos.x |
| Автор: SVN74 10.2.2014, 14:22 |
| Зачем изобретать велосипед? В нормальных движках это пишется одной строкой... CONTROL CAMERA USING ARROWKEYS |
| Автор: baldina 10.2.2014, 14:31 |
а если товарисч пишет сам движок? |
| Автор: SVN74 10.2.2014, 14:36 |
Тогда все пожелаем ему удачи... |
| Автор: baldina 10.2.2014, 14:38 |
| Evgesha, ты пытаешься крутить на углы эйлера, что приводит к http://en.wikipedia.org/wiki/Gimbal_lock, и допустимо только при небольших углах прогрессивный путь - использование идеи проекции движения мыши на шар или цилиндр, см. http://nehe.gamedev.net/tutorial/arcball_rotation/19003/ |
| Автор: Evgesha 10.2.2014, 18:18 | ||
Порекомендуй нормальный движок для XE 2 c++ Builder |
| Автор: SVN74 10.2.2014, 21:05 |
Вот не могу понять, почему вы так уперлись в XE 2 c++ Builder, вам все равно игры придется писать в консольном режиме, а там у всех сред одинаково (все пишется с чистого листа)... http://forum.vingrad.ru/forum/topic-375647.html |
| Автор: tzirechnoy 11.2.2014, 10:39 |
| Да с чего вы все взяли, что у него игра? Если игра -- то да, лучшэ взять какой-нибудь опенсурсный движок для начала, и писать как все на lua. Но у меня все использования OpenGL совсем не были играми. |
| Автор: Evgesha 11.2.2014, 16:57 |
| да действительно с чего вы взяли что игра мне надо рисовать определеный объект и крутить его мышкой и маштабировать предложения и идеии а лучше рабочий код |
| Автор: baldina 12.2.2014, 09:02 |
| arcball поглядел? |
| Автор: Evgesha 12.2.2014, 15:46 |
| Да уже пробовал но чтото совсем не получаеться может кто расталкует куда что писать башка совсем не варит |
| Автор: baldina 12.2.2014, 16:05 |
| на nehe есть работающие примеры Добавлено через 2 минуты и 18 секунд погляди внизу страницы, там исходники под разные компиляторы |
| Автор: Evgesha 9.3.2014, 19:48 |
| Всем спасибо буду разбираться. |
| Автор: Evgesha 19.3.2014, 10:55 |
| Не могу разобраться с примером ArcBall Подмогните пожалуста |
| Автор: baldina 19.3.2014, 17:44 |
| в чем проблем? |
| Автор: Evgesha 20.3.2014, 05:05 |
| Все компилется но ничего не крутиться Может пример для XP2 кто даст Спасибо |
| Автор: baldina 20.3.2014, 09:46 |
| все компилицца и крутицця и в xp и в w7 |
| Автор: Evgesha 24.3.2014, 19:41 |
| Да ето я понимаю пример работает. Я пробовал в свою прогрмму вставить (RAD Studio XE2 Builder) Поэтому и прошу помощи |