Summary
UEFN currently exposes no way to disable Nanite on static meshes that are spawned through Scene Graph prefab components. The only working Nanite disable control in UEFN, the Disallow Nanite property, appears solely in the Outliner Details panel for world-placed static mesh actors. It is not exposed on static mesh components inside Scene Graph prefabs, and there is no equivalent control on the static mesh asset itself in the UEFN Static Mesh Editor. This blocks Overlay Material rendering, along with any other workflow that requires the non-Nanite rendering path, for content delivered through the Scene Graph spawning pipeline.
Two gaps in the current UEFN editor
-
The UEFN Static Mesh Editor’s Nanite Settings section exposes build and configuration parameters (Position Precision, Keep Triangle Percent, Trim Relative Error, Generate Fallback Mesh, Fallback Target, Displacement Maps, Max Edge Length Factor, Shape Preservation), but provides no control to disable Nanite or remove Nanite data from the asset.
-
The
Disallow Naniteproperty is available only in the Outliner Details panel for static mesh actors that have been placed directly in the world. It is not exposed on the static mesh component inside Scene Graph prefab assets, and no equivalent setting can be configured on prefab content.
The combined effect is that there is no path, at the asset level or at the component level, to make a Scene Graph spawned static mesh render through the non-Nanite pipeline.
Please select what you are reporting on:
Verse
What Type of Bug are you experiencing?
Verse
Steps to Reproduce
-
Create or import a static mesh asset in UEFN.
-
Assign an Overlay Material to the mesh.
-
Place the mesh directly in the world. In the Outliner Details panel, enable
Disallow Nanite. Confirm that the Overlay Material now renders correctly. -
Open a Scene Graph prefab and add the same mesh as a static mesh component. Inspect the component’s property list and confirm that no
Disallow Naniteproperty (or any equivalent Nanite toggle) is exposed. -
Open the static mesh in the UEFN Static Mesh Editor. Confirm that the Nanite Settings section contains no control to disable Nanite or remove Nanite data from the asset.
-
Spawn the prefab via Verse using the Scene Graph spawning APIs.
-
Observe that the Overlay Material does not render on the spawned mesh.
Expected Result
Any of the following would resolve the issue:
-
Disallow Naniteis exposed on the static mesh component within Scene Graph prefabs, persisted per-component in the prefab asset, and respected at spawn time. -
A control to disable Nanite or remove Nanite data from a static mesh asset is exposed in the UEFN Static Mesh Editor, and that asset-level state propagates to dynamically spawned instances.
-
A Verse API is provided to toggle the Nanite state on a static mesh component entity at runtime (for example, a
SetDisallowNanite(:logic)mutator on the relevant component).
Observed Result
Spawned static mesh instances render with Nanite enabled. There is no per-asset, per-component, per-instance, or runtime override available in UEFN to change this for content delivered through Scene Graph.
Platform(s)
UEFN 40.30, Windows PC
Island Code
n/a
Additional Notes
Workarounds Attempted
-
Inspecting every section of the UEFN Static Mesh Editor (Material Slots, Nanite Settings, LOD Picker, LOD 0, LOD Settings, General Settings, Collision) for any control to disable Nanite. None is present.
-
Inspecting the static mesh component property list inside the Scene Graph prefab editor for any exposed Nanite toggle. None is present.
-
Searching Verse documentation and the Scene Graph component API surface for a runtime equivalent to a Nanite disable or override setter. None is present.
None of the above resolves the issue.
Suggested Resolution
-
Provide a corresponding Verse setter so the value can be controlled per-instance at runtime on Scene Graph spawned entities, and/or
-
Expose
Disallow Naniteon the static mesh component within Scene Graph prefabs, persisted per-component in the prefab asset.