+ Added BoundingBoxes to Meshes + SM.Base.Objects.Mesh + Vertex Colors + ShowItem Collections + 2D Equlivant + Default Class to store Default Values + SM.OGL.GLSystem to store OpenGL specific system information + SM2D.DrawColor // not working yet + SM2D.DrawComplex to allow access to all features. + SM2D.DrawPolygon + Polygon system // for 2D only yet ~ Renamed SM.OGL.Mesh to SM.OGL.GenericMesh
33 lines
No EOL
991 B
C#
33 lines
No EOL
991 B
C#
using System.Linq;
|
|
using OpenTK.Graphics.OpenGL4;
|
|
|
|
namespace SM.OGL
|
|
{
|
|
public class GLSystem
|
|
{
|
|
private static bool _init = false;
|
|
|
|
public static Version DeviceVersion { get; private set; }
|
|
public static Version ForcedVersion { get; set; } = new Version();
|
|
|
|
public static Version ShadingVersion { get; private set; }
|
|
public static string[] Extensions { get; private set; }
|
|
|
|
public static bool Debugging { get; private set; }
|
|
|
|
public static void INIT_SYSTEM()
|
|
{
|
|
if (_init) return;
|
|
|
|
DeviceVersion = Version.CreateGLVersion(GL.GetString(StringName.Version));
|
|
|
|
ShadingVersion = Version.CreateGLVersion(GL.GetString(StringName.ShadingLanguageVersion));
|
|
Extensions = GL.GetString(StringName.Extensions).Split(' ');
|
|
|
|
Debugging = Extensions.Contains("KHR_debug");
|
|
if (Debugging) GLDebugging.EnableDebugging();
|
|
|
|
_init = true;
|
|
}
|
|
}
|
|
} |