smrendererv3/SMCode/SM2D/Light/LightObjects/LightObject.cs
Michel Fedde 5d4b360b05 ~ Changed Pipelines
(Default2DPipeline: Has Lights, Post-ProcessingEffects, etc.)
(Basic2DPipeline: Simple Color and Texture stuff, thats it)
2020-12-19 18:31:44 +01:00

25 lines
No EOL
718 B
C#

using System.Collections.Generic;
using OpenTK;
using OpenTK.Graphics;
using SM.Base;
using SM.Base.Types;
using SM.OGL.Shaders;
namespace SM2D.Light
{
public abstract class LightObject
{
private Vector2 _posNorm => Vector2.Divide(Position, (SMRenderer.CurrentWindow as GLWindow2D).WorldScale);
internal abstract int Type { get; }
public CVector2 Position = new CVector2(0);
public Color4 Color = Color4.White;
internal virtual void SetUniforms(Dictionary<string, Uniform> uniforms)
{
uniforms["Type"].SetUniform1(Type);
uniforms["Position"].SetUniform2(Position);
uniforms["Color"].SetUniform4(Color);
}
}
}