unascribed / Ears

Faithful fancy fashion features for fuzzy folk.
https://ears.unascribed.com
MIT License
91 stars 15 forks source link

[1.7.10 - GTNH Angelica - Ears v1.4.5_01] Rendering hand model interrupts block-face culling for several blocks. #166

Open TimeBender25 opened 3 months ago

TimeBender25 commented 3 months ago

What's Expected To Happen:

Backside Block-face Culling will still apply to transparent block, even when the player has an empty hand.

What Actually Happens:

Block-face culling for all air-exposed faces gets interrupted while the first person hand model is rendered on screen.

Examples:

Screenshot of Proper Rendering when holding any item: 2024-08-25_17 32 01

Screenshot of broken rendering when first person hand model is visible: 2024-08-25_17 31 46

Screenshot showing that third-person rendering is functioning as expected: 2024-08-25_17 33 49

This affects almost all Glass Blocks, Plants/Crops, and Leaf Blocks.

Important Notes:

While I am using a slim arm model in the screenshots, this does not seem necessary to trigger the bug. Using a thick arm model still interrupts air-exposed culling.

Nothing get written to the console while the hand is being rendered.

I am certain it's between Ears and Angelica as disabling either one fixes the issue (Though disabling Angelica results in a very laggy game, and disabling ears results in no Ears and a broken skin).

TimeBender25 commented 3 months ago

Turning off Translucency Sorting in Angelica seems to fix this issue without needing to remove Angelica altogether.

image

unascribed commented 2 months ago

This is strange and i'm not sure what would cause this — I guess some kind of state leak, but I'm not sure what would leak state in the first-person arm renderer and not the player renderer.

Maybe the blend state? Ears adds a special kind of translucency-capable entity cuboid for compatibility with 1.9 translucent skins. It's also possible the cull state gets changed? I don't remember — 1.7 is a really weird Ears port.

brandyyn commented 2 months ago

This is strange and i'm not sure what would cause this — I guess some kind of state leak, but I'm not sure what would leak state in the first-person arm renderer and not the player renderer. Maybe the blend state? Ears adds a special kind of translucency-capable entity cuboid for compatibility with 1.9 translucent skins. It's also possible the cull state gets changed? I don't remember — 1.7 is a really weird Ears port.

Ears is also completely broken with Smart Moving in 1.7.

AxolotlAccount commented 2 months ago

Disabling "GL State Cache" from Angelica's Performance settings fixes the issue. tempfix