From fdf108a879fc8f98fc346b9a7ece544f5629731e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20Mail=C3=A4nder?= Date: Sun, 4 May 2014 07:47:21 +0200 Subject: [PATCH 1/6] port Tao.OpenAl to OpenTK.Audio.OpenAL --- Makefile | 2 +- OpenRA.Game/OpenRA.Game.csproj | 7 +- OpenRA.Game/Sound.cs | 123 +++++++++--------- packaging/windows/OpenRA.nsi | 4 +- thirdparty/SDL2-CS.dll.config | 3 + thirdparty/Tao/Tao.OpenAl.dll | Bin 69632 -> 0 bytes thirdparty/Tao/Tao.OpenAl.dll.config | 12 -- .../windows/{OpenAL32.dll => soft_oal.dll} | Bin 8 files changed, 71 insertions(+), 80 deletions(-) delete mode 100644 thirdparty/Tao/Tao.OpenAl.dll delete mode 100644 thirdparty/Tao/Tao.OpenAl.dll.config rename thirdparty/windows/{OpenAL32.dll => soft_oal.dll} (100%) diff --git a/Makefile b/Makefile index 7f753cee2d..46f775589e 100644 --- a/Makefile +++ b/Makefile @@ -80,7 +80,7 @@ VERSION = $(shell git name-rev --name-only --tags --no-undefined HEAD 2>/dev game_SRCS := $(shell find OpenRA.Game/ -iname '*.cs') game_TARGET = OpenRA.Game.exe game_KIND = winexe -game_LIBS = $(COMMON_LIBS) $(game_DEPS) thirdparty/Tao/Tao.OpenAl.dll thirdparty/SharpFont.dll +game_LIBS = $(COMMON_LIBS) $(game_DEPS) thirdparty/SDL2-CS.dll thirdparty/SharpFont.dll game_FLAGS = -win32icon:OpenRA.Game/OpenRA.ico PROGRAMS += game game: $(game_TARGET) diff --git a/OpenRA.Game/OpenRA.Game.csproj b/OpenRA.Game/OpenRA.Game.csproj index 1e3083e1e6..b5d52232e0 100644 --- a/OpenRA.Game/OpenRA.Game.csproj +++ b/OpenRA.Game/OpenRA.Game.csproj @@ -76,10 +76,6 @@ ..\thirdparty\Eluant.dll - - False - ..\thirdparty\Tao\Tao.OpenAl.dll - ..\thirdparty\ICSharpCode.SharpZipLib.dll @@ -89,6 +85,9 @@ ..\thirdparty\MaxMind.Db.dll + + ..\thirdparty\SDL2-CS.dll + diff --git a/OpenRA.Game/Sound.cs b/OpenRA.Game/Sound.cs index e54fbf4611..8f4ea93c54 100644 --- a/OpenRA.Game/Sound.cs +++ b/OpenRA.Game/Sound.cs @@ -16,7 +16,8 @@ using OpenRA.FileSystem; using OpenRA.GameRules; using OpenRA.Primitives; using OpenRA.Traits; -using Tao.OpenAl; +using OpenTK; +using OpenTK.Audio.OpenAL; namespace OpenRA { @@ -449,13 +450,13 @@ namespace OpenRA float volume = 1f; Dictionary sourcePool = new Dictionary(); - static string[] QueryDevices(string label, int type) + static string[] QueryDevices(string label, AlcGetStringList type) { // Clear error bit - Al.alGetError(); + AL.GetError(); - var devices = Alc.alcGetStringv(IntPtr.Zero, type); - if (Al.alGetError() != Al.AL_NO_ERROR) + var devices = Alc.GetString(IntPtr.Zero, type).ToArray(); + if (AL.GetError() != ALError.NoError) { Log.Write("sound", "Failed to query OpenAL device list using {0}", label); return new string[] { }; @@ -466,12 +467,12 @@ namespace OpenRA public static string[] AvailableDevices() { - // Returns all devices under windows vista and newer - if (Alc.alcIsExtensionPresent(IntPtr.Zero, "ALC_ENUMERATE_ALL_EXT") == Alc.ALC_TRUE) - return QueryDevices("ALC_ENUMERATE_ALL_EXT", Alc.ALC_ALL_DEVICES_SPECIFIER); + // Returns all devices under Windows Vista and newer + if (Alc.IsExtensionPresent(IntPtr.Zero, "ALC_ENUMERATE_ALL_EXT")) + return QueryDevices("ALC_ENUMERATE_ALL_EXT", AlcGetStringList.AllDevicesSpecifier); - if (Alc.alcIsExtensionPresent(IntPtr.Zero, "ALC_ENUMERATION_EXT") == Alc.ALC_TRUE) - return QueryDevices("ALC_ENUMERATION_EXT", Alc.ALC_DEVICE_SPECIFIER); + if (Alc.IsExtensionPresent(IntPtr.Zero, "ALC_ENUMERATION_EXT")) + return QueryDevices("ALC_ENUMERATION_EXT", AlcGetStringList.DeviceSpecifier); return new string[] { }; } @@ -485,25 +486,25 @@ namespace OpenRA else Console.WriteLine("Using default device"); - var dev = Alc.alcOpenDevice(Game.Settings.Sound.Device); + var dev = Alc.OpenDevice(Game.Settings.Sound.Device); if (dev == IntPtr.Zero) { Console.WriteLine("Failed to open device. Falling back to default"); - dev = Alc.alcOpenDevice(null); + dev = Alc.OpenDevice(null); if (dev == IntPtr.Zero) throw new InvalidOperationException("Can't create OpenAL device"); } - var ctx = Alc.alcCreateContext(dev, IntPtr.Zero); - if (ctx == IntPtr.Zero) + var ctx = Alc.CreateContext(dev, (int[])null); + if (ctx == ContextHandle.Zero) throw new InvalidOperationException("Can't create OpenAL context"); - Alc.alcMakeContextCurrent(ctx); + Alc.MakeContextCurrent(ctx); for (var i = 0; i < PoolSize; i++) { var source = 0; - Al.alGenSources(1, out source); - if (0 != Al.alGetError()) + AL.GenSources(1, out source); + if (0 != AL.GetError()) { Log.Write("sound", "Failed generating OpenAL source {0}", i); return; @@ -528,8 +529,8 @@ namespace OpenRA foreach (int key in sourcePool.Keys) { int state; - Al.alGetSourcei(key, Al.AL_SOURCE_STATE, out state); - if (state != Al.AL_PLAYING && state != Al.AL_PAUSED) + AL.GetSource(key, ALGetSourcei.SourceState, out state); + if (state != (int)ALSourceState.Playing && state != (int)ALSourceState.Paused) freeSources.Add(key); } @@ -606,7 +607,7 @@ namespace OpenRA public float Volume { get { return volume; } - set { Al.alListenerf(Al.AL_GAIN, volume = value); } + set { AL.Listener(ALListenerf.Gain, volume = value); } } public void PauseSound(ISound sound, bool paused) @@ -616,11 +617,11 @@ namespace OpenRA var key = ((OpenAlSound)sound).Source; int state; - Al.alGetSourcei(key, Al.AL_SOURCE_STATE, out state); - if (state == Al.AL_PLAYING && paused) - Al.alSourcePause(key); - else if (state == Al.AL_PAUSED && !paused) - Al.alSourcePlay(key); + AL.GetSource(key, ALGetSourcei.SourceState, out state); + if (state == (int)ALSourceState.Playing && paused) + AL.SourcePause(key); + else if (state == (int)ALSourceState.Paused && !paused) + AL.SourcePlay(key); } public void SetAllSoundsPaused(bool paused) @@ -628,11 +629,11 @@ namespace OpenRA foreach (var key in sourcePool.Keys) { int state; - Al.alGetSourcei(key, Al.AL_SOURCE_STATE, out state); - if (state == Al.AL_PLAYING && paused) - Al.alSourcePause(key); - else if (state == Al.AL_PAUSED && !paused) - Al.alSourcePlay(key); + AL.GetSource(key, ALGetSourcei.SourceState, out state); + if (state == (int)ALSourceState.Playing && paused) + AL.SourcePause(key); + else if (state == (int)ALSourceState.Paused && !paused) + AL.SourcePlay(key); } } @@ -641,14 +642,14 @@ namespace OpenRA var sounds = sourcePool.Select(s => s.Key).Where(b => { int state; - Al.alGetSourcei(b, Al.AL_SOURCE_STATE, out state); - return (state == Al.AL_PLAYING || state == Al.AL_PAUSED) && + AL.GetSource(b, ALGetSourcei.SourceState, out state); + return (state == (int)ALSourceState.Playing || state == (int)ALSourceState.Paused) && (music == null || b != ((OpenAlSound)music).Source) && (video == null || b != ((OpenAlSound)video).Source); }); foreach (var s in sounds) - Al.alSourcef(s, Al.AL_GAIN, volume); + AL.Source(s, ALSourcef.Gain, volume); } public void StopSound(ISound sound) @@ -658,9 +659,9 @@ namespace OpenRA var key = ((OpenAlSound)sound).Source; int state; - Al.alGetSourcei(key, Al.AL_SOURCE_STATE, out state); - if (state == Al.AL_PLAYING || state == Al.AL_PAUSED) - Al.alSourceStop(key); + AL.GetSource(key, ALGetSourcei.SourceState, out state); + if (state == (int)ALSourceState.Playing || state == (int)ALSourceState.Paused) + AL.SourceStop(key); } public void StopAllSounds() @@ -668,20 +669,20 @@ namespace OpenRA foreach (var key in sourcePool.Keys) { int state; - Al.alGetSourcei(key, Al.AL_SOURCE_STATE, out state); - if (state == Al.AL_PLAYING || state == Al.AL_PAUSED) - Al.alSourceStop(key); + AL.GetSource(key, ALGetSourcei.SourceState, out state); + if (state == (int)ALSourceState.Playing || state == (int)ALSourceState.Paused) + AL.SourceStop(key); } } public void SetListenerPosition(WPos position) { // Move the listener out of the plane so that sounds near the middle of the screen aren't too positional - Al.alListener3f(Al.AL_POSITION, position.X, position.Y, position.Z + 2133); + AL.Listener(ALListener3f.Position, position.X, position.Y, position.Z + 2133); var orientation = new[] { 0f, 0f, 1f, 0f, -1f, 0f }; - Al.alListenerfv(Al.AL_ORIENTATION, ref orientation[0]); - Al.alListenerf(Al.AL_METERS_PER_UNIT, .01f); + AL.Listener(ALListenerfv.Orientation, ref orientation); + AL.Listener(ALListenerf.EfxMetersPerUnit, .01f); } } @@ -689,18 +690,18 @@ namespace OpenRA { public readonly int Buffer; - static int MakeALFormat(int channels, int bits) + static ALFormat MakeALFormat(int channels, int bits) { if (channels == 1) - return bits == 16 ? Al.AL_FORMAT_MONO16 : Al.AL_FORMAT_MONO8; + return bits == 16 ? ALFormat.Mono16 : ALFormat.Mono8; else - return bits == 16 ? Al.AL_FORMAT_STEREO16 : Al.AL_FORMAT_STEREO8; + return bits == 16 ? ALFormat.Stereo16 : ALFormat.Stereo8; } public OpenAlSoundSource(byte[] data, int channels, int sampleBits, int sampleRate) { - Al.alGenBuffers(1, out Buffer); - Al.alBufferData(Buffer, MakeALFormat(channels, sampleBits), data, data.Length, sampleRate); + AL.GenBuffers(1, out Buffer); + AL.BufferData(Buffer, MakeALFormat(channels, sampleBits), data, data.Length, sampleRate); } } @@ -717,16 +718,16 @@ namespace OpenRA Source = source; Volume = volume; - Al.alSourcef(source, Al.AL_PITCH, 1f); - Al.alSource3f(source, Al.AL_POSITION, pos.X, pos.Y, pos.Z); - Al.alSource3f(source, Al.AL_VELOCITY, 0f, 0f, 0f); - Al.alSourcei(source, Al.AL_BUFFER, buffer); - Al.alSourcei(source, Al.AL_LOOPING, looping ? Al.AL_TRUE : Al.AL_FALSE); - Al.alSourcei(source, Al.AL_SOURCE_RELATIVE, relative ? 1 : 0); + AL.Source(source, ALSourcef.Pitch, 1f); + AL.Source(source, ALSource3f.Position, pos.X, pos.Y, pos.Z); + AL.Source(source, ALSource3f.Velocity, 0f, 0f, 0f); + AL.Source(source, ALSourcei.Buffer, buffer); + AL.Source(source, ALSourceb.Looping, looping); + AL.Source(source, ALSourceb.SourceRelative, relative); - Al.alSourcef(source, Al.AL_REFERENCE_DISTANCE, 6826); - Al.alSourcef(source, Al.AL_MAX_DISTANCE, 136533); - Al.alSourcePlay(source); + AL.Source(source, ALSourcef.ReferenceDistance, 6826); + AL.Source(source, ALSourcef.MaxDistance, 136533); + AL.SourcePlay(source); } public float Volume @@ -739,7 +740,7 @@ namespace OpenRA set { if (Source != -1) - Al.alSourcef(Source, Al.AL_GAIN, volume = value); + AL.Source(Source, ALSourcef.Gain, volume = value); } } @@ -747,8 +748,8 @@ namespace OpenRA { get { - float pos; - Al.alGetSourcef(Source, Al.AL_SAMPLE_OFFSET, out pos); + int pos; + AL.GetSource(Source, ALGetSourcei.SampleOffset, out pos); return pos / 22050f; } } @@ -758,8 +759,8 @@ namespace OpenRA get { int state; - Al.alGetSourcei(Source, Al.AL_SOURCE_STATE, out state); - return state == Al.AL_PLAYING; + AL.GetSource(Source, ALGetSourcei.SourceState, out state); + return state == (int)ALSourceState.Playing; } } } diff --git a/packaging/windows/OpenRA.nsi b/packaging/windows/OpenRA.nsi index 070ecb245c..7377fa7975 100644 --- a/packaging/windows/OpenRA.nsi +++ b/packaging/windows/OpenRA.nsi @@ -93,7 +93,7 @@ Section "Game" GAME File "${SRCDIR}\KopiLua.dll" File "${SRCDIR}\NLua.dll" File "${SRCDIR}\eluant.dll" - File "${DEPSDIR}\OpenAL32.dll" + File "${DEPSDIR}\soft_oal.dll" File "${DEPSDIR}\SDL2.dll" File "${DEPSDIR}\freetype6.dll" File "${DEPSDIR}\zlib1.dll" @@ -214,7 +214,7 @@ Function ${UN}Clean Delete $INSTDIR\KopiLua.dll Delete $INSTDIR\NLua.dll Delete $INSTDIR\SDL2-CS.dll - Delete $INSTDIR\OpenAL32.dll + Delete $INSTDIR\soft_oal.dll Delete $INSTDIR\SDL2.dll Delete $INSTDIR\lua51.dll Delete $INSTDIR\eluant.dll diff --git a/thirdparty/SDL2-CS.dll.config b/thirdparty/SDL2-CS.dll.config index 7ebda83a28..e7ebbb513f 100644 --- a/thirdparty/SDL2-CS.dll.config +++ b/thirdparty/SDL2-CS.dll.config @@ -3,4 +3,7 @@ + + + diff --git a/thirdparty/Tao/Tao.OpenAl.dll b/thirdparty/Tao/Tao.OpenAl.dll deleted file mode 100644 index c45c0d083c24f986e682d132ccf8f7c695ff84ef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 69632 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ⅆ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 diff --git a/thirdparty/Tao/Tao.OpenAl.dll.config b/thirdparty/Tao/Tao.OpenAl.dll.config deleted file mode 100644 index cafbeba30e..0000000000 --- a/thirdparty/Tao/Tao.OpenAl.dll.config +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/thirdparty/windows/OpenAL32.dll b/thirdparty/windows/soft_oal.dll similarity index 100% rename from thirdparty/windows/OpenAL32.dll rename to thirdparty/windows/soft_oal.dll From 4c8ce8afc090babdd722b966140928b6d397471c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20Mail=C3=A4nder?= Date: Sun, 4 May 2014 08:09:11 +0200 Subject: [PATCH 2/6] StyleCop --- OpenRA.Game/IGraphicsDevice.cs | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/OpenRA.Game/IGraphicsDevice.cs b/OpenRA.Game/IGraphicsDevice.cs index 56a8ab1ed3..a424614cc7 100755 --- a/OpenRA.Game/IGraphicsDevice.cs +++ b/OpenRA.Game/IGraphicsDevice.cs @@ -1,6 +1,6 @@ #region Copyright & License Information /* - * Copyright 2007-2011 The OpenRA Developers (see AUTHORS) + * Copyright 2007-2014 The OpenRA Developers (see AUTHORS) * This file is part of OpenRA, which is free software. It is made * available to you under the terms of the GNU General Public License * as published by the Free Software Foundation. For more information, @@ -14,33 +14,33 @@ using OpenRA.Graphics; namespace OpenRA { - [AttributeUsage( AttributeTargets.Assembly )] + [AttributeUsage(AttributeTargets.Assembly)] public class RendererAttribute : Attribute { public readonly Type Type; - public RendererAttribute( Type graphicsDeviceType ) + public RendererAttribute(Type graphicsDeviceType) { - if( !typeof( IDeviceFactory ).IsAssignableFrom( graphicsDeviceType ) ) - throw new InvalidOperationException( "Incorrect type in RendererAttribute" ); + if (!typeof(IDeviceFactory).IsAssignableFrom(graphicsDeviceType)) + throw new InvalidOperationException("Incorrect type in RendererAttribute"); Type = graphicsDeviceType; } } public interface IDeviceFactory { - IGraphicsDevice Create( Size size, WindowMode windowMode ); + IGraphicsDevice Create(Size size, WindowMode windowMode); } public enum BlendMode { None, Alpha, Additive, Subtractive, Multiply } public interface IGraphicsDevice { - IVertexBuffer CreateVertexBuffer( int length ); - ITexture CreateTexture( Bitmap bitmap ); + IVertexBuffer CreateVertexBuffer(int length); + ITexture CreateTexture(Bitmap bitmap); ITexture CreateTexture(); IFrameBuffer CreateFrameBuffer(Size s); - IShader CreateShader( string name ); + IShader CreateShader(string name); Size WindowSize { get; } @@ -48,10 +48,10 @@ namespace OpenRA void Present(); void PumpInput(IInputHandler inputHandler); - void DrawPrimitives( PrimitiveType type, int firstVertex, int numVertices ); + void DrawPrimitives(PrimitiveType type, int firstVertex, int numVertices); - void SetLineWidth( float width ); - void EnableScissor( int left, int top, int width, int height ); + void SetLineWidth(float width); + void EnableScissor(int left, int top, int width, int height); void DisableScissor(); void EnableDepthBuffer(); @@ -65,7 +65,7 @@ namespace OpenRA public interface IVertexBuffer { void Bind(); - void SetData( T[] vertices, int length ); + void SetData(T[] vertices, int length); } public interface IShader @@ -105,7 +105,7 @@ namespace OpenRA public struct Range { public readonly T Start, End; - public Range( T start, T end ) { Start = start; End = end; } + public Range(T start, T end) { Start = start; End = end; } } public enum WindowMode From dc2d1287a74fcb8a09e2459f915cc7e120fd83b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20Mail=C3=A4nder?= Date: Sun, 4 May 2014 09:57:25 +0200 Subject: [PATCH 3/6] port Tao.OpenGl to OpenTK.Graphics.OpenGL and avoid Arb closes #4540 --- AUTHORS | 4 +- Makefile | 4 +- OpenRA.Renderer.Sdl2/ErrorHandler.cs | 39 ++------ OpenRA.Renderer.Sdl2/FrameBuffer.cs | 49 +++++----- .../OpenRA.Renderer.Sdl2.csproj | 3 - OpenRA.Renderer.Sdl2/Sdl2GraphicsDevice.cs | 71 +++++++------- OpenRA.Renderer.Sdl2/Shader.cs | 92 +++++++++--------- OpenRA.Renderer.Sdl2/Texture.cs | 46 ++++----- OpenRA.Renderer.Sdl2/VertexBuffer.cs | 21 ++-- make.ps1 | 1 - packaging/package-all.sh | 3 - packaging/windows/OpenRA.nsi | 2 - thirdparty/SDL2-CS.dll.config | 12 +++ thirdparty/Tao/Tao.OpenGl.dll | Bin 1171456 -> 0 bytes thirdparty/Tao/Tao.OpenGl.dll.config | 12 --- 15 files changed, 166 insertions(+), 193 deletions(-) delete mode 100644 thirdparty/Tao/Tao.OpenGl.dll delete mode 100644 thirdparty/Tao/Tao.OpenGl.dll.config diff --git a/AUTHORS b/AUTHORS index e69e5760d2..10c9d23fde 100644 --- a/AUTHORS +++ b/AUTHORS @@ -100,8 +100,8 @@ distributed under the MIT license. Using SharpFont created by Robert Rouhani and distributed under the MIT license. -Using the Tao framework and distributed under -the MIT license. +Using the Open Toolkit distributed under the +MIT license. Using SDL2# created by Ethan Lee and released under the zlib license. diff --git a/Makefile b/Makefile index 46f775589e..5ab9c331f5 100644 --- a/Makefile +++ b/Makefile @@ -98,7 +98,7 @@ rsdl2_SRCS := $(shell find OpenRA.Renderer.Sdl2/ -iname '*.cs') rsdl2_TARGET = OpenRA.Renderer.Sdl2.dll rsdl2_KIND = library rsdl2_DEPS = $(game_TARGET) -rsdl2_LIBS = $(COMMON_LIBS) thirdparty/Tao/Tao.OpenGl.dll thirdparty/SDL2-CS.dll $(rsdl2_DEPS) +rsdl2_LIBS = $(COMMON_LIBS) thirdparty/SDL2-CS.dll $(rsdl2_DEPS) rnull_SRCS := $(shell find OpenRA.Renderer.Null/ -iname '*.cs') rnull_TARGET = OpenRA.Renderer.Null.dll @@ -276,7 +276,6 @@ endif dependencies: @ $(CP_R) thirdparty/*.dl* . - @ $(CP_R) thirdparty/Tao/* . @ $(CP_R) thirdparty/${platformdeps}/* . version: mods/ra/mod.yaml mods/cnc/mod.yaml mods/d2k/mod.yaml mods/modchooser/mod.yaml @@ -315,7 +314,6 @@ install-core: default @$(CP_R) glsl "$(DATA_INSTALL_DIR)" @$(CP_R) lua "$(DATA_INSTALL_DIR)" @$(CP) *.ttf "$(DATA_INSTALL_DIR)" - @$(CP) thirdparty/Tao/* "$(DATA_INSTALL_DIR)" @$(CP) thirdparty/SDL2-CS* "$(DATA_INSTALL_DIR)" @$(CP) thirdparty/Eluant* "$(DATA_INSTALL_DIR)" @$(INSTALL_PROGRAM) thirdparty/ICSharpCode.SharpZipLib.dll "$(DATA_INSTALL_DIR)" diff --git a/OpenRA.Renderer.Sdl2/ErrorHandler.cs b/OpenRA.Renderer.Sdl2/ErrorHandler.cs index 5d1ec5f88b..00c262e544 100644 --- a/OpenRA.Renderer.Sdl2/ErrorHandler.cs +++ b/OpenRA.Renderer.Sdl2/ErrorHandler.cs @@ -1,6 +1,6 @@ #region Copyright & License Information /* -* Copyright 2007-2011 The OpenRA Developers (see AUTHORS) +* Copyright 2007-2014 The OpenRA Developers (see AUTHORS) * This file is part of OpenRA, which is free software. It is made * available to you under the terms of the GNU General Public License * as published by the Free Software Foundation. For more information, @@ -10,37 +10,18 @@ using System; using System.Diagnostics; -using Tao.OpenGl; +using OpenTK.Graphics.OpenGL; namespace OpenRA.Renderer.Sdl2 { public static class ErrorHandler { - public enum GlError - { - GL_NO_ERROR = Gl.GL_NO_ERROR, - GL_INVALID_ENUM = Gl.GL_INVALID_ENUM, - GL_INVALID_VALUE = Gl.GL_INVALID_VALUE, - GL_STACK_OVERFLOW = Gl.GL_STACK_OVERFLOW, - GL_STACK_UNDERFLOW = Gl.GL_STACK_UNDERFLOW, - GL_OUT_OF_MEMORY = Gl.GL_OUT_OF_MEMORY, - GL_TABLE_TOO_LARGE = Gl.GL_TABLE_TOO_LARGE, - GL_INVALID_OPERATION = Gl.GL_INVALID_OPERATION, - - // Framebuffer errors - GL_FRAMEBUFFER_COMPLETE_EXT = Gl.GL_FRAMEBUFFER_COMPLETE_EXT, - GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT = Gl.GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT, - GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT = Gl.GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT, - GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT = Gl.GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT, - GL_FRAMEBUFFER_UNSUPPORTED_EXT = Gl.GL_FRAMEBUFFER_UNSUPPORTED_EXT, - } - public static void CheckGlError() { - var n = Gl.glGetError(); - if (n != Gl.GL_NO_ERROR) + var n = GL.GetError(); + if (n != ErrorCode.NoError) { - var error = "GL Error: {0}\n{1}".F((GlError)n, new StackTrace()); + var error = "GL Error: {0}\n{1}".F(n, new StackTrace()); WriteGraphicsLog(error); throw new InvalidOperationException("OpenGL Error: See graphics.log for details."); } @@ -51,12 +32,12 @@ namespace OpenRA.Renderer.Sdl2 Log.Write("graphics", message); Log.Write("graphics", ""); Log.Write("graphics", "OpenGL Information:"); - Log.Write("graphics", "Vendor: {0}", Gl.glGetString(Gl.GL_VENDOR)); - Log.Write("graphics", "Renderer: {0}", Gl.glGetString(Gl.GL_RENDERER)); - Log.Write("graphics", "GL Version: {0}", Gl.glGetString(Gl.GL_VERSION)); - Log.Write("graphics", "Shader Version: {0}", Gl.glGetString(Gl.GL_SHADING_LANGUAGE_VERSION)); + Log.Write("graphics", "Vendor: {0}", GL.GetString(StringName.Vendor)); + Log.Write("graphics", "Renderer: {0}", GL.GetString(StringName.Renderer)); + Log.Write("graphics", "GL Version: {0}", GL.GetString(StringName.Version)); + Log.Write("graphics", "Shader Version: {0}", GL.GetString(StringName.ShadingLanguageVersion)); Log.Write("graphics", "Available extensions:"); - Log.Write("graphics", Gl.glGetString(Gl.GL_EXTENSIONS)); + Log.Write("graphics", GL.GetString(StringName.Extensions)); } } } \ No newline at end of file diff --git a/OpenRA.Renderer.Sdl2/FrameBuffer.cs b/OpenRA.Renderer.Sdl2/FrameBuffer.cs index 6e4eaace76..3bba809464 100644 --- a/OpenRA.Renderer.Sdl2/FrameBuffer.cs +++ b/OpenRA.Renderer.Sdl2/FrameBuffer.cs @@ -1,6 +1,6 @@ #region Copyright & License Information /* - * Copyright 2007-2011 The OpenRA Developers (see AUTHORS) + * Copyright 2007-2014 The OpenRA Developers (see AUTHORS) * This file is part of OpenRA, which is free software. It is made * available to you under the terms of the GNU General Public License * as published by the Free Software Foundation. For more information, @@ -13,7 +13,7 @@ using System.Diagnostics; using System.Drawing; using System.IO; using OpenRA.Graphics; -using Tao.OpenGl; +using OpenTK.Graphics.OpenGL; namespace OpenRA.Renderer.Sdl2 { @@ -29,41 +29,41 @@ namespace OpenRA.Renderer.Sdl2 if (!Exts.IsPowerOf2(size.Width) || !Exts.IsPowerOf2(size.Height)) throw new InvalidDataException("Frame buffer size ({0}x{1}) must be a power of two".F(size.Width, size.Height)); - Gl.glGenFramebuffersEXT(1, out framebuffer); + GL.Ext.GenFramebuffers(1, out framebuffer); ErrorHandler.CheckGlError(); - Gl.glBindFramebufferEXT(Gl.GL_FRAMEBUFFER_EXT, framebuffer); + GL.Ext.BindFramebuffer(FramebufferTarget.FramebufferExt, framebuffer); ErrorHandler.CheckGlError(); // Color texture = new Texture(); texture.SetEmpty(size.Width, size.Height); - Gl.glFramebufferTexture2DEXT(Gl.GL_FRAMEBUFFER_EXT, Gl.GL_COLOR_ATTACHMENT0_EXT, Gl.GL_TEXTURE_2D, texture.ID, 0); + GL.Ext.FramebufferTexture2D(FramebufferTarget.FramebufferExt, FramebufferAttachment.ColorAttachment0Ext, TextureTarget.Texture2D, texture.ID, 0); ErrorHandler.CheckGlError(); // Depth - Gl.glGenRenderbuffersEXT(1, out depth); + GL.Ext.GenRenderbuffers(1, out depth); ErrorHandler.CheckGlError(); - Gl.glBindRenderbufferEXT(Gl.GL_RENDERBUFFER_EXT, depth); + GL.Ext.BindRenderbuffer(RenderbufferTarget.RenderbufferExt, depth); ErrorHandler.CheckGlError(); - Gl.glRenderbufferStorageEXT(Gl.GL_RENDERBUFFER_EXT, Gl.GL_DEPTH_COMPONENT, size.Width, size.Height); + GL.Ext.RenderbufferStorage(RenderbufferTarget.RenderbufferExt, (RenderbufferStorage)All.DepthComponent, size.Width, size.Height); ErrorHandler.CheckGlError(); - Gl.glFramebufferRenderbufferEXT(Gl.GL_FRAMEBUFFER_EXT, Gl.GL_DEPTH_ATTACHMENT_EXT, Gl.GL_RENDERBUFFER_EXT, depth); + GL.Ext.FramebufferRenderbuffer(FramebufferTarget.FramebufferExt, FramebufferAttachment.DepthAttachmentExt, RenderbufferTarget.RenderbufferExt, depth); ErrorHandler.CheckGlError(); // Test for completeness - var status = Gl.glCheckFramebufferStatusEXT(Gl.GL_FRAMEBUFFER_EXT); - if (status != Gl.GL_FRAMEBUFFER_COMPLETE_EXT) + var status = GL.Ext.CheckFramebufferStatus(FramebufferTarget.FramebufferExt); + if (status != FramebufferErrorCode.FramebufferCompleteExt) { - var error = "Error creating framebuffer: {0}\n{1}".F((ErrorHandler.GlError)status, new StackTrace()); + var error = "Error creating framebuffer: {0}\n{1}".F(status, new StackTrace()); ErrorHandler.WriteGraphicsLog(error); throw new InvalidOperationException("OpenGL Error: See graphics.log for details."); } // Restore default buffer - Gl.glBindFramebufferEXT(Gl.GL_FRAMEBUFFER_EXT, 0); + GL.Ext.BindFramebuffer(FramebufferTarget.FramebufferExt, 0); ErrorHandler.CheckGlError(); } @@ -74,8 +74,7 @@ namespace OpenRA.Renderer.Sdl2 { fixed (int* ptr = &v[0]) { - IntPtr intPtr = new IntPtr((void*)ptr); - Gl.glGetIntegerv(Gl.GL_VIEWPORT, intPtr); + GL.GetInteger(GetPName.Viewport, ptr); } } @@ -85,9 +84,9 @@ namespace OpenRA.Renderer.Sdl2 void FinalizeInner() { - Gl.glDeleteFramebuffersEXT(1, ref framebuffer); + GL.Ext.DeleteFramebuffers(1, ref framebuffer); ErrorHandler.CheckGlError(); - Gl.glDeleteRenderbuffersEXT(1, ref depth); + GL.Ext.DeleteRenderbuffers(1, ref depth); ErrorHandler.CheckGlError(); } @@ -99,25 +98,25 @@ namespace OpenRA.Renderer.Sdl2 // Cache viewport rect to restore when unbinding cv = ViewportRectangle(); - Gl.glFlush(); + GL.Flush(); ErrorHandler.CheckGlError(); - Gl.glBindFramebufferEXT(Gl.GL_FRAMEBUFFER_EXT, framebuffer); + GL.Ext.BindFramebuffer(FramebufferTarget.FramebufferExt, framebuffer); ErrorHandler.CheckGlError(); - Gl.glViewport(0, 0, size.Width, size.Height); + GL.Viewport(0, 0, size.Width, size.Height); ErrorHandler.CheckGlError(); - Gl.glClearColor(0, 0, 0, 0); + GL.ClearColor(0, 0, 0, 0); ErrorHandler.CheckGlError(); - Gl.glClear(Gl.GL_COLOR_BUFFER_BIT | Gl.GL_DEPTH_BUFFER_BIT); + GL.Clear(ClearBufferMask.ColorBufferBit | ClearBufferMask.DepthBufferBit); ErrorHandler.CheckGlError(); } public void Unbind() { - Gl.glFlush(); + GL.Flush(); ErrorHandler.CheckGlError(); - Gl.glBindFramebufferEXT(Gl.GL_FRAMEBUFFER_EXT, 0); + GL.Ext.BindFramebuffer(FramebufferTarget.FramebufferExt, 0); ErrorHandler.CheckGlError(); - Gl.glViewport(cv[0], cv[1], cv[2], cv[3]); + GL.Viewport(cv[0], cv[1], cv[2], cv[3]); ErrorHandler.CheckGlError(); } diff --git a/OpenRA.Renderer.Sdl2/OpenRA.Renderer.Sdl2.csproj b/OpenRA.Renderer.Sdl2/OpenRA.Renderer.Sdl2.csproj index 8417c540ef..59825a48c3 100644 --- a/OpenRA.Renderer.Sdl2/OpenRA.Renderer.Sdl2.csproj +++ b/OpenRA.Renderer.Sdl2/OpenRA.Renderer.Sdl2.csproj @@ -33,9 +33,6 @@ - - ..\thirdparty\Tao\Tao.OpenGl.dll - ..\thirdparty\SDL2-CS.dll diff --git a/OpenRA.Renderer.Sdl2/Sdl2GraphicsDevice.cs b/OpenRA.Renderer.Sdl2/Sdl2GraphicsDevice.cs index 88890814c5..35cda16564 100755 --- a/OpenRA.Renderer.Sdl2/Sdl2GraphicsDevice.cs +++ b/OpenRA.Renderer.Sdl2/Sdl2GraphicsDevice.cs @@ -1,6 +1,6 @@ #region Copyright & License Information /* -* Copyright 2007-2013 The OpenRA Developers (see AUTHORS) +* Copyright 2007-2014 The OpenRA Developers (see AUTHORS) * This file is part of OpenRA, which is free software. It is made * available to you under the terms of the GNU General Public License * as published by the Free Software Foundation. For more information, @@ -14,7 +14,7 @@ using System.Linq; using OpenRA; using OpenRA.Graphics; using SDL2; -using Tao.OpenGl; +using OpenTK.Graphics.OpenGL; [assembly: Renderer(typeof(OpenRA.Renderer.Sdl2.DeviceFactory))] @@ -33,6 +33,7 @@ namespace OpenRA.Renderer.Sdl2 { static string[] requiredExtensions = { + // TODO: not ARB anymore "GL_ARB_vertex_shader", "GL_ARB_fragment_shader", "GL_ARB_vertex_buffer_object", @@ -41,7 +42,7 @@ namespace OpenRA.Renderer.Sdl2 Size size; Sdl2Input input; - IntPtr window; + IntPtr context, window; public Size WindowSize { get { return size; } } @@ -84,10 +85,12 @@ namespace OpenRA.Renderer.Sdl2 } SDL.SDL_ShowCursor(0); - SDL.SDL_GL_CreateContext(window); + context = SDL.SDL_GL_CreateContext(window); + SDL.SDL_GL_MakeCurrent(window, context); + GL.LoadAll(); ErrorHandler.CheckGlError(); - var extensions = Gl.glGetString(Gl.GL_EXTENSIONS); + var extensions = GL.GetString(StringName.Extensions); if (extensions == null) Console.WriteLine("Failed to fetch GL_EXTENSIONS, this is bad."); @@ -98,9 +101,9 @@ namespace OpenRA.Renderer.Sdl2 throw new InvalidProgramException("Unsupported GPU. See graphics.log for details."); } - Gl.glEnableClientState(Gl.GL_VERTEX_ARRAY); + GL.EnableClientState(ArrayCap.VertexArray); ErrorHandler.CheckGlError(); - Gl.glEnableClientState(Gl.GL_TEXTURE_COORD_ARRAY); + GL.EnableClientState(ArrayCap.TextureCoordArray); ErrorHandler.CheckGlError(); SDL.SDL_SetModState(0); @@ -109,17 +112,19 @@ namespace OpenRA.Renderer.Sdl2 public virtual void Quit() { + SDL.SDL_GL_DeleteContext(context); + SDL.SDL_DestroyWindow(window); SDL.SDL_Quit(); } - int ModeFromPrimitiveType(PrimitiveType pt) + BeginMode ModeFromPrimitiveType(PrimitiveType pt) { switch (pt) { - case PrimitiveType.PointList: return Gl.GL_POINTS; - case PrimitiveType.LineList: return Gl.GL_LINES; - case PrimitiveType.TriangleList: return Gl.GL_TRIANGLES; - case PrimitiveType.QuadList: return Gl.GL_QUADS; + case PrimitiveType.PointList: return BeginMode.Points; + case PrimitiveType.LineList: return BeginMode.Lines; + case PrimitiveType.TriangleList: return BeginMode.Triangles; + case PrimitiveType.QuadList: return BeginMode.Quads; } throw new NotImplementedException(); @@ -127,63 +132,63 @@ namespace OpenRA.Renderer.Sdl2 public void DrawPrimitives(PrimitiveType pt, int firstVertex, int numVertices) { - Gl.glDrawArrays(ModeFromPrimitiveType(pt), firstVertex, numVertices); + GL.DrawArrays(ModeFromPrimitiveType(pt), firstVertex, numVertices); ErrorHandler.CheckGlError(); } public void Clear() { - Gl.glClearColor(0, 0, 0, 0); + GL.ClearColor(0, 0, 0, 0); ErrorHandler.CheckGlError(); - Gl.glClear(Gl.GL_COLOR_BUFFER_BIT); + GL.Clear(ClearBufferMask.ColorBufferBit); ErrorHandler.CheckGlError(); } public void EnableDepthBuffer() { - Gl.glClear(Gl.GL_DEPTH_BUFFER_BIT); + GL.Clear(ClearBufferMask.DepthBufferBit); ErrorHandler.CheckGlError(); - Gl.glEnable(Gl.GL_DEPTH_TEST); + GL.Enable(EnableCap.DepthTest); ErrorHandler.CheckGlError(); } public void DisableDepthBuffer() { - Gl.glDisable(Gl.GL_DEPTH_TEST); + GL.Disable(EnableCap.DepthTest); ErrorHandler.CheckGlError(); } public void SetBlendMode(BlendMode mode) { - Gl.glBlendEquation(Gl.GL_FUNC_ADD); + GL.BlendEquation(BlendEquationMode.FuncAdd); ErrorHandler.CheckGlError(); switch (mode) { case BlendMode.None: - Gl.glDisable(Gl.GL_BLEND); + GL.Disable(EnableCap.Blend); break; case BlendMode.Alpha: - Gl.glEnable(Gl.GL_BLEND); + GL.Enable(EnableCap.Blend); ErrorHandler.CheckGlError(); - Gl.glBlendFunc(Gl.GL_SRC_ALPHA, Gl.GL_ONE_MINUS_SRC_ALPHA); + GL.BlendFunc(BlendingFactorSrc.SrcAlpha, BlendingFactorDest.OneMinusSrcAlpha); break; case BlendMode.Additive: - Gl.glEnable(Gl.GL_BLEND); + GL.Enable(EnableCap.Blend); ErrorHandler.CheckGlError(); - Gl.glBlendFunc(Gl.GL_ONE, Gl.GL_ONE); + GL.BlendFunc(BlendingFactorSrc.One, BlendingFactorDest.One); break; case BlendMode.Subtractive: - Gl.glEnable(Gl.GL_BLEND); + GL.Enable(EnableCap.Blend); ErrorHandler.CheckGlError(); - Gl.glBlendFunc(Gl.GL_ONE, Gl.GL_ONE); + GL.BlendFunc(BlendingFactorSrc.One, BlendingFactorDest.One); ErrorHandler.CheckGlError(); - Gl.glBlendEquation(Gl.GL_FUNC_REVERSE_SUBTRACT); + GL.BlendEquation(BlendEquationMode.FuncReverseSubtract); break; case BlendMode.Multiply: - Gl.glEnable(Gl.GL_BLEND); + GL.Enable(EnableCap.Blend); ErrorHandler.CheckGlError(); - Gl.glBlendFuncSeparate(Gl.GL_DST_COLOR, Gl.GL_ZERO, Gl.GL_ONE, Gl.GL_ONE_MINUS_SRC_ALPHA); + GL.BlendFuncSeparate(BlendingFactorSrc.DstColor, BlendingFactorDest.Zero, BlendingFactorSrc.One, BlendingFactorDest.OneMinusSrcAlpha); ErrorHandler.CheckGlError(); break; } @@ -199,21 +204,21 @@ namespace OpenRA.Renderer.Sdl2 if (height < 0) height = 0; - Gl.glScissor(left, size.Height - (top + height), width, height); + GL.Scissor(left, size.Height - (top + height), width, height); ErrorHandler.CheckGlError(); - Gl.glEnable(Gl.GL_SCISSOR_TEST); + GL.Enable(EnableCap.ScissorTest); ErrorHandler.CheckGlError(); } public void DisableScissor() { - Gl.glDisable(Gl.GL_SCISSOR_TEST); + GL.Disable(EnableCap.ScissorTest); ErrorHandler.CheckGlError(); } public void SetLineWidth(float width) { - Gl.glLineWidth(width); + GL.LineWidth(width); ErrorHandler.CheckGlError(); } diff --git a/OpenRA.Renderer.Sdl2/Shader.cs b/OpenRA.Renderer.Sdl2/Shader.cs index a237eb4cfa..af0f2e55f9 100644 --- a/OpenRA.Renderer.Sdl2/Shader.cs +++ b/OpenRA.Renderer.Sdl2/Shader.cs @@ -1,6 +1,6 @@ #region Copyright & License Information /* - * Copyright 2007-2011 The OpenRA Developers (see AUTHORS) + * Copyright 2007-2014 The OpenRA Developers (see AUTHORS) * This file is part of OpenRA, which is free software. It is made * available to you under the terms of the GNU General Public License * as published by the Free Software Foundation. For more information, @@ -14,7 +14,8 @@ using System.IO; using System.Text; using OpenRA.FileSystem; using OpenRA.Graphics; -using Tao.OpenGl; +using OpenTK; +using OpenTK.Graphics.OpenGL; namespace OpenRA.Renderer.Sdl2 { @@ -31,76 +32,73 @@ namespace OpenRA.Renderer.Sdl2 using (var file = new StreamReader(GlobalFileSystem.Open("glsl{0}{1}.vert".F(Path.DirectorySeparatorChar, name)))) vertexCode = file.ReadToEnd(); - var v = Gl.glCreateShaderObjectARB(Gl.GL_VERTEX_SHADER_ARB); + var vertexShader = GL.CreateShader(ShaderType.VertexShader); ErrorHandler.CheckGlError(); - Gl.glShaderSourceARB(v, 1, new string[] { vertexCode }, null); + GL.ShaderSource(vertexShader, vertexCode); ErrorHandler.CheckGlError(); - Gl.glCompileShaderARB(v); + GL.CompileShader(vertexShader); ErrorHandler.CheckGlError(); - int success; - Gl.glGetObjectParameterivARB(v, Gl.GL_OBJECT_COMPILE_STATUS_ARB, out success); + GL.GetShader(vertexShader, ShaderParameter.CompileStatus, out success); ErrorHandler.CheckGlError(); - if (success == 0) - throw new InvalidProgramException("Compile error in {0}{1}.vert".F(Path.DirectorySeparatorChar, name)); + if (success == (int)All.False) + throw new InvalidProgramException("Compile error in glsl{0}{1}.vert".F(Path.DirectorySeparatorChar, name)); // Fragment shader string fragmentCode; using (var file = new StreamReader(GlobalFileSystem.Open("glsl{0}{1}.frag".F(Path.DirectorySeparatorChar, name)))) fragmentCode = file.ReadToEnd(); - var f = Gl.glCreateShaderObjectARB(Gl.GL_FRAGMENT_SHADER_ARB); + var fragmentShader = GL.CreateShader(ShaderType.FragmentShader); ErrorHandler.CheckGlError(); - Gl.glShaderSourceARB(f, 1, new string[] { fragmentCode }, null); + GL.ShaderSource(fragmentShader, fragmentCode); ErrorHandler.CheckGlError(); - Gl.glCompileShaderARB(f); + GL.CompileShader(fragmentShader); ErrorHandler.CheckGlError(); - - Gl.glGetObjectParameterivARB(f, Gl.GL_OBJECT_COMPILE_STATUS_ARB, out success); + GL.GetShader(vertexShader, ShaderParameter.CompileStatus, out success); ErrorHandler.CheckGlError(); - if (success == 0) + if (success == (int)All.False) throw new InvalidProgramException("Compile error in glsl{0}{1}.frag".F(Path.DirectorySeparatorChar, name)); // Assemble program - program = Gl.glCreateProgramObjectARB(); + program = GL.CreateProgram(); ErrorHandler.CheckGlError(); - Gl.glAttachObjectARB(program, v); + GL.AttachShader(program, vertexShader); ErrorHandler.CheckGlError(); - Gl.glAttachObjectARB(program, f); + GL.AttachShader(program, fragmentShader); ErrorHandler.CheckGlError(); - Gl.glLinkProgramARB(program); + GL.LinkProgram(program); ErrorHandler.CheckGlError(); - - Gl.glGetObjectParameterivARB(program, Gl.GL_OBJECT_LINK_STATUS_ARB, out success); + GL.GetProgram(program, ProgramParameter.LinkStatus, out success); ErrorHandler.CheckGlError(); - if (success == 0) + if (success == (int)All.False) throw new InvalidProgramException("Linking error in {0} shader".F(name)); - Gl.glUseProgramObjectARB(program); + GL.UseProgram(program); ErrorHandler.CheckGlError(); int numUniforms; - Gl.glGetObjectParameterivARB(program, Gl.GL_ACTIVE_UNIFORMS, out numUniforms); + GL.GetProgram(program, ProgramParameter.ActiveUniforms, out numUniforms); ErrorHandler.CheckGlError(); int nextTexUnit = 0; for (var i = 0; i < numUniforms; i++) { - int length, size, type; + int length, size; + ActiveUniformType type; var sb = new StringBuilder(128); - - Gl.glGetActiveUniformARB(program, i, 128, out length, out size, out type, sb); + GL.GetActiveUniform(program, i, 128, out length, out size, out type, sb); var sampler = sb.ToString(); ErrorHandler.CheckGlError(); - if (type == Gl.GL_SAMPLER_2D_ARB) + if (type == ActiveUniformType.Sampler2D) { samplers.Add(sampler, nextTexUnit); - var loc = Gl.glGetUniformLocationARB(program, sampler); + var loc = GL.GetUniformLocation(program, sampler); ErrorHandler.CheckGlError(); - Gl.glUniform1iARB(loc, nextTexUnit); + GL.Uniform1(loc, nextTexUnit); ErrorHandler.CheckGlError(); nextTexUnit++; @@ -110,13 +108,13 @@ namespace OpenRA.Renderer.Sdl2 public void Render(Action a) { - Gl.glUseProgramObjectARB(program); + GL.UseProgram(program); // bind the textures foreach (var kv in textures) { - Gl.glActiveTextureARB(Gl.GL_TEXTURE0_ARB + kv.Key); - Gl.glBindTexture(Gl.GL_TEXTURE_2D, ((Texture)kv.Value).ID); + GL.ActiveTexture(TextureUnit.Texture0 + kv.Key); + GL.BindTexture(TextureTarget.Texture2D, ((Texture)kv.Value).ID); } ErrorHandler.CheckGlError(); @@ -136,34 +134,34 @@ namespace OpenRA.Renderer.Sdl2 public void SetVec(string name, float x) { - Gl.glUseProgramObjectARB(program); + GL.UseProgram(program); ErrorHandler.CheckGlError(); - var param = Gl.glGetUniformLocationARB(program, name); + var param = GL.GetUniformLocation(program, name); ErrorHandler.CheckGlError(); - Gl.glUniform1fARB(param, x); + GL.Uniform1(param, x); ErrorHandler.CheckGlError(); } public void SetVec(string name, float x, float y) { - Gl.glUseProgramObjectARB(program); + GL.UseProgram(program); ErrorHandler.CheckGlError(); - var param = Gl.glGetUniformLocationARB(program, name); + var param = GL.GetUniformLocation(program, name); ErrorHandler.CheckGlError(); - Gl.glUniform2fARB(param, x, y); + GL.Uniform2(param, x, y); ErrorHandler.CheckGlError(); } public void SetVec(string name, float[] vec, int length) { - var param = Gl.glGetUniformLocationARB(program, name); + var param = GL.GetUniformLocation(program, name); ErrorHandler.CheckGlError(); switch (length) { - case 1: Gl.glUniform1fv(param, 1, vec); break; - case 2: Gl.glUniform2fv(param, 1, vec); break; - case 3: Gl.glUniform3fv(param, 1, vec); break; - case 4: Gl.glUniform4fv(param, 1, vec); break; + case 1: GL.Uniform1(param, 1, vec); break; + case 2: GL.Uniform2(param, 1, vec); break; + case 3: GL.Uniform3(param, 1, vec); break; + case 4: GL.Uniform4(param, 1, vec); break; default: throw new InvalidDataException("Invalid vector length"); } @@ -175,11 +173,11 @@ namespace OpenRA.Renderer.Sdl2 if (mtx.Length != 16) throw new InvalidDataException("Invalid 4x4 matrix"); - Gl.glUseProgramObjectARB(program); + GL.UseProgram(program); ErrorHandler.CheckGlError(); - var param = Gl.glGetUniformLocationARB(program, name); + var param = GL.GetUniformLocation(program, name); ErrorHandler.CheckGlError(); - Gl.glUniformMatrix4fv(param, 1, Gl.GL_FALSE, mtx); + GL.UniformMatrix4(param, 1, false, mtx); ErrorHandler.CheckGlError(); } } diff --git a/OpenRA.Renderer.Sdl2/Texture.cs b/OpenRA.Renderer.Sdl2/Texture.cs index efd977d3d8..f000235aba 100644 --- a/OpenRA.Renderer.Sdl2/Texture.cs +++ b/OpenRA.Renderer.Sdl2/Texture.cs @@ -1,6 +1,6 @@ #region Copyright & License Information /* - * Copyright 2007-2011 The OpenRA Developers (see AUTHORS) + * Copyright 2007-2014 The OpenRA Developers (see AUTHORS) * This file is part of OpenRA, which is free software. It is made * available to you under the terms of the GNU General Public License * as published by the Free Software Foundation. For more information, @@ -13,7 +13,7 @@ using System.Drawing; using System.Drawing.Imaging; using System.IO; using OpenRA.Graphics; -using Tao.OpenGl; +using OpenTK.Graphics.OpenGL; namespace OpenRA.Renderer.Sdl2 { @@ -27,38 +27,38 @@ namespace OpenRA.Renderer.Sdl2 public Texture() { - Gl.glGenTextures(1, out texture); + GL.GenTextures(1, out texture); ErrorHandler.CheckGlError(); } public Texture(Bitmap bitmap) { - Gl.glGenTextures(1, out texture); + GL.GenTextures(1, out texture); ErrorHandler.CheckGlError(); SetData(bitmap); } - void FinalizeInner() { Gl.glDeleteTextures(1, ref texture); } + void FinalizeInner() { GL.DeleteTextures(1, ref texture); } ~Texture() { Game.RunAfterTick(FinalizeInner); } void PrepareTexture() { ErrorHandler.CheckGlError(); - Gl.glBindTexture(Gl.GL_TEXTURE_2D, texture); + GL.BindTexture(TextureTarget.Texture2D, texture); ErrorHandler.CheckGlError(); - Gl.glTexParameteri(Gl.GL_TEXTURE_2D, Gl.GL_TEXTURE_MAG_FILTER, Gl.GL_NEAREST); + GL.TexParameter(TextureTarget.Texture2D, TextureParameterName.TextureMagFilter, (int)TextureMinFilter.Nearest); ErrorHandler.CheckGlError(); - Gl.glTexParameteri(Gl.GL_TEXTURE_2D, Gl.GL_TEXTURE_MIN_FILTER, Gl.GL_NEAREST); + GL.TexParameter(TextureTarget.Texture2D, TextureParameterName.TextureMinFilter, (int)TextureMinFilter.Nearest); ErrorHandler.CheckGlError(); - Gl.glTexParameteri(Gl.GL_TEXTURE_2D, Gl.GL_TEXTURE_WRAP_S, Gl.GL_CLAMP_TO_EDGE); + GL.TexParameter(TextureTarget.Texture2D, TextureParameterName.TextureWrapS, (float)TextureWrapMode.ClampToEdge); ErrorHandler.CheckGlError(); - Gl.glTexParameteri(Gl.GL_TEXTURE_2D, Gl.GL_TEXTURE_WRAP_T, Gl.GL_CLAMP_TO_EDGE); + GL.TexParameter(TextureTarget.Texture2D, TextureParameterName.TextureWrapT, (float)TextureWrapMode.ClampToEdge); ErrorHandler.CheckGlError(); - Gl.glTexParameteri(Gl.GL_TEXTURE_2D, Gl.GL_TEXTURE_BASE_LEVEL, 0); + GL.TexParameter(TextureTarget.Texture2D, TextureParameterName.TextureBaseLevel, 0); ErrorHandler.CheckGlError(); - Gl.glTexParameteri(Gl.GL_TEXTURE_2D, Gl.GL_TEXTURE_MAX_LEVEL, 0); + GL.TexParameter(TextureTarget.Texture2D, TextureParameterName.TextureMaxLevel, 0); ErrorHandler.CheckGlError(); } @@ -74,8 +74,8 @@ namespace OpenRA.Renderer.Sdl2 { IntPtr intPtr = new IntPtr((void*)ptr); PrepareTexture(); - Gl.glTexImage2D(Gl.GL_TEXTURE_2D, 0, Gl.GL_RGBA8, width, height, - 0, Gl.GL_BGRA, Gl.GL_UNSIGNED_BYTE, intPtr); + GL.TexImage2D(TextureTarget.Texture2D, 0, PixelInternalFormat.Rgba8, width, height, + 0, OpenTK.Graphics.OpenGL.PixelFormat.Bgra, PixelType.UnsignedByte, intPtr); ErrorHandler.CheckGlError(); } } @@ -97,8 +97,8 @@ namespace OpenRA.Renderer.Sdl2 { IntPtr intPtr = new IntPtr((void*)ptr); PrepareTexture(); - Gl.glTexImage2D(Gl.GL_TEXTURE_2D, 0, Gl.GL_RGBA8, width, height, - 0, Gl.GL_BGRA, Gl.GL_UNSIGNED_BYTE, intPtr); + GL.TexImage2D(TextureTarget.Texture2D, 0, PixelInternalFormat.Rgba8, width, height, + 0, OpenTK.Graphics.OpenGL.PixelFormat.Bgra, PixelType.UnsignedByte, intPtr); ErrorHandler.CheckGlError(); } } @@ -111,11 +111,11 @@ namespace OpenRA.Renderer.Sdl2 size = new Size(bitmap.Width, bitmap.Height); var bits = bitmap.LockBits(bitmap.Bounds(), - ImageLockMode.ReadOnly, PixelFormat.Format32bppArgb); + ImageLockMode.ReadOnly, System.Drawing.Imaging.PixelFormat.Format32bppArgb); PrepareTexture(); - Gl.glTexImage2D(Gl.GL_TEXTURE_2D, 0, Gl.GL_RGBA8, bits.Width, bits.Height, - 0, Gl.GL_BGRA, Gl.GL_UNSIGNED_BYTE, bits.Scan0); // todo: weird strides + GL.TexImage2D(TextureTarget.Texture2D, 0, PixelInternalFormat.Rgba8, bits.Width, bits.Height, + 0, OpenTK.Graphics.OpenGL.PixelFormat.Bgra, PixelType.UnsignedByte, bits.Scan0); // TODO: weird strides ErrorHandler.CheckGlError(); bitmap.UnlockBits(bits); } @@ -125,13 +125,13 @@ namespace OpenRA.Renderer.Sdl2 var data = new byte[4 * size.Width * size.Height]; ErrorHandler.CheckGlError(); - Gl.glBindTexture(Gl.GL_TEXTURE_2D, texture); + GL.BindTexture(TextureTarget.Texture2D, texture); unsafe { fixed (byte* ptr = &data[0]) { IntPtr intPtr = new IntPtr((void*)ptr); - Gl.glGetTexImage(Gl.GL_TEXTURE_2D, 0, Gl.GL_BGRA, Gl.GL_UNSIGNED_BYTE, intPtr); + GL.GetTexImage(TextureTarget.Texture2D, 0, OpenTK.Graphics.OpenGL.PixelFormat.Bgra, PixelType.UnsignedByte, intPtr); } } @@ -146,8 +146,8 @@ namespace OpenRA.Renderer.Sdl2 size = new Size(width, height); PrepareTexture(); - Gl.glTexImage2D(Gl.GL_TEXTURE_2D, 0, Gl.GL_RGBA8, width, height, - 0, Gl.GL_BGRA, Gl.GL_UNSIGNED_BYTE, null); + GL.TexImage2D(TextureTarget.Texture2D, 0, PixelInternalFormat.Rgba8, width, height, + 0, OpenTK.Graphics.OpenGL.PixelFormat.Bgra, PixelType.UnsignedByte, IntPtr.Zero); ErrorHandler.CheckGlError(); } } diff --git a/OpenRA.Renderer.Sdl2/VertexBuffer.cs b/OpenRA.Renderer.Sdl2/VertexBuffer.cs index af6d4fcbe6..841666b8b8 100644 --- a/OpenRA.Renderer.Sdl2/VertexBuffer.cs +++ b/OpenRA.Renderer.Sdl2/VertexBuffer.cs @@ -1,6 +1,6 @@ #region Copyright & License Information /* - * Copyright 2007-2011 The OpenRA Developers (see AUTHORS) + * Copyright 2007-2014 The OpenRA Developers (see AUTHORS) * This file is part of OpenRA, which is free software. It is made * available to you under the terms of the GNU General Public License * as published by the Free Software Foundation. For more information, @@ -11,7 +11,7 @@ using System; using System.Runtime.InteropServices; using OpenRA.Graphics; -using Tao.OpenGl; +using OpenTK.Graphics.OpenGL; namespace OpenRA.Renderer.Sdl2 { @@ -23,20 +23,21 @@ namespace OpenRA.Renderer.Sdl2 public VertexBuffer(int size) { - Gl.glGenBuffersARB(1, out buffer); + GL.GenBuffers(1, out buffer); ErrorHandler.CheckGlError(); Bind(); - Gl.glBufferDataARB(Gl.GL_ARRAY_BUFFER_ARB, + GL.BufferData(BufferTarget.ArrayBuffer, new IntPtr(VertexSize * size), new T[size], - Gl.GL_DYNAMIC_DRAW_ARB); + BufferUsageHint.DynamicDraw + ); ErrorHandler.CheckGlError(); } public void SetData(T[] data, int length) { Bind(); - Gl.glBufferSubDataARB(Gl.GL_ARRAY_BUFFER_ARB, + GL.BufferSubData(BufferTarget.ArrayBuffer, IntPtr.Zero, new IntPtr(VertexSize * length), data); @@ -45,15 +46,15 @@ namespace OpenRA.Renderer.Sdl2 public void Bind() { - Gl.glBindBufferARB(Gl.GL_ARRAY_BUFFER_ARB, buffer); + GL.BindBuffer(BufferTarget.ArrayBuffer, buffer); ErrorHandler.CheckGlError(); - Gl.glVertexPointer(3, Gl.GL_FLOAT, VertexSize, IntPtr.Zero); + GL.VertexPointer(3, VertexPointerType.Float, VertexSize, IntPtr.Zero); ErrorHandler.CheckGlError(); - Gl.glTexCoordPointer(4, Gl.GL_FLOAT, VertexSize, new IntPtr(12)); + GL.TexCoordPointer(4, TexCoordPointerType.Float, VertexSize, new IntPtr(12)); ErrorHandler.CheckGlError(); } - void FinalizeInner() { Gl.glDeleteBuffersARB(1, ref buffer); } + void FinalizeInner() { GL.DeleteBuffers(1, ref buffer); } ~VertexBuffer() { Game.RunAfterTick(FinalizeInner); } } } diff --git a/make.ps1 b/make.ps1 index d70e8ee964..a4bedda148 100644 --- a/make.ps1 +++ b/make.ps1 @@ -76,7 +76,6 @@ elseif ($command -eq "version") elseif ($command -eq "dependencies") { cp thirdparty/*.dll . - cp thirdparty/Tao/*.dll . cp thirdparty/windows/*.dll . echo "Dependencies copied." } diff --git a/packaging/package-all.sh b/packaging/package-all.sh index 27493d24f6..d151e95847 100755 --- a/packaging/package-all.sh +++ b/packaging/package-all.sh @@ -41,9 +41,6 @@ for i in "${FILES[@]}"; do cp -R "${i}" "packaging/built/${i}" || exit 3 done -# Copy Tao -cp thirdparty/Tao/* packaging/built - # SharpZipLib for zip file support cp thirdparty/ICSharpCode.SharpZipLib.dll packaging/built diff --git a/packaging/windows/OpenRA.nsi b/packaging/windows/OpenRA.nsi index 7377fa7975..3db2306843 100644 --- a/packaging/windows/OpenRA.nsi +++ b/packaging/windows/OpenRA.nsi @@ -81,7 +81,6 @@ Section "Game" GAME File "${SRCDIR}\DOCUMENTATION.html" File "${SRCDIR}\*.ttf" File "${SRCDIR}\OpenRA.ico" - File "${SRCDIR}\Tao.*.dll" File "${SRCDIR}\SharpFont.dll" File "${SRCDIR}\SDL2-CS.dll" File "${SRCDIR}\global mix database.dat" @@ -195,7 +194,6 @@ Function ${UN}Clean Delete $INSTDIR\ICSharpCode.SharpZipLib.dll Delete $INSTDIR\FuzzyLogicLibrary.dll Delete $INSTDIR\Mono.Nat.dll - Delete $INSTDIR\Tao.*.dll Delete $INSTDIR\SharpFont.dll Delete $INSTDIR\AUTHORS Delete $INSTDIR\COPYING diff --git a/thirdparty/SDL2-CS.dll.config b/thirdparty/SDL2-CS.dll.config index e7ebbb513f..85592006e0 100644 --- a/thirdparty/SDL2-CS.dll.config +++ b/thirdparty/SDL2-CS.dll.config @@ -6,4 +6,16 @@ + + + + + + + + + + + + diff --git a/thirdparty/Tao/Tao.OpenGl.dll b/thirdparty/Tao/Tao.OpenGl.dll deleted file mode 100644 index 8eb040e6542cf6af5658030bd11836f86f1eb291..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1171456 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 z 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%0D1WdDt^-Ga z>%o!W2Jkd+BX|b534A6v0FDE zKr}7t25=PkDR4Bn1{?!^0mRT-{R21-ycrx1ZUiTQUjrwC{{&6~?*u1<+rTN{-QZO4 z-@$3%e}L1$-QW!HN8n8G0dN-h6L2gB!tDf}6mZ-~jkKa0~cGa4UEPxDA{KZU_Gq+yTB5+zGx1+yyQMcY{}hd%(W} z_k!1g`@j|8e(-wm0QgDpAoyAE5V#gR41Nhb0)7R=R9xK(mcdP64g5OT4}Jq23H~cM z3fvBk2LBBl15&;*iQtc6o&-J&P6mGtP5}>sQ^CiEM.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 Kdl7g#0{ - - - - - - - - - - - From a5422fecedfe9a0a7647e540c6c81648322e8d9d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20Mail=C3=A4nder?= Date: Sun, 4 May 2014 11:26:55 +0200 Subject: [PATCH 4/6] only query for the extension we need --- OpenRA.Renderer.Sdl2/Sdl2GraphicsDevice.cs | 21 ++++----------------- 1 file changed, 4 insertions(+), 17 deletions(-) diff --git a/OpenRA.Renderer.Sdl2/Sdl2GraphicsDevice.cs b/OpenRA.Renderer.Sdl2/Sdl2GraphicsDevice.cs index 35cda16564..cf5dadc280 100755 --- a/OpenRA.Renderer.Sdl2/Sdl2GraphicsDevice.cs +++ b/OpenRA.Renderer.Sdl2/Sdl2GraphicsDevice.cs @@ -31,15 +31,6 @@ namespace OpenRA.Renderer.Sdl2 public class Sdl2GraphicsDevice : IGraphicsDevice { - static string[] requiredExtensions = - { - // TODO: not ARB anymore - "GL_ARB_vertex_shader", - "GL_ARB_fragment_shader", - "GL_ARB_vertex_buffer_object", - "GL_EXT_framebuffer_object" - }; - Size size; Sdl2Input input; IntPtr context, window; @@ -90,15 +81,11 @@ namespace OpenRA.Renderer.Sdl2 GL.LoadAll(); ErrorHandler.CheckGlError(); - var extensions = GL.GetString(StringName.Extensions); - if (extensions == null) - Console.WriteLine("Failed to fetch GL_EXTENSIONS, this is bad."); - - var missingExtensions = requiredExtensions.Where(r => !extensions.Contains(r)).ToArray(); - if (missingExtensions.Any()) + if (SDL.SDL_GL_ExtensionSupported("GL_EXT_framebuffer_object") == SDL.SDL_bool.SDL_FALSE) { - ErrorHandler.WriteGraphicsLog("Unsupported GPU: Missing extensions: {0}".F(missingExtensions.JoinWith(","))); - throw new InvalidProgramException("Unsupported GPU. See graphics.log for details."); + ErrorHandler.WriteGraphicsLog("OpenRA requires the OpenGL extension GL_EXT_framebuffer_object.\n" + +"Please try updating your GPU driver to the latest version provided by the manufacturer."); + throw new InvalidProgramException("Missing OpenGL extension GL_EXT_framebuffer_object. See graphics.log for details."); } GL.EnableClientState(ArrayCap.VertexArray); From ce78683782234afe5d4834caa4dcda3962129421 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20Mail=C3=A4nder?= Date: Sun, 4 May 2014 11:27:03 +0200 Subject: [PATCH 5/6] give a hint when someone forgot to install drivers on Windows --- OpenRA.Renderer.Sdl2/ErrorHandler.cs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/OpenRA.Renderer.Sdl2/ErrorHandler.cs b/OpenRA.Renderer.Sdl2/ErrorHandler.cs index 00c262e544..c864bf260c 100644 --- a/OpenRA.Renderer.Sdl2/ErrorHandler.cs +++ b/OpenRA.Renderer.Sdl2/ErrorHandler.cs @@ -33,6 +33,11 @@ namespace OpenRA.Renderer.Sdl2 Log.Write("graphics", ""); Log.Write("graphics", "OpenGL Information:"); Log.Write("graphics", "Vendor: {0}", GL.GetString(StringName.Vendor)); + if (GL.GetString(StringName.Vendor).Contains("Microsoft")) + { + Log.Write("graphics", "Note: The default driver provided by Microsoft does not include full OpenGL support.\n" + + "Please install the latest drivers from your graphics card manufacturer's website.\n"); + } Log.Write("graphics", "Renderer: {0}", GL.GetString(StringName.Renderer)); Log.Write("graphics", "GL Version: {0}", GL.GetString(StringName.Version)); Log.Write("graphics", "Shader Version: {0}", GL.GetString(StringName.ShadingLanguageVersion)); From f8bb956496768261830c17705d251b752fe95eb4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matthias=20Mail=C3=A4nder?= Date: Sun, 4 May 2014 12:21:38 +0200 Subject: [PATCH 6/6] check for OpenGL version 2.0+ --- OpenRA.Renderer.Sdl2/ErrorHandler.cs | 23 ++++++++++++++++++++++ OpenRA.Renderer.Sdl2/Sdl2GraphicsDevice.cs | 1 + 2 files changed, 24 insertions(+) diff --git a/OpenRA.Renderer.Sdl2/ErrorHandler.cs b/OpenRA.Renderer.Sdl2/ErrorHandler.cs index c864bf260c..21988fda46 100644 --- a/OpenRA.Renderer.Sdl2/ErrorHandler.cs +++ b/OpenRA.Renderer.Sdl2/ErrorHandler.cs @@ -16,6 +16,24 @@ namespace OpenRA.Renderer.Sdl2 { public static class ErrorHandler { + static Version OpenGLversion; + + public static void CheckGlVersion() + { + var version = GL.GetString(StringName.Version).Split(' ')[0].Split('.'); + int major; + int.TryParse(version[0], out major); + int minor; + int.TryParse(version[1], out minor); + Console.WriteLine("Detected OpenGL version: {0}.{1}".F(major, minor)); + OpenGLversion = new Version(major, minor); + if (major < 2) + { + WriteGraphicsLog("OpenRA requires OpenGL version 2.0 or greater."); + throw new InvalidProgramException("OpenGL Version Error: See graphics.log for details."); + } + } + public static void CheckGlError() { var n = GL.GetError(); @@ -40,6 +58,11 @@ namespace OpenRA.Renderer.Sdl2 } Log.Write("graphics", "Renderer: {0}", GL.GetString(StringName.Renderer)); Log.Write("graphics", "GL Version: {0}", GL.GetString(StringName.Version)); + if (OpenGLversion.Major < 2) + { + Log.Write("graphics", "Note: OpenRA requires OpenGL version 2.0+.\n" + +"Please update your graphics card drivers to the latest version.\n"); + } Log.Write("graphics", "Shader Version: {0}", GL.GetString(StringName.ShadingLanguageVersion)); Log.Write("graphics", "Available extensions:"); Log.Write("graphics", GL.GetString(StringName.Extensions)); diff --git a/OpenRA.Renderer.Sdl2/Sdl2GraphicsDevice.cs b/OpenRA.Renderer.Sdl2/Sdl2GraphicsDevice.cs index cf5dadc280..0da24f9c84 100755 --- a/OpenRA.Renderer.Sdl2/Sdl2GraphicsDevice.cs +++ b/OpenRA.Renderer.Sdl2/Sdl2GraphicsDevice.cs @@ -79,6 +79,7 @@ namespace OpenRA.Renderer.Sdl2 context = SDL.SDL_GL_CreateContext(window); SDL.SDL_GL_MakeCurrent(window, context); GL.LoadAll(); + ErrorHandler.CheckGlVersion(); ErrorHandler.CheckGlError(); if (SDL.SDL_GL_ExtensionSupported("GL_EXT_framebuffer_object") == SDL.SDL_bool.SDL_FALSE)