Hello, all. I hope I am not cross posting or double posting here. I searched the forums and didn’t find anything relevant to my question, although I am sure it was asked before. I may not be using the right words. I am using OpenGL 3.3 I believe with Visual Studio 2017 and C++ with GLFW. I have done the first several tutorials from the OpenGL site as ell as the GLFW site, but have not come across any tutorials or literature for creating multiple panels in a single window. I am wanting to make panels much like Blender or other 3D modeling programs.
There is no such thing as a “Panel” in OpenGL. OpenGL is a low level rendering API. All (well, most) you can do is draw primitive shapes. There isnt even any support for rendering text.
It sounds to me like OpenGL is not really the right choice for what you want to do. Perhaps you should look for a higher level library which allows you to build GUI’s with. Perhaps Qt. Building a GUI from scratch with OpenGL is an enormous task which may take years to do.
In older versions of OpenGL, I used glViewPort and glScissor to divide a Window in ‘panels’, where a different scene was drawn in each panel. Don’t know if these still apply to modern GL?
Sorry for the late reply, important family medical issues. I checked out this QT and I can’t afford 300 bucks a month on a personal project. I am wanting to code a project that creates a .obj file of a 3d model for import into a 3d modeling suite, but I wanted to give the user a preview of the created model as well as a graphical means to make changes before export. I can handle pretty much all the coding necessary for the .obj creation and the procedures needed to make the models and any algorithms for modification and randomization, just have zero clue on how to let the user see the model and take in their input from a visual form. I have tried designing a console version, but without a visual, it means leaving out all the modification capabilities and forcing the user to export and leave the program to import into a 3d suite to see the model and by then any wanted changes have to be done in that suite which will not work the way I intended that my program would.
Have a look here.
You can use libraries like dear imgui or nanoVG for create multiple windows inside main rendering window and render your content to texture attached to frame buffer and attach this image to different windows created in dear imgui.
If you want to do it in plane openGL you could create multiple viewports and render to different viewports activating one viewport at time.