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

webinformatic - статья Тимонина Андрея - Таймер. Выводим время игры.
[к содержанию] [другие статьи Тимонина Андрея] Таймер. Выводим время игры. автор: Тимонин Андрей дата публикации на сайте Мега Информатик: 18.11.2012 Добро пожаловат
подробнее...

Теги

сайты, игры, дизайн, продвижение, php, html, css, my sql, c++, delphi, photoshop, 3ds max, fl studio, трекерская музыка, уроки

Статьи сайта

webinformatic - игра / game CrazyCars3D v9.0 RU/EN - ранний доступ, shareware

игра / game Capsized 2011 PC, EN - обзор игры

урок / tutorial Direct3D 10 Урок 1 - Tutorial 1

игра / game Braid 2008 PC, EN - обзор игры

проекты, игры, уроки, видео, музыка, статьи, обзоры - страница 399

супер видео, костя коробкин комикс, проекты, игры, уроки, видео, музыка, статьи, обзоры - страница 400

выпуск 40 - познай свою реальность часть 1, веселый буквоежка игра, веселый буквоежка, webinformatic проекты, выпуск 39 balls on lift, balls on lift, balls on lift 2, bol 2, шарики на лифте часть 2, создание и доработка сайтов, выпуск 38 сайты, игры, уроки, видео, музыка, статьи, обзоры - страница 401

Выпуски 38 - 44 Посвященные созданию игры на движке fle game engine

Выпуски 44 - 47 Посвященные созданию сцен в игре и генераторам частиц - снег, дождь, звезды, красивые эффекты

Выпуски 47.2 - 54 Разноцветный снег, Звезды, обзор комиксов о Косте Коробкине, Костя Коробкин в гостях у тёти Светы часть 1, directx 9c 3d трансформации. Основы, история развития проекта мега информатик, bubbles music clip, bubbles music clip версия 2

Paulo iOS, Android game Kurage Studios

Slime Rancher | Windows, Mac, Linux | game | Monomi Park

Zombia | Windows | game | UnluckyGames

Job Simulator | VR, PS4 | game | Owlchemy Labs

Feudal Feud | Web, iOS, Android | game | Urubu Studio

Exoplanet: First Contact | Windows, Mac | game | Alersteam

Rex | ZX Spectrum | game | Martech Games Ltd UK, 1988

Crystall Kindom Dizzy | ZX Spectrum | game | ZXArt Russia 2017

Batman: The Movie | ZX Spectrum | game | Ocean Software Ltd UK, 1989

Harbinger - Convergence | ZX Spectrum | game | Cthonian Godkiller, 2016

Harbinger - Convergence part 2 | ZX Spectrum | game | Cthonian Godkiller, 2016

Metal Man Reloaded | ZX Spectrum | game | Oleg Origin (Россия), 9713

Saboteur II | ZX Spectrum | game | Durell Software Ltd UK, 1987

Quazatron | ZX Spectrum | arcade game | Hewson Consultants Ltd UK, 1986 Graftgold Ltd, Steve Turner

Arkanoid - Revenge of Doh | ZX Spectrum | arcade game | Imagine Software Ltd UK, 1988 Graftgold Ltd, Mike Lamb, Ronny Fowles, Gari Biasillo, Mark R. Jones

Indiana Jones and the Last Crusade | ZX Spectrum | arcade game | US Gold Ltd UK, 1989, Tiertex Ltd, Mark Haigh-Hutchinson, Blue Turtle, Mark Tait

Tapper | ZX Spectrum | arcade game | US Gold Ltd UK, 1985

Kwik Snax | ZX Spectrum | arcade game | Code Masters Ltd UK, 1990

Teenage Mutant Hero Turtles | ZX Spectrum | arcade game | Image Works UK, 1990

Skate Crazy | ZX Spectrum | arcade game | Image Works UK, 1990

Trashman | ZX Spectrum | arcade game | New Generation Software UK, 1984

Subacuatic Reloaded | ZX Spectrum | arcade game | New Generation Software UK, 1984

Phantis | ZX Spectrum | arcade game | Dinamic Software Spain, 1987

RoboCop 2 | ZX Spectrum | arcade game | Ocean Software Ltd UK, 1990

Amaurote | ZX Spectrum | game | Mastertronic Added Dimension, 1987

Ghouls 'n' Ghosts | ZX Spectrum | game | US Gold Ltd, 1989

Hotshot | ZX Spectrum | game | Addictive Games Ltd, 1988

Battle City 4 | ZX Spectrum | game | Epsilon, 2016

Mr. Vintik | ZX Spectrum | game | Termojad, 2016

Capitan Trueno | ZX Spectrum | game | Dinamic Software, 1990

Bobby Bearing | ZX Spectrum | game | The Edge, 1986

Ghost 'n Goblins | ZX Spectrum | arcade game | Elite Systems Ltd, 1986

Rallybug | ZX Spectrum | arcade game | Jonathan Cauldwell, 2008

Captain Planet | ZX Spectrum | arcade game | Mindscape International Inc, 1991

Hostages | ZX Spectrum | arcade game | Infogrames, 1990

игры онлайн | games online | play online | zx-spectrum games

Pippo | ZX Spectrum | arcade game | Mastertronic Ltd, 1986

Vinnie Vole's Existential Nightmare | ZX Spectrum | arcade game | Soren Micros, 2010

