// This mean that m_Lightmapping.enumValueIndex is enum { Stationary=0, Static=1, Dynamic=2 }
enumLightMappingType
{
Stationary=0,
Static=1,
Dynamic=2
}
classStyles
{
/*
publicreadonlyGUIContentType=EditorGUIUtility.TextContent("Type|Specifies the current type of light. Possible types are Directional, Spot, Point, and Area lights.");
publicreadonlyGUIContentRange=EditorGUIUtility.TextContent("Range|Controls how far the light is emitted from the center of the object.");
publicreadonlyGUIContentSpotAngle=EditorGUIUtility.TextContent("Spot Angle|Controls the angle in degrees at the base of a Spot light's cone.");
publicreadonlyGUIContentColor=EditorGUIUtility.TextContent("Color|Controls the color being emitted by the light.");
publicreadonlyGUIContentUseColorTemperature=EditorGUIUtility.TextContent("Use color temperature mode|Cho0se between RGB and temperature mode for light's color.");
publicreadonlyGUIContentColorFilter=EditorGUIUtility.TextContent("Filter|A colored gel can be put in front of the light source to tint the light.");
publicreadonlyGUIContentColorTemperature=EditorGUIUtility.TextContent("Temperature|Also known as CCT (Correlated color temperature). The color temperature of the electromagnetic radiation emitted from an ideal black body is defined as its surface temperature in Kelvin. White is 6500K");
publicreadonlyGUIContentIntensity=EditorGUIUtility.TextContent("Intensity|Controls the brightness of the light. Light color is multiplied by this value.");
publicreadonlyGUIContentLightmappingMode=EditorGUIUtility.TextContent("Mode|Specifies the light mode used to determine if and how a light will be baked. Possible modes are Baked, Mixed, and Realtime.");
publicreadonlyGUIContentLightBounceIntensity=EditorGUIUtility.TextContent("Indirect Multiplier|Controls the intensity of indirect light being contributed to the scene. A value of 0 will cause Realtime lights to be removed from realtime global illumination and Baked and Mixed lights to no longer emit indirect lighting. Has no effect when both Realtime and Baked Global Illumination are disabled.");
publicreadonlyGUIContentShadowType=EditorGUIUtility.TextContent("Shadow Type|Specifies whether Hard Shadows, Soft Shadows, or No Shadows will be cast by the light.");
//realtime
publicreadonlyGUIContentShadowRealtimeSettings=EditorGUIUtility.TextContent("Realtime Shadows|Settings for realtime direct shadows.");
publicreadonlyGUIContentShadowStrength=EditorGUIUtility.TextContent("Strength|Controls how dark the shadows cast by the light will be.");
publicreadonlyGUIContentShadowResolution=EditorGUIUtility.TextContent("Resolution|Controls the rendered resolution of the shadow maps. A higher resolution will increase the fidelity of shadows at the cost of GPU performance and memory usage.");
publicreadonlyGUIContentShadowBias=EditorGUIUtility.TextContent("Bias|Controls the distance at which the shadows will be pushed away from the light. Useful for avoiding false self-shadowing artifacts.");
publicreadonlyGUIContentShadowNormalBias=EditorGUIUtility.TextContent("Normal Bias|Controls distance at which the shadow casting surfaces will be shrunk along the surface normal. Useful for avoiding false self-shadowing artifacts.");
publicreadonlyGUIContentShadowNearPlane=EditorGUIUtility.TextContent("Near Plane|Controls the value for the near clip plane when rendering shadows. Currently clamped to 0.1 units or 1% of the lights range property, whichever is lower.");
//baked
publicreadonlyGUIContentBakedShadowRadius=EditorGUIUtility.TextContent("Baked Shadow Radius|Controls the amount of artificial softening applied to the edges of shadows cast by the Point or Spot light.");
publicreadonlyGUIContentBakedShadowAngle=EditorGUIUtility.TextContent("Baked Shadow Angle|Controls the amount of artificial softening applied to the edges of shadows cast by directional lights.");
publicreadonlyGUIContentCookie=EditorGUIUtility.TextContent("Cookie|Specifies the Texture mask to cast shadows, create silhouettes, or patterned illumination for the light.");
publicreadonlyGUIContentCookieSize=EditorGUIUtility.TextContent("Cookie Size|Controls the size of the cookie mask currently assigned to the light.");
publicreadonlyGUIContentDrawHalo=EditorGUIUtility.TextContent("Draw Halo|When enabled, draws a spherical halo of light with a radius equal to the lights range value.");
publicreadonlyGUIContentFlare=EditorGUIUtility.TextContent("Flare|Specifies the flare object to be used by the light to render lens flares in the scene.");
publicreadonlyGUIContentRenderMode=EditorGUIUtility.TextContent("Render Mode|Specifies the importance of the light which impacts lighting fidelity and performance. Options are Auto, Important, and Not Important. This only affects Forward Rendering");
publicreadonlyGUIContentCullingMask=EditorGUIUtility.TextContent("Culling Mask|Specifies which layers will be affected or excluded from the light's effect on objects in the scene.");
publicreadonlyGUIContentAreaWidth=EditorGUIUtility.TextContent("Width|Controls the width in units of the area light.");
publicreadonlyGUIContentAreaHeight=EditorGUIUtility.TextContent("Height|Controls the height in units of the area light.");
publicreadonlyGUIContentBakingWarning=EditorGUIUtility.TextContent("Light mode is currently overridden to Realtime mode. Enable Baked Global Illumination to use Mixed or Baked light modes.");
publicreadonlyGUIContentIndirectBounceShadowWarning=EditorGUIUtility.TextContent("Realtime indirect bounce shadowing is not supported for Spot and Point lights.");
publicreadonlyGUIContentCookieWarning=EditorGUIUtility.TextContent("Cookie textures for spot lights should be set to clamp, not repeat, to avoid artifacts.");
publicreadonlyGUIContentDisabledLightWarning=EditorGUIUtility.TextContent("Lighting has been disabled in at least one Scene view. Any changes applied to lights in the Scene will not be updated in these views until Lighting has been enabled again.");
// LightShape is HD specific, it need to drive LightType from the original LightType when it make sense, so the GI is still in sync with the light shape
// EditorGUILayout.PropertyField(m_AffectDiffuse, new GUIContent("Diffuse"), GUILayout.MaxWidth(EditorGUIUtility.labelWidth + 30));
// var AffectDiffuseRect = GUILayoutUtility.GetLastRect();
// var AffectSpecularRect = new Rect(EditorGUIUtility.labelWidth + 30, AffectDiffuseRect.y, EditorGUIUtility.labelWidth + 30, AffectDiffuseRect.height);
// EditorGUI.PropertyField(AffectSpecularRect, m_AffectSpecular, new GUIContent("Specular"));
//}
// LightShape
if(m_Type.isExpanded)
{
EditorGUILayout.PropertyField(m_LightShape);
// LightShape is HD specific, it need to drive Lighttype from the original lighttype when it make sense, so the GI is still in sync with the light shape