118

Space Simulation Toolkit

Я инди разработчик, с 2012 года создающий игру-конструктор - глубокую физическую симуляцию, работающую на видеокарте.


Изначально, я хотел создать игру, в которой из клеток развиваются и эволюционируют виртуальные живые существа. Такие игры уже существуют, но все они имеют очень примитивную форму организмов, так как ограничены мощностями обычного процессора, в то время как GPU позволяет вычислять очень крутую и разнообразную физику, симулируя при этом огромные миры.


Позже я настолько увлекся созданием "лаборатории" для экспериментов с виртуальной физикой, что проект перерос в универсальную песочницу-конструктор, целью которой является дать всем игрокам возможность создавать любые собственные симуляции, и реализовывать самые безумные идеи.


В некотором смысле, это попытка создать игру в Бога.

8 лет понадобилось, чтобы создать первую публичную версию игры.


За это время, я с нуля изучил C++ и CUDA, 4 раза полностью переписал движок, написал свой язык программирования видеокарт и фреймворк на его основе. Главной целью создания нового языка программирования - было создание этой игры-конструктора.


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


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


Сейчас мне интересно привлечь сообщество к проекту, по двум причинам:


- Проект 100% инди, независимость принципиально нужна для создания игры именно такой, какой она должна быть. Поэтому единственный способ ускорить создание игры - привлечь поддержку сообщества на этапе её доработки. я бы сказал, есть некоторая миссия в том, чтобы показать на своем примере, как можно создать и развивать большой инди проект


- Сообщество игроков - основа для большой игры-конструктора. Я хочу создать возможность обмена элементами симуляций между игроками, чтобы сообщество могло работать коллективно, обмениваясь сконструированными объектами и созданными материалами

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


Страница игры в Steam: https://store.steampowered.com/app/1196080/Space_Simulation_...


Это первая публикация, посвященная запуску игры в Интернете

Привет, Пикабу!


Космос точно будет наш!

Правила сообщества

ОБЩИЕ ПРАВИЛА:

- Уважайте чужой труд и используйте конструктивную критику

- Не занимайтесь саморекламой, пишите качественные и интересные посты

- Никакой политики


СТОИТ ПУБЛИКОВАТЬ:

- Посты о Вашей игре с историей её разработки и описанием полученного опыта

- Обучающие материалы, туториалы

- Интервью с опытными разработчиками

- Анонсы бесплатных мероприятий для разработчиков и истории их посещения;
- Ваши работы, если Вы художник/композитор и хотите поделиться ими на безвозмездной основе

НЕ СТОИТ ПУБЛИКОВАТЬ:

- Посты, содержащие только вопрос или просьбу помочь
- Посты, содержащие только идею игры

- Посты, единственная цель которых - набор команды для разработки игры

- Посты, не относящиеся к тематике сообщества

Подобные посты по решению администрации могут быть перемещены из сообщества в общую ленту.

ЗАПРЕЩЕНО:

- Публиковать бессодержательные посты с рекламой Вашего проекта (см. следующий пункт), а также все прочие посты, содержащие рекламу/рекламные интеграции

- Выдавать чужой труд за свой

Подобные посты будут перемещены из сообщества в общую ленту, а их авторы по решению администрации могут быть внесены в игнор-лист сообщества.


О РАЗМЕЩЕНИИ ССЫЛОК:

Ссылка на сторонний ресурс, связанный с игрой, допускается только при следующих условиях:

- Пост должен быть содержательным и интересным для пользователей, нести пользу для сообщества

- Ссылка должна размещаться непосредственно в начале или конце поста и только один раз

- Cсылка размещается в формате: "Страница игры в Steam: URL"

Вы смотрите срез комментариев. Показать все
1
Автор поста оценил этот комментарий

Можете сравнить свой движок с Noita?

раскрыть ветку (3)
0
Автор поста оценил этот комментарий

Noita является шедевром оптимизации физики для работы на центральном процессоре (CPU). Это обеспечивает работу на наиболее широком перечне устройств, но накладывает принципиальные ограничения на физику процессов

SST работает на видеокарте (GPU), что дает доступ к вычислительным ресурсам, в 100-1000 раз превышающим возможности процессора. это сужает перечень устройств, на которых работает игра, но максимально расширяет возможности физики процессов

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

движок типа Noita подходит для создания некоторых эффектов "физической песочницы", но не подходит для создания большого "аквариума" для эволюции виртуальных существ - что является одной из ключевых целей SST:

Моделирование эволюции требует одновременного существования хотя бы 1000 существ, при этом физика их тел должна быть достаточно сложна, чтобы сделать процесс естественного отбора осмысленным и интересным с точки зрения наблюдателя.

Такое количество вычислений принципиально нельзя произвести на CPU в режиме реального времени

раскрыть ветку (2)
1
Автор поста оценил этот комментарий
Насколько возможности игры зависят от мощности видеокарты? Размеры игрового мира, скорость частиц и т.д. в зависимости от модели (например, 750ti и RTX 2080ti). Кстати, будет ли поддержка RT и тензорных ядер?
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

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

750 Ti - это level 2 (50K частиц)
2080 Ti - это level 8 (800K частиц)

RT и тензорные ядра - задумывался, это возможно, но не каждая физика умеет на них работать. тензоры хорошо могут подойти для более умных нейросетей, для виртуальных существ

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества