UnityEditor.LookDevEnvironmentWindow.PositionToLatLong C# (CSharp) Method

PositionToLatLong() public static method

public static PositionToLatLong ( Vector2 position ) : Vector2
position Vector2
return Vector2
        public static Vector2 PositionToLatLong(Vector2 position)
        {
            Vector2 vector = new Vector2 {
                x = ((position.y * 3.141593f) * 0.5f) * 57.29578f,
                y = ((((position.x * 0.5f) + 0.5f) * 2f) * 3.141593f) * 57.29578f
            };
            if (vector.x < -90f)
            {
                vector.x = -90f;
            }
            if (vector.x > 89f)
            {
                vector.x = 89f;
            }
            return vector;
        }

Usage Example

示例#1
0
        public static void UpdateShadowInfoWithBrightestSpot(CubemapInfo cubemapInfo)
        {
            LookDevResources.m_LookDevCubeToLatlong.SetTexture("_MainTex", cubemapInfo.cubemap);
            LookDevResources.m_LookDevCubeToLatlong.SetVector("_WindowParams", new Vector4(10000f, -1000f, 2f, 0f));
            LookDevResources.m_LookDevCubeToLatlong.SetVector("_CubeToLatLongParams", new Vector4(0.0174532924f * cubemapInfo.angleOffset, 0.5f, 1f, 3f));
            LookDevResources.m_LookDevCubeToLatlong.SetPass(0);
            int num  = 250;
            int num2 = 125;

            Graphics.Blit(cubemapInfo.cubemap, LookDevResources.m_BrightestPointRT, LookDevResources.m_LookDevCubeToLatlong);
            LookDevResources.m_BrightestPointTexture.ReadPixels(new Rect(0f, 0f, (float)num, (float)num2), 0, 0, false);
            LookDevResources.m_BrightestPointTexture.Apply();
            Color[] pixels = LookDevResources.m_BrightestPointTexture.GetPixels();
            float   num3   = 0f;

            for (int i = 0; i < num2; i++)
            {
                for (int j = 0; j < num; j++)
                {
                    Vector3 vector = new Vector3(pixels[i * num + j].r, pixels[i * num + j].g, pixels[i * num + j].b);
                    float   num4   = vector.x * 0.2126729f + vector.y * 0.7151522f + vector.z * 0.072175f;
                    if (num3 < num4)
                    {
                        Vector2 vector2 = LookDevEnvironmentWindow.PositionToLatLong(new Vector2((float)j / (float)(num - 1) * 2f - 1f, (float)i / (float)(num2 - 1) * 2f - 1f));
                        cubemapInfo.shadowInfo.latitude  = vector2.x;
                        cubemapInfo.shadowInfo.longitude = vector2.y - cubemapInfo.angleOffset;
                        num3 = num4;
                    }
                }
            }
        }
All Usage Examples Of UnityEditor.LookDevEnvironmentWindow::PositionToLatLong