fle game engine - движок для создания игр
fle game engine - движок для создания игр


Balls and holes PC game / Balls and Holes PC игра
Сегодня
18 января 2018
16:45
Вход Регистрация Забыли пароль ?

megainformatic - как создать инсталлятор для собственной cms
Как создать инсталлятор для собственной cms ? Итак, Вы написали свою cms. Если нет - можете взять мою бесплатную - megainformatic cms free Правда для megainformatic cms free инсталлятор не требуется вообще !!! Сайт созданный на базе неё работает без my sql только на файлах. Поэтому вся установка сводится к коп
подробнее...

Теги

создание сайтов, создание игр, дизайн, игры, информатика, уроки photshop, php, c++, музыка, delphi, cms, робосайт

Статьи сайта

Система Автоматизации Доставки Электронных Заказов megainformatic cms e-pro

megainformatic cms e-pro Автоматизация Обработки Уведомлений о Заказах по партнерским программам

megainformatic cms e-pro Автоматизация Обработки Уведомлений о Заказах по партнерским программам

webinformatic: Музыкальная страничка трэкера

megainformatic - Создание музыки и звука

webinformatic: Создание музыки и звука: урок 2

megainformatic - Создание музыки и звука: урок 3 - настройка Impulse Tracker для работы в WinXP

megainformatic - Создание музыки и звука: урок 4 - Введение в Mod Plug Tracker

megainformatic - Создание музыки и звука: урок 5 - Первая композиция в Mod Plug Tracker

megainformatic - Создание музыки в Impulse Tracker 2.14 - урок 6 - Ввод Нот

megainformatic - Создание музыки в Impulse Tracker 2.14 Первая мелодия

megainformatic - Создание музыки в Impulse Tracker 2.14 Настройка параметров сэмплов

megainformatic - Создание музыки и звука: теория и практика создания трэкерской музыки

megainformatic - Инструкция по оплате услуг средствами WebMoney

Основы работы в Microsoft Visual Studio 2008 и DirectX 9 (DX SDK Aug 2008)

Введение в программирование игр на С++ для платформы DirectX 9 - Первый старт

Введение в программирование игр на С++ для платформы DirectX 9 - Меняем иконку приложения

Введение в программирование игр на С++ для платформы DirectX 9 Добавляем другую модель

Введение в программирование игр на С++ для платформы DirectX 9 Программирование игр в directx. Hello, World!

Введение в программирование игр на С++ для платформы DirectX 9 Разбираем конструкции языка C++ на примере работы в Microsoft Visual Studio 2008

Разбираем конструкции языка C++ на примере работы в Microsoft Visual Studio 2008 - Урок 1 Основные операторы языка C++

Разбираем конструкции языка C++ на примере работы в Microsoft Visual Studio 2008 - Урок 1 Основные операторы языка C++ (часть 2)

Урок 2 Написание Win32-приложений. Обзор стартового кода Win32-приложения. Добавление ресурса текстовая строка

Урок 3 Создание Win32-приложений. Создание меню и простых диалоговых окон.

Урок 4 Создание Win32-приложений. Стандартные диалоги. Изучение сопутствующих конструкций языка. Консольные Win32-приложения. Указатели. Ссылочный тип. Массивы.

Урок 4 часть 2 Win32. Диалог выбора цвета, смена цвета фона окна приложения

Написание приложения DirectX9c + MFC в среде MSVS 2005

megainformatic - Создание компьютерных игр на основе DirectX в среде Delphi 6, 7

megainformatic - Создание компьютерных игр на основе DirectX в среде Delphi 6, 7 - Почему избраны DX8 и Delphi ?

megainformatic - Основы IDirectMusic8 в среде Delphi6-7

megainformatic - Основы DirectInput8 в среде Delphi 7

megainformatic - Основы DirectSound8 в среде Delphi6-7

megainformatic - Плагин для 3DS MAX из DX9 SDK

megainformatic - Мастер-класс: Создание модели и текстуры Коммандного Центра (как в StarCraft 2)

megainformatic - Мастер-класс: Создание модели и текстуры Коммандного Центра (как в StarCraft 2) Часть 2

