Обзор мышкой в 3D

  Вход на форум   логин       пароль   Забыли пароль? Регистрация
On-line:  

Раздел: 
Game Maker Форум / Вопросы и Ответы (Для Опытных) / Обзор мышкой в 3D

Страницы: 1  новая тема

Автор Сообщение

частый гость
Группа: Участники
Сообщений: 29
Добавлено: 05-12-2005 15:35
Разрабатываю 3D-движок для стратегий на ГМ и возникла проблема. Сделал вращение камеры мышкой, но для выбора юнита недостаточного сравнения x и y с mouse_x и mouse_y. Кажется, требуются какие-то математические формулы. Если кто может, напишите код проверки координаты мышки над поверхностью (причем она не ровная).

магистр
Группа: Сообщество GM
Сообщений: 462
Добавлено: 07-12-2005 00:18
вообще то mouse_x и mouse_y - это конкретно координаты мыши в ИГРЕ, а не в окне. Дл конкретно окна есть window_get_mouse_x(y)/Если у тебя как то по другому, то напиши. А вообще, можно сделать чтобы за мышкой следил объект, то есть все время в точку мыши двигаося, и при столкноввении объекта с юнитом мышка могла юнита выбрать.

частый гость
Группа: Участники
Сообщений: 29
Добавлено: 07-12-2005 16:08
Здесь немного другая проблема. Взять например 3Д макс, когда ты хочешь создать кубик на перспективе, ты нажимаешь на какую-либо точку и вершина при этом создается на проскости прямо по мышкой, а не на ее координатах. У меня же такое сделать не получается.

магистр
Группа: Сообщество GM
Сообщений: 462
Добавлено: 04-04-2006 19:15
ах вот как хитро. Ну тут можно через repeat. Во первых, нужно знать три координаты мыши в пространстве игры. То есть вот пользователь видит ее на экране, а в игре она находится над всеми объектами, между ними ипользователем. Ну ты понял. И по функции repeat пускаешь луч от мышки по направлению от пользователя. Если точка столкнулась с кем либо, то тот объект и выделяем
repeat(9999){
x+=cos(D*pi/180)
y-=sin(D*pi/180)
z+=cos(D*pi/180)
if ___{break}
}
D - это направление луча

частый гость
Группа: Участники
Сообщений: 29
Добавлено: 16-04-2006 12:45
А как найти координаты мыши в прстранстве? Для определения направления камеры я использую 2 направления - обычный direction и zdir (вертикальная направляющая, 180-вертикально вверх, 0-вниз, 90-горизонтально), зная координаты мыши относительно плоскости камеры, нужно узнать ее "обычные" координаты.

магистр
Группа: Сообщество GM
Сообщений: 462
Добавлено: 16-04-2006 13:20
Ты знаешь. Тут другой выход. В играх, в 3д стратегиях, лучше сделать для мыши трехмерный объект. И тогда он будет двигаться по экрану не в точку мыши, а по встроенным в игур формулам. К примеру, если двинуть мышь вверх, то тогда объект двигаем по оси Y и т.п.

Страницы: 1  новая тема
Раздел: 
Game Maker Форум / Вопросы и Ответы (Для Опытных) / Обзор мышкой в 3D

Отвечать на темы в данном разделе могут только зарегистрированные пользователи

Отвечать на темы могут только зарегистрированные пользователи

KXK.RU