Performance, Troubleshooting & FAQ
Performance guidance
Section titled “Performance guidance”Choose the output and material mode that solve the visible problem with the least work.
- Use Mesh Quads for cutout/card details and HDRP Decals when projected HDRP channels are needed. Inspect both at real gameplay distance.
- Raise Density and Placement Attempts gradually. More attempts can improve a constrained scatter result but increase editor work; a high value cannot overcome incompatible filters.
- Use independent entry Density only where a source truly needs a separate budget. It adds to the shared global work.
- Minimum Spacing, Footprint mask validation, face fitting, Object Detection, and edge protection all trade more accurate rejection for more placement evaluation.
- Use Preview Mask for mask tuning and Preview Placement only when checking final rules. Debug rays and large preview counts are diagnostic tools, not an always-on workflow.
- Use Anti-Tile
Nonewhen repetition is not visible. Try Pattern Variation Fast before Quality/Extreme, and use Stochastic Tiling only where broad repetition warrants its extra texture sampling.
Approximate per-active-layer triplanar sample guidance is: None ~3, Stochastic Tiling ~12, Pattern Fast ~15, Pattern Quality ~30, and Pattern Extreme ~51. These values are relative shader-cost guidance, not GPU benchmark numbers; profile the intended scene and hardware.
Avoid unsupported benchmark claims: profile the intended scene, target hardware, and content mix.
Troubleshooting
Section titled “Troubleshooting”Generate creates nothing
Section titled “Generate creates nothing”Confirm the receiver has a valid MeshFilter, an enabled entry has a texture and positive Chance Weight, the active output has an appropriate template, and Density/Placement Attempts are reasonable. Temporarily disable masks, Object Detection, slope restrictions, and wide spacing. Then run Preview Placement and read the rejection categories.
Scatter is too sparse
Section titled “Scatter is too sparse”Increase Density or Placement Attempts in small steps, then check Minimum Spacing, Scale Range, Soft Limit, masks, slope, and Object Detection. A Soft Limit is a maximum accepted count, not a requested exact result.
Cards cross hard edges or float
Section titled “Cards cross hard edges or float”Reduce scale, use Keep Inside Source Face, and use a small practical Surface Lift. For wall details, try Close Mesh To Surface. If a card is unsuitable for the receiver shape, a decal may be a better output choice.
A decal projects onto neighboring surfaces
Section titled “A decal projects onto neighboring surfaces”Reduce Projection Depth first. Enable Edge Bleed Guard, use an edge-protection starting point, and increase only the padding needed. Remember that Edge Bleed Guard evaluates the source mesh boundary, not all geometry intersecting the HDRP projection volume.
HDRP decals look fragmented on a strongly normal-mapped receiver
Section titled “HDRP decals look fragmented on a strongly normal-mapped receiver”HDRP decal rendering can appear visually fragmented on a receiver with very strong normal perturbation or detail normals. Reduce the receiver normal scale or detail strength to diagnose the interaction and, where acceptable, as a workaround. PRISM Surface cannot fully correct HDRP’s receiver-normal interaction; inspect the result on the intended material and camera distance.
Mask looks ignored or a mask texture cannot be sampled
Section titled “Mask looks ignored or a mask texture cannot be sampled”Ensure Placement Mask is enabled for the relevant global or entry setup, check Mask Cutoff and inversion, and use Preview Mask. Custom Texture masks need a valid receiver UV0 channel and Read/Write enabled. Material Base Map needs the expected readable Texture2D on the receiver material.
Material Base Map filtering differs from the visible material
Section titled “Material Base Map filtering differs from the visible material”Verify the receiver material, Texture Mapping/sampling mode, Read From channel, Place On Bright/Dark choice, and Mask Cutoff. Use Auto for PRISM triplanar materials unless an explicit mode is required.
Place Around or drip streaks produces no result
Section titled “Place Around or drip streaks produces no result”For Place Around, confirm targets, shape, Near/Far ranges, scale, and spacing leave physical room for an item. Use Override Density for a dedicated per-entry budget. For drips, assign at least one Anchor and start with Edge Guided plus modest Streak Count/Coverage before enabling advanced validation.
Texture repetition remains visible or Stochastic Tiling looks too soft
Section titled “Texture repetition remains visible or Stochastic Tiling looks too soft”Check that Anti-Tile Mode is actually Stochastic Tiling. Tune Anti-Tile Scale first, then use modest Jitter Strength and Cell Blend Width. Reduce Jitter or blend width, or increase Blend Sharpness moderately, if distinctive features ghost. No Blue Noise assignment is required. If a material looks wrong at distance, inspect all active Base, Mask, Normal, and Detail texture filtering/import settings, not only Base Color.
Emission disappears under bright exposure
Section titled “Emission disappears under bright exposure”Increase HDR emission carefully and lower Exposure Weight when a stylized glow should stay visually stable. Test in the intended HDRP exposure configuration.
Material From Image cannot preview or export
Section titled “Material From Image cannot preview or export”Enable Read/Write on the source Texture2D, use a valid material name, and choose a Save Location inside Assets. Remember that previews are not saved until Create PRISM Surface Material is pressed.
A loaded profile behaves differently
Section titled “A loaded profile behaves differently”Profiles restore Default Output and per-entry output choices. Inspect source overrides, templates, receiver scale/orientation, and target scene objects, then use Preview Placement. A profile does not carry generated scene output or change the new receiver’s mesh.
A legacy component name appears in the Inspector
Section titled “A legacy component name appears in the Inspector”PRISM Surface is the product-facing name. Legacy identifiers can remain in older scenes or serialized assets for compatibility. Use PRISM Surface Tool for new setups; do not rename serialized components or asset references as a troubleshooting step.
Does PRISM modify my source mesh?
Section titled “Does PRISM modify my source mesh?”No. The tool samples the MeshFilter’s shared mesh and creates generated output. Clear removes that generated output.
Can Mesh Quads and HDRP Decals be mixed?
Section titled “Can Mesh Quads and HDRP Decals be mixed?”Yes. Route entries individually and configure both output groups on one PRISM Surface Tool.
Are results deterministic?
Section titled “Are results deterministic?”Yes, for the same receiver/input data and Seed. Change Seed to obtain a different repeatable arrangement.
Does it work in URP?
Section titled “Does it work in URP?”No. PRISM Surface v1.1.0 is HDRP-focused.
Does Material From Image require a photograph?
Section titled “Does Material From Image require a photograph?”No. It accepts readable images, including photographs, scans, illustrations, and painted textures.
Does Stochastic Tiling require Blue Noise?
Section titled “Does Stochastic Tiling require Blue Noise?”No. It uses deterministic procedural cell seeds. The legacy Blue Noise compatibility property is not an artist setup requirement.
Why is PRISM mapping always triplanar?
Section titled “Why is PRISM mapping always triplanar?”The PRISM Surface material workflow is built around fixed triplanar mapping with tangent-space normals and shared layer alignment. Mapping Space controls World/Object behavior; it does not switch to generic HDRP mapping modes.
Can I reuse settings on another object?
Section titled “Can I reuse settings on another object?”Yes. Save a SurfaceScatterProfile, load it on another compatible receiver, then preview and adjust for that object’s size, orientation, and nearby targets.
Why does a Soft Limit not guarantee an exact count?
Section titled “Why does a Soft Limit not guarantee an exact count?”It caps accepted placements. Other rules may reject every available candidate before the cap is reached.
When should I use Preview Placement versus Preview Mask?
Section titled “When should I use Preview Placement versus Preview Mask?”Use Preview Mask to tune allowed/blocked mask regions. Use Preview Placement when you need the real combination of masks, spacing, slope, fitting, Object Detection, and output safety.
Is DXR supported?
Section titled “Is DXR supported?”The PRISM shader includes a derivative-safe DXR sampling fallback intended for Windows ray-tracing/path-tracing compilation. This documentation does not claim a separate Windows DXR visual-validation matrix; validate your target project and rendering path.
Release notes
Section titled “Release notes”For current and historical PRISM Surface versions, see Release Notes.