Comando Quatro | ZX Spectrum | arcade game | Zigurat Software, 1989

Wizball | ZX Spectrum | arcade game | Ocean Software Ltd, 1987

Cliff Hanger | ZX Spectrum | arcade game | New Generation Software, 1986

Sly Spy: Secret Agent | ZX Spectrum | arcade game | Ocean Software Ltd, 1990

splATTR | ZX Spectrum | arcade game | Cronosoft [2], 2008

Light Corridor, The | ZX Spectrum | arcade game | Infogrames, 1991

Underground | ZX Spectrum | arcade game | System 4, 1988

Navy SEALs | ZX Spectrum | arcade game | Ocean Software Ltd, 1991

     
 
Урок 6 Игровая логика
 
О том, что потребуется для данного урока читайте в основном разделе - уроки delphi directx 8.1
 
Далее у читателя подразумевается наличие базовых знаний языка Delphi.
 
[назад] [страница 1] [далее] [к содержанию]
 

Игровая логика - это формализованный в коде набор игровых идей, которые составляют игровой геймплей.

В игре "Ну, Погоди!" игровая логика сводится к следующему алгоритму, выраженному в словесной форме -

игрок должен управлять положением волка, располагая его в одном из 4х возможных. С лотков катятся яйца. По достижении конца лотка яйца падают, если у этого лотка не стоял волк, при этом выглядывающий из окошка заяц вызывает появление из разбитого яйца бегущего цыпленка. Отсутствие зайца приводит к полному разбиванию яйца. За пойманные яйца начисляются призовые очки, за разбитые - штрафные. Бегущему цыпленку соответствует пол-штрафного очка, полностью разбитому яйцу - 1 штрафное очко. Игра продолжается до 3 штрафных очков или до троекратного набора 999 очков. В последнем случае отображается поздравительный текст и небольшой мультфильм.

 

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

в методе TD3DGameApp.UpdateInput

изменение положения волка происходит следующим образом

{...}

if PressButton in m_DXInput.States
then begin
Area := TargetBtnArea(GetCursorPos);
//в данном случае проверяется нажатие на кнопку управления волком на игровой

//панели путем наведения на неё указателя мыши и нажатия левой кнопки мыши

{...}

if LeftUpCatch in m_DXInput.States then begin //т. к. на больших скоростях игры потребуется прямое управление
Area := 0;
//волком от клавиатуры, то это происходит таким образом
end;

{...}

Далее текущее положение волка заносится в специальную переменную -

Это происходит в реализации метода TD3DGameApp.FrameMoveGameSituation -

//положение волка
if (Area >= 0) and (Area < 4) then begin
WolfPos := 1 + Area;
WolfPosSet := WolfPosSet + [WolfPos];
end;

и далее -

//если игра не остановлена из-за разбитого яйца
if not StopGame then begin

//появление нового яйца на лотке
CreateNewEgg;

//качение яиц по лоткам
RollEggs;

//появление зайца из окошка
RabbitLookedFrom;

//счетчик изменения темпа игры
IncreaseGameSpeed;


end; {of StopGame or ResetShtraf}

CrashEggs; //разбивание яиц, бег цыплят


//мерцание, сброс штрафных очков

FlashShtraf;

 

Реализацию показанных методов Вы можете посмотреть в исходном коде игре "Ну, Погоди!".

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

 
Переходим к практическим упражнениям.
 

Используя код приложения из предыдущего - 5 урока - GameClasses_src попробуйте реализовать такой простейший игровой процесс:

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

 
В законченном виде это уже реализовано в проекте "В плену желаний". Можете скачать и посмотреть, но обязательно попробуйте реализовать это сами в качестве практики.
 
плен желаний
 

В ходе реализации плена желаний я разрешил одну логическую ошибку, в результате которой код, отвечающий за формирование рельефа и перемещение по нему персонажа из примера 3D-игры Scene2Game будет работать корректно. Это полноценный пример по построению сложной игровой 3d-сцены с анимированными персонажами, игровыми панелями и прочими атрибутами. Пример также способен отображать рельеф и перемещать персонажей по нему, но для этого его немного надо доработать. Можете попробовать сами.

Для компиляции примера понадобится библиотека delphi directx.

 
Пример сложной игровой сцены
 

Особенности примера:

- вывод 9 зон земной поверхности и объектов на ней (деревья), возможно построение сцены по данным файла - карты;

- свободная и привязанная к персонажу камера (переключение клавишей [V]);

- переключение между персонажами [пробел];

- анимированные персонажи (хотьба, прыжки, падение); управление персонажем j, k, l, i

- игровые панели - жизни, сила броска;

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

- поиск ближайших кубиков, показ их стрелками;

- рассчет траекторий полета (не доделано);

 

В завершение данного урока хотелось бы обратить Ваше внимание на реализацию алгоритма постепенного нарастания темпа в игре "Ну, Погоди!". Для этого загляните в реализацию метода TD3DGameApp.IncreaseGameSpeed

разобравшись с тем, как он работает, а также учтя тот важный момент, который применяется для того, чтобы игрок сумел поймать катящиеся яйца со всех лотков, Вы возможно сможете предложить собственный вариант его реализации, еще более близкий к реальной электронной игре "Ну, Погоди!"

 
 
 
[назад] [страница 1] [далее] [к содержанию]
 
     
     
     
     
 

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



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