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


Balls and holes PC game / Balls and Holes PC игра
Вакансии
Игродельня
Сегодня
17 февраля 2019 20:51
Вход Регистрация Забыли пароль ?

megainformatic - Уроки 3d на delphi directx - Вывод Заставки
                   
подробнее...

Теги создание сайтов, создание игр, дизайн, игры, информатика, уроки photshop, php, c++, музыка, delphi, cms, робосайт
Статьи сайта
megainformatic - Костя Коробкин - СЕКРЕТНЫЙ ПРОЕКТ - интерактивный комикс (kk scp) - онлайн комикс - страница 1

megainformatic - Костя Коробкин - СЕКРЕТНЫЙ ПРОЕКТ - интерактивный комикс (kk scp) - онлайн комикс - страница 2

megainformatic - Костя Коробкин - СЕКРЕТНЫЙ ПРОЕКТ - интерактивный комикс (kk scp) - онлайн комикс - страница 3

megainformatic - Костя Коробкин - СЕКРЕТНЫЙ ПРОЕКТ - интерактивный комикс (kk scp) - онлайн комикс - страница 4

megainformatic - Костя Коробкин - СЕКРЕТНЫЙ ПРОЕКТ - интерактивный комикс (kk scp) - онлайн комикс - страница 5

megainformatic - Костя Коробкин - СЕКРЕТНЫЙ ПРОЕКТ - интерактивный комикс (kk scp) - онлайн комикс - страница 6

megainformatic - Костя Коробкин - СЕКРЕТНЫЙ ПРОЕКТ - интерактивный комикс (kk scp) - онлайн комикс - страница 7

megainformatic - Веселый Буквоежка - онлайн комикс - страница 1

megainformatic - Веселый Буквоежка - онлайн комикс - страница 2

megainformatic - Веселый Буквоежка - онлайн комикс - страница 3

megainformatic - Веселый Буквоежка - онлайн комикс - страница 4

megainformatic - Веселый Буквоежка - онлайн комикс - страница 5

megainformatic - Веселый Буквоежка - онлайн комикс - страница 6

megainformatic - Веселый Буквоежка - онлайн комикс - страница 7

megainformatic - Веселый Буквоежка - онлайн комикс - страница 8

megainformatic - Веселый Буквоежка - онлайн комикс - страница 9

megainformatic - Веселый Буквоежка - онлайн комикс - страница 10

megainformatic - Веселый Буквоежка - онлайн комикс - страница 11

megainformatic - Веселый Буквоежка - онлайн комикс - страница 12

megainformatic - Веселый Буквоежка - онлайн комикс - страница 13

megainformatic - Веселый Буквоежка - онлайн комикс - страница 14

megainformatic - Веселый Буквоежка - онлайн комикс - страница 15

megainformatic - Веселый Буквоежка - онлайн комикс - страница 16

megainformatic - Веселый Буквоежка - онлайн комикс - страница 17

megainformatic - Веселый Буквоежка - онлайн комикс - страница 18

megainformatic - Веселый Буквоежка - онлайн комикс - страница 19

megainformatic - Веселый Буквоежка - онлайн комикс - страница 20

megainformatic - Веселый Буквоежка - онлайн комикс - страница 21

megainformatic - Веселый Буквоежка - онлайн комикс - страница 22

megainformatic - Веселый Буквоежка - онлайн комикс - страница 23

megainformatic - Эмулятор ZX-Spectrum, БК-0010.01 и их работа в эмуляторе DosBox 0.74

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 1

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 2

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 3

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 4

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 5

megainformatic - первый независимый онлайн-журнал комиксов ККК Костя Коробкин Комикс номер 1 март 2016

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 6

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 7

megainformatic - Эмулятор БК-0010.01 версия 2.6 для Windows 9x/Me/2000/XP автор Юрий Калмыков 2002 год

megainformatic - api получения готового решения для решения различных задач возникающих при создании сайта

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 8

роман Eternity Вечность - автор Синицин Андрей megainformatic

роман Eternity Вечность - автор Синицин Андрей megainformatic - страница 2

