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.

  • View media
  • View media
  • View media
  • View media
  • View media
  • View media
Add media Report RSS Lightmapping prototype (view original)
Lightmapping prototype
embed
share
view previous next
Share Image
Share on Facebook Post Email a friend
Embed Image
Post comment Comments
SPY-maps
SPY-maps - - 2,906 comments

Everything you wrote down under Description (on the right) is a complete mystery to me, lol. In the buildengine there was just light everywere, no shadows. Will this be different in your engine, and will light maybe even be dynamic (so shadows can move)?

Leon

Reply Good karma Bad karma+1 vote
punpcklbw Author
punpcklbw - - 42 comments

Brahma rendering pipeline is quite flexible, so it can render simple sector-based constant shading like Build engine, or it can employ more elaborate lightmapping. I plan to do lightmap-based dynamic lighting, so each surface will have a precalculated static lightmap and a dynamic version, over which dynamic light sources could be rendered. Another approach is lighting 'imprinted' into the main texture, which is fastest, but it uses a lot of memory and can't handle HDR rendering and dynamic lights well.

Reply Good karma+1 vote
Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account:

Description

Done first tests with lightmapping. Brahma lightmap is a logarithmic greyscale texture rendered as shade overlay with linear interpolation applied. Gonna develop single-pass lightmapped texture rendering routine to speed things up.