Open jackjt8 opened 4 years ago
It should be noted that the 230-255 represented metals is also defined in the specification.
230 - Iron 231 - Gold 232 - Aluminum 233 - Chrome 234 - Copper 235 - Lead 236 - Platinum 237 - Silver
This is useful since it would allow Chunky to implement hard-coded real-world values for the material behaviors of these metals. There's also an addition 18 slots remaining for other metals as more become more prominent and common within the game.
labPBR provides a standardised PBR format which is primarily used to end fragmentation for shader and resource packs. At the time of writing there 13 Shaders and 4 Packs which support the labPBR specification and have been approved.
labPBR Format Wiki
Key features:
Normalmaps (with the _n suffix): Red - n/a Green - n/a Blue - Material Ambient Occlusion Alpha - Heightmap (POM)
Specularmaps (with the s suffix): Red - "perceptual" smoothness_ (related to linear roughness) Green - F0 / reflectance : Store linearly 0 to 229 (90%). 230 to 255 represent various different metals. For a value of 255 the albedo should be used. Blue - On dielectrics store porosity for 0 to 64, and 65 to 225 for subsurface-scattering. (On metals is reserved) Alpha - Emissiveness
Not only would this mean that we have access to a number of premade PBR resource packs, but we would be able to cross check implementations in Chunky against a multitude of Shaderpacks. Use of a standardised PBR implementation is beneficial over a custom implementation as it reduces fragmentation and improves cross compatibility.