forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   3D-программирование (http://forum.boolean.name/forumdisplay.php?f=12)
-   -   Управление объектом с помошью мышы (http://forum.boolean.name/showthread.php?t=4270)

Den® 28.08.2007 01:21

Управление объектом с помошью мышы
 
Доброго времени суток!

Делал ли кто-нибудь управление объектом в 3д с помощю мыши ?

Типа указываеш на плоскости мышью точку и объект перемешается в указанную точку.

Если у кого нибудь есть готовый пример или кто-нибудь может чем нибудь помоч то буду рад.

С уважением, Денис!

moka 28.08.2007 01:53

Re: Управление объектом с помошью мышы
 
Den®, я тебе теорией помогу, а ты сам сделаешь (опыта наберёшся) идёт?
Значит что у нас есть, Объект который должен придти на точку, и точка куда ему придти.
Значит при загрузки игры создадим точку куда придти, это будет простой Пивот:
pTarget=CreatePivot()
Нам нужно перемещать току, но нужно определить куда нажимает игрок. Значит устанавливаем объекту на который можно нажимать Пикабле, коммандой EntityPickMode Entity,2 (2 потомучто нужна полигональная геометря для нажатий).
Далее уже в главном цикле, мы будем получать координаты нажатий, коммандами CameraPick(Camera,X%,Y%), PickedX(), PickedY(), PickedZ(). Этими коммандами ты получишь координату на которую игрок нажимает.
При условии что нажата мышь, двигай pTarget в координаты полученные коммандами Pick. Далее, для того что перемещаешь: используй PointEntity() функцию чтобы направить персонажа на pTarget, потом чтобы он не наклонялся незабуть его покрутить: RotateEntity Entity,0,EntityYaw(Entity),0 - мы выравниваем персонажа так чтобы он не наклонялся вперёд, а только крутился вокруг горизонтальной оси. И далее просто двигаем на точку MoveEntity Entity,0,0,1.

Вот и всё, желаю удачи ;)

MiXaeL 28.08.2007 22:55

Re: Управление объектом с помошью мышы
 
Не EntityPoint(), а PointEntity()


Часовой пояс GMT +4, время: 15:48.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot