Как стать автором
Обновить
28.25
Рейтинг

Haxe *

Опенсорсный инструментарий на высокоуровневом ЯП

Сначала показывать
Порог рейтинга

Игровой код, который сам себя программирует

Программирование *Разработка игр *Игры и игровые консоли Haxe *

На сегодняшний день у меня выпущены четыре игры в Steam, и все они написаны на языке Haxe. Мне нравится по-максимуму автоматизировать свою работу, и сегодня я поделюсь некоторыми приёмами, которые я использую при программировании своих игр.

Для непосвящённых: Haxe — это язык программирования и кросс-компилятор. Это значит, что можно написать игру на Haxe, и она автоматически "переводится" на другой язык программирования, в зависимости от выбранной платформы (C++ для Windows, JavaScript для Web, и т.д.), и компилируется в нативную программу для той платформы.

У языка есть несколько полезных функций метапрограммирования, которые используются для написания кода, который, грубо говоря, сам себя меняет. Эта статья — не туториал и не руководство, а просто несколько примеров того, как такие приёмы могут быть использованы в разработке компьютерных игр.

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

Читать далее
Всего голосов 15: ↑10 и ↓5 +5
Просмотры 3.2K
Комментарии 7

Новости

Как я создаю игры на своём 3D движке в одиночку

Работа с 3D-графикой *Разработка игр *Дизайн игр *Игры и игровые консоли Haxe *

Много лет назад я занимался созданием маленьких Flash игр и публиковал их на сайте Newgrounds. Сейчас я делаю полноценные игры для ПК.

На сегодняшний день у меня 4 законченные коммерческие игры в Steam, и самая последняя из них — выпущенная в 2021 году Pilie Pals, о процессе создания которой я расскажу в этой статье.

Я работал над игрой всего примерно 6 месяцев, по вечерам после работы и на выходных. Я занимаюсь дизайном, программированием, графикой, звуками и музыкой в одиночку, и использую свой собственный движок 3D игр.

Читать далее
Всего голосов 50: ↑49 и ↓1 +48
Просмотры 14K
Комментарии 13

Как я создал собственный 3D движок и игру на нём за 20 месяцев

Работа с 3D-графикой *Разработка игр *Дизайн игр *Игры и игровые консоли Haxe *
Из песочницы

Речь идёт о игре Speebot, которая была выпущена в Steam в 2017 году.

Я разрабатывал эту игру с января 2016 года в своё свободное время в одиночку. Мною выполнено всё программирование, дизайн игрового процесса, создание графики и музыки. Кроме того, я написал собственный игровой движок с нуля.

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

Читать далее
Всего голосов 99: ↑99 и ↓0 +99
Просмотры 28K
Комментарии 38

Новости из вселенной Haxe

Haxe *
Перевод

14 октября состоялась небольшая онлайн-конференция HaxeIn 2020. Одним из докладчиков был Александр Кузьменко — разработчик компилятора Haxe.
Доклад Александра — это отчет о работе, проделанной с февраля 2020 (когда состоялся HaxeUp Hamburg, организованный компанией Inno Games). Предлагаю вашему вниманию расшифровку его выступления.


image

Читать дальше →
Всего голосов 14: ↑14 и ↓0 +14
Просмотры 1.5K
Комментарии 4

Стек технологий Shiro Games

Haxe *
Перевод

Наш игровой движок Heaps.io и набор инструментов и технологий, на котором он основан, являются результатом опыта, накопленного за двадцать лет, посвященных созданию игр: сначала в компании Motion-Twin (создатели Dead Cells), а с 2012 года в Shiro Games (Evoland, Northgard и Darksburg).
Названные игры (2D и 3D) были созданы с использованием стека библиотек и инструментов, исходный код которых был открытым с самого начала, и которые продолжают развиваться и поддерживаться.
Так как меня часто спрашивают о том, как мы создаем игры, то я подумал, что было бы неплохо поделиться подробностями обо всех элементах технологического стека Shiro Games. Он прекрасно подходит для наших задач, так что возможно он может подойти и другим компаниям.


