Exemple #1
0
        static public void Render(Light2D light)
        {
            float size = light.size;

            GL.PushMatrix();

            if (light.IsPixelPerfect())
            {
                Camera camera = Camera.main;

                float     cameraRotation = LightingPosition.GetCameraRotation(camera);
                Matrix4x4 matrix         = Matrix4x4.TRS(Vector3.zero, Quaternion.Euler(0, 0, cameraRotation), Vector3.one);

                float sizeY = camera.orthographicSize;
                float sizeX = sizeY * ((float)camera.pixelWidth / camera.pixelHeight);

                GL.LoadPixelMatrix(-sizeX, sizeX, -sizeY, sizeY);
            }
            else
            {
                GL.LoadPixelMatrix(-size, size, -size, size);
            }

            Rendering.Light.Main.Draw(light);

            GL.PopMatrix();
        }
Exemple #2
0
        public static void Render(LightingMainBuffer2D buffer)
        {
            Camera camera = buffer.cameraSettings.GetCamera();

            if (camera == null)
            {
                return;
            }

            float     cameraRotation = LightingPosition.GetCameraRotation(camera);
            Matrix4x4 matrix         = Matrix4x4.TRS(Vector3.zero, Quaternion.Euler(0, 0, cameraRotation), Vector3.one);


            float sizeY = camera.orthographicSize;
            float sizeX = sizeY * ((float)camera.pixelWidth / camera.pixelHeight);

            GL.LoadPixelMatrix(-sizeX, sizeX, -sizeY, sizeY);
            GL.MultMatrix(matrix);

            GL.PushMatrix();

            BufferPreset bufferPreset = buffer.GetBufferPreset();

            Rendering.Day.Main.Draw(camera, bufferPreset);

            Rendering.Night.Main.Draw(camera, bufferPreset);

            GL.PopMatrix();
        }
Exemple #3
0
        private static void DarknessColor(Camera camera, BufferPreset bufferPreset)
        {
            Color color = bufferPreset.darknessColor;

            if (color.a > 0)
            {
                Material material = Lighting2D.materials.GetAlphaBlend();
                material.SetColor("_TintColor", color);
                material.mainTexture = null;

                float cameraRotation = -LightingPosition.GetCameraRotation(camera);

                Universal.Texture.Draw(material, Vector2.zero, LightingRender2D.GetSize(camera), cameraRotation, 0);
            }
        }