Introducing Simulant, a cross-platform general-purpose game engine!

Discussion in 'Sega Dreamcast Development and Research' started by kazade, Dec 22, 2018.

  1. kazade

    kazade Spirited Member

    Jul 22, 2015
    Likes Received:
    Hi everyone!

    Today I'm publically announcing the Alpha release of a project I have been working on for several years(!).

    Simulant is an open-source general-purpose game engine, written in C++ which supports building games for Windows, Linux and Dreamcast targets from a Linux development system (cross-compiling), and can also natively build on OSX. Android support is also in the works.

    It's a full-blown 2D/3D game engine, with a bunch of features:

    - Multiple renderers (OpenGL 1.1 and OpenGL 2.1)
    - High-level Scene management
    - Powerful material system, supporting GLSL on GL 2.x
    - Hierarchical scene building
    - Scriptable particle system (custom JSON format)
    - Support for loading .obj and .md2 meshes, as well as Tiled .tmx files
    - Complex configurable rendering pipeline
    - Easy-to-use API
    - Automatic memory management of game assets
    - Automatic level-of-detail mesh selection
    - Combination Spatial hash and Octree based culling systems
    - Built-in realistic Newtonian physics engine
    - Entity behaviour component system
    - UI widget rendering system
    - Built-in helpers for scrollable backgrounds, skyboxes and animated sprites
    - OpenAL powered audio
    - There's probably more I've forgotten...

    And if that isn't enough, the whole thing is controllable from a simple command-line management command, which allows you to bootstrap projects, build them for multiple platforms, run unit tests, and package your game for Linux (flatpak) and Dreamcast (.CDI). Windows installer support is coming soon!

    You don't even have to compile the game engine yourself, just install the the management command and it will download pre-compiled game engine libraries which are generated automatically via a complex build system!

    If you want to find out more then head over to the following links:

    The Simulant Website
    Getting Started Tutorial
    Discord Chat
    Code Repository
    Issue Tracker

    Reminder, this is Alpha software - it's unfinished, it's constantly changing, it's buggy in places, but that's why I need people to try things, report bugs, send patches and support me via Patreon.

    Merry Christmas everyone!
    LuizNai, Zeigren, Traace and 12 others like this.
  2. Mrneo240

    Mrneo240 Enthusiastic Member

    Sep 15, 2017
    Likes Received:
    I really highly definitely encourage any curious people to take a look at this.

    it is very easy to setup, and use. The documentation might seem a little sparse but between the examples, the engine code, and the peoples on the discord its a breeze to use.

    I've had the pleasure of toying with this for a couple months and im a huge fan.
    Zeigren, Traace, Blockhead and 3 others like this.
  3. Mrneo240

    Mrneo240 Enthusiastic Member

    Sep 15, 2017
    Likes Received:
    i figure this may be helpful for people who arent sure what you can do with this whole engine.

    I HIGHLY Encourage people to check this out.

    DISCLAIMER: These are from October and things have changed since then.
    1. Building for Windows (with my rough initial port, now this has proper support in the engine (i am mostly sure, i think?)) and Linux through the simulant tool, and Building + Packaging to a CDI for the dreamcast. All 3 are using the exact same program source. But are using their respective version of the compiled simulant libraries and headers.
    2. Then running that CDI on lxdream (lag is due to lxdream and vmware, not present on hardware)
    3. Same Demo running on Demul under windows
    4. Same Demo but Updated with more boxes, some optimizations and skybox on actual dreamcast (of course with GDEmu and neoIP ;))

    Sorry the demo isnt the most Incredible thing. I was more concerned with porting/working on/with the engine than creating Compelling AAA Gameplay and Story.

    Images from the windows port i did in a couple days before it was even on the menu :cool:
    2018-12-23 21_12_09-SDL-cross test.png
    2018-12-23 21_13_54-Introducing Simulant.png

    i have a PSP port with patches and such and it compiles and links successfully but im having issues with gcc c++11 and pthreads. help?

    if you are a super cool cat and you wanna show your support when you use your dreamcast heres some extra flavor, Custom Simulant ICONDATA.VMS (attached to this post as a file)

    The full family: win10 x64, linux x64 (debian), Dreamcast (sh-4) AKA THE MONEY SHOT

    Attached Files:

      File size:
      422 bytes
    Last edited: Dec 23, 2018
  4. Anthony817

    Anthony817 Familiar Face

    May 12, 2010
    Likes Received:
    I foresee some big things with this, hopefully people actually use it and it gets enough advertisement. I posted about it on Reddit the other day before this thread was made, but I hope other Dreamcast news sites and communities are made aware of it.
    kazade likes this.
  5. LuizNai

    LuizNai Robust Member

    Jul 13, 2016
    Likes Received:
    I can't wait to test it! Great work :)
  6. HyperFighting

    HyperFighting Newly Registered

    Jan 12, 2013
    Likes Received:
    This is really exciting stuff! Thanks for all your efforts!
    I'm hyped up to start playing around in the new engine!

    Any idea on the easiest way to get a windows environment set up?
    Last edited: Jan 4, 2019

Share This Page