Linux基础图形编程,不含OpenGL
Linux basic graphics programming without OpenGL
对于初学者来说,用C/c++ (2D和3D)开始基本的图形编程有哪些好的选择?我想尝试一下书中给出的东西(3D数学入门)。显然我不想使用OpenGL。
我有一台安装了Linux (Debian)的机器。我在Linux上有哪些选择?QT或者GTK或者别的什么?
编辑:我不想使用OpenGL,因为它为我做了大部分有趣的工作。比如旋转,投影等等。我想学习这些东西使用OpenGL。你可以使用传统的OpenGL并将变换矩阵作为身份,在调用glVertex
*之前做自己的旋转投影等,或者使用带有着色器的现代OpenGL,你必须在顶点着色器中实现这些功能。
对于2D图形,我推荐使用SDL Library。它简单而有力。库api是原生的C/c++,但支持所有你能想到的语言。你不必使用OpenGL,但如果你决定以后使用它,SDL支持它。它还支持大多数音频和视频文件。我发现这对于新手游戏开发者来说是一件很棒的事情。
浏览以下链接中的教程。你不需要任何图形库http://www.codermind.com/articles/Raytracer-in-C + + -Introduction-What-is-ray-tracing.html
完成教程后,在OpenCL中重写光线跟踪器,并使用SDL显示像素缓冲区。用实时全局照明给那些认为OpenGL是做图形的唯一方法的朋友留下深刻印象。
看看tinyrenderer。
在本系列文章中,我想通过编写OpenGL的克隆(一个非常简化的克隆)来展示OpenGL的工作方式。令人惊讶的是,我经常遇到无法克服学习OpenGL/DirectX最初障碍的人。因此,我准备了一系列简短的讲座,之后我的学生展示了相当好的渲染器。
相关文章:
- 为什么我不能使用 EGL 创建无头 OpenGl 上下文?
- OpenGL在启用深度测试时不会丢弃我的碎片
- 将QOpenGLWidget子类转换为使用Metal而不是OpenGL的子类是否可行?
- 构建使用协议缓冲区(不含 APK)的 Android 可执行 gRPC 服务器
- 为什么不编译 OpenGL 着色器?
- 为什么Sprite不在OpenGL中渲染
- 为什么内联函数会导致编译器看不到OpenGL函数
- MinGW 找不到 OpenGL 命令
- 为什么glDrawArrays在Mac上不使用OpenGL进行绘制
- 阶乘数字总和(不含 BigInt)C++
- 屏幕截图而不是 OpenGL 中的输出
- Linux基础图形编程,不含OpenGL
- 在架构x86_64中找不到openGL对象
- 将圆周率的数字转换为字符数组(不含小数点){c++语言}
- QThread在GUI事件上调用glBufferData()时不更新OpenGL vbo和不渲染任何东西
- Vim Clang Complete 看不到 OpenGL 的某些功能
- 编译c++ Visual c++ 7.1解决方案,不含Visual c++
- 当窗口不是OpenGL-C++的焦点时,一种将控制权返回到Windows的方法
- 如何在原生c++应用程序中实现试用体验(不含XAML)
- Visual Studio 2008中的“设计”选项卡控件(不含SP1)