在哪里可以学习如何使用C++与显卡连接?

hed*_*der 6 c++ opengl 3d gpu glsl

我现在正在学习c ++,我想开始与显卡连接并使用3D图形的基础知识.我没有在我的书或互联网查询中找到它,我实际上完全不知道从哪里开始.编译后,c ++代码可以在显卡上运行吗?据我所知,我通过OpenGL的访问GPU处理,但我不清楚这是否仅仅是一个用于到c ++访问(也可能是其他语言)来传递功能的GPU,或者如果它是特定于GLSL.那么什么是OpenGL,我如何将它与c ++结合使用才能将处理传递给GPU?是否有其他更直接或灵活的方式来使用C++和图形卡?

Pet*_*der 8

OpenGL是一个库.您的C++代码编译为机器代码(针对您的CPU,而不是GPU),调用OpenGL函数,将数据发送到您的图形卡(GPU).图形卡会解释该数据,并使用它来执行您要求它执行的任何操作.GPU 不运行任何C++代码.

GLSL(OpenGL着色语言)是一种用于指示GPU着色器功能的语言.请注意,该名称有点用词不当,因为使用着色语言编写的代码比现在的着色要多得多.通常,您将编写GLSL代码,就像编写C++代码一样,然后使用OpenGL调用编译GLSL代码,然后使用更多OpenGL调用来指示CPU使用着色器程序.


中央处理器

C++代码调用OpenGL函数调用图形驱动程序代码,它通过硬件向GPU发送指令.

GPU

解释从图形驱动程序接收的硬件信号以运行其自己的内部程序.这可能包括已编译的GLSL程序,它们也以相同的方式从CPU发送.


注意:您可以使用"DirectX的功能"和"GLSL"与另一着色语言和图是一样的替换"Open GL的功能".


Chr*_*isF 6

OpenGL和DirectX为您提供与显卡的接口.

您可以自己编写低级代码,但我建议您首先了解基础知识.

完成后,您可以自己编写图形驱动程序,但不要超过卡制造商开发团队的表现.