В поисках света и тени

IceTeria

Синопсис

На этот раз я хочу рассказать, как ковалась сталь и как закалялся металл… Хотя пожалуй об этом как нибудь в другой раз, а сейчас я лучше расскажу о том как реализован 3D рельеф. Конечно сей псевдо-научный трактат является лишь наглядной демонстрацией эволюции примата и разработки проекта под кодовым названием «IceTeria», тем не менее возможно сей материал окажется полезным и для других разработчиков желающих приобщиться или разобраться в 3D графике. Но раз уж эта тема посвящена конкретному проекту, стоит немного уделить внимание и другим изменениям, одним из которых стала реализация прокрутки карты. Ну а самым важным изменением о котором и пойдет в основном речь, конечно стало освещение, причем изменяемое в зависимости от положения солнца (т.е. времени суток):


Читать дальше...

Первые шаги графического движка рельефа

IceTeria

Прошло немало времени с тех пор как я взялся за этот проект, а именно 47 дней, 44 ревизии, 12482 строчки кода тому назад, но кто считает? Вообщем, как видно сделано уже немало, и собственно в данной теме я собираюсь отныне и впредь делиться радостями и горечью результатов разработки.


Читать дальше...

bump.lua

LÖVE

bump.lua

Оригинал этого текста а также сама библиотека — https://github.com/kikito/bump.lua

Библиотека для обнаружения коллизий невращающихся прямоугольников на языке Lua. Основные особенности библиотеки:

  • bump.lua работает только с невращающимися прямоугольнками (axis-aligned bounding-box, AABB). Если вам нужно что-то сложнее (круги, многоугольники), вас может заинтересовать HardonCollider.
  • Обрабатывает туннелирование. Это можно делать быстро, потому что обрабатываются только ААВВ. (В терминологии этой статьи все предметы считаются “пулями”)
  • Пытается быть быстрой и не тратит много памяти.
  • Основана на обнаружении коллизий, но также присутствует (базовая и небольшая) реакция коллизий (collision responce).
  • Может возвращать предметы, которые касаются точки, отрезка или прямоугольной области.
  • Обрабатывает предметы по очереди. Это делает обработку коллизий нереалистичной.

Читать дальше...

LÖVE

LÖVE
Я хочу рассказать о LÖVE.
Это фреймворк для создания 2D игр на языке Lua.

LÖVE бесплатный и с открытым исходным кодом. Он всё время дорабатывается: например, сегодня вышла версия 0.10.0, в которой добавили поддержку мобильных платформ помимо уже поддерживаемых Windows, Linux и Mac OS X.

В отличие от таких популярных инструментов разработки как Game Maker или Unity, с LÖVE в комплекте нет никакой программы, в которой можно «Делать игру». Вместо этого нужно писать код в файлах, складывать эти файлы в папку, скармливать папку LÖVE, а он на выходе будет выдавать игру.
Плюсом такого подходя является то, что вы можете сделать все детали, реализованные за вас в других движках, самостоятельно. А минусом — то, что вы должны делать детали, реализованные за вас в других движках, самостоятельно.

Читать дальше...

Я сделаю свой Hammer с блэкждеком и…

Игра изнутри

Однажды я написал комментарий о том, что хотел бы сделать «ультра-универсальный редактор карт». Конечно не столь дальновиден я, а некоторые идеи этого редактора — устаревшие велосипеды.

Короче, постараюсь описать как я вижу свой редактор, которого нет и может вообще не будет.

(Картинок пока не будет, но потом могу накидать)


Читать дальше...