Sisyphus says: tweaked comments about not using old-style OpenGL examples (#1459, #1394 etc.)

This commit is contained in:
omar 2017-11-24 09:27:45 +01:00
parent 6bd3b45b34
commit ef5dd30625
6 changed files with 27 additions and 18 deletions

View File

@ -48,7 +48,7 @@ leaving you with no option but sadness/anger (Intel GPU drivers were reported as
opengl2_example/ opengl2_example/
**DO NOT USE THIS CODE IF YOUR CODE/ENGINE IS USING MODERN OPENGL (SHADERS, VBO, VAO, etc.)** **DO NOT USE THIS CODE IF YOUR CODE/ENGINE IS USING MODERN OPENGL (SHADERS, VBO, VAO, etc.)**
**Prefer using the code in the opengl3_example/ folder** **Prefer using the code in the opengl3_example/ folder**
GLFW + OpenGL example (legacy fixed graphic pipeline). GLFW + OpenGL example (legacy, fixed pipeline).
This code is mostly provided as a reference to learn how ImGui integration works, because it is shorter to read. This code is mostly provided as a reference to learn how ImGui integration works, because it is shorter to read.
If your code is using GL3+ context or any semi modern OpenGL calls, using this is likely to make everything more If your code is using GL3+ context or any semi modern OpenGL calls, using this is likely to make everything more
complicated, will require your code to reset every single OpenGL attributes to their initial state, and might complicated, will require your code to reset every single OpenGL attributes to their initial state, and might
@ -57,7 +57,7 @@ opengl2_example/
opengl3_example/ opengl3_example/
GLFW + OpenGL example (programmable pipeline, binding modern functions with GL3W). GLFW + OpenGL example (programmable pipeline, binding modern functions with GL3W).
This uses more modern OpenGL calls and custom shaders. This uses more modern OpenGL calls and custom shaders.
Prefer using that if you are using modern OpenGL3/4 in your application. Prefer using that if you are using modern OpenGL in your application (anything with shaders, vbo, vao, etc.).
directx9_example/ directx9_example/
DirectX9 example, Windows only. DirectX9 example, Windows only.
@ -76,15 +76,18 @@ apple_example/
Synergy keyboard integration is rather hacky. Synergy keyboard integration is rather hacky.
sdl_opengl2_example/ sdl_opengl2_example/
*DO NOT USE THIS CODE IF YOUR CODE/ENGINE IS USING MODERN OPENGL* **DO NOT USE THIS CODE IF YOUR CODE/ENGINE IS USING MODERN OPENGL (SHADERS, VBO, VAO, etc.)**
SDL2 + OpenGL example (old fixed pipeline). **Prefer using the code in the sdl_opengl3_example/ folder**
This is mostly provided as a reference to learn how ImGui integration works, because it is easier to read. SDL2 + OpenGL example (legacy, fixed pipeline).
If your code is using GL3+ context or any semi modern OpenGL calls, using this is likely to make everything This code is mostly provided as a reference to learn how ImGui integration works, because it is shorter to read.
more complicated, will require your code to reset every single OpenGL attributes to their initial state, If your code is using GL3+ context or any semi modern OpenGL calls, using this is likely to make everything more
and might confuse your GPU driver. Prefer using sdl_opengl3_example. complicated, will require your code to reset every single OpenGL attributes to their initial state, and might
confuse your GPU driver.
sdl_opengl3_example/ sdl_opengl3_example/
SDL2 + OpenGL3 example. SDL2 + OpenGL3 example.
This uses more modern OpenGL calls and custom shaders.
Prefer using that if you are using modern OpenGL in your application (anything with shaders, vbo, vao, etc.).
allegro5_example/ allegro5_example/
Allegro 5 example. Allegro 5 example.

View File

@ -1,4 +1,4 @@
// ImGui GLFW binding with OpenGL (legacy fixed pipeline) // ImGui GLFW binding with OpenGL (legacy, fixed pipeline)
// In this binding, ImTextureID is used to store an OpenGL 'GLuint' texture identifier. Read the FAQ about ImTextureID in imgui.cpp. // In this binding, ImTextureID is used to store an OpenGL 'GLuint' texture identifier. Read the FAQ about ImTextureID in imgui.cpp.
// (GLFW is a cross-platform general purpose library for handling windows, inputs, OpenGL/Vulkan graphics context creation, etc.) // (GLFW is a cross-platform general purpose library for handling windows, inputs, OpenGL/Vulkan graphics context creation, etc.)

View File

@ -1,4 +1,4 @@
// ImGui GLFW binding with OpenGL (legacy fixed pipeline) // ImGui GLFW binding with OpenGL (legacy, fixed pipeline)
// In this binding, ImTextureID is used to store an OpenGL 'GLuint' texture identifier. Read the FAQ about ImTextureID in imgui.cpp. // In this binding, ImTextureID is used to store an OpenGL 'GLuint' texture identifier. Read the FAQ about ImTextureID in imgui.cpp.
// (GLFW is a cross-platform general purpose library for handling windows, inputs, OpenGL/Vulkan graphics context creation, etc.) // (GLFW is a cross-platform general purpose library for handling windows, inputs, OpenGL/Vulkan graphics context creation, etc.)

View File

@ -1,12 +1,13 @@
// ImGui SDL2 binding with OpenGL // ImGui SDL2 binding with OpenGL (legacy, fixed pipeline)
// In this binding, ImTextureID is used to store an OpenGL 'GLuint' texture identifier. Read the FAQ about ImTextureID in imgui.cpp. // In this binding, ImTextureID is used to store an OpenGL 'GLuint' texture identifier. Read the FAQ about ImTextureID in imgui.cpp.
// (SDL is a cross-platform general purpose library for handling windows, inputs, OpenGL/Vulkan graphics context creation, etc.) // (SDL is a cross-platform general purpose library for handling windows, inputs, OpenGL/Vulkan graphics context creation, etc.)
// *DO NOT USE THIS CODE IF YOUR CODE/ENGINE IS USING MODERN OPENGL* // **DO NOT USE THIS CODE IF YOUR CODE/ENGINE IS USING MODERN OPENGL (SHADERS, VBO, VAO, etc.)**
// This is mostly provided as a reference to learn how ImGui integration works, because it is easier to read. // **Prefer using the code in the sdl_opengl3_example/ folder**
// If your code is using GL3+ context or any semi modern OpenGL calls, using this is likely to make everything // This code is mostly provided as a reference to learn how ImGui integration works, because it is shorter to read.
// more complicated, will require your code to reset every single OpenGL attributes to their initial state, // If your code is using GL3+ context or any semi modern OpenGL calls, using this is likely to make everything more
// and might confuse your GPU driver. Prefer using sdl_opengl3_example. // complicated, will require your code to reset every single OpenGL attributes to their initial state, and might
// confuse your GPU driver.
// The GL2 code is unable to reset attributes or even call e.g. "glUseProgram(0)" because they don't exist in that API. // The GL2 code is unable to reset attributes or even call e.g. "glUseProgram(0)" because they don't exist in that API.
// You can copy and use unmodified imgui_impl_* files in your project. See main.cpp for an example of using this. // You can copy and use unmodified imgui_impl_* files in your project. See main.cpp for an example of using this.

View File

@ -1,7 +1,11 @@
// ImGui SDL2 binding with OpenGL // ImGui SDL2 binding with OpenGL (legacy, fixed pipeline)
// In this binding, ImTextureID is used to store an OpenGL 'GLuint' texture identifier. Read the FAQ about ImTextureID in imgui.cpp. // In this binding, ImTextureID is used to store an OpenGL 'GLuint' texture identifier. Read the FAQ about ImTextureID in imgui.cpp.
// (SDL is a cross-platform general purpose library for handling windows, inputs, OpenGL/Vulkan graphics context creation, etc.) // (SDL is a cross-platform general purpose library for handling windows, inputs, OpenGL/Vulkan graphics context creation, etc.)
// **DO NOT USE THIS CODE IF YOUR CODE/ENGINE IS USING MODERN OPENGL (SHADERS, VBO, VAO, etc.)**
// **Prefer using the code in the sdl_opengl3_example/ folder**
// See imgui_impl_sdl.cpp for details.
// You can copy and use unmodified imgui_impl_* files in your project. See main.cpp for an example of using this. // You can copy and use unmodified imgui_impl_* files in your project. See main.cpp for an example of using this.
// If you use this binding you'll need to call 4 functions: ImGui_ImplXXXX_Init(), ImGui_ImplXXXX_NewFrame(), ImGui::Render() and ImGui_ImplXXXX_Shutdown(). // If you use this binding you'll need to call 4 functions: ImGui_ImplXXXX_Init(), ImGui_ImplXXXX_NewFrame(), ImGui::Render() and ImGui_ImplXXXX_Shutdown().
// If you are new to ImGui, see examples/README.txt and documentation at the top of imgui.cpp. // If you are new to ImGui, see examples/README.txt and documentation at the top of imgui.cpp.

View File

@ -2,7 +2,8 @@
// If you are new to ImGui, see examples/README.txt and documentation at the top of imgui.cpp. // If you are new to ImGui, see examples/README.txt and documentation at the top of imgui.cpp.
// (SDL is a cross-platform general purpose library for handling windows, inputs, OpenGL/Vulkan graphics context creation, etc.) // (SDL is a cross-platform general purpose library for handling windows, inputs, OpenGL/Vulkan graphics context creation, etc.)
// *DO NOT USE THIS CODE IF YOUR CODE/ENGINE IS USING MODERN OPENGL* // **DO NOT USE THIS CODE IF YOUR CODE/ENGINE IS USING MODERN OPENGL (SHADERS, VBO, VAO, etc.)**
// **Prefer using the code in the sdl_opengl3_example/ folder**
// See imgui_impl_sdl.cpp for details. // See imgui_impl_sdl.cpp for details.
#include <imgui.h> #include <imgui.h>