什么是标准的OpenGL工具包?

什么是标准的OpenGL工具包?,opengl,glut,toolkit,Opengl,Glut,Toolkit,我只是想了解OpenGL,我可以用它来构建,所以我所寻找的只是一些基本的东西来构建windows等。我在阅读教程时注意到的一点是,很多信息似乎已经过时了,例如很多教程(其中许多是多年前编写的)指的是使用GLUT,但GLUT已经超过10年没有更新了——在计算机时代已经是亿万年了。现在人们用什么?我知道freeglut是存在的,但是关于它没有太多的信息-如何设置它,等等。。。大多数人做什么?启动并运行简单窗口系统的最简单方法是什么,这样我就可以开始使用OpenGL了?您应该首先了解传统OpenGL(

我只是想了解OpenGL,我可以用它来构建,所以我所寻找的只是一些基本的东西来构建windows等。我在阅读教程时注意到的一点是,很多信息似乎已经过时了,例如很多教程(其中许多是多年前编写的)指的是使用GLUT,但GLUT已经超过10年没有更新了——在计算机时代已经是亿万年了。现在人们用什么?我知道freeglut是存在的,但是关于它没有太多的信息-如何设置它,等等。。。大多数人做什么?启动并运行简单窗口系统的最简单方法是什么,这样我就可以开始使用OpenGL了?

您应该首先了解传统OpenGL(固定函数管道)和现代OpenGL(完全由着色器驱动管道)之间的区别。大多数在线教程教授传统的OpenGL,因为它很容易入门,而且已经存在很长时间了。Legacy仍然可以正常工作,但您可能希望进入现代OpenGL(至少是3.0版)。现代OpenGL更干净、更灵活,但也更难入门,因此教程更少。它需要用户进行更多的设置和库,并且没有“一种方法”来做事情,因此很难围绕它构建一个快速的教程

学习现代OpenGL的一些好资源有:

  • -Stack overflow用户编写的精彩课程
  • -OpenGL ES 2.0编程指南-OpenGL ES 2.0与OpenGL 3.0直接兼容,因此非常适合入门。即使你不想买这本书,你也可以下载优秀的示例代码
  • -迅捷教程-优秀的OpenGL 4.0和WebGL教程
对于您的主要问题,我知道有3个主要库用于跨平台OpenGL窗口创建。我推荐GLFW作为跨平台工具包。通过直接在各自的平台中创建上下文(在Windows上创建WGL窗口,在MacOS X上创建Cocoa等),而不是使用窗口库,您还可以学到很多东西

  • -您是对的,它已多年未更新。它仍然有效,特别是对于传统的OpenGL,但我不确定现代支持有多好
  • -也是旧的和遗留的OpenGL(我认为这是通过2.0解决的),并且包含了很多类似OpenGL线程之外的跨平台功能。这是一个相当重的图书馆,但我还是喜欢它而不是过剩。一个现代的,更新的SDL正在开发中,但是我已经很久没有看到任何关于它的东西了,可能已经停产了。。。它也有一个肮脏的许可证与之相关,所以要注意这一点
  • -我个人最喜欢的。它像GLUT一样干净、轻量级,允许您在大多数主要桌面平台上针对现代OpenGL上下文

  • 您应该首先了解传统OpenGL(一种固定函数管道)和现代OpenGL(一种完全由着色器驱动的管道)之间的区别。大多数在线教程教授传统的OpenGL,因为它很容易入门,而且已经存在很长时间了。Legacy仍然可以正常工作,但您可能希望进入现代OpenGL(至少是3.0版)。现代OpenGL更干净、更灵活,但也更难入门,因此教程更少。它需要用户进行更多的设置和库,并且没有“一种方法”来做事情,因此很难围绕它构建一个快速的教程

    学习现代OpenGL的一些好资源有:

    • -Stack overflow用户编写的精彩课程
    • -OpenGL ES 2.0编程指南-OpenGL ES 2.0与OpenGL 3.0直接兼容,因此非常适合入门。即使你不想买这本书,你也可以下载优秀的示例代码
    • -迅捷教程-优秀的OpenGL 4.0和WebGL教程
    对于您的主要问题,我知道有3个主要库用于跨平台OpenGL窗口创建。我推荐GLFW作为跨平台工具包。通过直接在各自的平台中创建上下文(在Windows上创建WGL窗口,在MacOS X上创建Cocoa等),而不是使用窗口库,您还可以学到很多东西

  • -您是对的,它已多年未更新。它仍然有效,特别是对于传统的OpenGL,但我不确定现代支持有多好
  • -也是旧的和遗留的OpenGL(我认为这是通过2.0解决的),并且包含了很多类似OpenGL线程之外的跨平台功能。这是一个相当重的图书馆,但我还是喜欢它而不是过剩。一个现代的,更新的SDL正在开发中,但是我已经很久没有看到任何关于它的东西了,可能已经停产了。。。它也有一个肮脏的许可证与之相关,所以要注意这一点
  • -我个人最喜欢的。它像GLUT一样干净、轻量级,允许您在大多数主要桌面平台上针对现代OpenGL上下文

  • OpenGL wiki有一个。它甚至有一个。请看OpenGL wiki有一个。它甚至有一个。看,哦,我不知道它变化这么大。学习旧的OpenGL值得吗?还是我应该从新的东西开始?现在我正在将OpenGL与Qt结合使用,而且我一直在学习的东西都在工作,所以我确信它并不是完全无用的,但是当我开始学习现代OpenGL时,我几乎必须从头开始吗?至于工具包,GLEW呢?我最近看到一个推荐的;类似吗?@Maynnaise_clinic接受新的东西,不要为旧的烦恼。您必须从代码的角度重新开始,但概念基本相同。我很确定GLEW只是用于使用OpenGL扩展(大多数情况下需要在windows上使用OpenGL 1.1的默认标题)。GLEW对现代OpenGL很有用,但它不能解决上下文和窗口创建问题。哦,我不知道它改变了这么多。学习旧的OpenGL值得吗?还是我应该从t开始