Hugo Amiard

is creating the two library
Select a membership level
Clay support
$1
per month

Thanks for helping building two ! <3

Stone support
$5
per month

Thanks for helping building two ! <3

  • Stone support credit on two and toy github page
Iron support
$20
per month

Thanks for helping building two ! <3

  • Iron support credit on two and toy github page
  • Access to a backers only section of the community board
Steel support
$100
per month

Thanks for helping building two ! <3 

  • Steel support credit on the two and toy github page
  • You are invited to a monthly discussion where the future of two and toy is decided
Sponsor
$200
per month

Thanks for helping building two ! <3

  • Your company logo listed as a sponsor on toyengine.io and toy and two github pages
Saint Patron
Limited (3 of 3 remaining)
$1,000
per month

Thanks for helping building two ! <3

  • Your company logo at the top of toyengine.io and toy and two github pages
  • You decide the features on which I will be assigning a third of my work week

9

patrons

$36

per month

About Hugo Amiard

What ?

two is a thin general purpose c++ library for building live graphical apps and games. it's the core that powers toy: it contains a powerful user interface, a minimalist and flexible graphics renderer, as well as seamless reflection of any c++ code, extending it with zero-cost serialization, scripting, tools/editors. two is all the application scaffolding power of toy, except targeted to any kind of application and not specifically games.

toy is a thin and modular c++ game engine. it aims to provide the thinnest and simplest stack of technology for making games directly from c++. toy offers simple expressive c++ idioms to design full featured 2d or 3d games in fast iterations.

Why is your help crucial ?

toy and two are both open-source projects licensed under the GPL and zlib license respectively: they need your support to help improve the open-source c++ game and application programming landscape, and bring to young programmers and small teams of enthusiasts the capacity to build their own software and engines.

these two projects were developed without any remuneration over the course of many years: they might have a bright future, but that depends on their ability to grow as a robust community-backed solution used in production projects. that, my friends depends on your help :)

I've released toy under the GPL, hoping for it to evolve into a truly free and open-source technology, by releasing under a more permissive license: however this can only happen if it secures a solid financial support basis, to ensure it's funded as an open-source project: this is where your help comes into play :)

How will your support help two and toy  ?

toy and two are mostly feature complete in terms of the basic features we wanted for a minimal viable engine. but there are many things to improve. by supporting two you will help us implement the following features:
  • tool applications: implement minimal tooling apps, including: a model painter, an animation editor, a particle editor, a prefab/scene editor. most of these features are partly implemented, but a set of standalone apps would be a great addition.
  • scripting languages: implement support for Wren, Javascript, and C# scripting.
  • clustered rendering: implement state-of-the-art clustered rendering techniques, along with a deferred rendering pipeline.
  • real-time global illumination: investigate state-of-the-art global illumination techniques and implement the best real-time compromise currently feasible.
  • node-based shader language: the two node editor is a perfect tool to start playing with node-based shader and render pipeline definitions.
  • multi-threading: implement efficient job/fibers system and parallelize everything that can be.
  • performance-focused ECS: implement an ECS skeleton focused towards heavily parallelized performance, to implement typical scenarios such as the boid example.
  • networking: investigate how a networking solution can be integrated with reflection, how to automatically expose objects procedures and fields through a networking API, to provide seamless basic multiplayer support, then implement it.

Sponsors

If you are a company and you wish to use two, consider supporting two proportionally to how two supports your activity. I am open to sponsorship opportunities. Making a significant pledge is also a good way to ensure I can support you in the most dedicated way, and maximize the potential of this library.

toy examples

Here are four examples of toy that run live in your browser:

platform game



rts game



space game



editor


two examples

Here are various examples of two that run live in your browser:

pbr materials



lights



sponza (.obj import)



character (animations)

particles



gltf



sky (perez model)



live shader



live graphics



live graphics (visual script)


Goals
$36 of $500 per month
Picking up the pace ! Allow me to fully dedicate one full working day each week to making toy the engine of your dreams and implement the remaining features :)
1 of 2

Recent posts by Hugo Amiard