Uploaded image for project: 'Minecraft: Java Edition'
  1. Minecraft: Java Edition
  2. MC-152653

multipart blockstate - ambientocclusion of first referenced model applied to all models

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Awaiting Response
    • None
    • Minecraft 1.14.1
    • None
    • OS: Windows 10

      Java version: Using bundled runtime

       
    • Unconfirmed
    • Block states, Lighting, Textures and models

      when a blockstate json file that uses multipart,
      have reference to models both with ambient occlusion and without:

      theĀ ambient occlusion of any model applied by that file is that of the first model referenced.

      for example:

      to add a short grass texture on top of some grass blocks,
      a grass_block blockstate file is created referencing these 4 block models:

      • void: (empty model, ambientocclusion: false)
      • grass_short: (short grass above block, ambientocclusion: false)
      • grass_block: (vanilla block model, ambientocclusion: true)
      • grass_block_snow: (vanilla block model, ambientocclusion: true)

      using this json code:

      {{ "multipart": [ { "when": {"snowy": "false"}, "apply": [ { "model": "block/void" }, { "model": "block/grass_short" } ] }, { "when": {"snowy": "false"}, "apply": { "model": "block/grass_block" } }, { "when": {"snowy": "true"}, "apply": { "model": "block/grass_block_snow" } } ]}
      

      this renders the desired result of 50% of non-snowy grass blocks having short grass on top,

      but any model rendered using this, including the snowy model "inherits" the "ambientocclusion":"false" setting of the void model.

      or at least that what I believe happens after testing different configs, and orderings of models / cases.

            Unassigned Unassigned
            OriAlon Ori Alon
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: