Поиск по сайту
Авторизация
Меню сайта
Категории
Индустрия видеоигр [7] |
Разработка игр [64] |
Гейм-дизайн и графика [11] |
Сторонние движки и конструкторы [1] |
Прочее [3] |
Уроки по Game Maker [3] |
Game Maker
Если вы только-только начали изучать игрострой и еще даже не успели скачать сам
Game Maker, предлагаем вам на выбор следующие версии программы:
Game Maker 8.1
Классика. Идеально подходит для создания простых 2D игр на PC. Требует активации. | |
Game Maker for Mac
Абсолютно та же программа, но только для пользователей Mac. Требует активации. | |
Game Maker Studio
Самая новая версия с возможностью кроссплатформенной разработки. Бесплатна. |
Топ 5 игр
Агент Green | 4.2 / 5.0 |
FeDo | 4.2 / 5.0 |
To Mars: Sec... | 4.2 / 5.0 |
To Mars+MapE... | 3.9 / 5.0 |
Paintball | 3.8 / 5.0 |
Топ игр составлен путем пользовательского голосования.
Если вы не согласны с какой-либо оценкой, примите участие и поставьте свой балл игре. Ваша оценка очень важна для нас ;)
Главная » Статьи » Разработка игр |
Ходьба по неровной поверхности
Всем привет! Сегодня я Вам расскажу о том, как реализовать ходьбу по неровной поверхности в плаформере. Способ данной реализации. Для работы приведенного ниже способа, у вас ходьба в платформере должна быть осуществлена следующим образом: при движении спрайт игрока должен отражаться соответственно направлениям, т.е. если игрок движется влево, то image_xscale = -1;, иначе image_xscale = 1;. Каким же образом мы будем перемещать игрока вдоль неровной поверхности? К нам на помощь приходят циклы. Циклом мы проверяем кажду свободную позицию впереди игрока и чуть выше, и если эта эта позиция свободна, то перемещаем туда игрока. Давайте теперь рассмотрим код. (Данный код помещать в Step)
В начале мы объявляем временные переменные, хранящие направление игрока и позицию впереди игрока. Dir - напрвление D - отражение спрайта (сторона, в которую смотрит игрок) xn, yn - переменные, хранящие свободную позицию перед игроком. Далее изменяем эти переменные. Если спрайт отражён влево, т.е. игрок смотрит влево, то изменяем Dir на 180 (180 - направление влево), D - присваиваем значение -10 (-10 - позиция левее). Аналогично с другим. Далее ставим проверку на столкновение с объектом. x+D - из переменной D считывается текущее направление игрока. (Лучше всего для всех твёрдых объектов создать один родительский, и проверять столкновение только с ним, потому, что проверять столкновения со всеми объектами - очень трудоёмкий процесс) И если столкновение произошло, то запускаем цикл, проверяющий все свободные позиции относительно игрока, и если эта позиция найдена, то в переменные xn, yn записываем найденную свободную позицию и ставим проверку на эту позицию, и если она свободна, то перемещаем туда игрока и выходим из цикла. Все готово! До встречи! Источник: http://gcup.ru | ||
Просмотров: 3240 | Комментарии: 1 | Рейтинг: 2.3/11 |
Всего комментариев: 1 | |
| |