gpt4 book ai didi

c++ - 我在哪里可以学习如何使用 C++ 与图形卡进行交互?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:06:47 26 4
gpt4 key购买 nike

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

最佳答案

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

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


中央处理器

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

图形处理器

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


注意:您可以将“Open GL 函数”替换为“DirectX 函数”,将“GLSL”替换为另一种着色语言,图表相同。

关于c++ - 我在哪里可以学习如何使用 C++ 与图形卡进行交互?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4173636/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com