Linux基础图形编程,不含OpenGL

Linux basic graphics programming without OpenGL

本文关键字:不含 OpenGL 编程 图形 Linux      更新时间:2023-10-16

对于初学者来说,用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最初障碍的人。因此,我准备了一系列简短的讲座,之后我的学生展示了相当好的渲染器。