Banned Nodes
This document outlines the list of banned nodes used in Unity Visual Scripting within our project environment. These nodes are filtered to ensure safety, stability, and prevent misuse of potentially dangerous or editor-only functionalities.
🧾 Summary of Banned Categories
Category
Description
🔥 GameObject Methods
Dangerous methods likeFind
,SendMessage
, etc.
🛑 Editor-Only Members
Available only in Unity Editor; not available at runtime
💥 Unsafe or Problematic Methods
IncludesDestroyImmediate
, etc.
🎮 Gamepad Audio APIs
Not supported outside of editor/gamepad modules
📸 Camera & Scene Control
Prevents tampering with main camera or scene objects
⏱ Time Manipulation
Avoids time scale changes and timing issues
🔒 Full List of Banned Nodes
1. GameObject Methods
These methods are blocked due to potential performance issues or misuse:
GameObject.Find
GameObject.FindWithTag
GameObject.FindGameObjectWithTag
GameObject.FindGameObjectsWithTag
GameObject.SendMessage
GameObject.SendMessageUpwards
2. UnityEngine.Object Methods
These global search and object manipulation methods are restricted:
UnityEngine.Object.FindObjectOfType
UnityEngine.Object.FindObjectsOfType
UnityEngine.Object.FindObjectsOfTypeIncludingAssets
UnityEngine.Object.FindObjectsOfTypeAll
UnityEngine.Object.FindSceneObjectsOfType
UnityEngine.Object.DontDestroyOnLoad
UnityEngine.Object.DestroyImmediate
3. Component Methods
Avoid dynamic message sending:
Component.SendMessage
Component.SendMessageUpwards
4. Editor-Only Members
These members exist only in Unity Editor and cause compile errors if used in runtime builds:
MeshRenderer
MeshRenderer.stitchLightmapSeams
MeshRenderer.receiveGI
MeshRenderer.scaleInLightmap
LightProbeGroup
LightProbeGroup.dering
LightProbeGroup.probePositions
(read-only)
Light
Light.lightmapBakeType
Light.SetLightDirty
Light.shadowRadius
Light.areaSize
Light.shadowAngle
Texture / Texture2D
Texture.imageContentsHash
Texture2D.alphaIsTransparency
LightingSettings
A long list of advanced lighting settings related to lightmapping:
LightingSettings.filteringAtrousPositionSigmaIndirect
LightingSettings.filteringAtrousPositionSigmaDirect
... (many others – mostly lightmapper-related properties)
MonoBehaviour
MonoBehaviour.runInEditMode
5. Audio (Editor Only)
Used for gamepad audio output, which is not supported in runtime:
AudioSource.PlayOnGamepad
AudioSource.GamepadSpeakerSupportsOutputType
AudioSource.gamepadSpeakerOutputType
AudioSource.SetGamepadSpeakerRestrictedAudio
AudioSource.SetGamepadSpeakerMixLevelDefault
AudioSource.DisableGamepadOutput
7. UI (Editor Only)
Related to UI rebuild events:
UnityEngine.UI.Graphic.OnRebuildRequested
UnityEngine.UI.Text.OnRebuildRequested
8. ParticleSystem (Editor Only)
Editor-specific particle system tools:
ParticleSystemRenderer.supportsMeshInstancing
ParticleSystemForceField.FindAll
9. Time Manipulation
To avoid unexpected behavior in gameplay:
Time.timeScale
Time.fixedDeltaTime
Time.maximumDeltaTime
Time.maximumParticleDeltaTime
Time.captureDeltaTime
Time.captureFramerate
10. Camera Access
Prevents interference with the main camera or scene management:
Camera.main
Camera.allCameras
Camera.current
Camera.scene
11. Graphics Settings
Advanced rendering features that should not be modified:
GraphicsSettings.videoShadersIncludeMode
🛑 Blocked Types
The following types are completely blocked from being used in Visual Scripting graphs:
Application
– Contains dangerous methods like loading/unloading scenes.Resources
– Allows loading assets by string path, which is unsafe.SceneManager
– Loads or unloads scenes, which could break the flow.Scene
– Gets root game objects, which may expose critical objects.VideoShadersIncludeMode
Last updated