|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
13.09.2019, 13:15 | #1 |
Пользователь
Регистрация: 10.11.2017
Сообщений: 56
|
Перемещение камеры при нажатой левой клавише мыши; проблемы с обзором мыши и видимостью указателя
Добрый день! У меня есть проект с кубом, кольцом и двумя кнопками из темы,
http://www.cyberforum.ru/cpp-builder/thread2496516.html который я перевёл на Delphi и доработал. Я нашёл три гайда по движению объектов с применением клавиатуры и мыши: https://studfiles.net/preview/7405961/page:6/ https://3d-sandbox.at.ua/news/dvizhe.../2011-02-06-13 https://infopedia.su/3x413c.html Пример с клавиатурой запустился и работает, но с мышью возникли проблемы. При запуске проекта указатель мыши "прячется", и теперь я не знаю, как сделать его видимым, чтобы дотянуться до кнопок переключения камеры и закрытия проекта, не потеряв прежний функционал. Помогает только клавиатура. Сначала я в OnCreate попытался у курсора насильно прописать свойства crDefault и crArrow - не помогло, он по-прежнему исчезает. Потом возникла мысль сделать то же самое не при создании формы, а при удержании левой клавиши мыши. Первым делом я снёс OnCreate и перенёс строку Код:
Код:
Код:
https://sourceforge.net/p/glscene/di...read/6dbf2dea/ но не понял, что это за объект CameraTarget. В одном примере слова Camera и Target разделены точкой, а в другом этой точки нет. Попробовал второй пример с даммикубом, помеченный как "Более простой", отсюда, https://infopedia.su/3x413c.html Но , хотя курсор мыши виден и кнопки переключаются, камера вращается сама по себе без моего ведома. Прогуглив ещё раз, я наткнулся на блог Артёма Калашника (https://vk.com/note40524438_9176925) и запустил примеры с регуляцией освещения в зависимости от положения камеры и вращением объектов вокруг оси Y. Всё заработало. Вращать ОБЪЕКТЫ я уже умею, но как двигать САМУ КАМЕРУ, чтобы курсор прятался и объект перемещался только при нажатой левой клавише мыши, а во всех остальных случаях курсор был виден, а обзор мышью - отключён? Исходный код проекта на Delphi: Код:
|
13.09.2019, 13:20 | #2 |
Пользователь
Регистрация: 10.11.2017
Сообщений: 56
|
Архив с проектом не загрузился, качайте здесь:
http://www.cyberforum.ru/delphi-mult...ad2499206.html |
13.09.2019, 16:35 | #3 |
Пользователь
Регистрация: 10.11.2017
Сообщений: 56
|
Пожалуйста, отзовитесь и киньте ссылки с примерами кода для моего случая! На киберфоруме мне вчера не ответили, и мне надоело огибать пороги поисковых систем и других форумов, переводить и перефразировать запрос с этой темой.
|
13.09.2019, 19:21 | #4 |
Пользователь
Регистрация: 10.11.2017
Сообщений: 56
|
С какими событиями работает свойство MouseLookActive компонента TGLUserInterface? И почему оно не работает с событиями OnMouseMove, OnMouseDown и OnMouseUp?
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
как заставить функцию выполняться при нажатой кнопке мыши | Arassir | JavaScript, Ajax | 3 | 02.11.2011 17:44 |
нажатие левой кнопки мыши | beygul | Помощь студентам | 6 | 13.05.2010 20:04 |
Программное перемещение указателя мыши по экрану. | LENINGOLD | Общие вопросы Delphi | 3 | 30.11.2009 01:58 |
PopupMenu левой кнопкой мыши | Pinya | Компоненты Delphi | 3 | 22.08.2008 19:23 |