ria pc game
translate to English   translate to Chinese
fle game engine - движок для создания игр
fle game engine - движок для создания игр


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

megainformatic - Создание изображений огня, воды, неба
        [к содержанию] [назад] [далее]       &
подробнее...

Теги

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

Статьи сайта

megainformatic - Уроки Fruity Loops Studio (FL Studio) - урок 3 - экспериментируем с композицией COLD

megainformatic - Что нужно знать для создания сайта ? Стандартные шрифты для сайта

megainformatic - Что нужно знать для создания сайта ? ASC II Коды символов

megainformatic - Уроки Fruity Loops Studio (FL Studio) - урок 4 - пишем первый вариант композиции COLD

megainformatic - Популяризация Современных Научных Знаний и Размышления на околонаучные темы. СОДЕРЖАНИЕ

megainformatic - Популяризация Современных Научных Знаний и Размышления на околонаучные темы. Энергетический кокон

megainformatic - Модуль галерей для любой cms

megainformatic - Портфолио выполненных проектов сайтов и приложений

megainformatic - Мои Музыкальные Миры - страница 2

megainformatic - megainformatic cms rs

megainformatic - модуль Падающий снег

megainformatic - проект Open Shop

megainformatic - Рисуем красивую девушку всего за 6 шагов

megainformatic - Галерея красивых рисованных девушек

megainformatic - НОВОГОДНЕЕ ОБРАЩЕНИЕ СОЗДАТЕЛЯ webinformatic К ЖИТЕЛЯМ ПЛАНЕТЫ интернет

megainformatic - Отзывы оставленные пользователями как впечатление о проделанной работе или что-либо понравившееся на сайте

megainformatic - Уроки css - атрибут position

megainformatic - Ива Ден энд КуХа - КОДЕКС ФРИЛАНСЕРА - СОДЕРЖАНИЕ

megainformatic - Ива Ден энд КуХа - КОДЕКС ФРИЛАНСЕРА - Глава 1 - Обычный день

megainformatic - Ива Ден энд КуХа - КОДЕКС ФРИЛАНСЕРА - Глава 2 - Начало (begin)

Новогодняя дискотека 2013 на megainformatic точка ru

megainformatic - Программируем на C++ с использованием MFC

megainformatic - Программируем на C++ с использованием MFC - Создание MFC приложения

megainformatic - Программируем на C++ с использованием MFC - Создание MFC приложения - hello, world !

megainformatic - Как создать игру ? - Пишем игровой движок с нуля

megainformatic - Как создать игру ? - Пишем игровой движок с нуля - Вступление

megainformatic - Как создать игру ? - Пишем игровой движок с нуля - Общая структура будущего игрового движка

Разное

megainformatic - Как создать игру ? - Пишем игровой движок с нуля - DXUTMainLoop - цикл работы DirectX-приложения

megainformatic - Варианты макетов Психолог 911

megainformatic - Шаблоны для сайтов - что это и какие они бывают ?

megainformatic - Ива Ден энд КуХа - КОДЕКС ФРИЛАНСЕРА - Глава 3 - Кто он ? (who is ?)

megainformatic - Мои Музыкальные Миры - готовая музыка mp3 - новинки 2013 года

megainformatic - Теория и практика хакерских атак - самозащита от нападения

megainformatic - Теория и практика хакерских атак - самозащита от нападения - Способы подмены реального IP

megainformatic - Fruity Loops Studio 9 - Как синтезировать свои сэмплы - изучаем возможности плагина Sytrus

megainformatic - Видоизменяем тему для Wordpress под свои нужды

megainformatic - Flash приложения и игры - Шаг 3 - управляемый шарик

megainformatic - Учимся создавать флеш-игры, что нужно знать для того, чтобы заняться созданием flash приложений и игр ?

megainformatic - Шаг 4 в освоении Flash-технологий - как анимировать персонажа и управлять им

megainformatic - Форма для смены шаблонов сайта. Модуль template selector

megainformatic - megainformatic cms express files + module slider

megainformatic - Создание сайта бесплатно или под заказ

megainformatic - Как создать flash баннер

megainformatic - Разработка flash-приложения для сайта: онлайн примерочная

megainformatic - Мои впечатления о книге - Владислав Крапивин - Журавленок и Молнии

megainformatic - Модуль отзывов/комментариев для вашего сайта

megainformatic - Модуль отзывов/комментариев для вашего сайта

megainformatic - Модуль отзывов/комментариев для вашего сайта

megainformatic - Модуль короткие ссылки short link

megainformatic - Работа с сокетами fsocket из php

megainformatic - Как создать игру Создание игровых панелей и индикаторов

megainformatic - Приключения Кости Коробкина - Как я провел лето - интерактивный комикс

megainformatic - Приключения Кости Коробкина - Как я провел лето - интерактивный комикс

megainformatic - Приключения Кости Коробкина - С новым годом - интерактивный комикс

megainformatic - Система управления сайтом на php - megainformatic cms admin files

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

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



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. Мульти анимация







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

Создадим файл для определений границ

simple_game\Media\prop_desc\collision_rects_desc.txt



И определим границы -

ball; 0.0f; -0.07f; 0.08f; -0.16f; 0.5f;
hole; 0.138510f; -0.144f; 0.1f; -0.085f; 1.0f;


1 значение - это имя игрового объекта, следующие 4 параметра - его границы - левая верхняя точка - x и y, и правая нижняя - также.
Последнее значение - это масштабный коэффициент - он учитывается при вычислении границ.

Теперь создадим файл для описания свойств - для установки связи между объектами границ и игровыми объектами

