Skip to content

Performance, Troubleshooting & FAQ

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 None when 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.

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.

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.

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.

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.

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.

No. The tool samples the MeshFilter’s shared mesh and creates generated output. Clear removes that generated output.

Yes. Route entries individually and configure both output groups on one PRISM Surface Tool.

Yes, for the same receiver/input data and Seed. Change Seed to obtain a different repeatable arrangement.

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.

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.

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.

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.

For current and historical PRISM Surface versions, see Release Notes.