роман Eternity Вечность - автор Синицин Андрей megainformatic - страница 3

роман Eternity Вечность - автор Синицин Андрей megainformatic - Windows Sockets 2, ping, Windows SDK 7, чем открыть hxs файл - страница 4

megainformatic - Размещение Вашей рекламы на нашем сайте

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 9

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 10

роман Eternity Вечность - автор Синицин Андрей megainformatic - В чём отличие в применении символов & и * в языке c++ ? также продолжаем изучать Windows Sockets 2 и пример simple - страница 5

megainformatic - Костя Коробкин - В гостях у тёти Светы часть 2 Живые машины (kk as) - онлайн комикс - страница 11

megainformatic - игра Шарики на лифте Серия 1 Разгони Лифт / Balls on Lift Level 1 Run The Lift версия 0.9.2 05.10.2016 / version 0.9.2 05.10.2016

megainformatic - Костя Коробкин - В гостях у тёти Светы часть 2 Живые машины (kk as) - онлайн комикс - страница 12

роман Eternity - страница 6 + решение по анимации закрывающихся дверей лифта

megainformatic - Сообщить об ошибке

Balls on Lift Table of Records / Шарики на лифте Таблица рекордов

подробнее

     
  Ваше Визуальное Шоу - программа для создания автономных видео-презентаций в форме слайд-шоу с озвучанием  
     
 

Как создать игру ? - Программируем сами.

Рассмотрение программирования игр под DirectX 9c на C++ с использованием среды разработки MSVS 2005 или выше.

 
     
  [содержание] [страница 2] [далее]  
     
  Самый первый шаг - страница 2  
     
 

Итак, Мы рассмотрели код функции wWinMain и это оказалось не так уж сложно даже для тех, кто совсем никогда не создавал не только игр, а и вообще не был знаком с языком C++ и DirectX-ом как таковым.

Но вот эти светлые головы решились освоить создание игр и не просто научиться программировать под DirectX 9c на языке C++, но и создать хорошую, интересную, качественную игру, в которую было бы увлекательно играть и не стыдно показать её всем знатокам и любителям компьютерных игр.

 
     
  Не совсем понятно - скажут многие из Вас - мы всего лишь рассмотрели функцию wWinMain примера CreateDevice из DirectX 9c SDK, но это еще не окончательный ответ на вопрос как создаются DirectX - приложения.  
     
 

Еще раз взгляните на код функции wWinMain

обратите внимание на строку кода

wc.lpfnWndProc = MsgProc;

 
     
 

Здесь Мы говорили о передаче указателя на некую оконную процедуру

В коде модуля CreateDevice.cpp есть эта функция - посмотрите сами -

 
     
  MsgProc  
     
 

Это наш обработчик системных сообщений

LRESULT WINAPI MsgProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam )
{
switch( msg )
{
case WM_DESTROY:
Cleanup();
PostQuitMessage( 0 );
return 0;

case WM_PAINT:
Render();
ValidateRect( hWnd, NULL );
return 0;
}

return DefWindowProc( hWnd, msg, wParam, lParam );
}

 
     
 

Иными словами любое Windows-приложение, в том числе DirectX - приложение, работает по принципу - если от системы не поступает никаких сообщений, предназначенных данному приложению, то оно "отдыхает" - более точно находится в состоянии бездействия Idle.

Это позволяет операционной системе усиленно выполнять иные задачи, если таковые имеются.

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

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

 
     
 

Функция MsgProc как раз и выполняет эту задачу - В нашем примере обрабатываются два сообщения - WM_DESTROY и WM_PAINT

для всех остальных сообщений системы вызывается обработчик по-умолчанию -

DefWindowProc( hWnd, msg, wParam, lParam );

 
     
 

для сообщения - WM_DESTROY выполняются функции Cleanup и PostQuitMessage

для WM_PAINT вызывается функция Render, а затем ValidateRect

и тот и другой обработчики сообщений выполняют

return 0 - т. е. возвращают значение 0 как результат исполнения функции MsgProc

в остальных случаях будет возвращаться значение, формируемое обработчиком по-умолчанию -

return DefWindowProc( hWnd, msg, wParam, lParam );

 
     
 

Таким образом, Вы видите, что Вам нужно рассмотреть еще код следующих функций -

InitD3D - потому что её вызов также присутствует в коде функции wWinMain, а также

Cleanup и Render.

Остальные функции ValidateRect, PostQuitMessage являются системными и их назначение Вы можете узнать из справочной системы MSVS - MSDN - Microsoft Developer Network. Справочная система как правило идет в составе пакета MSVS в виде отдельного диска. Если его у Вас нет - срочно его раздобудьте - найдите и скачайте где-нибудь в интернете, в противном случае - без Справочной системы Вы дальше нормально работать не сможете !!!

 
     
 

Функция InitD3D

HRESULT InitD3D( HWND hWnd )
{
// создаем объект D3D
if( NULL == ( g_pD3D = Direct3DCreate9( D3D_SDK_VERSION ) ) )
return E_FAIL;

// формируем структуру для передачи в метод CreateDevice
D3DPRESENT_PARAMETERS d3dpp;

//обнуляем все поля переменной d3dpp
ZeroMemory( &d3dpp, sizeof( d3dpp ) );

//задаем оконный режим приложения
d3dpp.Windowed = TRUE;

//отключаем эффект обмена буферов заднего плана
d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;

//формат буфера заднего плана пока неизвестен, т. к. будет зависеть от установленного //текущего разрешения экрана
d3dpp.BackBufferFormat = D3DFMT_UNKNOWN;

//создаем устройство Direct3D, здесь мы используем дисплейный адаптер по-умолчанию,

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

//передаем указатели на переменную d3dpp и g_pd3dDevice

//в последнюю в случае успеха будет помещен указатель на интерфейс IDirect3DDevice9
if( FAILED( g_pD3D->CreateDevice( D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hWnd,
D3DCREATE_SOFTWARE_VERTEXPROCESSING,
&d3dpp, &g_pd3dDevice ) ) )
{
return E_FAIL;
}

//если создание прошло успешно - возвращаем код возврата S_OK

return S_OK;
}

 
     
 

Функции Cleanup и Render -

//функция Cleanup предназначена для освобождения объектов D3DDevice и D3D

VOID Cleanup()
{
if( g_pd3dDevice != NULL )
g_pd3dDevice->Release();

if( g_pD3D != NULL )
g_pD3D->Release();
}

//функция Render выполняет

VOID Render()
{

//если указатель на интерфейс IDirect3DDevice9 равен NULL - возврат
if( NULL == g_pd3dDevice )
return;

//очищаем буфер заднего плана синим цветом
g_pd3dDevice->Clear( 0, NULL, D3DCLEAR_TARGET, D3DCOLOR_XRGB( 0, 0, 255 ), 1.0f, 0 );

//начало отрисовки объектов сцены
if( SUCCEEDED( g_pd3dDevice->BeginScene() ) )
{
//в дальнейшем в этом месте будет происходить фактическая отрисовка сцены

//конец отрисовки сцены
g_pd3dDevice->EndScene();
}

//представление буфера заднего плана на передний план (экран)
g_pd3dDevice->Present( NULL, NULL, NULL, NULL );
}

 
     
  Здесь также упущен в целях простоты метод FrameMove - в котором осуществляется анимация объектов игровой сцены.  
     
 

Чтобы лучше усвоить теорию нужно её проверить на практике - жмём клавишу F7 для того, чтобы откомпилировать приложение CreateDevice.

Если компиляция прошла без ошибок - Вам нужно открыть папку

 
     
  C:\DXSDK_Aug2008\Samples\C++\Direct3D\Tutorials\Tut01_CreateDevice\Debug  
     
 

и запустить файл CreateDevice.exe дважды щелкнув по его значку.

Имейте в виду, и я об этом уже говорил, что указанный путь в Вашей системе может быть ДРУГИМ!!! проверьте куда Вы установили DirectX SDK и начинайте открывать именно эту папку, я же здесь и далее больше не буду останавливать на этом важном моменте, а буду указывать все пути, предполагая, что DirectX SDK по-умолчанию установлен у Вас в папке

