[GcUp.ru]

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

Меню сайта

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

Главная » Статьи » Движки и Гейммейкеры

GlScene. Ландшафт и движение.
GlScene. Ландшафт и движение.

*Создайте новый проект.
*Киньте на форму компоненты: GlScene, GLSceneViever,GLCadancer, GLBitmapHDS.
*Создайте камеру. В Position укажите - 0,6,0.
*Создайте источник света. В Position - 0,5,0.
*Создайте карту высот. В данном случае это небольшой черно-белый рисунок на котором нарисованы линии(можете нарисовать в обычном Paint). Чем светлее линия, тем больше высота.
*Загрузите данный рисунок в компонент GLBitmapHSD через кнопки Picture, Load.
*Зайдите в GlScene и добавьте обьект TerrainRenderrer(AddObject->Mesh objects->Terrain Renderer).
*В свойстве HeightDataSource укажите GLBitmapHDS1.
*Direction - 0,1,0 - это сделает поверхность горизонтальной, а не вертикальной.
*В Scale 1,1,1.
*Теперь сделаем поверхность не такой скучной. Зайдите в свойство Material->Texture. Загрузите из своей картинки траву, или что вам там нужно. Уберите галочку с Disabled. Ok. Ландшафт готов. Если используете .jpg в uses добавьте модуль Jpeg.
*Теперь сделаем так, чтобы наш игрок мог двигаться по данной территории.
*Киньте на форму 2 компонента: GLNavigator и GlUserInterface.
*В GLNavigator->MovingObject выберите камеру - обьект который мы будем двигать.
*В GlUserInterface->GLNavigator - выберите GLNavigator1. В свойстве MouseSpeed указываем чувствительность мыши. Можете указать любое. Я использовал 20.
*Открываем свойство Form1 -> Form1Create нажав дважды по форме.Вписываем такую строку:
GLUserInterface1.MouseLookActive:=true; которая скрывает курсор.
*В uses добавляем модуль KeyBoard.
*Щелкаем дважды на компоненте GlCadencer1 и вписываем туда такой вот код:
if IsKeyDown(VK_ESCAPE) then Close;
if IsKeyDown(VK_UP) then GLCamera1.Move(10*deltaTime);
if IsKeyDown(VK_DOWN) then GLCamera1.Move(-10*deltaTime);
if IsKeyDown('VK_LEFT) then GLCamera1.slide(-10*deltaTime);
if IsKeyDown(VK_DOWN) then GLCamera1.slide(10*deltaTime);
GLUserInterface1.Mouselook;
GLUserInterface1.MouseUpdate;

Что позволит управление стрелками и обзор мышкой.

Вуаля. Проект готов.


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

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