Проекты
GameDev.ru / Проекты / Форум / Конкурс минималистичных движков Nano Engine [2+1 недели]

Конкурс минималистичных движков Nano Engine [2+1 недели]

Страницы: 1 2 348 49 Следующая »
DampireУчастникwww31 мая 201821:01#0
Задача написать движок, имеющий минимальное внешнее API с максимальной гибкостью, позволяющий реализовывать разнообразные игры. Потенциальные жанры: cайдскроллер, платформер, шутемап (вид сверху), логическая игра.

По истечении 2 недель внешнее API должно быть задокументировано и меняться уже не может.
После будет предоставлен тайлсет (2D или 3D на выбор) и выдано ТЗ по реализации примитивной игры.
На реализацию игры дается неделя (чтобы при разных графиках все имели возможность поработать в выходной).
Движок можно дорабатывать внутри, реализовывать любые хаки, но при этом внешее API не должно никаким образом меняться или дополняться.
После завершения участник обязан предоставить саму игру и код игры, который и будет оцениваться.
Оцениваться будет стабильность, соответствие игры ТЗ, а также читаемость и объем кода.
За изменение фиксированно API сразу следует дисквалификация. Даже если int& был заменен на int*.

TL;DR
2 недели пишем минималистичный движок основываясь на фрейморвках и либах.
1 неделю пишем игру по ТЗ.
Оценивается лаконичность API и игрового кода.

Необходимый минимум в движке - проигрывание звуковых файлов, ввод с клавиатуры, любого уровня UI (минимум кнопка и текст) и разумеется сам рендер (2D или 3D, или все вместе).
Только эти функции будут задействованы в ТЗ.

Сроки:
1  июня 00:01 - Старт конкурса.
17 июня 23:59 - Фиксируем и публикуем API.
24 июня 23:59 - Выкладываем игру и ее код.

Условия:
- Судейство производится самими конкурсантами путем расстановки работ участников от лучшего к худшему.
- Движок не должен основывать ни на каком другом движке, но позволяется использовать сторонние фреймворки из указанного ниже пополняемого списка.
- Выбор любых математических библиотек, библиотек по загрузке и проигрыванию игровых ресурсов (текстуры, звук, модели, спрайты, шрифты), UI тулкитов свободный.
- Выбор языка программирования свободный, но если судьи не будут в состоянии понять всю глубину ваших глубин, то имеют право поставить работу на последнее место.

Целевая платформа:
Windows 7 x86/x64. Видеокарта уровня OpenGL 3.3, DirectX 11.

Фреймворки:
Голый WinAPI
SDL1.2
SDL2
GLFW
SFML
PyGame
AvalancheProject
MonoGame

Заявку как обычно подаем красным текстом, чтобы я не пропустил.

Участники:
Жора Монтировка
kipar                        https://gitlab.com/kipar/nonoengine
war_zes                  https://github.com/warzes/NanoEngine
MrShoor                  https://github.com/MrShoor/BackTerria
zavod3D
.z.                            https://github.com/Zakhar-V/NanoEngine
nes
Madware
widewrd
равен

Призовой фонд:
Panzerschrek[CN] - 2.018 р
Vitorio - 1.000 р
skalogryz - 3.000 р

Правка: 15 июня 2018 20:15

DampireУчастникwww31 мая 201821:01#1
API
Madware
kipar
nes
widewrd
Жора Монтировка
MrShoor rev 20105f4acc841687e22efcf53096b55944565c98

ТЗ
Шрифт:
http://www.1001fonts.com/advanced-pixel-7-font.html
Альтернативно можете использовать любой, если SDF реализован.

+ Текст

Ассеты, план уровня, текст

Релизы
MrShoor
Madware
Жора Монтировка
kipar

Правка: 24 июня 2018 20:56

DampireУчастникwww31 мая 201821:01#2
[reserved]
nesПостоялецwww31 мая 201821:06#3
>Движок можно дорабатывать внутри, реализовывать любые хаки, но при этом внешее API не должно никаким образом меняться или дополняться.
Так можно сделать движок с одной единственное функцией:
void* GetEngineFeature(const char name[]);
И уже понадергать из нее 100500 функций.
DampireУчастникwww31 мая 201821:08#4
На здоровье. Не забывай, что оценивать тебя будут остальные и твой фокус не пройдет. У нас не машинная оценка по количеству внешних функций.

