Jump to content
  • Advertisement
Sign in to follow this  

OpenGL 2D Interface mixed with 3D graphics

This topic is 699 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I am trying to make a generic 3D modeling application using SDL and OpenGL because none of the existing cross platform modeling applications are intuitive enough to actually be used. I like the usability of the simple editor that I made for Windows but now only my grandparents use Windows as the main operating system. Therefore I should make a portable and more advanced version with polygon meshes, catmull-clark subdivision, boolean operations, texture baking and faster normal generation using position indices.

The application should be drawn using OpenGL but as many others have noticed on forum threads, OpenGL does not specify how drawing is made with pixel precision so it will be way off depending on what platform is used. I have not yet seen a direct solution to the problem so I wonder how to go around the buggy parts of OpenGL.

Current options:
* Use the CPU for all rendering including 3D geometry.
* Use the CPU only for interface and make some kind of upload directly to the default framebuffer without rendering or getting platform specific color encoding.
* Mix OpenGL with SDL's 2D framework if possible.
* Render to a buffer using OpenGL and then blit it again on the CPU with platform specific color encoding.


Not going to happen:
* I do not use shader extensions before I get Spir-V compatible drivers working on Ubuntu since I know from experience that 50% of the shaders will fail to compile on rare OpenGL drivers and the extension libraries are a deprecated mess that I would not touch with a long stick. Any custom shaders should be an optional feature to preview how things would look in a certain game.
* I do not use any external GUI framework since they have too many bugs and I should make all components from scratch for full control over the user experience.

Share this post

Link to post
Share on other sites
Sign in to follow this  

  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!