Brahma is a 3D game engine with a rather retrofuturistic design, intended for small studios and solo developers. It's being written from scratch in C++ using standard Windows API and no third-party libraries. This technology introduces an entirely new class of low-latency real-time engines that make special timing requirements, treating frames as video fields with a target time budget of 2-4 ms each, down from 16-33 ms frame budgets normally seen in game engines. It evolves in a different way than other modern engines, rejecting conventional BSP, Z-buffer, floating-point coordinates, and most of the lame screen-space effects in favor of innovative and efficient techniques. The engine is non-Euclidean capable to some degree; also it supports true displacement mapping for sectors as a means to virtualize geometry that affects collisions. The engine is also carefully designed to be easy and convenient to develop for, yet versatile and adaptive to any needs.
The keyboard is a heightmapped surface which can potentially display key presses with ease. The game will be able to process user's MIDI input to make such instruments playable, what could be used in making music using the engine, as one could place instruments and effects in an actual environment, walk around and play any of them or program a track into the sequencer.
Eventually Brahma should run a new kind of creative workstations, which is unprecedentedly integrated and intuitive. With use of different adaptive workspaces, the same framework may be suitable for in-place visual art, digital audio, motion design and even CAD-related tasks, opening up a whole new world of productivity.
"... and even CAD-related tasks"
WOW!
This goes much further than that grand piano map in Ion Fury, which was awesome in itself.
Leon
Yes, the piano in Ion Fury is just a gameplay gimmick, and what I'm trying to make is a tool that can be easily adapted to different use cases.
An example of a CAD task would be to visualize stress within the piano structure that comes from its weight and tension of the strings, with interactive functions like changing your size and time speed to examine processes going on various scale.