Недавно меня спрашивали: "Как сделать 3D от 3-его лица?". Я махом сконструировал небольшой исходник(выложу позже)... Но в процессе его разработки случайно набрел на идею написать урок по созданию несколько абстрактной 3D игры.
И так, что нам толком нужно. Во первых нам нужно три следующих спрайта:
Далее нам нужна текстура пола. Ее следует добавить в папку Backgrounds и назвать по нашему, по русскому - pol.
Создайте объект obj_cam и добавьте в событие create следующий весьма привычный скрипт:
Думаю тут все понятно. Кстати, заметили? Я по другому оформил код! Или это никому не интересно? ...
Ладно, немного юмора еще никому не повредило. Идем дальше. Создайте событие Step и там напишите уже другой скрипт:
Теперь камера будет как бы "выравниваться" в отношении игрока, а так же следовать за ним.
Ну и наконец приступим наверное к самому сложному коду. Ниже приведенный код, это стандартный скрипт привязки камеры к игроку. Он присутствует почти во всех 3D играх от третьего лица в Game Maker. В общем копируйте, сразу не запомните (По крайне мере я до сих пор его по бумажке списываю
Поздравляю! Мы только что завершили наладку камеры! Остался только сам объект игрока. И так, создайте объект player.
Сейчас я впервые напишу управление игроком одним скриптом. Это не потому, что я захотел вас помучить и заставить разбираться что мы написали. Просто обычным способом будет долго... В общем кто не поймет - отпишитесь в комментариях, а пока создайте событие Step и впишите следующий простой, но массивный код:
Управление готово! Игрок уже в принципе может бегать... Но не забываем про графику! Сейчас мы нарисуем игрока уже для трехмерного пространства. Для этого создайте событиеDraw и в нем введите скрипт:
Вроде бы все готово... Но тут вам подарочек от фирмы...
Ну теперь основная часть готова! Осталось только разместить все объекты в комнате. Сделать вы это можете в принципе сами. Всем пока! Наслаждаемся абстрактной игрой.
|
пятница, 9 ноября 2012 г.
Шарик в 3D пространстве.
Подписаться на:
Комментарии к сообщению (Atom)
Комментариев нет:
Отправить комментарий