Правка: 31 мая 2018 21:08

Жора МонтировкаПостоялецwww31 мая 201821:10#5
Заявка
Роман ШуваловУчастникwww31 мая 201821:16#6
Dampire
> После завершения участник обязан предоставить саму игру и код игры, который и будет оцениваться.
Я правильно понял, что открыть надо только код игры, но не код реализации API?

Dampire
> За изменение фиксированно API сразу следует дисквалификация. Даже если int& был заменен на int*.
У нас тут как бы не многомиллионный грант разыгрывают, опечатки и мелкие доработки предлагаю оставить, но отмечать об изменениях (если изменение существенное - судьи занизят балл).

Правка: 31 мая 2018 21:20

MrShoorУчастникwww31 мая 201821:21#7
Dampire
Нужен пример контента, который будет выдаваться для игры.
А то так сейчас непонятно какое API ломиться реализовывать в первую очередь.
А еще неплохо было бы ограничить платформы, на которых все должно работать, и минимальный уровень по железу, с которым все должно запускаться.
DampireУчастникwww31 мая 201821:22#8
Роман Шувалов
Да, правильно. Все что за интерфейсом никому не интересно. Если ты ведешь к тому, "А что если кто-то статически слинкует какой-нибудь движок и никому не скажет", то я тебе отвечаю - "А ничего. Молодец, может даже выиграет конкурс. И получит ничего, разве что ЧСВ потешит"
MrShoorУчастникwww31 мая 201821:24#9
И еще. Насколько игра должны быть независима от сторонних API? Ведь движок может просто возвращать скажем ID3D11Device и ID3D11DeviceContext, а игра уже будет сама реализовывать все что ей надо. Насколько легитимны такие штуки?
DampireУчастникwww31 мая 201821:28#10
MrShoor
> А еще неплохо было бы ограничить платформы, на которых все должно работать, и
> минимальный уровень по железу, с которым все должно запускаться.
Платформы ограничил. Семерка с GL3.3/DX11 железом.
MrShoor
> И еще. Насколько игра должны быть независима от сторонних API? Ведь движок
> может просто возвращать скажем ID3D11Device и ID3D11DeviceContext, а игра уже
> будет сама реализовывать все что ей надо. Насколько легитимны такие штуки?
Легитимны на 100%. Я повторюсь. Вы можете выкидывать хоть какое внешнее API в движке. Хоть SetPixel(x,y,Color). Но оценивать движок будут другие участники и они разместят проекты согласно своему видению минималистичности API. То есть самим участникам должно быть выгодно писать чистый и понятный высокоуровневый код без грязных хаков.

Правка: 31 мая 2018 21:35

MrShoorУчастникwww31 мая 201821:30#11
Dampire
Пример контента будет? М?
DampireУчастникwww31 мая 201821:31#12
Роман Шувалов
> У нас тут как бы не многомиллионный грант разыгрывают, опечатки и мелкие
> доработки предлагаю оставить, но отмечать об изменениях (если изменение
> существенное - судьи занизят балл).
Опечатки в названии функции без проблем. Опечатки типа ой, я хотел int*, а напечатал int& - не катят. Смена параметров расширяет возможности движка, этого я хочу избежать.
DampireУчастникwww31 мая 201821:34#13
MrShoor
> Пример контента будет? М?
https://opengameart.org/content/dungeon-tileset
Да вот хотя бы этот тайлсет. Если тебя 3D интересует, то будет несколько FBX/OBJ статических моделек без костей и анимаций. Можешь хоть Assimp конвертнуть во что захочешь.
DampireУчастникwww31 мая 201821:39#14
Еще уточнение. Убойного левелдизайна в финальном проекте не понадобится. Если хотите - можете написать тулсет для редактирования карты, это безусловно пойдет в плюс движку. Но в целом хватит и процедурного.

Правка: 31 мая 2018 21:39

Страницы: 1 2 348 49 Следующая »

/ Форум / Проекты / Конкурсы

2001—2018 © GameDev.ru — Разработка игр