美文网首页
CPU和GPU之间的通信2018-11-26

CPU和GPU之间的通信2018-11-26

作者: 西章momo | 来源:发表于2018-11-26 22:47 被阅读0次

            渲染流水线的起点是CPU,即应用阶段。应用阶段大致可分为下面3个阶段。

            (1)把数据加载到显存

            (2)设置渲染状态

            (3)调用DrawCall

    把数据加载到显存

             所有渲染所需的数据都需要从硬盘(Hard Disk Drive, HDD)中加载到系统内存(Random Access Memory, RAM)中。然后,网格和纹理等数据又被加载到显卡上的存储空间--显存(Video Random Access Memory,VRAM)中。显卡对于显存的访问速度更快,大多数显卡对于RAM没有的访问权利。

        当把数据加载到显存中,RAM中的数据就可以移除了。但对于一些数据来说,CPU可能会使用到,比如网格数据进行碰撞检测。

    设置渲染状态

            什么是渲染状态呢?一个通俗的解释就是,这些状态定义了场景中的网格是怎么样被渲染的。例如,使用哪个顶点着色器(Vertex Shader)/片元着色器(Fragment Shader)、光源属性、材质等。不更改渲染状态,那么所有网格都将适用同一种渲染状态。

    调用DrawCall

    Draw Call就是一个命令,发起方是CPU,接收方是GPU。这个命令仅仅会指向一个需要被渲染的图元(primitives)列表。

    相关文章

      网友评论

          本文标题:CPU和GPU之间的通信2018-11-26

          本文链接:https://www.haomeiwen.com/subject/jtniqqtx.html