opengl, glut, freeglut, glfv, sdl, smfl, ...
opengl etc нужны, если у Вас есть математический объект, который Вы хотите отобразить в виде набора опенгл-ных объектов, и само отображение (например дискретизация оного) зависит от конкретно в данный момент заданны параметров.
Простой пример: Вы рисуете 3Д контурплот для объекта, заданного в виде ну скажем конечноразностной или кконечноэлементной аппроксимации. Но уровни контурплота и область отрисовки у вас задается пользователем (мышкой и клавишами он крутит его или приближает).
Тулс простой. Я в 1998 еще пользовал и тогда он уже выглядел хорошо обтесанным. С тех пор мало что в нем изменилось и такая стабильность очень радует - то есть много старых софтов 20-летней давности на раз идут и пользуют всю мощь современных графических ускорителей.
Где это нужно не в игрушках и не в сайнтифик-компьютинге - да везде. Можно картинки в текстуры засовывать и на раз после этого на основе нескольких картинок получать 3Д объект, который крутить-вертеть и радоваться.
> чем из перечисленного вы в таких случаях пользуетесь и почему
opengl, glut, freeglut - так как у меня больше математики и проще сделать на самом низком уровне, но задачи у всех разные, и в некоторых случаях более высокоуровневые решения кому-то могут быть удобнее.