[GcUp.ru]

Форма входа
Логин:
Пароль:

Меню сайта

Categories
Создание игр [170]
Статьи об общих понятиях связанных с созданием игр
Движки и Гейммейкеры [85]
Статьи о программах для создания игр
Игры [39]
Статьи об играх, в том числе и сделанных на гейммейкерах
Софт [25]
Различные программы, в том числе в помощь игроделам
Разное [61]
Статьи, которые не вошли в определённые разделы

Главная » Статьи » Создание игр

Урок по 3D Rad - Делаем компас
Итак, всех рад снова видеть здесь, читающих мою третью статью.
Я что-то вот подумал, а ведь людям может пригодиться ориентация в игре? (поймите правильно). Ведь бывают квесты типа: "Убей орка на Западе!"? А откуда мы знаем где у нас Север, Восток, Запад и Юг?

Так вот, прочитав мою статью, вы больше не потеряетесь на просторах, Вашего Terrain.
Приступим! Действия все буду писать поэтапно, как в своей предыдущей статье.

Первый этап. *барабанная дробь*
Добавим в наш новый проект Skybox и Terrain. в этой статье сочту излишеством, объяснение того как добавлять объекты. Забыл напомнить про G-Force, он тоже очень важен. Потом добавим Cam1StPerson и привяжем её к G-Force и Terrain.

Этап второй. Картииинки! Ля-ля-ля-ля-ля-ля-ля-ляяяя-ля
Добавим Sprite, и поменяем нашу девочку на стрелочку. Думаю из второй статьи все помнят её название. В настройках "стрелочки", где Width/height пишем [ 2 ] [ 8 ];

Теперь добавим четыре TextPrint. Это будут четыре буковки, N-North;E-East;S-South;W-West; Думаю все знают как их расположить. И теперь делаем стрелочку посередине этих буковок, и чтобы она указывала на север, то есть N.

Этап третий. Ура FINAL!
Добавляем наш любимый Script
Пишем в нем вот такое заклинание:
//Orient a sprite based on current heading of a Cam1StPerson object
void Main()
{

Quaternion spriteOrientation;
Quaternion x90Rotation;
Quaternion camOrientation;
iQuaternionFromEulerAngles(x90Rotation,-90,0,0,"xyz"); //create a quaternion rotating -90 degs about X
iObjectOrientation(OBJ_3,camOrientation); //get cam orientation
iQuaternionMultiply(spriteOrientation,camOrientation,x90Rotation); // rotate the quaternion to transform from XZ plane to XY plane
iObjectOrientationSet(OBJ_0,spriteOrientation);

}

Ставим галочку от Script к Cam1StPerson и "стрелочке" Sprite.
Открываем Script слева видим:
[OBJ_??] - Sprite
[OBJ_??] - Cam1StPerson

Вместо ?? у вас должен быть ID объекта.
Теперь смотрим ID у Sprite и пишем его вот сюда:
(OBJ_0,spriteOrientation) вместо цифры 0.
Теперь смотрим ID у Cam1StPerson и пишем его вот сюда:
(OBJ_3,camOrientation) вместо цифры 3.

Все! Надеюсь будет полезно для Вас. Ваш, Don_Vito.

Вот демка.


Всего комментариев: 4
4 (Sools)   (25.01.2011 18:56)
Кул ,правда я по другому сам компас сделал happy

3 Lorderon   (20.09.2010 00:04)
Это, то что мне надо! Ещё бы с текстурками разобраться... wacko

2 Sasha2033   (12.09.2010 00:50)
Спасибо большое!

1 EKRON   (08.09.2010 19:11)
Большое спасибо за статью! happy

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]

Полная версия сайта