megainformatic - Мастер-класс: Создание модели и текстуры Коммандного Центра (как в StarCraft 2) Часть 3

megainformatic - Мастер-класс: Создание модели и текстуры Коммандного Центра (как в StarCraft 2) Часть 4

megainformatic - Мастер-класс: Создание модели и текстуры Коммандного Центра (как в StarCraft 2) Часть 5

megainformatic - Мастер-класс: Создание модели и текстуры Коммандного Центра (как в StarCraft 2) Часть 6

Система управления сайтом - megainformatic cms e-shop

Система управления сайтом - megainformatic cms e-shop

Система управления сайтом - megainformatic cms e-shop

megainformatic - Уроки 3ds max - Введение в 3ds max

megainformatic - ГАЛЕРЕЯ 3D-моделей

megainformatic - СОЗДАНИЕ МАКЕТА ПОМЕЩЕНИЯ

megainformatic - Создание макета помещения - этап 2

megainformatic - МОДЕЛИРОВАНИЕ НА УРОВНЕ МНОГОУГОЛЬНИКОВ

megainformatic - СОЗДАНИЕ ПРЕДМЕТОВ ОБСТАНОВКИ ПОМЕЩЕНИЯ

megainformatic - Моделирование обстановки помещения

megainformatic - Создание модели автомобиля

megainformatic - Создание текстурной развертки для модели автомобиля

megainformatic - Создание анимации вращающихся колес автомобиля

megainformatic - игра Нечто: Необъяснимое и в плену желаний

megainformatic - Основы 3D-анимации, экспорт скелетной анимации

megainformatic - Подготовка модели к использованию скелетной анимации

megainformatic - Продолжаем Создание скелета для данной модели

Creating game on fle game engine - Simple game / Создание игры на fle game engine - Simple game

8 - Фон переднего плана



Закрываем часть сцены от пустот при помощи черной текстуры с прорезью, ограничиваем перемещение сцены.

read paper in english

Пришло время разобраться с тем, как скрыть часть сцены, чтобы не было видно пустого пространства при её перемещениях.





Содержание

страница 1 - Спрайты

страница 2 - Объекты

страница 3 - Наложение объектов

страница 4 - Код - Настройка параметров Scene Editor fge и написание кода для вывода спрайта шарика в вашем первом игровом приложении

страница 5 - Отображаем прыгающий шарик

страница 6 - Загрузка игровой сцены

страница 7 - Перемещения игровой сцены

страница 8 - Закрываем часть сцены от пустот при помощи черной текстуры с прорезью, ограничиваем перемещение сцены

страница 9 - Реализуем корректное попадание в ямы и около ям - определяем границы спрайтов ям и спрайта прыгаюшего шарика

страница 10 - Проверка столкновений

страница 11 - Игровой счёт, звуки, музыка

урок #2 страница 1 - Создание новых сцен для игры simple game, расширенная версия simple game extended

13. Скроллинг больших локаций

14. использование переменных в игре на c++ directx 9c

15. Мульти анимация







Чтобы закрыть часть сцены мы сделаем 2 вещи.

1) Создадим квадратную текстуру - просто черную, закрывающую всю сцену, но содержащую в себе прорезь, через которую была бы видна эта часть сцены.



Используя Photoshop создадим изображение 1024х1024 пиксель

Заполним черным цветом

Определим размеры 800х600 окна нашего приложения

Я показал это пурпурным цветом -

В области пурпурного цвета разместим черный квадрат 400х400 пиксель - это будет прорезь

Всё остальное зальем белым цветом

Данный слой используем как альфа маску

Т. е. всё что белое - это будет непрозрачным, черное - прозрачным.

Сохраним данный файл как tga.

2) Ограничим перемещение сцены - т. к. если она будет двигаться свободно от края до края экрана, то квадрат с прорезью не поможет.

Для этого в модуле start.cpp методе -

CD3DGameApp::ChangeGameCursorPos

Изменим код -

LONG cursor_spr_left_limit = 218;//0;
LONG cursor_spr_top_limit = 200;//0;
LONG cursor_spr_right_limit = 587;//(LONG)m_dwScreenWidth;
LONG cursor_spr_bottom_limit = 367;//(LONG)m_dwScreenHeight;


