Merge branch '2-replace-glew' into dev
This commit is contained in:
commit
d65e31f4f7
20 changed files with 3470 additions and 45240 deletions
1990
include/Spectre/Graphics/GL/glad.h
Normal file
1990
include/Spectre/Graphics/GL/glad.h
Normal file
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -2,14 +2,6 @@
|
|||
#ifndef SPECTRE_OPENGL_H
|
||||
#define SPECTRE_OPENGL_H
|
||||
|
||||
#ifdef _WIN32
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#include <Windows.h>
|
||||
#endif /* !_MSC_VER */
|
||||
|
||||
#include "GL/glew.h"
|
||||
#include "GL/wglew.h"
|
||||
#endif /* !_WIN32 */
|
||||
#include <Spectre/Graphics/GL/glad.h>
|
||||
|
||||
#endif /* SPECTRE_OPENGL_H */
|
||||
1017
source/Graphics/GL/glad.c
Normal file
1017
source/Graphics/GL/glad.c
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -1,6 +1,5 @@
|
|||
|
||||
#include <GL/glew.h>
|
||||
#include <GL/wglew.h>
|
||||
#include "glad_wgl.h"
|
||||
|
||||
#include <Platform/PlatformDisplay.h>
|
||||
#include <Spectre/System/Log.h>
|
||||
|
|
@ -9,14 +8,20 @@
|
|||
#include "Win32GLContext.h"
|
||||
|
||||
// Ensure that OpenGL extensions are loaded.
|
||||
static void ensureExtensionsLoaded()
|
||||
static void ensureExtensionsLoaded(HDC dc)
|
||||
{
|
||||
glewExperimental = GL_TRUE;
|
||||
GLenum ret = glewInit();
|
||||
if (ret != GLEW_OK) {
|
||||
log("Win32: Could not initialize GLEW %s\n",
|
||||
glewGetErrorString(ret));
|
||||
return;
|
||||
static bool init = false;
|
||||
|
||||
if (!init) {
|
||||
init = true;
|
||||
|
||||
if (!gladLoadWGL(dc)) {
|
||||
log("Win32: Could not load WGL extensions\n");
|
||||
}
|
||||
|
||||
if (!gladLoadGL()) {
|
||||
log("Win32: Could not load OpenGL extensions\n");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -89,42 +94,31 @@ void Win32GLContext::createGLContext()
|
|||
tmpDC = ::wglCreateContext(m_deviceContext);
|
||||
::wglMakeCurrent(m_deviceContext, tmpDC);
|
||||
|
||||
ensureExtensionsLoaded();
|
||||
ensureExtensionsLoaded(m_deviceContext);
|
||||
|
||||
// Dont need to old one anymore.
|
||||
wglMakeCurrent(m_deviceContext, NULL);
|
||||
::wglDeleteContext(tmpDC);
|
||||
|
||||
// Have new CreateContextAttribs function.
|
||||
if (WGLEW_ARB_create_context_profile) {
|
||||
// TODO: For now.. We force 3.2 Core but this should not be implementation specific.
|
||||
// The Display class should force that for all GLContext Implementations.
|
||||
|
||||
// TODO: For now.. We force 3.2 Core but this should not be implementation specific.
|
||||
// The Display class should force that for all GLContext Implementations.
|
||||
int attriblist[] = {
|
||||
WGL_CONTEXT_MAJOR_VERSION_ARB, 3,
|
||||
WGL_CONTEXT_MINOR_VERSION_ARB, 2,
|
||||
WGL_CONTEXT_PROFILE_MASK_ARB, WGL_CONTEXT_CORE_PROFILE_BIT_ARB,
|
||||
0, 0
|
||||
};
|
||||
|
||||
int attriblist[] = {
|
||||
WGL_CONTEXT_MAJOR_VERSION_ARB, 3,
|
||||
WGL_CONTEXT_MINOR_VERSION_ARB, 2,
|
||||
WGL_CONTEXT_PROFILE_MASK_ARB, WGL_CONTEXT_CORE_PROFILE_BIT_ARB,
|
||||
0, 0
|
||||
};
|
||||
|
||||
// Create real context.
|
||||
m_renderContext = ::wglCreateContextAttribsARB(m_deviceContext, 0, attriblist);
|
||||
|
||||
}
|
||||
// Could create a old context, but anything below 3.2 is so so old.
|
||||
else {
|
||||
log("Win32 - OpenGL 3.2 is not available!\n");
|
||||
}
|
||||
// Create real context.
|
||||
m_renderContext = ::wglCreateContextAttribsARB(m_deviceContext, 0, attriblist);
|
||||
}
|
||||
|
||||
bool Win32GLContext::activate()
|
||||
{
|
||||
// Make sure we have dc and rc before calling MakeCurrent.
|
||||
if (m_deviceContext && m_renderContext) {
|
||||
bool ret = ::wglMakeCurrent(m_deviceContext, m_renderContext);
|
||||
ensureExtensionsLoaded();
|
||||
return ret;
|
||||
return ::wglMakeCurrent(m_deviceContext, m_renderContext);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
|
@ -141,13 +135,9 @@ bool Win32GLContext::isActive() const
|
|||
|
||||
bool Win32GLContext::setSwapInterval(int interval)
|
||||
{
|
||||
ensureExtensionsLoaded();
|
||||
ensureExtensionsLoaded(m_deviceContext);
|
||||
|
||||
if (WGLEW_EXT_swap_control) {
|
||||
return wglSwapIntervalEXT(interval);
|
||||
}
|
||||
log("wglSwapInterval: function is not supported\n");
|
||||
return false;
|
||||
return wglSwapIntervalEXT(interval);
|
||||
}
|
||||
|
||||
void Win32GLContext::setSize(unsigned int width, unsigned int height)
|
||||
|
|
|
|||
256
source/Platform/Win32/glad_wgl.c
Normal file
256
source/Platform/Win32/glad_wgl.c
Normal file
|
|
@ -0,0 +1,256 @@
|
|||
/*
|
||||
|
||||
WGL loader generated by glad 0.1.20a0 on Mon May 14 10:58:11 2018.
|
||||
|
||||
Language/Generator: C/C++
|
||||
Specification: wgl
|
||||
APIs: wgl=1.0
|
||||
Profile: -
|
||||
Extensions:
|
||||
WGL_ARB_create_context,
|
||||
WGL_ARB_create_context_profile,
|
||||
WGL_ARB_extensions_string,
|
||||
WGL_EXT_extensions_string,
|
||||
WGL_EXT_swap_control
|
||||
Loader: True
|
||||
Local files: True
|
||||
Omit khrplatform: True
|
||||
|
||||
Commandline:
|
||||
--api="wgl=1.0" --generator="c" --spec="wgl" --local-files --omit-khrplatform --extensions="WGL_ARB_create_context,WGL_ARB_create_context_profile,WGL_ARB_extensions_string,WGL_EXT_extensions_string,WGL_EXT_swap_control"
|
||||
Online:
|
||||
http://glad.dav1d.de/#language=c&specification=wgl&loader=on&api=wgl%3D1.0&extensions=WGL_ARB_create_context&extensions=WGL_ARB_create_context_profile&extensions=WGL_ARB_extensions_string&extensions=WGL_EXT_extensions_string&extensions=WGL_EXT_swap_control
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include "glad_wgl.h"
|
||||
|
||||
static void* get_proc(const char *namez);
|
||||
|
||||
#if defined(_WIN32) || defined(__CYGWIN__)
|
||||
#include <windows.h>
|
||||
static HMODULE libGL;
|
||||
|
||||
typedef void* (APIENTRYP PFNWGLGETPROCADDRESSPROC_PRIVATE)(const char*);
|
||||
static PFNWGLGETPROCADDRESSPROC_PRIVATE gladGetProcAddressPtr;
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#ifdef __has_include
|
||||
#if __has_include(<winapifamily.h>)
|
||||
#define HAVE_WINAPIFAMILY 1
|
||||
#endif
|
||||
#elif _MSC_VER >= 1700 && !_USING_V110_SDK71_
|
||||
#define HAVE_WINAPIFAMILY 1
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_WINAPIFAMILY
|
||||
#include <winapifamily.h>
|
||||
#if !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) && WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
|
||||
#define IS_UWP 1
|
||||
#endif
|
||||
#endif
|
||||
|
||||
static
|
||||
int open_gl(void) {
|
||||
#ifndef IS_UWP
|
||||
libGL = LoadLibraryW(L"opengl32.dll");
|
||||
if(libGL != NULL) {
|
||||
gladGetProcAddressPtr = (PFNWGLGETPROCADDRESSPROC_PRIVATE)GetProcAddress(
|
||||
libGL, "wglGetProcAddress");
|
||||
return gladGetProcAddressPtr != NULL;
|
||||
}
|
||||
#endif
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static
|
||||
void close_gl(void) {
|
||||
if(libGL != NULL) {
|
||||
FreeLibrary((HMODULE) libGL);
|
||||
libGL = NULL;
|
||||
}
|
||||
}
|
||||
#else
|
||||
#include <dlfcn.h>
|
||||
static void* libGL;
|
||||
|
||||
#ifndef __APPLE__
|
||||
typedef void* (APIENTRYP PFNGLXGETPROCADDRESSPROC_PRIVATE)(const char*);
|
||||
static PFNGLXGETPROCADDRESSPROC_PRIVATE gladGetProcAddressPtr;
|
||||
#endif
|
||||
|
||||
static
|
||||
int open_gl(void) {
|
||||
#ifdef __APPLE__
|
||||
static const char *NAMES[] = {
|
||||
"../Frameworks/OpenGL.framework/OpenGL",
|
||||
"/Library/Frameworks/OpenGL.framework/OpenGL",
|
||||
"/System/Library/Frameworks/OpenGL.framework/OpenGL",
|
||||
"/System/Library/Frameworks/OpenGL.framework/Versions/Current/OpenGL"
|
||||
};
|
||||
#else
|
||||
static const char *NAMES[] = {"libGL.so.1", "libGL.so"};
|
||||
#endif
|
||||
|
||||
unsigned int index = 0;
|
||||
for(index = 0; index < (sizeof(NAMES) / sizeof(NAMES[0])); index++) {
|
||||
libGL = dlopen(NAMES[index], RTLD_NOW | RTLD_GLOBAL);
|
||||
|
||||
if(libGL != NULL) {
|
||||
#ifdef __APPLE__
|
||||
return 1;
|
||||
#else
|
||||
gladGetProcAddressPtr = (PFNGLXGETPROCADDRESSPROC_PRIVATE)dlsym(libGL,
|
||||
"glXGetProcAddressARB");
|
||||
return gladGetProcAddressPtr != NULL;
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static
|
||||
void close_gl(void) {
|
||||
if(libGL != NULL) {
|
||||
dlclose(libGL);
|
||||
libGL = NULL;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
static
|
||||
void* get_proc(const char *namez) {
|
||||
void* result = NULL;
|
||||
if(libGL == NULL) return NULL;
|
||||
|
||||
#ifndef __APPLE__
|
||||
if(gladGetProcAddressPtr != NULL) {
|
||||
result = gladGetProcAddressPtr(namez);
|
||||
}
|
||||
#endif
|
||||
if(result == NULL) {
|
||||
#if defined(_WIN32) || defined(__CYGWIN__)
|
||||
result = (void*)GetProcAddress((HMODULE) libGL, namez);
|
||||
#else
|
||||
result = dlsym(libGL, namez);
|
||||
#endif
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
int gladLoadWGL(HDC hdc) {
|
||||
int status = 0;
|
||||
|
||||
if(open_gl()) {
|
||||
status = gladLoadWGLLoader((GLADloadproc)get_proc, hdc);
|
||||
close_gl();
|
||||
}
|
||||
|
||||
return status;
|
||||
}
|
||||
|
||||
static HDC GLADWGLhdc = (HDC)INVALID_HANDLE_VALUE;
|
||||
|
||||
static int get_exts(void) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
static void free_exts(void) {
|
||||
return;
|
||||
}
|
||||
|
||||
static int has_ext(const char *ext) {
|
||||
const char *terminator;
|
||||
const char *loc;
|
||||
const char *extensions;
|
||||
|
||||
if(wglGetExtensionsStringEXT == NULL && wglGetExtensionsStringARB == NULL)
|
||||
return 0;
|
||||
|
||||
if(wglGetExtensionsStringARB == NULL || GLADWGLhdc == INVALID_HANDLE_VALUE)
|
||||
extensions = wglGetExtensionsStringEXT();
|
||||
else
|
||||
extensions = wglGetExtensionsStringARB(GLADWGLhdc);
|
||||
|
||||
if(extensions == NULL || ext == NULL)
|
||||
return 0;
|
||||
|
||||
while(1) {
|
||||
loc = strstr(extensions, ext);
|
||||
if(loc == NULL)
|
||||
break;
|
||||
|
||||
terminator = loc + strlen(ext);
|
||||
if((loc == extensions || *(loc - 1) == ' ') &&
|
||||
(*terminator == ' ' || *terminator == '\0'))
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
extensions = terminator;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
int GLAD_WGL_VERSION_1_0;
|
||||
int GLAD_WGL_ARB_extensions_string;
|
||||
int GLAD_WGL_EXT_swap_control;
|
||||
int GLAD_WGL_EXT_extensions_string;
|
||||
int GLAD_WGL_ARB_create_context_profile;
|
||||
int GLAD_WGL_ARB_create_context;
|
||||
PFNWGLCREATECONTEXTATTRIBSARBPROC glad_wglCreateContextAttribsARB;
|
||||
PFNWGLGETEXTENSIONSSTRINGARBPROC glad_wglGetExtensionsStringARB;
|
||||
PFNWGLGETEXTENSIONSSTRINGEXTPROC glad_wglGetExtensionsStringEXT;
|
||||
PFNWGLSWAPINTERVALEXTPROC glad_wglSwapIntervalEXT;
|
||||
PFNWGLGETSWAPINTERVALEXTPROC glad_wglGetSwapIntervalEXT;
|
||||
static void load_WGL_ARB_create_context(GLADloadproc load) {
|
||||
if(!GLAD_WGL_ARB_create_context) return;
|
||||
glad_wglCreateContextAttribsARB = (PFNWGLCREATECONTEXTATTRIBSARBPROC)load("wglCreateContextAttribsARB");
|
||||
}
|
||||
static void load_WGL_ARB_extensions_string(GLADloadproc load) {
|
||||
if(!GLAD_WGL_ARB_extensions_string) return;
|
||||
glad_wglGetExtensionsStringARB = (PFNWGLGETEXTENSIONSSTRINGARBPROC)load("wglGetExtensionsStringARB");
|
||||
}
|
||||
static void load_WGL_EXT_extensions_string(GLADloadproc load) {
|
||||
if(!GLAD_WGL_EXT_extensions_string) return;
|
||||
glad_wglGetExtensionsStringEXT = (PFNWGLGETEXTENSIONSSTRINGEXTPROC)load("wglGetExtensionsStringEXT");
|
||||
}
|
||||
static void load_WGL_EXT_swap_control(GLADloadproc load) {
|
||||
if(!GLAD_WGL_EXT_swap_control) return;
|
||||
glad_wglSwapIntervalEXT = (PFNWGLSWAPINTERVALEXTPROC)load("wglSwapIntervalEXT");
|
||||
glad_wglGetSwapIntervalEXT = (PFNWGLGETSWAPINTERVALEXTPROC)load("wglGetSwapIntervalEXT");
|
||||
}
|
||||
static int find_extensionsWGL(void) {
|
||||
if (!get_exts()) return 0;
|
||||
GLAD_WGL_ARB_create_context = has_ext("WGL_ARB_create_context");
|
||||
GLAD_WGL_ARB_create_context_profile = has_ext("WGL_ARB_create_context_profile");
|
||||
GLAD_WGL_ARB_extensions_string = has_ext("WGL_ARB_extensions_string");
|
||||
GLAD_WGL_EXT_extensions_string = has_ext("WGL_EXT_extensions_string");
|
||||
GLAD_WGL_EXT_swap_control = has_ext("WGL_EXT_swap_control");
|
||||
free_exts();
|
||||
return 1;
|
||||
}
|
||||
|
||||
static void find_coreWGL(HDC hdc) {
|
||||
GLADWGLhdc = hdc;
|
||||
}
|
||||
|
||||
int gladLoadWGLLoader(GLADloadproc load, HDC hdc) {
|
||||
wglGetExtensionsStringARB = (PFNWGLGETEXTENSIONSSTRINGARBPROC)load("wglGetExtensionsStringARB");
|
||||
wglGetExtensionsStringEXT = (PFNWGLGETEXTENSIONSSTRINGEXTPROC)load("wglGetExtensionsStringEXT");
|
||||
if(wglGetExtensionsStringARB == NULL && wglGetExtensionsStringEXT == NULL) return 0;
|
||||
find_coreWGL(hdc);
|
||||
|
||||
if (!find_extensionsWGL()) return 0;
|
||||
load_WGL_ARB_create_context(load);
|
||||
load_WGL_ARB_extensions_string(load);
|
||||
load_WGL_EXT_extensions_string(load);
|
||||
load_WGL_EXT_swap_control(load);
|
||||
return 1;
|
||||
}
|
||||
|
||||
157
source/Platform/Win32/glad_wgl.h
Normal file
157
source/Platform/Win32/glad_wgl.h
Normal file
|
|
@ -0,0 +1,157 @@
|
|||
/*
|
||||
|
||||
WGL loader generated by glad 0.1.20a0 on Mon May 14 10:58:11 2018.
|
||||
|
||||
Language/Generator: C/C++
|
||||
Specification: wgl
|
||||
APIs: wgl=1.0
|
||||
Profile: -
|
||||
Extensions:
|
||||
WGL_ARB_create_context,
|
||||
WGL_ARB_create_context_profile,
|
||||
WGL_ARB_extensions_string,
|
||||
WGL_EXT_extensions_string,
|
||||
WGL_EXT_swap_control
|
||||
Loader: True
|
||||
Local files: True
|
||||
Omit khrplatform: True
|
||||
|
||||
Commandline:
|
||||
--api="wgl=1.0" --generator="c" --spec="wgl" --local-files --omit-khrplatform --extensions="WGL_ARB_create_context,WGL_ARB_create_context_profile,WGL_ARB_extensions_string,WGL_EXT_extensions_string,WGL_EXT_swap_control"
|
||||
Online:
|
||||
http://glad.dav1d.de/#language=c&specification=wgl&loader=on&api=wgl%3D1.0&extensions=WGL_ARB_create_context&extensions=WGL_ARB_create_context_profile&extensions=WGL_ARB_extensions_string&extensions=WGL_EXT_extensions_string&extensions=WGL_EXT_swap_control
|
||||
*/
|
||||
|
||||
|
||||
#ifndef WINAPI
|
||||
#ifndef WIN32_LEAN_AND_MEAN
|
||||
#define WIN32_LEAN_AND_MEAN 1
|
||||
#endif
|
||||
#ifndef NOMINMAX
|
||||
#define NOMINMAX 1
|
||||
#endif
|
||||
#include <windows.h>
|
||||
#endif
|
||||
|
||||
#include <Spectre/Graphics/GL/glad.h>
|
||||
|
||||
#ifndef __glad_wglext_h_
|
||||
|
||||
#ifdef __wglext_h_
|
||||
#error WGL header already included, remove this include, glad already provides it
|
||||
#endif
|
||||
|
||||
#define __glad_wglext_h_
|
||||
#define __wglext_h_
|
||||
|
||||
#ifndef APIENTRY
|
||||
#define APIENTRY
|
||||
#endif
|
||||
#ifndef APIENTRYP
|
||||
#define APIENTRYP APIENTRY *
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef void* (* GLADloadproc)(const char *name);
|
||||
|
||||
#ifndef GLAPI
|
||||
# if defined(GLAD_GLAPI_EXPORT)
|
||||
# if defined(_WIN32) || defined(__CYGWIN__)
|
||||
# if defined(GLAD_GLAPI_EXPORT_BUILD)
|
||||
# if defined(__GNUC__)
|
||||
# define GLAPI __attribute__ ((dllexport)) extern
|
||||
# else
|
||||
# define GLAPI __declspec(dllexport) extern
|
||||
# endif
|
||||
# else
|
||||
# if defined(__GNUC__)
|
||||
# define GLAPI __attribute__ ((dllimport)) extern
|
||||
# else
|
||||
# define GLAPI __declspec(dllimport) extern
|
||||
# endif
|
||||
# endif
|
||||
# elif defined(__GNUC__) && defined(GLAD_GLAPI_EXPORT_BUILD)
|
||||
# define GLAPI __attribute__ ((visibility ("default"))) extern
|
||||
# else
|
||||
# define GLAPI extern
|
||||
# endif
|
||||
# else
|
||||
# define GLAPI extern
|
||||
# endif
|
||||
#endif
|
||||
|
||||
GLAPI int gladLoadWGL(HDC hdc);
|
||||
|
||||
GLAPI int gladLoadWGLLoader(GLADloadproc, HDC hdc);
|
||||
|
||||
struct _GPU_DEVICE {
|
||||
DWORD cb;
|
||||
CHAR DeviceName[32];
|
||||
CHAR DeviceString[128];
|
||||
DWORD Flags;
|
||||
RECT rcVirtualScreen;
|
||||
};
|
||||
DECLARE_HANDLE(HPBUFFERARB);
|
||||
DECLARE_HANDLE(HPBUFFEREXT);
|
||||
DECLARE_HANDLE(HVIDEOOUTPUTDEVICENV);
|
||||
DECLARE_HANDLE(HPVIDEODEV);
|
||||
DECLARE_HANDLE(HPGPUNV);
|
||||
DECLARE_HANDLE(HGPUNV);
|
||||
DECLARE_HANDLE(HVIDEOINPUTDEVICENV);
|
||||
typedef struct _GPU_DEVICE GPU_DEVICE;
|
||||
typedef struct _GPU_DEVICE *PGPU_DEVICE;
|
||||
#define WGL_CONTEXT_DEBUG_BIT_ARB 0x00000001
|
||||
#define WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB 0x00000002
|
||||
#define WGL_CONTEXT_MAJOR_VERSION_ARB 0x2091
|
||||
#define WGL_CONTEXT_MINOR_VERSION_ARB 0x2092
|
||||
#define WGL_CONTEXT_LAYER_PLANE_ARB 0x2093
|
||||
#define WGL_CONTEXT_FLAGS_ARB 0x2094
|
||||
#define ERROR_INVALID_VERSION_ARB 0x2095
|
||||
#define WGL_CONTEXT_PROFILE_MASK_ARB 0x9126
|
||||
#define WGL_CONTEXT_CORE_PROFILE_BIT_ARB 0x00000001
|
||||
#define WGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB 0x00000002
|
||||
#define ERROR_INVALID_PROFILE_ARB 0x2096
|
||||
#ifndef WGL_ARB_create_context
|
||||
#define WGL_ARB_create_context 1
|
||||
GLAPI int GLAD_WGL_ARB_create_context;
|
||||
typedef HGLRC (APIENTRYP PFNWGLCREATECONTEXTATTRIBSARBPROC)(HDC hDC, HGLRC hShareContext, const int *attribList);
|
||||
GLAPI PFNWGLCREATECONTEXTATTRIBSARBPROC glad_wglCreateContextAttribsARB;
|
||||
#define wglCreateContextAttribsARB glad_wglCreateContextAttribsARB
|
||||
#endif
|
||||
#ifndef WGL_ARB_create_context_profile
|
||||
#define WGL_ARB_create_context_profile 1
|
||||
GLAPI int GLAD_WGL_ARB_create_context_profile;
|
||||
#endif
|
||||
#ifndef WGL_ARB_extensions_string
|
||||
#define WGL_ARB_extensions_string 1
|
||||
GLAPI int GLAD_WGL_ARB_extensions_string;
|
||||
typedef const char * (APIENTRYP PFNWGLGETEXTENSIONSSTRINGARBPROC)(HDC hdc);
|
||||
GLAPI PFNWGLGETEXTENSIONSSTRINGARBPROC glad_wglGetExtensionsStringARB;
|
||||
#define wglGetExtensionsStringARB glad_wglGetExtensionsStringARB
|
||||
#endif
|
||||
#ifndef WGL_EXT_extensions_string
|
||||
#define WGL_EXT_extensions_string 1
|
||||
GLAPI int GLAD_WGL_EXT_extensions_string;
|
||||
typedef const char * (APIENTRYP PFNWGLGETEXTENSIONSSTRINGEXTPROC)(void);
|
||||
GLAPI PFNWGLGETEXTENSIONSSTRINGEXTPROC glad_wglGetExtensionsStringEXT;
|
||||
#define wglGetExtensionsStringEXT glad_wglGetExtensionsStringEXT
|
||||
#endif
|
||||
#ifndef WGL_EXT_swap_control
|
||||
#define WGL_EXT_swap_control 1
|
||||
GLAPI int GLAD_WGL_EXT_swap_control;
|
||||
typedef BOOL (APIENTRYP PFNWGLSWAPINTERVALEXTPROC)(int interval);
|
||||
GLAPI PFNWGLSWAPINTERVALEXTPROC glad_wglSwapIntervalEXT;
|
||||
#define wglSwapIntervalEXT glad_wglSwapIntervalEXT
|
||||
typedef int (APIENTRYP PFNWGLGETSWAPINTERVALEXTPROC)(void);
|
||||
GLAPI PFNWGLGETSWAPINTERVALEXTPROC glad_wglGetSwapIntervalEXT;
|
||||
#define wglGetSwapIntervalEXT glad_wglGetSwapIntervalEXT
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
BIN
vendor/GLEW/bin/Win32/glew32.dll
vendored
BIN
vendor/GLEW/bin/Win32/glew32.dll
vendored
Binary file not shown.
BIN
vendor/GLEW/bin/x64/glew32.dll
vendored
BIN
vendor/GLEW/bin/x64/glew32.dll
vendored
Binary file not shown.
19367
vendor/GLEW/include/GL/glew.h
vendored
19367
vendor/GLEW/include/GL/glew.h
vendored
File diff suppressed because it is too large
Load diff
1771
vendor/GLEW/include/GL/glxew.h
vendored
1771
vendor/GLEW/include/GL/glxew.h
vendored
File diff suppressed because it is too large
Load diff
1452
vendor/GLEW/include/GL/wglew.h
vendored
1452
vendor/GLEW/include/GL/wglew.h
vendored
File diff suppressed because it is too large
Load diff
BIN
vendor/GLEW/lib/x64/glew32.lib
vendored
BIN
vendor/GLEW/lib/x64/glew32.lib
vendored
Binary file not shown.
BIN
vendor/GLEW/lib/x64/glew32s.lib
vendored
BIN
vendor/GLEW/lib/x64/glew32s.lib
vendored
Binary file not shown.
BIN
vendor/GLEW/lib/x86/glew32.lib
vendored
BIN
vendor/GLEW/lib/x86/glew32.lib
vendored
Binary file not shown.
BIN
vendor/GLEW/lib/x86/glew32s.lib
vendored
BIN
vendor/GLEW/lib/x86/glew32s.lib
vendored
Binary file not shown.
|
|
@ -37,9 +37,8 @@
|
|||
<ClInclude Include="include\Spectre\Graphics\BatchRenderer2D.h" />
|
||||
<ClInclude Include="include\Spectre\Graphics\DefaultRenderer2D.h" />
|
||||
<ClInclude Include="include\Spectre\Graphics\Font.h" />
|
||||
<ClInclude Include="include\Spectre\Graphics\GL\glew.h" />
|
||||
<ClInclude Include="include\Spectre\Graphics\GL\glxew.h" />
|
||||
<ClInclude Include="include\Spectre\Graphics\GL\wglew.h" />
|
||||
<ClInclude Include="include\Spectre\Graphics\GLLoader.h" />
|
||||
<ClInclude Include="include\Spectre\Graphics\GL\glad.h" />
|
||||
<ClInclude Include="include\Spectre\Graphics\Image.h" />
|
||||
<ClInclude Include="include\Spectre\Graphics\OpenGL.h" />
|
||||
<ClInclude Include="include\Spectre\Graphics\PixelFormat.h" />
|
||||
|
|
@ -84,6 +83,7 @@
|
|||
<ClInclude Include="source\Platform\PlatformDisplay.h" />
|
||||
<ClInclude Include="source\Platform\PlatformInput.h" />
|
||||
<ClInclude Include="source\Platform\PlatformMisc.h" />
|
||||
<ClInclude Include="source\Platform\Win32\glad_wgl.h" />
|
||||
<ClInclude Include="source\Platform\Win32\Win32Application.h" />
|
||||
<ClInclude Include="source\Platform\Win32\Win32Display.h" />
|
||||
<ClInclude Include="source\Platform\Win32\Win32GLContext.h" />
|
||||
|
|
@ -110,6 +110,7 @@
|
|||
<ClCompile Include="source\Graphics\Font\FreeTypeDriver.cpp" />
|
||||
<ClCompile Include="source\Graphics\Font\FreeTypeError.cpp" />
|
||||
<ClCompile Include="source\Graphics\GL\CheckError.cpp" />
|
||||
<ClCompile Include="source\Graphics\GL\glad.c" />
|
||||
<ClCompile Include="source\Graphics\Image.cpp" />
|
||||
<ClCompile Include="source\Graphics\ImageLoader.cpp" />
|
||||
<ClCompile Include="source\Graphics\Renderable2D.cpp" />
|
||||
|
|
@ -133,6 +134,7 @@
|
|||
<ClCompile Include="source\Math\Math.cpp" />
|
||||
<ClCompile Include="source\Math\Transform.cpp" />
|
||||
<ClCompile Include="source\Platform\PlatformDisplay.cpp" />
|
||||
<ClCompile Include="source\Platform\Win32\glad_wgl.c" />
|
||||
<ClCompile Include="source\Platform\Win32\Win32Application.cpp" />
|
||||
<ClCompile Include="source\Platform\Win32\Win32Display.cpp" />
|
||||
<ClCompile Include="source\Platform\Win32\Win32GLContext.cpp" />
|
||||
|
|
@ -206,7 +208,7 @@
|
|||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
</Link>
|
||||
<Lib>
|
||||
<AdditionalDependencies>glew32s.lib;freetype-d-s.lib</AdditionalDependencies>
|
||||
<AdditionalDependencies>freetype-d-s.lib</AdditionalDependencies>
|
||||
<LinkTimeCodeGeneration>false</LinkTimeCodeGeneration>
|
||||
</Lib>
|
||||
<ProjectReference>
|
||||
|
|
|
|||
|
|
@ -121,15 +121,6 @@
|
|||
<ClInclude Include="include\Spectre\Game\GameTime.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Spectre\Graphics\GL\glew.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Spectre\Graphics\GL\glxew.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Spectre\Graphics\GL\wglew.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Spectre\Graphics\BatchRenderer2D.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
|
|
@ -250,6 +241,15 @@
|
|||
<ClInclude Include="include\Spectre\Display\GLContextSettings.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Spectre\Graphics\GLLoader.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="source\Platform\Win32\glad_wgl.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="include\Spectre\Graphics\GL\glad.h">
|
||||
<Filter>Header Files</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="source\Core\String.cpp">
|
||||
|
|
@ -417,5 +417,11 @@
|
|||
<ClCompile Include="source\GraphicsOpenGL.cpp">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Platform\Win32\glad_wgl.c">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="source\Graphics\GL\glad.c">
|
||||
<Filter>Source Files</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
Loading…
Add table
Add a link
Reference in a new issue