Создаем танчики (Урок 2)
[ Поделиться ]
[ Спасибо! ]
|
22:36
Здравствуйте пользователи сайта что пользуются 3d Rad то есть 2-3 человека, сейчас я бы хотел бы продолжить мою давно написанную статью о том как разрабатывать игру типа танчики. Данный урок это продолжение предыдущего урока.Данный урок будет краток, напоминаю что в моих уроках я сначала даю по этапные действия а за тем я даю после пояснения о том что мы сделали и как оно работает.Урок разделен на три части:
В первой части урока я указываю то какие инструменты нам понадобятся.
Во второй части урока я описываю по этапные действия
В третий части урока я даю пояснения.
Весь материал указанный в данном уроке был проверен на движке , с полноценной работоспособностью,если же у вас не работает по каким то причинам то это только из за вас,выполняйте все действия поэтапно не пропуская ни одного шага.
В этом уроке используется терминология и материалы из прошлого урока для уточнения терминологии читайте материал этой статьи.Удачи и в добрый путь:
Для урока нам понадобится:
1)Материал прошлого урока.
2)Script.
3)Joint.
Для начала запускаем то что мы сделали в прошлом уроке и до красим парой штрихов.
Создаем Script.Добавляем прямо к основанию projectile объект RigidBody.И туда же в то же место добавляем объект joint.Соединяем RigidBody с:
Joint
Projectile
CamChase
Car
Script.
В script прописываем данный код:
Код
Quaternion CameraOrientation;</div><div>void Main()</div><div>{</div><div> if (iInitializing())</div><div> {</div><div> iMouseLookSet(0,0);</div><div> }</div><div> iQuaternionFromEulerAngles(CameraOrientation,iMouseLookX(),iMouseLookY(),0,"xyz");</div><div> </div><div>iObjectOrientationSet(OBJ_47,CameraOrientation);</div><div><br></div><div> if(iMouseButtonClick(0))</div><div> {</div><div> iObjectStart(OBJ_3);</div><div> }</div><div>}
CamChase отсоединяем от Car.Script соединяем с projectile.
В настройках Joint ставим данные параметры:
Joint Type - Ball.
Поздравляем - вы совершили пару несложных действий которые мне пора пояснить:
Наш RigidBody (в форме шара (ball)) в этом случае твердое тело играет роль башни и через код прописанный в скрипте
она поворачивается за камерой, и все присоединенные объекты вроде projectile поворачиваются за ней ибо зависят от неё.
Главную роль тут играет объект Joint - присоединение,он присоединяет твердые тела в том то и чудо того что башня двигается за
"танком" но камера зависит от турели а не от положения car "танка"...Теперь поясню код по частям:
Код
Quaternion CameraOrientation;</div><div>void Main()</div><div>{
Регулирует тип кода- это код ореинтации камеры,void Main это начало кода.
Код
{</div><div> if (iInitializing())</div><div> {</div><div> iMouseLookSet(0,0);</div><div> }
Регулирует начальную позицию турели/камеры/мыши.(0,0)
Код
iQuaternionFromEulerAngles(CameraOrientation,iMouseLookX(),iMouseLookY(),0,"xyz");</div><div> </div><div>iObjectOrientationSet(OBJ_47,CameraOrientation);
Регулирует зависимость положение мыши от положения камеры/турели/ball.По x y z.
Код
if(iMouseButtonClick(0))</div><div> {</div><div> iObjectStart(OBJ_3);</div><div> }</div><div>}
Регулирует начало стрельбы - если нажата ЛКМ он запускает объект с переменной OBJ_3 то есть projectile.
Категория: 3D RAD | Просмотров: 4873 | Добавил: _¿_ (28.02.2013) | Рейтинг: 5.0/1 |
HTML ссылка на материал: BB ссылка на материал: |
Всего комментариев: 0 | |