Opengl 什么程序负责计算机图形学中的投影
通过投影,我的意思是,获取3d模型数据、相机数据等,并将场景投影到将要显示的平面2d图像中Opengl 什么程序负责计算机图形学中的投影,opengl,graphics,directx,projection,Opengl,Graphics,Directx,Projection,通过投影,我的意思是,获取3d模型数据、相机数据等,并将场景投影到将要显示的平面2d图像中 directx/opengl能做到这一点吗?他们真的是为游戏/图形设计师设计的,还是你必须用opengl/directx实现从3d到2d的投影?这就是我困惑的地方。好吧,这取决于我们谈论的是哪种计算机图形。例如,您通常可以在视觉效果(如ILM、Digital Domain、Weta Digital)和计算机动画电影(如Pixar、Dreamworks动画、迪士尼动画、Blu Sky)中看到的图像由专用渲染
directx/opengl能做到这一点吗?他们真的是为游戏/图形设计师设计的,还是你必须用opengl/directx实现从3d到2d的投影?这就是我困惑的地方。好吧,这取决于我们谈论的是哪种计算机图形。例如,您通常可以在视觉效果(如ILM、Digital Domain、Weta Digital)和计算机动画电影(如Pixar、Dreamworks动画、迪士尼动画、Blu Sky)中看到的图像由专用渲染器软件离线生成。这种离线渲染器可以通过多种方式实现。可能有光栅化器(与OpenGL或DirectX 3D不同)或光线跟踪器(完全不同),甚至还有混合体 OpenGL和DirectX 3D是用于通过光栅化实时生成图像的API,我将对此进行解释。首先您必须了解的是,从OpenGL和DirectX 3D的角度来看,没有3D模型,没有相机,没有场景。对于他们来说,只有一个帧缓冲区(一个2d画布),他们只是在其中栅格化(=绘制)点、线或三角形。当光栅化这些基本体时,所有类型的输入数据都会影响该过程,例如图像(纹理)或参数控制模拟照明过程 在目前的系统中,这个过程是四重的
现在OpenGL和DirectX 3D在哪里输入图片?嗯,在OpenGL-2和DirectX-8之前,上面描述的步骤都是硬编码到它们中的,所以在所有实际操作中,它们都是这样做的。今天,现代OpenGL和DirectX 3D更像是一个多功能的图形工具包,熟练的程序员可以使用它来实现自己的图形生成管道。步骤1到步骤4由所谓的着色器程序完成,必须由使用OpenGL或DirectX 3D的程序员编写。这个问题完全没有限制,无法在这里回答。对于初学者,您可能想看看答案中的链接。它被称为a,虽然它只带您到标准化设备坐标,但OpenGL/DirectX将处理其余部分。