simple_game\Media\prop_desc\game_object_class_properies.txt



Запишем туда -

//
// описание свойств шарика
//
begin =;
Name = ball;
Collided = true;
end =;
//
// описание свойств ямы
//
begin =;
Name = hole;
Collided = true;
end =;


Как видим описание имеет определенную нотацию, т. е. некий мета-язык.
Свойство Name - обозначает идентификатор игрового объекта, к которому будет привязываться свойство границ определенных в файле границ.

Свойство Collided = true - означает что будет использоваться проверка коллизий или по-другому столкновений, для данного игрового объекта. Значение может быть установлено и в false. Но в контексте данного урока нам для обоих объектов нужна проверка столкновений.

Реальные стокновения не позволяют одному игровому объекту проходить сквозь другой. Например, если игровой объект игрока наталкивается на врага или стену - он не должен пройти сквозь него.

В нашем случае будет задано несколько иное поведение: шарик может пройти сквозь яму. Будет лишь фиксироваться сам факт попадания в яму и больше ничего.

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



Для реализации проверки столкновений прыгающего шарика с ямами нужно выполнить следующие действия:

В модуль

start.cpp



Подключить заголовочные файлы collision.h и game_object_properties.h -

после строки

#include "textures.h"



добавить -

#include "game_object_properties.h"
#include "collision.h"





после строки

#define SimpleGameScenesPath L"\\Media\\textures\\environment\\scenes\\simple_game\\"



добавить -

//==========================================
//
// имена файлов описаний свойств игровых объектов
// и границ для столкновений
//
//==========================================

#define GameObjectPropertyValue L"\\Media\\prop_desc\\game_object_class_properies.txt"

//индексы игровых объектов, имеющих свойства в файле свойств
#define ball_prop 0
#define hole_prop 1


Для перемещений прыгающего шарика и проверки столкновений и их обработки добавить в

start.h



После строки -

D3DXVECTOR2 m_scrCursorPos;



такой код -

//перемещения прыгающего шарика
void MoveJumpedBall();
float m_fCurrentTimer;
float m_fTimeDelay;
float m_fMoveSpeed;

D3DXVECTOR2 m_v2MoveDirs;
void ChangeMoveDirs(int Dir);

void JumpedBallContactHole();

bool m_bContactWithHoleDetected;
float m_fHoleX;
float m_fHoleY;

bool change_moved_ball_TimePause(float PauseInterval = 0.0f);
void change_moved_ball_ResetPauseTimer();
DWORD change_moved_ball_m_dwOldTime;
DWORD change_moved_ball_m_dwTime;
float change_moved_ball_m_fTimePeriod;

//переопределенная сцена и её методы

//скрываем все плашки ям (их переднюю часть)
void CreateOverridedGameScene();

CPtrArray* m_pOverridedGameScene; //массив объектов видоизмененной игровой сцены
void FreeOverridedGameScene();

//скрытие/показ указателя мыши
void HideSystemMouseCursorView(bool Hide);

//счёт попаданий в яму
int m_iHoleHits;
bool m_bInHole;

//сброс попадания в яму
bool hole_hit_TimePause(float PauseInterval = 0.0f);
void hole_hit_ResetPauseTimer();
DWORD hole_hit_m_dwOldTime;
DWORD hole_hit_m_dwTime;
float hole_hit_m_fTimePeriod;



В модуль

start.cpp



1)

Добавляем

В метод
CD3DGameApp::FrameMove



после строки

g_Splash.Anim();

код -

MoveJumpedBall();

В конец модуля

start.cpp



добавляем код -

//перемещения прыгающего шарика
void CD3DGameApp::MoveJumpedBall()
{
g_AI_Ball_Sprite.Anim();

change_moved_ball_TimePause(m_fTimeDelay);
hole_hit_TimePause(2.0f);
//проверяем контакт шарика с ямой
JumpedBallContactHole();
}


Реализацию остальных методов и их использование Вы можете посмотреть сами в коде модуля
start.cpp



Отмечу лишь, что для проверки столкновения шарика с границами ямы используется вызов функции CollisionDetected, которая проверяет пересекаются ли границы объекта ball с границами объекта hole и если да - то возвращается значение true.



Если столкновение зафиксировано - то плашка для данной ямы (её передняя часть отображается), чтобы имитировать попадание шарика в яму. Как только шарик отойдет от ямы в сторону - столкновение уже будет возвращать false и плашка для данной ямы уже отображаться не будет. Визуально шарик просто будет прыгать по поверхности ландшафта.





Скачать готовую игру simple game версия 1.0.0 4.01.2017 (без исходного кода).

Исходный код и другие полезные материалы и инструменты Вы получаете при оформлении платной подписки !


Размер: 51,8 Mb



Чтобы иметь возможность самостоятельно создать свою игру на базе примера simple_game с неограниченными возможностями дальнейшего расширения! - оформите подписку на fle game engine -


Стоимость: 600 руб.

Оформив подписку на fle game engine Вы получаете пример игры simple_game с исходным кодом, и сможете не просто прочитать всё, что описано, но и самостоятельно проделать в собственном приложении с возможностью неограниченного расширения. Также Вы получаете

Самую свежую версию Scene Editor fge 1.0.2 (на текущий момент) с поддержкой большего количества возможностей: сетка, настройки, скроллинг и другие. В бесплатной версии эти возможности не поддерживаются. подробнее о составе платной подписки.





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



megainformatic live chat
Начать беседу
X
 

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



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


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
















    
Время загрузки: 0,0709