I am learning OpenGL API bit by bit and also develop my own C++ framework library for effectively using them. Recently came across Blender software which is used for graphics creation and is in turn written in OpenGL itself.

For my part time hobby of graphics learning, I want to just create small-small movie or video segments; e.g. related to construction engineering, epic stories and so on. There may be very minimal to nil mouse-keyboard interaction for those videos, unlike video games which are highly interactive.

I was wondering if learning OpenGL from scratch is worth for it or should I invest my time in learning Blender software? There are quite a few good movie examples are created using Blender and are shown in its website.
Other such opensource cross platform alternatives are also welcome, which can serve my aforementioned purpose.

  • @All, Will appreciate if anyone can describe in detail that where to draw the line between available tools (like Blender and others) and the APIs like OpenGL/DirectX. This can be a good FAQ for the people who don't have real direction in Graphics for where to start and what to learn. – iammilind Nov 18 '12 at 12:23
  • If instead of learning "graphics", if instead you were learning "drawing", then your comparison would be similar to "making paper vs painting". Do you want to learn the mechanics of taking data and making it appear on the screen, or do you want to learn how to model, sculpt, and paint things. – whatsisname May 5 '15 at 20:31
  • You can learn OpenGL examples from a site, Shaderbox. – Rita Geraghty Feb 17 at 13:24
  • Warning: Blender has got quite a steep learning curve. For movie making, there are alternatives like Hitfilm Express which is free lite, plentiful for your needs. – Rita Geraghty Feb 17 at 13:28
  • If you want to create graphics like buttons & icons, consider Inkscape, Gimp or Krita. All these are free open-source softwares. For vector graphics, my favourite is Inkscape for its bezier and b-spline, interpolation tools, filters, etc. For raster graphics, For animation, it is Krita and it is compatible with Inkscape, as it recognises Inkscape's filters, path effects, SVG files. Gimp has loads of filters. When working back and forth between those softwares, use ORA format for exports & imports. – Rita Geraghty Feb 17 at 13:39

If you're making animations and movies, then you'll want to use Blender and other software for rendering them. Thats what they are specifically designed for.

Software like Blender would use OpenGL in its own code to render its graphics. So you wouldnt need to deal with OpenGL yourself.

  • Does it mean that OpenGL should be used only for the graphics were the keyboard-mouse interaction is required? So most of the animations should be done with Blender like software only? It will be quite helpful if you can detail your answer which draws the line where to use OpenGL and where to use Blender. – iammilind Nov 18 '12 at 7:41
  • 1
    @iammilind: in general for most use cases you should not write OpenGL code at all. Even for interaction you will be better of with scripting Blenders game engine with python. Or use another game engine like Ogre or whatever. For movies there are more tools available too, like Houdini or 3d Max. Take your time to study those tools and what they can do for you. – thorsten müller Nov 18 '12 at 10:52
  • @thorstenmüller, thanks for the pointer. Please see the comment to my post. – iammilind Nov 18 '12 at 12:24
  • 2
    @iammilind you'd use OpenGL if you were writing software that needed to render 3d graphics. That is, if the end result of what you ware trying to make is software, then you might use OpenGL. If what you are trying to make are animations and movies, use software thats designed to let you create animations and movies. – GrandmasterB Nov 19 '12 at 4:37

Not the answer you're looking for? Browse other questions tagged or ask your own question.