Results 1 to 6 of 6

Thread: Starting out with OpenGL

  1. #1
    Junior Member Newbie
    Join Date
    Dec 2007
    Posts
    5

    Starting out with OpenGL

    I'm starting to learn OpenGL with the idea of making games. But getting to that point requires patience, time and practice.

    My aim is to learn while also being able to hit as many platforms as possible since I usually work under Windows XP, but I'm considering to jump off to linux(Kubuntu) as some of my friends have done.

    I have some knowledge of C++ and Java. Should I take one over the other for learning or developing? As far as I know, C++ performace is higher that Java, but is that performace hit really noticeable with today's computers? Which one would you recomend for learning and for real development?

    A drawback I see with C++ is portability... I know there are many multiplatform libraries for C++ to make the code behave equaly (or with very little changes) on a wide range of platform but they don't come bundled with the language, you have to get them and compile them on your own.

    With the release of OpenGL3.0, should I bother learning the old stuff from OpenGL 1.0-2.1? OpenGL3.0 is supposed to deprecate most, if not all, of the fixed pipeline? Is it worth investing time on learning it? Where should I start? Is there any site I can visit for OpenGL3.0 specific learning or an overall good start point?

    Now that I've asked about multiplatform and OpenGL3.0, I know that exist windowing abstraction libraries (SDL, GLUT, GLUX, GLFW, etc) just for that porpuse... Anyone know if any of those libraries support OpenGL3.0 already? I know that LWJGL for Java have added OpenGL3.0 support already.

    Any other starting tips or help is welcome. Thanks for any help you can offer.

  2. #2
    Senior Member OpenGL Pro Zengar's Avatar
    Join Date
    Sep 2001
    Location
    Germany
    Posts
    1,931

    Re: Starting out with OpenGL

    Quote Originally Posted by Akinos
    I have some knowledge of C++ and Java. Should I take one over the other for learning or developing? As far as I know, C++ performace is higher that Java, but is that performace hit really noticeable with today's computers? Which one would you recomend for learning and for real development?
    It depends on the applications you are going to develop. For learning (or prototyping), I would recommend a high-level language. Java can be easy to deploy and the performance is good enough for most tasks. Take C++ if you know it well or if you absolutely need high performance. As for me, if I were to write games (and this would be relatively simple games), I would take Python and write performance critical parts in C or Pyrex.

    Quote Originally Posted by Akinos
    A drawback I see with C++ is portability... I know there are many multiplatform libraries for C++ to make the code behave equaly (or with very little changes) on a wide range of platform but they don't come bundled with the language, you have to get them and compile them on your own.
    You can always deploy the libraries along with the application...


    Quote Originally Posted by Akinos
    With the release of OpenGL3.0, should I bother learning the old stuff from OpenGL 1.0-2.1? OpenGL3.0 is supposed to deprecate most, if not all, of the fixed pipeline? Is it worth investing time on learning it? Where should I start? Is there any site I can visit for OpenGL3.0 specific learning or an overall good start point?
    Yes and no. GL3.0 still builds on the same model as GL2.0. Anyway, you shouldn't bother with the fixed pipeline, but start with shaders right away... And you won't find any mature GL3.0 tutorials due tot he fact that first driver that supports it was released this week...

    Quote Originally Posted by Akinos
    Now that I've asked about multiplatform and OpenGL3.0, I know that exist windowing abstraction libraries (SDL, GLUT, GLUX, GLFW, etc) just for that porpuse... Anyone know if any of those libraries support OpenGL3.0 already? I know that LWJGL for Java have added OpenGL3.0 support already.
    I know of no windowing toolkit which would use the new context creation function introduced in GL3.0...

  3. #3
    Junior Member Newbie
    Join Date
    Sep 2008
    Location
    Slovenija
    Posts
    15

    Re: Starting out with OpenGL

    Quote Originally Posted by Akinos
    I have some knowledge of C++ and Java. Should I take one over the other for learning or developing? As far as I know, C++ performace is higher that Java, but is that performace hit really noticeable with today's computers? Which one would you recomend for learning and for real development?
    Imo you will be in short- to mid-term more productive with Java, so if that's your main motive go Java. Otherwise you will probably learn a lot more about programming with C++, which is applicable to every programming language in existence, although it has a steeper learning curve.
    My suggestion would be to learn both, possibly Java after C++.

    About real development, every language you can use to efficiently solve problems will work. Performance hit is not really connected with the programming language, rather with the programmer badly messing up.

    Quote Originally Posted by Akinos
    A drawback I see with C++ is portability... I know there are many multiplatform libraries for C++ to make the code behave equaly (or with very little changes) on a wide range of platform but they don't come bundled with the language, you have to get them and compile them on your own.
    You can always write nonportable code in any language. Same with C++, you can grab portable libraries and write cross-platform code or stick to platform specific libraries. Note that you can also use precompiled static or shared libraries so there's no need to compile them yourself if you don't want to.

  4. #4
    Junior Member Newbie
    Join Date
    Jun 2008
    Posts
    3

    Re: Starting out with OpenGL

    Quote Originally Posted by Akinos
    My aim is to learn while also being able to hit as many platforms as possible since I usually work under Windows XP, but I'm considering to jump off to linux(Kubuntu) as some of my friends have done.
    That's good. Now you will able to quickly download & install required libraries (Mesa, Free glut etc.) and get started.

    Quote Originally Posted by Akinos
    I have some knowledge of C++ and Java. Should I take one over the other for learning or developing? As far as I know, C++ performace is higher that Java, but is that performace hit really noticeable with today's computers? Which one would you recomend for learning and for real development?
    Many OpenGL demos/sample programs on internet are written in C and C++. For example mesa demos available on opengl.org

    Not to mention, many books (like Computer Graphics using OpenGL by Hill) use C and C++. So for learning purpose, C and C++ is a good choice.

  5. #5
    Junior Member Newbie
    Join Date
    Dec 2007
    Posts
    5

    Re: Starting out with OpenGL

    Thanks for the replies. Although it's double work, I'll try to work with C++ and Java at the same time, so I can improve my skills with both while learning OpenGL.

    I've been able to lay my hands on a few books, Begining OpenGL Game Programming, More OpenGL Game Programming and OpenGL Superbible. As far as I know, the first one and half of the supuerbible only covers the fixed pipeline. The second one and the second half of the superbible cover shaders. Are they any good? Should I dump them in favor of the "Orange Book"?

  6. #6
    Senior Member OpenGL Pro
    Join Date
    Sep 2004
    Location
    Prombaatu
    Posts
    1,386

    Re: Starting out with OpenGL

    NetBeans has a gem of a JOGL plugin I've been playing with. Lots of samples with good documentation, including all redbook demos - nice little GLSL editor with syntax lighter to boot...

    P.S. More OpenGL Game Programming comes highly recommended, as do the others.


Similar Threads

  1. Starting OpenGL
    By Tomyfr in forum OpenGL: Basic Coding
    Replies: 6
    Last Post: 09-24-2017, 04:39 AM
  2. Starting out with OpenGL 3/4
    By imported_JoshKlint in forum OpenGL: Basic Coding
    Replies: 9
    Last Post: 09-06-2010, 08:24 AM
  3. Starting OpenGL
    By in forum OpenGL: Basic Coding
    Replies: 1
    Last Post: 11-29-2004, 08:32 AM
  4. OpenGL Starting !
    By in forum OpenGL: Basic Coding
    Replies: 1
    Last Post: 08-31-2002, 09:22 AM
  5. Starting with OpenGl
    By larry2001 in forum OpenGL: macOS
    Replies: 1
    Last Post: 11-07-2000, 11:44 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Proudly hosted by Digital Ocean