Sign in to follow this  
Daivuk

OpenGL THE question : opengl or glut

Recommended Posts

Ok, I'm making ogl since a time, creating my ogl window, stuff, bla bla bla, directInput or WinAPI for inputs, etc. But does glut is better? I know its portable, but witch is faster? I dont think john carmack used glut for is QuakeIII engine based on opengl. lol But what about glut? Is it just for Education Purpose? Thanks

Share this post


Link to post
Share on other sites
well...i am a noob also...but i tried GLFW, GLUT, WGL...

i choosed GLUT...the frame per second count is the same in all when rendering nothing...

my 2 cents...

Share this post


Link to post
Share on other sites
For speed and flexibility, use the Win32 API and OpenGL. You won't get very far past basic demos with GLUT. It is only for educational use.

Would SDL be suitable for a commercial game, or would it always be preferable to use the API of the target OS?

Share this post


Link to post
Share on other sites
Quote:
Original post by iNsAn1tY
For speed and flexibility, use the Win32 API and OpenGL. You won't get very far past basic demos with GLUT. It is only for educational use.

Would SDL be suitable for a commercial game, or would it always be preferable to use the API of the target OS?

Sdl is fine. I know for the linux ports of alot of games they use sdl.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
Quote:
Original post by ManaStone
Quote:
Original post by ImperfectFreak
Use SDL!!!


SDL doesn't even allow you to position the window.

But your making a game. Games are usually fullscreen and if your not playing in full screen then it shouldnt matter because you can move your window. If you are making another type of app then yes you should use something else.

______________________________________________________________________________________
With the flesh of a cow.

Share this post


Link to post
Share on other sites
do Win32 and openGL, its what most of us use, its faster (by how much i dont know), but its always good to learn how to use Win32 anyways, and the basic windowing code for one window is extremely short and easy (although probably not so for a complete newbie to it, i remember i hadta have a reference with me at all times when i was writing my first window)

you could probably also use SDL, id reccomend SDL over GLUT just because some commercial games have used SDL, at least the linux port of UT used SDL, which is a good sign, and i think newer incarnations have used it to.

anywho, i vote SDL or pure win32

hope that helps
-Dan

Share this post


Link to post
Share on other sites
Quote:
Original post by Anonymous Poster
Quote:
Original post by ManaStone
Quote:
Original post by ImperfectFreak
Use SDL!!!


SDL doesn't even allow you to position the window.

But your making a game. Games are usually fullscreen and if your not playing in full screen then it shouldnt matter because you can move your window. If you are making another type of app then yes you should use something else.

______________________________________________________________________________________
With the flesh of a cow.


if it is a simple 2d shareware game you might want to use a window.

Share this post


Link to post
Share on other sites
none of them are faster than the others (doesnt even come close to factoring in the equation)
also
in sdl u can position the window with SDL_VIDEO_WINDOW_POS=X,Y

Share this post


Link to post
Share on other sites
I tend to agree with kuladus on win32. I would learn ogl with glut then look in to SDL. SDL was used in UT04, so I think it is good enough for comercial games.

Share this post


Link to post
Share on other sites
SDL would be a good choice. It is so simple a chimp could use it :)
The documentaion for SDL is also excellent. Other than that win32 and GLUT just plain blow.

Share this post


Link to post
Share on other sites
Whether you choose Win32 or SDL if go to the NeHe web page, you can find a ready-to-go template program to set up either environment.

Share this post


Link to post
Share on other sites
Quote:
Original post by Puzzler183
Just use SDL. If you write Windows specific code, you are defeating the purpose of using OpenGL.


Not necessarily. You could write different compiler paths, based on what OS you're compiling for. You have to do that to some extent anyway. It's only a bunch of #ifdefs.

Quote:

DirectX Graphics?


I'd like to see you get that working on *nix.

Anyway, SDL is good. I don't know what people are saying about it being slow, I haven't found that at all. Sure beats writing window creation code for every OS I want to port my engine to.

Share this post


Link to post
Share on other sites
If SDL is too heavyweight for you, you could always choose GLFW - it's lightweight and cross-platform. It'll handle your input (keys, mouse, joystick) and window management stuff. I used it for a while with no real problems.

Share this post


