{
  "sourceURL": "https://polyhaven.com/a/grass_medium_02",
  "author": "Rico Cilliers",
  "license": "CC0",
  "licenseURL": "https://polyhaven.com/license",
  "frozenSourceSHA256": "3c2468f2ab771fea4b372d28a62088bf07efc6a08a8e92952b88c579240477c9",
  "sourceAndOriginal2KUnchanged": true,
  "derivedAsset": "New project-baked 1024px RGBA albedo/alpha atlas and 72-triangle field proxy variants. Not an author-supplied LOD.",
  "sourceDensityRootsPerM2": 25,
  "nearSourceScaleAppliedExactlyOnce": true,
  "proxySHA256": "b62a914933a80c626bce102133284109b02f28228d13742fa8546bae8bfe1672",
  "release": "20261015-r26-grassblend",
  "publishedFile": "grass-fullview-proxy-tiles.glb",
  "bytes": 1953844,
  "sha256": "b62a914933a80c626bce102133284109b02f28228d13742fa8546bae8bfe1672",
  "contract": {
    "file": "grass_fullview_proxy_tiles.glb",
    "sha256": "b62a914933a80c626bce102133284109b02f28228d13742fa8546bae8bfe1672",
    "bytes": 1953844,
    "meshes": [
      "grass_fullview_tile_v0",
      "grass_fullview_tile_v1",
      "grass_fullview_tile_v2"
    ],
    "variants": 3,
    "trianglesPerTile": 72,
    "primitiveCountPerTile": 1,
    "materialCount": 1,
    "tileDimensionsM": [
      2,
      0.2,
      2
    ],
    "localBounds": {
      "min": [
        -1,
        0,
        -1
      ],
      "max": [
        1,
        0.2,
        1
      ]
    },
    "commonRoot": [
      0,
      0,
      0
    ],
    "axes": "glTF Y-up, metres",
    "placement": "Fixed2m world grid. Stable hash variant0..2 and rotation0/90/180/270deg. Scale1. Runtime root groundY.068. Polygon/holes clipping is runtime responsibility; include intersecting boundarytiles then clip, never center-only reject.",
    "geometry": "Eight bent two-segment vertical strips in two perpendicular directions, with explicit opposite-winding front and reverse triangles: 64 triangles. Noncoplanar four-quadrant top cover: 8 triangles.",
    "material": {
      "alphaMode": "MASK",
      "alphaCutoff": 0.16,
      "doubleSided": false,
      "depthWrite": true,
      "castShadow": false,
      "normals": "All vertex normals point upward. Single-sided shading plus explicit reverse strip geometry avoids backface-normal inversion. Set castShadow false, matching runtime proxy behavior.",
      "texture": "grass_fullview_albedo_alpha.png",
      "textureSize": [
        1024,
        1024
      ],
      "colorSpace": "sRGB",
      "lighting": "Albedo-only exact frozen source baseColor plus original tint; emission capture excludes baked lighting. Standard PBR lighting once. No unlit extension.",
      "mips": "LinearMipmapLinear.16px region gutters and nearest-visible RGB padded through all transparent texels. Cutoff.16 deliberately below top mean alpha.229 so aerial mips retain coverage."
    },
    "density": {
      "rootsPerM2": 25,
      "rootsPer2mTile": 100,
      "sourceHeightM": [
        0.18640758,
        0.19982324
      ],
      "sourceScaleAlreadyApplied": true,
      "top": "100 seeded jittered roots from exact near18leaf meshes. Periodic edge copies only; no density increase.",
      "sides": "Two actual source rootrows per side bake (20roots); repeated as volume sheets, lossy field proxy."
    },
    "source": {
      "file": "curved-grass-cover-lods-edgepad.glb",
      "sha256": "3c2468f2ab771fea4b372d28a62088bf07efc6a08a8e92952b88c579240477c9",
      "url": "https://polyhaven.com/a/grass_medium_02",
      "author": "Rico Cilliers",
      "license": "CC0",
      "nearUnchanged": true,
      "original2KUnchanged": true
    },
    "qualityLimits": "Project-baked proxyLOD, not author mesh. Side profiles and canopy are projected approximations, not individual3D leaves. No normal/AO map is claimed. Intended >10m and aerial; keep exact frozen source near LOD. Atlas is1024px total, source original2K remains unchanged.",
    "bakeStatistics": {
      "v0_top": {
        "alphaMean": 0.2290586416207108,
        "coverageAt04": 0.23426025390625
      },
      "v0_side_x": {
        "alphaMean": 0.37723058363970585,
        "coverageAt04": 0.3924560546875
      },
      "v0_side_z": {
        "alphaMean": 0.4310994944852941,
        "coverageAt04": 0.448974609375
      },
      "v1_top": {
        "alphaMean": 0.22760615808823528,
        "coverageAt04": 0.23266357421875
      },
      "v1_side_x": {
        "alphaMean": 0.38347732843137255,
        "coverageAt04": 0.3970458984375
      },
      "v1_side_z": {
        "alphaMean": 0.3817352175245098,
        "coverageAt04": 0.3947509765625
      },
      "v2_top": {
        "alphaMean": 0.2229894780177696,
        "coverageAt04": 0.22780029296875
      },
      "v2_side_x": {
        "alphaMean": 0.3771481502757353,
        "coverageAt04": 0.3892333984375
      },
      "v2_side_z": {
        "alphaMean": 0.3788743681066177,
        "coverageAt04": 0.3916015625
      }
    },
    "atlasAlphaMean": 0.23204887614530675
  },
  "assetRelease": "20261015-r25-fullviewgrass",
  "runtimeTransition": {
    "schemaVersion": 1,
    "coverageStartM": 2.5,
    "coverageEndM": 10.5,
    "normalStartM": 0.75,
    "normalEndM": 8.5,
    "warpCellM": 2,
    "warpAmplitudeM": 0.85,
    "maskCellM": 0.035,
    "hashModulus": 2039,
    "hashSeed": 19,
    "mode": "complementary-world-ordered-MASK",
    "normalMode": "near-source-normal-map-to-world-up",
    "farRoughness": 0.93,
    "castShadow": false,
    "transparent": false,
    "depthWrite": true,
    "activation": "Both near/far layers must have successful ready draw and currently visible roots. Disabled in aerial/low/season-off/failure; far remains complete when near absent.",
    "nearGeometry": "Unchanged full 18-leaf geometry and source height; near normal-map result converges to up in the wide band.",
    "newAssets": false
  },
  "runtimeChanges": "No GLB, source texture, source tint, grass height or leaf geometry edits. Runtime-only complementary world-fixed MASK transition; near material normal and roughness converge to the existing proxy in a broad distance band."
}
