public override void OnInspectorGUI() { serializedObject.Update(); UpdateAnimationValues(); EditorGUILayout.Space(); EditorGUILayout.LabelField(Styles.renderingLabel, EditorStyles.boldLabel); EditorGUI.indentLevel++; EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField(Styles.renderScaleLabel); m_RenderScale.floatValue = EditorGUILayout.Slider(m_RenderScale.floatValue, kMinRenderScale, kMaxRenderScale); EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField(Styles.maxPixelLightsLabel); m_MaxPixelLights.intValue = EditorGUILayout.IntSlider(m_MaxPixelLights.intValue, 0, kMaxSupportedPixelLights); EditorGUILayout.EndHorizontal(); EditorGUILayout.PropertyField(m_SupportsVertexLightProp, Styles.enableVertexLightLabel); EditorGUILayout.PropertyField(m_RequireDepthTextureProp, Styles.requireDepthTexture); DrawAnimatedProperty(m_RequireSoftParticlesProp, Styles.requireSoftParticles, m_ShowSoftParticles); EditorGUILayout.PropertyField(m_HDR, Styles.hdrContent); EditorGUILayout.PropertyField(m_MSAA, Styles.msaaContent); EditorGUI.indentLevel--; EditorGUILayout.Space(); EditorGUILayout.Space(); EditorGUILayout.LabelField(Styles.shadowLabel, EditorStyles.boldLabel); EditorGUI.indentLevel++; CoreEditorUtils.DrawPopup(Styles.shadowType, m_ShadowTypeProp, Styles.shadowTypeOptions); EditorGUILayout.PropertyField(m_ShadowAtlasResolutionProp, Styles.shadowAtlasResolution); EditorGUILayout.PropertyField(m_ShadowNearPlaneOffsetProp, Styles.shadowNearPlaneOffset); m_ShadowDistanceProp.floatValue = Mathf.Max(0.0f, EditorGUILayout.FloatField(Styles.shadowDistante, m_ShadowDistanceProp.floatValue)); CoreEditorUtils.DrawPopup(Styles.shadowCascades, m_ShadowCascadesProp, Styles.shadowCascadeOptions); ShadowCascades cascades = (ShadowCascades)m_ShadowCascadesProp.intValue; if (cascades == ShadowCascades.FOUR_CASCADES) { CoreEditorUtils.DrawCascadeSplitGUI <Vector3>(ref m_ShadowCascade4SplitProp); } else if (cascades == ShadowCascades.TWO_CASCADES) { CoreEditorUtils.DrawCascadeSplitGUI <float>(ref m_ShadowCascade2SplitProp); } EditorGUI.indentLevel--; EditorGUILayout.Space(); EditorGUILayout.LabelField(Styles.customeMenu, EditorStyles.boldLabel); EditorGUI.indentLevel++; int layerMask = GuiLayerMask(m_NoSelfShadowLayerMask.intValue); m_NoSelfShadowLayerMask.intValue = layerMask; EditorGUI.indentLevel--; serializedObject.ApplyModifiedProperties(); }
public override void OnInspectorGUI() { serializedObject.Update(); EditorGUILayout.Space(); EditorGUILayout.LabelField(Styles.renderingLabel, EditorStyles.boldLabel); EditorGUI.indentLevel++; EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField(Styles.renderScaleLabel); m_RenderScale.floatValue = EditorGUILayout.Slider(m_RenderScale.floatValue, 0.1f, 1.0f); EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField(Styles.maxAdditionalPixelLightsLabel); m_MaxAdditionalPixelLights.intValue = EditorGUILayout.IntSlider(m_MaxAdditionalPixelLights.intValue, 0, kMaxSupportedAdditionalPixelLights); EditorGUILayout.EndHorizontal(); EditorGUILayout.PropertyField(m_SupportsVertexLightProp, Styles.enableVertexLightLabel); EditorGUILayout.PropertyField(m_SupportSoftParticlesProp, Styles.enableSoftParticles); EditorGUILayout.PropertyField(m_MSAA, Styles.msaaContent); EditorGUILayout.PropertyField(m_AttenuationTexture, Styles.attenuationTextureLabel); EditorGUI.indentLevel--; EditorGUILayout.Space(); EditorGUILayout.Space(); EditorGUILayout.LabelField(Styles.shadowLabel, EditorStyles.boldLabel); EditorGUI.indentLevel++; EditorGUILayout.PropertyField(m_ShadowTypeProp, Styles.shadowType); EditorGUILayout.PropertyField(m_ShadowAtlasResolutionProp, Styles.shadowAtlasResolution); EditorGUILayout.PropertyField(m_ShadowNearPlaneOffsetProp, Styles.shadowNearPlaneOffset); EditorGUILayout.PropertyField(m_ShadowDistanceProp, Styles.shadowDistante); EditorGUILayout.PropertyField(m_ShadowCascadesProp, Styles.shadowCascades); ShadowCascades cascades = (ShadowCascades)m_ShadowCascadesProp.intValue; if (cascades == ShadowCascades.FOUR_CASCADES) { EditorGUILayout.PropertyField(m_ShadowCascade4SplitProp, Styles.shadowCascadeSplit); } else if (cascades == ShadowCascades.TWO_CASCADES) { EditorGUILayout.PropertyField(m_ShadowCascade2SplitProp, Styles.shadowCascadeSplit); } EditorGUI.indentLevel--; EditorGUILayout.Space(); EditorGUILayout.LabelField(Styles.defaults, EditorStyles.boldLabel); EditorGUI.indentLevel++; EditorGUILayout.PropertyField(m_DefaultDiffuseMaterial, Styles.defaultDiffuseMaterial); EditorGUILayout.PropertyField(m_DefaultParticleMaterial, Styles.defaultParticleMaterial); EditorGUILayout.PropertyField(m_DefaultLineMaterial, Styles.defaultLineMaterial); EditorGUILayout.PropertyField(m_DefaultSpriteMaterial, Styles.defaultSpriteMaterial); EditorGUILayout.PropertyField(m_DefaultUIMaterial, Styles.defaultUIMaterial); EditorGUILayout.PropertyField(m_DefaultShader, Styles.defaultShader); EditorGUI.indentLevel--; serializedObject.ApplyModifiedProperties(); }
void DrawGeneralSettings() { EditorGUILayout.LabelField(Styles.generalSettingsLabel, EditorStyles.boldLabel); EditorGUI.indentLevel++; EditorGUI.BeginDisabledGroup(XRGraphicsConfig.tryEnable); // Begin XR-overridden values m_RenderScale.floatValue = EditorGUILayout.Slider(Styles.renderScaleLabel, m_RenderScale.floatValue, k_MinRenderScale, k_MaxRenderScale); EditorGUI.EndDisabledGroup(); // End XR-overridden values m_MaxPixelLights.intValue = EditorGUILayout.IntSlider(Styles.maxPixelLightsLabel, m_MaxPixelLights.intValue, 0, k_MaxSupportedPixelLights); EditorGUILayout.Space(); bool directionalShadows = m_DirectionalShadowsSupportedProp.boolValue; if (directionalShadows) { EditorGUILayout.LabelField(Styles.directionalShadowLabel); EditorGUI.indentLevel++; EditorGUILayout.PropertyField(m_DirectionalShadowAtlasResolutionProp, Styles.directionalShadowAtlasResolution); m_ShadowDistanceProp.floatValue = Mathf.Max(0.0f, EditorGUILayout.FloatField(Styles.shadowDistance, m_ShadowDistanceProp.floatValue)); CoreEditorUtils.DrawPopup(Styles.shadowCascades, m_ShadowCascadesProp, Styles.shadowCascadeOptions); ShadowCascades cascades = (ShadowCascades)m_ShadowCascadesProp.intValue; if (cascades == ShadowCascades.FOUR_CASCADES) { CoreEditorUtils.DrawCascadeSplitGUI <Vector3>(ref m_ShadowCascade4SplitProp); } else if (cascades == ShadowCascades.TWO_CASCADES) { CoreEditorUtils.DrawCascadeSplitGUI <float>(ref m_ShadowCascade2SplitProp); } EditorGUI.indentLevel--; EditorGUILayout.Space(); } bool localShadows = m_LocalShadowSupportedProp.boolValue; if (localShadows) { EditorGUILayout.LabelField(Styles.localShadowLabel); EditorGUI.indentLevel++; EditorGUILayout.PropertyField(m_LocalShadowsAtlasResolutionProp, Styles.localShadowsAtlasResolution); EditorGUI.indentLevel--; EditorGUILayout.Space(); } if (directionalShadows || localShadows) { EditorGUILayout.PropertyField(m_SoftShadowsSupportedProp, Styles.supportsSoftShadows); } EditorGUI.indentLevel--; EditorGUILayout.Space(); EditorGUILayout.Space(); }
public LWDpipeline(LWDAsset asset) { Shader.globalRenderPipeline = "LWD"; SupportDynamicBatching = asset.SupportDynamicBatching; ShadowAltasResolution = asset.ShadowAltasResolution; ShadowDistance = asset.ShadowDistance; ShadowCascades = asset.ShadowCascades; useSoftShadow = asset.useSoftShadow; softShadowType = asset.softShadowType; m_Renderer = new ScriptableRenderer(asset); }
void DrawShadowSettings() { EditorGUILayout.LabelField(Styles.shadowLabel, EditorStyles.boldLabel); EditorGUI.indentLevel++; EditorGUILayout.PropertyField(m_DirectionalShadowsSupportedProp, Styles.supportsDirectionalShadows); bool directionalShadows = m_DirectionalShadowsSupportedProp.boolValue; if (directionalShadows) { EditorGUI.indentLevel++; EditorGUILayout.PropertyField(m_DirectionalShadowAtlasResolutionProp, Styles.directionalShadowAtlasResolution); m_ShadowDistanceProp.floatValue = Mathf.Max(0.0f, EditorGUILayout.FloatField(Styles.shadowDistance, m_ShadowDistanceProp.floatValue)); CoreEditorUtils.DrawPopup(Styles.shadowCascades, m_ShadowCascadesProp, Styles.shadowCascadeOptions); ShadowCascades cascades = (ShadowCascades)m_ShadowCascadesProp.intValue; if (cascades == ShadowCascades.FOUR_CASCADES) { CoreEditorUtils.DrawCascadeSplitGUI <Vector3>(ref m_ShadowCascade4SplitProp); } else if (cascades == ShadowCascades.TWO_CASCADES) { CoreEditorUtils.DrawCascadeSplitGUI <float>(ref m_ShadowCascade2SplitProp); } EditorGUI.indentLevel--; EditorGUILayout.Space(); } EditorGUILayout.PropertyField(m_LocalShadowSupportedProp, Styles.supportsLocalShadows); bool localShadows = m_LocalShadowSupportedProp.boolValue; if (localShadows) { EditorGUI.indentLevel++; EditorGUILayout.PropertyField(m_LocalShadowsAtlasResolutionProp, Styles.localShadowsAtlasResolution); EditorGUI.indentLevel--; EditorGUILayout.Space(); } if (directionalShadows || localShadows) { EditorGUILayout.PropertyField(m_SoftShadowsSupportedProp, Styles.supportsSoftShadows); } EditorGUI.indentLevel--; EditorGUILayout.Space(); EditorGUILayout.Space(); }
public override void OnInspectorGUI() { serializedObject.Update(); EditorGUILayout.Space(); EditorGUILayout.LabelField(Styles.renderingLabel, EditorStyles.boldLabel); EditorGUI.indentLevel++; EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField(Styles.renderScaleLabel); m_RenderScale.floatValue = EditorGUILayout.Slider(m_RenderScale.floatValue, kMinRenderScale, kMaxRenderScale); EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField(Styles.maxPixelLightsLabel); m_MaxPixelLights.intValue = EditorGUILayout.IntSlider(m_MaxPixelLights.intValue, 0, kMaxSupportedPixelLights); EditorGUILayout.EndHorizontal(); EditorGUILayout.PropertyField(m_SupportsVertexLightProp, Styles.enableVertexLightLabel); EditorGUILayout.PropertyField(m_RequireCameraDepthTextureProp, Styles.requireCameraDepthTexture); EditorGUILayout.PropertyField(m_HDR, Styles.hdrContent); EditorGUILayout.PropertyField(m_MSAA, Styles.msaaContent); EditorGUI.indentLevel--; EditorGUILayout.Space(); EditorGUILayout.Space(); EditorGUILayout.LabelField(Styles.shadowLabel, EditorStyles.boldLabel); EditorGUI.indentLevel++; DoPopup(Styles.shadowType, m_ShadowTypeProp, Styles.shadowTypeOptions); EditorGUILayout.PropertyField(m_ShadowAtlasResolutionProp, Styles.shadowAtlasResolution); EditorGUILayout.PropertyField(m_ShadowNearPlaneOffsetProp, Styles.shadowNearPlaneOffset); EditorGUILayout.PropertyField(m_ShadowDistanceProp, Styles.shadowDistante); DoPopup(Styles.shadowCascades, m_ShadowCascadesProp, Styles.shadowCascadeOptions); ShadowCascades cascades = (ShadowCascades)m_ShadowCascadesProp.intValue; if (cascades == ShadowCascades.FOUR_CASCADES) { EditorGUILayout.PropertyField(m_ShadowCascade4SplitProp, Styles.shadowCascadeSplit); } else if (cascades == ShadowCascades.TWO_CASCADES) { EditorGUILayout.PropertyField(m_ShadowCascade2SplitProp, Styles.shadowCascadeSplit); } EditorGUI.indentLevel--; serializedObject.ApplyModifiedProperties(); }
public override void OnInspectorGUI() { serializedObject.Update(); EditorGUILayout.Space(); EditorGUILayout.LabelField(Styles.renderingLabel, EditorStyles.boldLabel); EditorGUI.indentLevel++; EditorGUILayout.PropertyField(m_MaxPixelLights, Styles.maxPixelLights); EditorGUILayout.PropertyField(m_SupportsVertexLightProp, Styles.enableVertexLightLabel); EditorGUILayout.PropertyField(m_EnableLightmapsProp, Styles.enableLightmap); EditorGUILayout.PropertyField(m_EnableAmbientProbeProp, Styles.enableAmbientProbe); EditorGUI.indentLevel--; EditorGUILayout.Space(); EditorGUILayout.Space(); EditorGUILayout.LabelField(Styles.shadowLabel, EditorStyles.boldLabel); EditorGUI.indentLevel++; EditorGUILayout.PropertyField(m_ShadowTypeProp, Styles.shadowType); EditorGUILayout.PropertyField(m_ShadowAtlasResolutionProp, Styles.shadowAtlasResolution); EditorGUILayout.PropertyField(m_ShadowNearPlaneOffsetProp, Styles.shadowNearPlaneOffset); EditorGUILayout.PropertyField(m_ShadowMinNormalBiasProperty, Styles.shadowMinBias); EditorGUILayout.PropertyField(m_ShadowNormalBiasProperty, Styles.shadowBias); EditorGUILayout.PropertyField(m_ShadowDistanceProp, Styles.shadowDistante); EditorGUILayout.PropertyField(m_ShadowCascadesProp, Styles.shadowCascades); ShadowCascades cascades = (ShadowCascades)m_ShadowCascadesProp.intValue; if (cascades == ShadowCascades.FOUR_CASCADES) { EditorGUILayout.PropertyField(m_ShadowCascade4SplitProp, Styles.shadowCascadeSplit); } else if (cascades == ShadowCascades.TWO_CASCADES) { EditorGUILayout.PropertyField(m_ShadowCascade2SplitProp, Styles.shadowCascadeSplit); } EditorGUI.indentLevel--; EditorGUILayout.LabelField(Styles.defaults, EditorStyles.boldLabel); EditorGUI.indentLevel++; EditorGUILayout.PropertyField(m_DefaultDiffuseMaterial, Styles.defaultDiffuseMaterial); EditorGUILayout.PropertyField(m_DefaultSpriteMaterial, Styles.defaultSpriteMaterial); EditorGUILayout.PropertyField(m_DefaultShader, Styles.defaultShader); EditorGUI.indentLevel--; serializedObject.ApplyModifiedProperties(); }
void DrawShadowSettings() { shadowsSettingsFoldout = EditorGUILayout.Foldout(shadowsSettingsFoldout, Styles.shadowLabel, true); if (shadowsSettingsFoldout) { // Directional Shadows EditorGUI.BeginDisabledGroup(!m_DirectionalShadowsSupportedProp.boolValue); EditorGUI.indentLevel++; EditorGUILayout.LabelField(Styles.directionalShadowLabel); EditorGUI.indentLevel++; EditorGUILayout.PropertyField(m_DirectionalShadowAtlasResolutionProp, Styles.directionalShadowAtlasResolution); m_ShadowDistanceProp.floatValue = Mathf.Max(0.0f, EditorGUILayout.FloatField(Styles.shadowDistance, m_ShadowDistanceProp.floatValue)); CoreEditorUtils.DrawPopup(Styles.shadowCascades, m_ShadowCascadesProp, Styles.shadowCascadeOptions); ShadowCascades cascades = (ShadowCascades)m_ShadowCascadesProp.intValue; if (cascades == ShadowCascades.FOUR_CASCADES) { CoreEditorUtils.DrawCascadeSplitGUI <Vector3>(ref m_ShadowCascade4SplitProp); } else if (cascades == ShadowCascades.TWO_CASCADES) { CoreEditorUtils.DrawCascadeSplitGUI <float>(ref m_ShadowCascade2SplitProp); } EditorGUI.indentLevel--; EditorGUILayout.Space(); EditorGUI.EndDisabledGroup(); // Local Shadows EditorGUI.BeginDisabledGroup(!m_LocalShadowSupportedProp.boolValue); EditorGUILayout.LabelField(Styles.localShadowLabel); EditorGUI.indentLevel++; EditorGUILayout.PropertyField(m_LocalShadowsAtlasResolutionProp, Styles.localShadowsAtlasResolution); EditorGUI.indentLevel--; EditorGUI.indentLevel--; EditorGUI.EndDisabledGroup(); } }