image

Читать дальше →
Всего голосов 6: ↑6 и ↓0 +6
Просмотры 4.4K
Комментарии 9

Kha vs HTML5: Компилируем JavaScript в C++

Haxe *
Перевод

Предлагаю вашему вниманию перевод доклада Роберта Конрада с прошедшего в октябре прошлого года HaxeUp Sessions 2019 Linz. Данный доклад посвящен процессу портирования на консоли игры CrossCode, изначально написанной на HTML5. Если вам понравится перевод, то рекомендую также посмотреть его в оригинале на английском — Роберт очень веселый человек, постоянно шутит и его интересно слушать.


image


Немного об авторе: Роберт работает программистом в Deck13, одной из немногих игровых компаний, использующих свои собственные технологии (именно поэтому Роберт и выбрал эту компанию). В основном его работа связана с оптимизацией (например, недавно выпущенной игры Surge 2).

Читать дальше →
Всего голосов 8: ↑8 и ↓0 +8
Просмотры 3.6K
Комментарии 1

Forge of Empires из AS3 в Haxe. Постмортем

Haxe *
Перевод

В комментариях к переводу доклада с HaxeUp Sessions 2020 Hamburg — Зимний отчет о состоянии Haxe — был задан вопрос о том, зачем нужен Haxe. На него, конечно же, ответили там же, в комментариях. Предлагаемый вашему вниманию перевод еще одного доклада с прошедшего HaxeUp должен, по моему мнению, стать дополнительным аргументом в защиту Haxe, т.к. данный доклад посвящен игре, заработавшей более 500 млн. евро.


Автор доклада Ненад — один из программистов InnoGames, работавших над конвертацией Forge of Empires из ActionScript в Haxe. 2 года назад в Амстердаме InnoGames рассказывали о своей работе в данном направлении. Сегодня же можно сказать, что им это удалось в полной мере — теперь обе версии веб-клиента (Flash и html5) собираются из единой кодовой базы на Haxe. И данный доклад является по сути обзором проделанной работы и принятых решений, как удачных, так и не очень.


image

Читать дальше →
Всего голосов 11: ↑11 и ↓0 +11
Просмотры 11K
Комментарии 0

Зимний отчет о состоянии Haxe

Haxe *
Перевод

7 февраля в офисе компании InnoGames состоялась очередная мини-конференция HaxeUp Sessions 2020 Hamburg, на которой Саймон Краевский отчитался о проделанной работе, рассказал немного о ближайшем будущем Haxe. И здесь я хотел бы представить перевод основной части его доклада (пропустив начало, в котором Саймон рассказывает о том, как он попал в Haxe и чем занимался в Haxe Foundation. Об этом он уже рассказывал на предыдущем HaxeUp).


image

Читать дальше →
Всего голосов 9: ↑9 и ↓0 +9
Просмотры 2.1K
Комментарии 5

Cтажировка в Haxe Foundation

Haxe *
Перевод

Представляю вам перевод еще одного доклада с HaxeUp Sessions 2019 Linz, считаю что он хорошо дополняет предыдущий, т.к. продолжает тему изменений в Haxe, произошедших в 2019 году, а также немного рассказывает о его будущем.
Немного об авторе доклада: Аурел Били познакомился с Haxe, участвуя в различных гейм-джемах, и он продолжает в них участвовать (к примеру вот его игра с последнего Ludum Dare 45).


image

Читать дальше →
Всего голосов 7: ↑7 и ↓0 +7
Просмотры 925
Комментарии 5

Осенний отчет о состоянии Haxe

Haxe *
Перевод