Link to post
Share on other sites
SDL is the best way to go...those who say it's too slow compared to win32 obviously haven't tried SDL themselves nor do they have proofs or numbers to show SDL is noticeably slower...

Share this post


Link to post
Share on other sites
You cannot say that SDL is not slower, it is inherrently slower because of its design, but it IS completely possible that the difference isnt noticeable.
-Dan

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this  

  • Partner Spotlight

  • Forum Statistics

    • Total Topics
      627642
    • Total Posts
      2978354
  • Similar Content

    • By xhcao
      Before using void glBindImageTexture(    GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format), does need to make sure that texture is completeness. 
    • By cebugdev
      hi guys, 
      are there any books, link online or any other resources that discusses on how to build special effects such as magic, lightning, etc. in OpenGL? i mean, yeah most of them are using particles but im looking for resources specifically on how to manipulate the particles to look like an effect that can be use for games,. i did fire particle before, and I want to learn how to do the other 'magic' as well.
      Like are there one book or link(cant find in google) that atleast featured how to make different particle effects in OpenGL (or DirectX)? If there is no one stop shop for it, maybe ill just look for some tips on how to make a particle engine that is flexible enough to enable me to design different effects/magic 
      let me know if you guys have recommendations.
      Thank you in advance!
    • By dud3
      How do we rotate the camera around x axis 360 degrees, without having the strange effect as in my video below? 
      Mine behaves exactly the same way spherical coordinates would, I'm using euler angles.
      Tried googling, but couldn't find a proper answer, guessing I don't know what exactly to google for, googled 'rotate 360 around x axis', got no proper answers.
       
      References:
      Code: https://pastebin.com/Hcshj3FQ
      The video shows the difference between blender and my rotation:
       
    • By Defend
      I've had a Google around for this but haven't yet found some solid advice. There is a lot of "it depends", but I'm not sure on what.
      My question is what's a good rule of thumb to follow when it comes to creating/using VBOs & VAOs? As in, when should I use multiple or when should I not? My understanding so far is that if I need a new VBO, then I need a new VAO. So when it comes to rendering multiple objects I can either:
      * make lots of VAO/VBO pairs and flip through them to render different objects, or
      * make one big VBO and jump around its memory to render different objects. 
      I also understand that if I need to render objects with different vertex attributes, then a new VAO is necessary in this case.
      If that "it depends" really is quite variable, what's best for a beginner with OpenGL, assuming that better approaches can be learnt later with better understanding?
       
    • By test opty
      Hello all,
       
      On my Windows 7 x64 machine I wrote the code below on VS 2017 and ran it.
      #include <glad/glad.h>  #include <GLFW/glfw3.h> #include <std_lib_facilities_4.h> using namespace std; void framebuffer_size_callback(GLFWwindow* window , int width, int height) {     glViewport(0, 0, width, height); } //****************************** void processInput(GLFWwindow* window) {     if (glfwGetKey(window, GLFW_KEY_ESCAPE) == GLFW_PRESS)         glfwSetWindowShouldClose(window, true); } //********************************* int main() {     glfwInit();     glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);     glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);     glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);     //glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE);     GLFWwindow* window = glfwCreateWindow(800, 600, "LearnOpenGL", nullptr, nullptr);     if (window == nullptr)     {         cout << "Failed to create GLFW window" << endl;         glfwTerminate();         return -1;     }     glfwMakeContextCurrent(window);     if (!gladLoadGLLoader((GLADloadproc)glfwGetProcAddress))     {         cout << "Failed to initialize GLAD" << endl;         return -1;     }     glViewport(0, 0, 600, 480);     glfwSetFramebufferSizeCallback(window, framebuffer_size_callback);     glClearColor(0.2f, 0.3f, 0.3f, 1.0f);     glClear(GL_COLOR_BUFFER_BIT);     while (!glfwWindowShouldClose(window))     {         processInput(window);         glfwSwapBuffers(window);         glfwPollEvents();     }     glfwTerminate();     return 0; }  
      The result should be a fixed dark green-blueish color as the end of here. But the color of my window turns from black to green-blueish repeatedly in high speed! I thought it might be a problem with my Graphics card driver but I've updated it and it's: NVIDIA GeForce GTX 750 Ti.
      What is the problem and how to solve it please?
  • Popular Now