public override void OnInspectorGUI() { _decal = target as Decal; SerializedProperty material = serializedObject.FindProperty("Material"); SerializedProperty renderOrder = serializedObject.FindProperty("RenderOrder"); SerializedProperty fade = serializedObject.FindProperty("Fade"); SerializedProperty limitTo = serializedObject.FindProperty("LimitTo"); SerializedProperty drawAlbedo = serializedObject.FindProperty("DrawAlbedo"); SerializedProperty useLightProbes = serializedObject.FindProperty("UseLightProbes"); SerializedProperty drawNormalAndGloss = serializedObject.FindProperty("DrawNormalAndGloss"); SerializedProperty highQualityBlending = serializedObject.FindProperty("HighQualityBlending"); EditorGUILayout.PropertyField(material); EditorGUILayout.PropertyField(renderOrder); Decal.DecalRenderMode dRenderMode = _decal.RenderMode; switch (dRenderMode) { case Decal.DecalRenderMode.Deferred: EditorGUILayout.Space(); EditorGUILayout.LabelField("Deferred Decal", EditorStyles.boldLabel); if (Camera.main != null && Camera.main.actualRenderingPath != RenderingPath.DeferredShading) { EditorGUILayout.HelpBox("Main camera is not using the Deferred rendering path. " + "Deferred decals will not be drawn. Current path: " + Camera.main.actualRenderingPath, MessageType.Error); } EditorGUILayout.PropertyField(drawAlbedo); EditorGUI.BeginDisabledGroup(!drawAlbedo.boolValue); EditorGUI.indentLevel++; EditorGUILayout.PropertyField(useLightProbes); EditorGUI.indentLevel--; EditorGUI.EndDisabledGroup(); EditorGUILayout.PropertyField(drawNormalAndGloss); EditorGUI.BeginDisabledGroup(!drawNormalAndGloss.boolValue); EditorGUI.indentLevel++; EditorGUILayout.PropertyField(highQualityBlending); EditorGUI.indentLevel--; EditorGUI.EndDisabledGroup(); EditorGUILayout.PropertyField(fade); EditorGUILayout.PropertyField(limitTo); break; case Decal.DecalRenderMode.Unlit: EditorGUILayout.Space(); EditorGUILayout.LabelField("Unlit Decal", EditorStyles.boldLabel); EditorGUILayout.PropertyField(fade); EditorGUILayout.PropertyField(limitTo); break; case Decal.DecalRenderMode.Invalid: default: EditorGUILayout.HelpBox("Please select a Material with a Decalicious shader.", MessageType.Info); break; } serializedObject.ApplyModifiedProperties(); }
// Token: 0x060034CD RID: 13517 RVA: 0x000E7860 File Offset: 0x000E5A60 public void Add(Decal decal, GameObject limitTo) { if (limitTo) { this._limitToGameObjects.Add(limitTo); } Decal.DecalRenderMode renderMode = decal.RenderMode; if (renderMode == Decal.DecalRenderMode.Deferred) { this.AddDeferred(decal); return; } if (renderMode != Decal.DecalRenderMode.Unlit) { return; } this.AddUnlit(decal); }