26 октября в г. Линц-ам-Райн (Германия) прошла мини-конференция HaxeUp Sessions 2019, посвященная Haxe и смежным технологиям. И самым знаменательным ее событием был, конечно же, финальный релиз Haxe 4.0.0 (на момент публикации, то есть спустя примерно неделю, вышло обновление 4.0.1). В этом материале я хотел бы представить вам перевод первого доклада конференции — отчета о работе, проделанной командой Haxe за 2019 год.


image

Читать дальше →
Всего голосов 18: ↑16 и ↓2 +14
Просмотры 2.5K
Комментарии 5

Haxe и PHP: статическая типизация, стрелочные функции, метапрограммирование и многое другое

PHP *Haxe *

Привет, Хабр! Предлагаю вашему вниманию перевод доклада Александра Кузьменко с прошедшей недавно (14-15 июня) конференции Hong Kong Open Source Conference 2019.


image


До того, как присоединиться к Haxe Foundation в качестве разработчика компилятора Haxe, Александр около 10 лет профессионально занимался программированием на PHP, так что он знает предмет доклада.

Читать дальше →
Всего голосов 35: ↑33 и ↓2 +31
Просмотры 7.6K
Комментарии 25

Haxe 4: Что нового?

Haxe *

Предлагаю вашему вниманию перевод доклада Александра Кузьменко (с апреля этого года он официально работает в качестве разработчика компилятора Haxe) об изменениях в языке Haxe, произошедших с релиза Haxe 3.4.


image

С момента выпуска Haxe 3.4 прошло более чем два с половиной года. За это время вышло 7 патч-релизов, 5 превью-релизов Haxe 4 и 2 релиз-кандидата Haxe 4. Это был долгий путь к новой версии и она почти готова (остается решить около 20 задач).

Читать дальше →
Всего голосов 15: ↑15 и ↓0 +15
Просмотры 4.3K
Комментарии 8

Haxe: большой секрет кросс-платформенной разработки

Программирование *Haxe *
Перевод
Современный язык программирования Haxe хорошо известен в определенных кругах, но многие из читающих данный материал возможно никогда о нем и не слышали. Но не позволяйте его нишевому статусу обмануть вас. С тех пор, как он впервые появился в 2005 году, его испытали в бою его лояльные, хотя и довольно тихие, последователи. Он отличается прагматичным и продуманным сочетанием возможностей, подходящих для разработки в бизнесе, играх и даже в академических целях.
Читать дальше →
Всего голосов 16: ↑15 и ↓1 +14
Просмотры 12K
Комментарии 8

Радость Haxe. Роман с обделенным вниманием языком программирования

Типографика *Программирование *Java *TypeScript *Haxe *
Из песочницы
Привет, Хабр! Представляю вашему вниманию перевод статьи The Joy of Haxe. FontStruct’s love affair with a neglected programming language.

Логотип Haxe в редакторе шрифтов FontStruct

Довольно грубая попытка воспроизвести логотип Haxe в редакторе шрифтов FontStruct

Недавно мы открыли исходный код наиболее важной части нашего модуля для создания шрифтов. Это библиотека fonthx для создания TrueType-шрифтов, и написана она на Haxe.
В данной статье практически нет кода. Если же вас интересует только код, то ознакомиться с ним можно на github, а его работа показана на примере простейшего редактора пиксельных шрифтов, построенного с использованием библиотеки fonthx.
Читать дальше →
Всего голосов 21: ↑19 и ↓2 +17
Просмотры 6.3K
Комментарии 36

Разработать и опубликовать игру под Android за неделю

Разработка игр *Разработка под Android *Haxe *
Из песочницы

Задумал я как-то написать игру. Причем, по-быстрому. Желательно за неделю при условии работы на полставки. Финальным этапом должна была стать публикация на Google Play (что, конечно, недостаточно, но об этом позже). Таким образом, это будет статья о разработке в стиле "вжух-вжух и в продакшен", или, как сказали друзья "устроил себе Ludum Dare". Технических деталей будет, впрочем, немного.


