add QueryPerformanceCounter debug code
This commit is contained in:
parent
038300ef2b
commit
203cee4d01
4 changed files with 37 additions and 7 deletions
20
src/debug.c
20
src/debug.c
|
@ -2,6 +2,26 @@
|
|||
#include <windows.h>
|
||||
#include <stdio.h>
|
||||
|
||||
|
||||
static LONGLONG CounterStartTime = 0;
|
||||
static double CounterFreq = 0.0;
|
||||
|
||||
void CounterStart()
|
||||
{
|
||||
LARGE_INTEGER li;
|
||||
QueryPerformanceFrequency(&li);
|
||||
CounterFreq = (double)(li.QuadPart) / 1000.0;
|
||||
QueryPerformanceCounter(&li);
|
||||
CounterStartTime = li.QuadPart;
|
||||
}
|
||||
|
||||
double CounterStop()
|
||||
{
|
||||
LARGE_INTEGER li;
|
||||
QueryPerformanceCounter(&li);
|
||||
return (double)(li.QuadPart - CounterStartTime) / CounterFreq;
|
||||
}
|
||||
|
||||
void DebugPrint(const char *format, ...)
|
||||
{
|
||||
va_list args;
|
||||
|
|
14
src/opengl.c
14
src/opengl.c
|
@ -36,17 +36,18 @@ PFNGLDISABLEVERTEXATTRIBARRAYPROC glDisableVertexAttribArray = NULL;
|
|||
PFNGLBINDATTRIBLOCATIONPROC glBindAttribLocation = NULL;
|
||||
PFNGLGETACTIVEUNIFORMPROC glGetActiveUniform = NULL;
|
||||
|
||||
// Shader
|
||||
PFNGLCREATESHADERPROC glCreateShader = NULL;
|
||||
PFNGLDELETESHADERPROC glDeleteShader = NULL;
|
||||
PFNGLSHADERSOURCEPROC glShaderSource = NULL;
|
||||
PFNGLCOMPILESHADERPROC glCompileShader = NULL;
|
||||
PFNGLGETSHADERIVPROC glGetShaderiv = NULL;
|
||||
|
||||
// VBO
|
||||
PFNGLGENBUFFERSPROC glGenBuffers = NULL;
|
||||
PFNGLBINDBUFFERPROC glBindBuffer = NULL;
|
||||
PFNGLBUFFERDATAPROC glBufferData = NULL;
|
||||
PFNGLMAPBUFFERPROC glMapBuffer = NULL;
|
||||
PFNGLUNMAPBUFFERPROC glUnmapBuffer = NULL;
|
||||
PFNGLBUFFERSUBDATAPROC glBufferSubData = NULL;
|
||||
PFNGLVERTEXATTRIBPOINTERPROC glVertexAttribPointer = NULL;
|
||||
PFNGLDELETEBUFFERSPROC glDeleteBuffers = NULL;
|
||||
PFNGLGENVERTEXARRAYSPROC glGenVertexArrays = NULL;
|
||||
|
@ -64,6 +65,8 @@ PFNGLDELETEFRAMEBUFFERSPROC glDeleteFramebuffers = NULL;
|
|||
|
||||
PFNWGLSWAPINTERVALEXT wglSwapIntervalEXT = NULL;
|
||||
|
||||
PFNGLTEXBUFFERPROC glTexBuffer = NULL;
|
||||
|
||||
void OpenGL_Init()
|
||||
{
|
||||
// Program
|
||||
|
@ -97,17 +100,18 @@ void OpenGL_Init()
|
|||
glEnableVertexAttribArray = (PFNGLENABLEVERTEXATTRIBARRAYPROC)wglGetProcAddress("glEnableVertexAttribArray");
|
||||
glBindAttribLocation = (PFNGLBINDATTRIBLOCATIONPROC)wglGetProcAddress("glBindAttribLocation");
|
||||
|
||||
// Shader
|
||||
glCreateShader = (PFNGLCREATESHADERPROC)wglGetProcAddress("glCreateShader");
|
||||
glDeleteShader = (PFNGLDELETESHADERPROC)wglGetProcAddress("glDeleteShader");
|
||||
glShaderSource = (PFNGLSHADERSOURCEPROC)wglGetProcAddress("glShaderSource");
|
||||
glCompileShader = (PFNGLCOMPILESHADERPROC)wglGetProcAddress("glCompileShader");
|
||||
glGetShaderiv = (PFNGLGETSHADERIVPROC)wglGetProcAddress("glGetShaderiv");
|
||||
|
||||
// VBO
|
||||
glGenBuffers = (PFNGLGENBUFFERSPROC)wglGetProcAddress("glGenBuffers");
|
||||
glBindBuffer = (PFNGLBINDBUFFERPROC)wglGetProcAddress("glBindBuffer");
|
||||
glBufferData = (PFNGLBUFFERDATAPROC)wglGetProcAddress("glBufferData");
|
||||
glMapBuffer = (PFNGLMAPBUFFERPROC)wglGetProcAddress("glMapBuffer");
|
||||
glUnmapBuffer = (PFNGLUNMAPBUFFERPROC)wglGetProcAddress("glUnmapBuffer");
|
||||
glBufferSubData = (PFNGLBUFFERSUBDATAPROC)wglGetProcAddress("glBufferSubData");
|
||||
glVertexAttribPointer = (PFNGLVERTEXATTRIBPOINTERPROC)wglGetProcAddress("glVertexAttribPointer");
|
||||
glDeleteBuffers = (PFNGLDELETEBUFFERSPROC)wglGetProcAddress("glDeleteBuffers");
|
||||
glGenVertexArrays = (PFNGLGENVERTEXARRAYSPROC)wglGetProcAddress("glGenVertexArrays");
|
||||
|
@ -124,6 +128,8 @@ void OpenGL_Init()
|
|||
glDeleteFramebuffers = (PFNGLDELETEFRAMEBUFFERSPROC)wglGetProcAddress("glDeleteFramebuffers");
|
||||
|
||||
wglSwapIntervalEXT = (PFNWGLSWAPINTERVALEXT)wglGetProcAddress("wglSwapIntervalEXT");
|
||||
|
||||
glTexBuffer = (PFNGLTEXBUFFERPROC)wglGetProcAddress("glTexBuffer");
|
||||
}
|
||||
|
||||
BOOL OpenGL_ExtExists(char *ext)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue