diff --git a/profiler/build/win32/Tracy.vcxproj b/profiler/build/win32/Tracy.vcxproj index a2ec9f12..3a811396 100644 --- a/profiler/build/win32/Tracy.vcxproj +++ b/profiler/build/win32/Tracy.vcxproj @@ -114,6 +114,7 @@ + @@ -165,6 +166,7 @@ + diff --git a/profiler/build/win32/Tracy.vcxproj.filters b/profiler/build/win32/Tracy.vcxproj.filters index 38617da3..ec971086 100644 --- a/profiler/build/win32/Tracy.vcxproj.filters +++ b/profiler/build/win32/Tracy.vcxproj.filters @@ -93,6 +93,9 @@ imgui + + server + @@ -257,6 +260,9 @@ src + + server + diff --git a/server/TracyTexture.cpp b/server/TracyTexture.cpp new file mode 100644 index 00000000..9743381b --- /dev/null +++ b/server/TracyTexture.cpp @@ -0,0 +1,31 @@ +#include + +#include "TracyTexture.hpp" + +namespace tracy +{ + +void* MakeTexture() +{ + GLuint tex; + glGenTextures( 1, &tex ); + glBindTexture( GL_TEXTURE_2D, tex ); + glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR ); + glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR ); + return (void*)tex; +} + +void FreeTexture( void* _tex ) +{ + auto tex = (GLuint)_tex; + glDeleteTextures( 1, &tex ); +} + +void UpdateTexture( void* _tex, const char* data, int w, int h ) +{ + auto tex = (GLuint)_tex; + glBindTexture( GL_TEXTURE_2D, tex ); + glTexImage2D( GL_TEXTURE_2D, 0, GL_RGBA, w, h, 0, GL_RGBA, GL_UNSIGNED_BYTE, data ); +} + +} diff --git a/server/TracyTexture.hpp b/server/TracyTexture.hpp new file mode 100644 index 00000000..87e03f04 --- /dev/null +++ b/server/TracyTexture.hpp @@ -0,0 +1,13 @@ +#ifndef __TRACYTEXTURE_HPP__ +#define __TRACYTEXTURE_HPP__ + +namespace tracy +{ + +void* MakeTexture(); +void FreeTexture( void* tex ); +void UpdateTexture( void* tex, const char* data, int w, int h ); + +} + +#endif