Herb items with see-through leaves are drawn solid

Open
#485 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
48/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
csharp, unity

Research direction

Start at VobInitializerDomain.CreateItemMesh and trace how useTextureArray: false leads to AbstractMeshBuilder.GetDefaultMaterial selecting Lit/SingleMesh; compare this with the bushes and trees that use Lit/AlphaToCoverage. The issue leaves the implementation choice open: a single-texture cutout variant or placing items in texture arrays. Done means the listed G2 herb textures with alpha render with cutout leaves, while textures without alpha retain their original solid appearance.

Written by the indexing model from the issue text.

Description

bug
Description

Items are built without the texture arrays (VobInitializerDomain.CreateItemMesh, useTextureArray: false). AbstractMeshBuilder.GetDefaultMaterial then always gives them Lit/SingleMesh, which has no alpha test. The transparent parts of item textures with alpha are drawn solid.

Expected Behavior

Leaves are cut out like on bushes and trees (Lit/AlphaToCoverage).

Actual Behavior

Solid leaf quads. Affected G2 herbs (their leaf textures are DXT3, checked in the archives): ItPl_Health_Herb_03, ItPl_Dex_Herb_01, ItPl_Forestberry, ItPl_Planeberry, ItPl_Beet, ItPl_SwampHerb, ItPl_Weed, ItPl_Temp_Herb.
Herbs using ITFOOD-C.TEX (DXT1 without any alpha: healing, mana, speed, strength herbs, mushrooms) are solid in the original too.

Reproduction Steps
  1. G2, find or spawn ItPl_Health_Herb_03 or ItPl_SwampHerb.
  2. Look at the leaves.

Environment Information

  • Reproducibility: Always
  • Platform: all (seen on Quest 3)
  • Game Version: main 83a1aebd2
Notes

Not covered by BoroBongo's work: his palm leaf fix (EnableTextureArraySubmeshMaterials, experimental branch) only covers meshes that use the texture arrays.
Fix idea: a cutout variant for meshes with a single 2D texture, or items in the texture arrays.

Dominant language
C#
Stars
33
Forks
1
Avg merge
1d 17h
Merged PRs (30d)
51

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from Gothic-Unity-Project/Gothic-Unity

All issues in Gothic-Unity-Project/Gothic-Unity

Similar issues

More C# issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.