C:\DXSDK_Aug2008

Вы же должны вместо этого подставлять путь к установленному DX SDK с учетом того, как Вы его установили на своём компьютере !!!

 
     
  [содержание] [страница 2] [далее]  
     
подробнее

     
     
  архив новостей сайта Мега Информатик  
     
  Итоги уходящего 2010 года  
     
  Уважаемые посетители от всей души поздравляю Вас с самым добрым, светлым и лучшим праздником - НОВЫМ ГОДОМ ! Пусть в наступающем году сбудутся все Ваши планы и он принесет только радости и удачи !!! С НОВЫМ 2011 ГОДОМ !!!  
     
   
     
     
     
  22 июня 2010 года, новый сайт Мега Информатик начал свою работу !!! Ура товарищи !!!  
     
     
     
подробнее

Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 16

Онлайн-комикс Костя Коробкин - В гостях у тёти Светы - интерактивный комикс (kk as).

- Ну ладно, уже звонок я побежала !

Костя Коробкин - В гостях у тёти Светы часть 2 Живые машины (- интерактивный комикс (kk as) - онлайн комикс - страница 16

если кликать картинку она будет последовательно меняться в размерах от 620 до 2048 пиксель.

[страница 1][страница 2] [страница 3] [страница 4] [страница 5] [страница 6] [страница 7] [страница 8] [страница 9] [страница 10] [страница 11]  [страница 12] [страница 13]  [страница 14] [страница 15] [страница 16] [страница 17] 

подробнее

роман Eternity Вечность - автор Синицин Андрей megainformatic

начат 1.07.2014 - развивается по настоящий момент времени

Аннотация: остросюжетный роман, фантастика, приключения, технологии будущего. Главный герой - живёт в обычном мире и в то же время, владеет тайнами, от которых становится страшно. Если эти тайны попадут в недостойные руки может случиться что угодно. В мире царит не только добро и зло, но и такая вещь как любовь. Вечная борьба добра и зла продолжается, но любовь остается вечно вне их. Что ждёт героя завтра ? Об этом он не знает, хотя и владеет такими знаниями, которые могут изменить всё мироздание. И как всегда присутствует дилемма - познавать окружающую действительность или же самого себя. Каким бы простым не казался Он Вам на первый взгляд - это впечатление обманчиво. Это лишь маскировка. Ширма скрывающая реальность от непосвященного в её тайны. Даже проникнув за ширму, мы узнаем многое, но это всё не формирует окончательного мнения и мировосприятия. Не будет окончательных ответов на волнующие вопросы. В этом и есть главный секрет. Но это является правдой лишь до определенной степени. На самом же деле нет ничего незыблимого и постоянного. Это лишь ориентир.

 

Все имена и персонажи вымышленные. Любые совпадения случайны. Опасно для жизни - не проверять на себе ! Все трюки выполнялись только настоящими профессионалами.

 

Ну, что ж, давайте начнём. Вы пришли сюда не случайно. Затем, чтобы интересно провести свободное время. В поисках чего-то необычного. А возможно и всё наоборот. В любом случае - это история для Вас и про Вас. Возможно она покажется Вам наивной или Вы скажете, что всё это - чистой воды попытка раскрутить самого себя. И отчасти будете правы. Каждый хочет, чтобы его заметили. Но это происходит до определенного момента. А в какой-то момент Вы поймете - что ему это совсем не нужно. Он просто хочет поделиться наболевшим. Вот и всё. Решайте сами - как к этому всему относиться, читать ли дальше, что делать и предпринимать после овладения всей описанной информацией.

 

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

 

- Теперь я думаю нужно немного перекусить, или лучше основательно поужинать. Ты что будешь кофе или чай ?

- Ну давай кофе.

- Пара минут. Пока можешь присесть или что-нибудь еще ?

- Нет. Спасибо Антош, мне очень неловко. Вот так свалилась тебе на голову.

- Ничего, не думай об этом. Люди должны помогать друг другу.

- Не знаю как тебя и отблагодарить. Еще раз огромное спасибо за всё.

- Да пока что особо и не за что.

- Хорошо, я тогда пока вытру волосы и расчешу их.

- Угу, зеркало там, в прихожей.

Из прихожей донесся снова голос Ани: - Извини, Антош, я совсем забыла тебя спросить,
я тебе не помешаю ? Ты никого не ждёшь ?

- Нет, конечно нет, я бы предупредил. Наоборот - скрасишь мой одинокий вечер.

- Ой, ну тогда ладно, а то я переживала, что доставляю тебе неудобства.

- Да какие там неудобства ! 

- Спасибо. Ты очень добр ко мне Антон.

Затем они сели пить кофе и чай, а после поужинали тем, что было в наличии в холодильнике.

- Теперь уже поздно, как разместимся и какие у тебя планы на завтра ? Предлагаю спать на диване,
а я могу прямо на полу, мне, поверь, не привыкать.

- Зачем ? Ложись рядышком, по-моему диван у тебя достаточно широкий и места нам обоим
более чем достаточно.

- А ты не ... ? - Антон осекся.

- Вовсе нет. Только не подумай ничего плохого, но неужели парень, который не побоялся
привести незнакомку к себе домой и помочь ей всем, чем сможет, способен сделать что-то
недозволенное, пока они не познакомятся поближе ?

- Ммм. - только и вымолвил Антон.

- Тогда договорились. Я не хочу стеснять тебя. Это всё-таки твоё жилище.

- Ок, договорились.

Они легли спать.

Ночь была длинной и темной. За окном накрапывал дождь и барабанил в стекло.

- Так ты мне на сказала какие у тебя планы на завтра ? - тихо спросил Антон,
 - пока ты еще не спишь. Ты еще не спишь ?

- Антош, нет не сплю. Ну завтра как обычно пойду на работу.

- Аня, но ведь завтра суббота ? Ты работаешь и по выходным ? Или у вас скользящий график ?

- Ах да. Я совсем забыла. Ну тогда это хорошо. Пока не решила. Наверное ты пойдёшь по
своим делам, а мне можно будет остаться здесь и там уж я думаю соображу, что мне нужно
сделать, можно ?

- Да конечно. Делай как думаешь. Больше вроде бы срочных вопросов нет. Спокойной ночи.

- Спокойной ночи.

Но Антону не спалось. В голову лезли какие-то мысли. Думы. Мечты. Надежды.
Что-то в его жизни круто менялось. И он сам ощущал, что происходит нечто очень и
очень загадочное, трогающее сердце и душу.

далее

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



новый современный движок для создания игр на платформе Windows Directx 9c - которая поддерживается большинством ПК.

Подробнее об оформлении подписки на fle game engine





Скачать fle game engine (полный исходный код).

Включает исходный код, полезные материалы и инструменты. Вы можете поддержать проект оформив платную подписку.


Размер: 482 Mb



Контрольные суммы для проверки целостности скачанного архива.

CRC32: 9626C289
MD5: 7537172124F59B49431DA3CE0EE70B97
SHA-1: 951A654AFA932AAD706C090B5A37F37DD53E5920

Контрольные суммы можно проверить утилитой HashTab

После скачивания вы получите самораспаковывающийся архив. Запустите его, чтобы распаковать.

Система написана на c++ под directx 9.

Требования - наличие установленных MSVS 2005 (Microsoft Visual Studio) и DirectX SDK Aug 2008.

Для других версий MSVS и DirectX SDK могут потребоваться модификации кода !

Что включает дистрибутив ?

- Редактор сцен Scene Editor;

- пример игры simple game с полным исходным кодом;

- пошаговое описание создания примера игры simple_game - представляет набор html файлов пригодных для открытия и чтения из любого браузера;

- Coords 2D - утилиту отладки анимаций и подбора экранных координат содержит богатую библиотеку готовых примеров игровых спрайтов;

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

- fgg_setup.exe Fly snow 3d - визуальные эффекты падающего снега/дождя и др. красивые эффекты с частицами в 2d/3d;

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

Чтобы иметь возможность самостоятельно создать свою игру на базе примера 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 Размещение баннерной рекламы у нас
Время загрузки: 1,2302