Еще конечно в модуль game_sprite.h нужно добавить код для загрузки текстуры с рамкой.

Для этого добавим туда такой код - #define SpriteTexIndex 0 //это строка после которой надо добавить

#define FrameTexIndex 1 //это строка которую надо добавить

void Anim(); //это строка после которой надо добавить

void DrawFrameTex(); //это строка которую надо добавить



В модуль game_sprite.cpp добавим реализацию описанного метода DrawFrameTex

В самый конец модуля добавим такой код -

void CGameSprite::DrawFrameTex()
{
if ( m_pSprite == NULL )
return;

m_pSprite->Begin( D3DXSPRITE_ALPHABLEND );

LPD3D9SPRITE SpriteSprite = NULL;

SpriteSprite = GetGameSprite(FrameTexIndex, m_pTextures);

if ( SpriteSprite != NULL )
{

SpriteSprite->m_v2Vector2ScreenPos.x = SpriteSprite->m_Position.x;
SpriteSprite->m_v2Vector2ScreenPos.y = SpriteSprite->m_Position.y;

D3DXVECTOR2 vPos;
vPos.x = SpriteSprite->m_Position.x;
vPos.y = SpriteSprite->m_Position.y;

Vector2Screen(&vPos, &SpriteSprite->m_v2Vector2ScreenPos);

SpriteSprite->Draw2(SpriteSprite->m_v2Vector2ScreenPos.x,
SpriteSprite->m_v2Vector2ScreenPos.y,
SpriteSprite->m_Position.z,
SpriteSprite->m_Scale.x,
SpriteSprite->m_Scale.y,
255);

}

m_pSprite->End();
}




В папку

simple_game\Media\textures\simple_game\ball\



добавим созданную текстуру - файл frame_tex.tga



А в файл

simple_game\Media\textures\simple_game\tex_list.txt

Добавим её описание -

ball\frame_tex.tga; -1.0f; 1.0f; 0.759f; 1.0f; 1.0f; 1024; 1024; 0; 0; 1; 1.0f; 0.0f;

Там теперь будет две записи -

ball\jump.tga; 0.5f; 0.5f; 0.758f; 0.5f; 0.5f; 64; 128; 0; 0; 4; 8.0f; 14.0f;
ball\frame_tex.tga; -1.0f; 1.0f; 0.759f; 1.0f; 1.0f; 1024; 1024; 0; 0; 1; 1.0f; 0.0f;

Первая относится к описанию спрайта нашего прыгающего шарика, а вторая - к рамке, закрывающей часть сцены.

Также обратите внимание, что для шарика я задал координату z = 0.758f

А для рамки - z = 0.759f;

Это сделано для того, чтобы шарик появлялся над рамкой, но в то же время все объекты сцены оказывались за ней.

Как это выглядит визуально Вы сейчас увидите.

Если Вы сделали всё правильно, то после сборки проекта и его запуска Вы увидите на экране такую сцену.



В заключение внесу небольшую поправку - для шарика надо задать z = 0.761f, иначе он не будет перекрываться верхней частью ямы, имитирующей падение.

ball\jump.tga; 0.4f; 0.5f; 0.761f; 0.5f; 0.5f; 64; 128; 0; 0; 4; 8.0f; 14.0f;


В этом случае шарик уже будет перекрываться черной рамкой если выйдет за её пределы. Но мы это оставим пока как есть. К тому же, по-аналогии с ограничением перемещений сцены, мы можем ограничить и перемещения шарика.

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

Я решил немного облагородить внешний вид нашей игры и черный фон заменил на более интересный - игра стала выглядеть привлекательнее.



[назад] [далее]



 

Оставленные комментарии



fle game engine - движок для создания игр
fle game engine - движок для создания игр


Something: Unexplained 2 captive of desires / Нечто: Необъяснимое 2 в плену желаний
Костя Коробкин Комикс Коллекционное издание - 6 комиксов, 81 страница, 220 mp3 треков
megainformatic Размещение баннерной рекламы у нас
Время загрузки: 0,1079