Goal:

-Optimize and effeciently use the available resources while keeping good fps.
-Keep the codes squeaky clean, understandable, and portable.
-Retain the material pass system.

Framebuffers:

gcolor - Main scene : RGB16F
colortex1 - Normals : RGB16
colortex2 - Raw albedo / Bloom : RGB8
colortex3 - Metallic, roughness, glowing entity : RGB8
colortex4 - Clouds / Volumetric light : RGB8
colortex5 - Reflections : RGB16
colortex6 - Temporal / TAA, Auto exposure : RGBA16F
colortex7 - Clouds : RGBA8

Custom defined macros:

SHADOW
GBUFFERS
NETHER
END
DEFERRED
DEFERRED(1-15)
COMPOSITE
COMPOSITE(1-15)
FINAL
    Gbuffer macros:

    ARMOR_GLINT
    BASIC
    BEACON_BEAM
    BLOCK
    CLOUDS
    ENTITIES_GLOWING
    ENTITIES
    HAND_WATER
    HAND
    LINE
    SKY_BASIC
    SKY_TEXTURED
    SPIDER_EYES
    TERRAIN
    TEXTURED
    HAND_WATER
    WATER
    WEATHER