После небольшого брейнсторма родилась идея "складывания ленты". Лента бесконечной длины, её можно сгибать под прямым углом (количество сгибов ограничено), и её "лицевая" и "изнаночная" стороны разного цвета. Так же есть контрольные точки "лицевого" и "изнаночного" цветов. Игрок выигрывает когда лента пройдёт соответствующими сторонами по всем контрольным точкам. Быстрый поиск не дал ничего похожего.


screenshot

Читать дальше →
Всего голосов 52: ↑45 и ↓7 +38
Просмотры 23K
Комментарии 16

NanoFL: краткое описание возможностей

Блог компании NanoFL JavaScript *Разработка игр *WebGL *Haxe *
image

За последние полгода редактор для создания игр и просто баннеров под HTML5 прилично пообтесался, упростился (в смысле концепции и интерфейса) и, в итоге, стал ближе к конечному пользователю. Пришла пора посмотреть, что есть в нём (в редакторе, а не в пользователе, конечно) интересного. Под катом — тяжёлые картинки и немного текста.

Читать дальше →
Всего голосов 23: ↑22 и ↓1 +21
Просмотры 5.9K
Комментарии 7

Онлайн-конференция RuHaxe 5

Программирование *Разработка игр *Haxe *
ruhaxe logoУже сегодня, в воскресенье 24 июля в 15:00 по Москве состоится пятая онлайн-конференция русскоязычного Haxe сообщества. Как и на прошлых конференциях, можно будет не только посмотреть и послушать доклады на темы технологий, связанных с Haxe, но и задать любые вопросы их авторам.

Update: изменения в составе участников. SlavaRa не сможет выступить из-за внезапно возникших обстоятельств. Вместо него Ярослав Сиваков расскажет про создание NanoFL и возможности, которые предоставляет этот редактор разработчикам и аниматорам.

Если вы пока не знаете, что такое Haxe, можно прочитать краткое описание, а затем посмотреть слайды и запись доклада с недавнего выступления Даниила Коростелева в компании Невософт.

Под катом подробнее о темах докладов:
Читать дальше →
Всего голосов 16: ↑15 и ↓1 +14
Просмотры 4.5K
Комментарии 4

Введение в кросс-платформенную разработку игр на haxe, flow, snow, luxe

Разработка игр *Haxe *
Из песочницы


Здравствуйте, дорогие разработчики!
Сегодня я хочу рассказать вам о том, как погрузиться непосредственно в создание игры так, чтобы можно было забыть об платформах, sdk, компиляторах, сборках, деплоях и прочих ide. Есть способ просто писать код на современном высокоуровневом языке и быстро его тестировать на всех платформах, поддерживаемых вашей хост осью.
Читать дальше →
Всего голосов 32: ↑28 и ↓4 +24
Просмотры 19K
Комментарии 14

Макросы в haxe: выполняем код прямо во время компиляции (и это нормально)

Программирование *Haxe *
В предыдущей статье я немного рассказал про haxe — простой и удобный язык общего назначения. Однако, кроме простоты и понятности, есть в нём и вещи глубокие — такие, как концепция макросов — кода, который выполняется в процессе компиляции. Почему в haxe нет традиционных Си-подобных макросов и какие возможности нам отрывают haxe-макросы, и пойдёт речь в статье.
Читать дальше →
Всего голосов 12: ↑11 и ↓1 +10
Просмотры 5.8K
Комментарии 10

Haxe: конвертируем исходный код

Программирование *Haxe *
Haxe — очень удобный и практичный язык, но маленькое сообщество и, как результат, небольшое количество библиотек заставляют меня немало времени тратить на подготовку «заголовочных файлов» для интеграции open source библиотек в haxe. Немного об этом языке и о путях преобразования исходного кода на разных языках мне бы и хотелось рассказать ниже.
Читать дальше →
Всего голосов 36: ↑33 и ↓3 +30
Просмотры 23K
Комментарии 24
1

Вклад авторов