Comments (11)
Out of curiosity, which platforms is glGetError slow on?
from remotery.
For example, extreme case is Native Client, where glGetError serializes GL client and server.
from remotery.
This sounds good but I'm in the middle of Mexico right now and can't pull until we have a more stable internet connection. I'll get this through next week.
from remotery.
OK, this isn't too much of an issue right now:
- On Windows,
glGetError
is linked if you can already callwglGetProcAddress
. - Native Client isn't hooked up to use OpenGL as its
rmtGetProcAddress
impl is empty. - It's a much bigger problem. On Windows you still need to static link for
wglGetProcAddress
. There's alsoglXGetProcAddressARB
andNSGLGetProcAddress
which I have no idea about.
The whole thing does need a bit of a cleanup. How do you get around the wglGetProcAddress
issue?
I'll open another issue for calls being slow as their complexities are very different.
from remotery.
glGetError can be loaded with GetProcAddress.
See how I do dynamic loading of GL in bgfx:
https://github.com/bkaradzic/bgfx/blob/master/src/glcontext_wgl.cpp#L15
https://github.com/bkaradzic/bgfx/blob/master/src/glcontext_wgl.cpp#L109
This loads GL 1.0 symbols:
https://github.com/bkaradzic/bgfx/blob/master/src/glcontext_wgl.cpp#L367
from remotery.
Btw, forgot to mention, the reason why I see this issue is because bgfx doesn't link with opengl32.lib (nor d3d9/11/etc.) at all. Everything is dynamically loaded.
from remotery.
Yep, I get that. My game uses multiple DLLs and I want to be able to issue GPU samples outside of the graphics DLLs without linking to the graphics libraries.
Thanks for your help.
from remotery.
Preliminary work on this 1f2c461
from remotery.
What's wrong with GL in one change list. :)
from remotery.
Only Linux left to fix now. Should be able to dlopen
libgl.so
by the looks of things: https://github.com/ApoorvaJ/Papaya/blob/3808e39b0f45d4ca4972621c847586e4060c042a/src/libs/gl_lite.h#L132
from remotery.
Fixed in c66d2e8
from remotery.
Related Issues (20)
- Remotery build error under windows10 HOT 1
- Apps targeting Android 10 cannot directly use ashmem (/dev/ashmem) HOT 2
- Sample window font in Firefox (macOS) is blurry HOT 9
- Shrink LFSR static data HOT 1
- Complie Error: `TIMERR_NOERROR` not found when complie under windows 11 HOT 1
- Metal broken HOT 13
- Assert when destroying global instance while sample tree isn't empty HOT 6
- Q: Possibility to use without memory mapping? HOT 6
- GetInt64 and GetUInt64 return float64 HOT 3
- Android build failing HOT 2
- Thread Sanitizer data race issues. HOT 1
- How to use in Sample? HOT 7
- Failure to load on Firefox when opening locally, GLSL files blocked due to MIME type
- MINGW-64 does not seem to define _M_AMD64 or _M_X64 HOT 1
- .NET bindings
- Crash on shutdown if rmt_DestroyGlobalInstance is called right after initialization without delay. HOT 2
- Dynamic samples not showing up the name HOT 1
- Duplicate function bodies with both D3D12 and Vulkan enabled HOT 1
- example: How to get `CPU load` for `current process` (app itself)?
- Q: Is it feasible to run on a single thread? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from remotery.