-
Notifications
You must be signed in to change notification settings - Fork 88
Changes from upstream
embeddedt edited this page Mar 28, 2024
·
5 revisions
This list is out of date (it has not been updated since February 2024). It was published back when plans were in progress to merge Embeddium's Forge patches into Sodium, and should not be used to make comparisons between the mods. It remains here for archival purposes only.
- Apply packed normals, lights & colors from baked quad vertex data
- Read Forge
ModelData
map from the world when creating chunk meshing tasks - Call Forge overloads of various
BakedModel
andBlockState
methods (e.g.IForgeBlockState#getLightEmission
,IForgeBakedModel#getRenderLayers
,IForgeBakedModel#getQuads
) - Modify
BlockOcclusionCache
to call appropriate Forge APIs - Support entities with infinite bounding boxes properly (TODO: Possibly fixed by limiting the number of sections to scan to 15)
- Frustum cull block entities
- Add
WorldSliceLocal
as a wrapper aroundWorldSlice
, to mimic vanilla passing a unique object for each subchunk, without impacting allocation rate significantly - Apply flat lighting to
BakedQuad
s with AO disabled - Disable quad reorienting for a given direction if at least one quad disables AO (avoids Z-fighting)
- Introduce naive translucency sorting (will be superseded by GFNI)
- Introduce full-precision vertex format (https://github.com/CaffeineMC/sodium-fabric/pull/2116)
- Support directing block rendering to an alternative vanilla-like render pipeline (e.g. CodeChickenLib, or Forge lighting)
- Call
WorldRenderer.getLightmapCoordinates
on blocks if they are not emissive, rather than always using Sodium's override (allows dynamic lights mods to work without mixing into Sodium code)