一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

图形处理的制作方法

2022-12-23 10:33:27 来源:中国专利 TAG:

技术特征:
1.一种在使用光线追踪过程渲染表示包括一个或多个对象的场景视图的帧时操作图形处理器的方法,其中所述光线追踪过程使用指示待渲染的所述场景的几何形状的分布的光线追踪加速数据结构,以确定所述场景的几何形状,所述几何形状能够与正被用于光线追踪操作的光线相交,所述光线追踪加速数据结构包括多个节点,每个节点与所述场景内的相应一个或多个盒相关联,所述光线追踪过程包括对多条光线执行所述光线追踪加速数据结构的遍历,以通过测试所述光线与由所述加速数据结构的所述节点表示的所述盒的相交来确定待渲染的所述场景的能够与所述光线相交的几何形状;所述图形处理器包括可编程执行单元,所述可编程执行单元可操作为执行程序以执行图形处理操作,并且其中程序能够由多个执行线程的组一起执行;所述方法包括:当一组执行线程正在执行程序以执行光线追踪加速数据结构遍历时,其中所述一组执行线程中的各个执行线程执行对应组光线中的相应光线的遍历操作,使得所述一组光线一起执行所述遍历操作,响应于所述执行线程执行被包括在关于所述光线追踪加速数据结构的节点的所述程序中的一条或多条光线与盒测试指令集:测试来自正在一起执行所述遍历操作的所述一组多条光线中的一条或多条光线与和正被测试的所述节点相关联的所述一个或多个盒的相交;以及返回针对所述遍历操作的所述节点的所述相交测试的结果。2.根据权利要求1所述的方法,其中所述图形处理器还包括相交测试电路,所述相交测试电路可操作为测试光线与和所述光线追踪加速数据结构的所述节点相关联的所述盒的相交,并且其中所述一条或多条光线与盒测试指令集当被所述一组多个执行线程中的执行线程执行时将使得所述执行单元向所述相交测试电路发送消息,以执行所述测试关于来自正在一起执行所述光线追踪加速数据结构的所述遍历的所述一组多条光线中的所述一条或多条光线与和待测试的所述节点相关联的所述一个或多个盒的相交,并且针对正被测试的所述节点将所述相交测试的所述结果返回给所述执行单元。3.根据权利要求1或2所述的方法,其中所述光线追踪加速数据结构包括树结构,所述树结构包括与相应多个叶节点相关联的多个分支,其中所述树结构中的每个非叶是多个子节点的相应集的父节点,每个非叶节点由此与对应多个子盒相关联,并且其中测试光线与和节点相关联的所述盒的相交包括测试所述光线与正被测试的所述节点的所述子节点的相应集中的每一个相应集的所述盒的相交,所述方法包括针对正被测试的所述节点的所述子节点中的每一个子节点返回所述相交测试的结果。4.根据任一前述权利要求所述的方法,其中维护遍历记录以便管理所述遍历操作,其中所述程序可操作为处理所述遍历记录中的条目以确定应该测试哪些节点,并且其中所述相交测试的所述结果包括在所述遍历操作期间待测试哪个或哪些节点的指示,所述指示被写入所述遍历记录。5.根据权利要求4所述的方法,其中所述遍历记录包括遍历堆栈。6.根据权利要求4或5所述的方法,其中所述相交测试的所述结果还包括针对所述节点测试的所述一条或多条光线中的哪条光线被确定为与和所述节点相关联的所述一个或多
个盒相交的指示。7.根据权利要求4、5或6中任一项所述的方法,其中当写入所述相交测试的所述结果将使得所述遍历记录溢出时,将所述整个遍历记录写出到存储器中,并将对此的指示写入所述遍历记录中,以允许所述执行单元随后加载被写出的所述遍历记录。8.根据权利要求4、5、6或7中任一项所述的方法,其中所述遍历记录经由共享寄存器集来管理,所述共享寄存器集被分配给正在执行所述程序以对所述一组多条光线执行所述遍历操作的所述一组多个执行线程。9.根据任一前述权利要求所述的方法,其中所述程序还包括一个或多个指令集,所述一个或多个指令集当执行时使得所述一组执行线程中的所述执行线程处于活动状态,至少直到用于确定所述场景的如果有的话的哪个几何形状能够与所述光线相交的所述遍历操作对于由所述一组执行线程正在处理的所述一组光线中的所有所述光线完成,使得所述一组光线一起执行所述遍历操作。10.一种编译待由图形处理器的可编程执行单元执行的着色器程序的方法,所述可编程执行单元可操作为执行图形处理程序以执行图形处理操作;所述方法包括:在使用光线追踪过程渲染表示包括一个或多个对象的场景视图的帧时,在待由图形处理器的可编程执行单元执行的着色器程序中包括,其中所述光线追踪过程使用指示待渲染的所述场景的几何形状的分布的光线追踪加速数据结构,以确定所述场景的几何形状,所述几何形状能够与正被用于光线追踪操作的光线相交,所述光线追踪加速数据结构包括多个节点,每个节点与所述场景内的相应一个或多个盒相关联,所述光线追踪过程包括对多条光线执行所述光线追踪加速数据结构的遍历,以通过测试所述光线与由所述加速数据结构的所述节点表示的所述盒的相交来确定待渲染的所述场景的能够与所述光线相交的几何形状,并且其中所述程序待由一组多个执行线程执行,其中所述一组执行线程中的各个执行线程执行对应组光线中的相应光线的遍历操作:一条或多条光线与盒测试指令集用于测试光线与和在所述遍历操作期间待测试的所述光线追踪加速数据结构的给定节点相关联的所述一个或多个盒的相交,所述光线与盒测试指令集当被所述一组多个执行线程中的执行线程执行时将使得:所述图形处理器测试来自正在一起执行所述遍历操作的所述一组多条光线中的一条或多条光线与和正被测试的所述节点相关联的所述一个或多个盒的相交;以及针对所述遍历操作的所述节点返回所述相交测试的结果。11.一种在使用光线追踪过程渲染表示包括一个或多个对象的场景视图的帧时操作包括图形处理器的图形处理系统的方法,其中所述光线追踪过程使用指示待渲染的所述场景的几何形状的分布的光线追踪加速数据结构,以确定所述场景的几何形状,所述几何形状能够与正被用于光线追踪操作的光线相交,所述光线追踪加速数据结构包括多个节点,每个节点与所述场景内的相应一个或多个盒相关联,所述光线追踪过程包括对多条光线执行所述光线追踪加速数据结构的遍历,以通过测
试所述光线与由所述加速数据结构的所述节点表示的所述盒的相交来确定待渲染的所述场景的能够与所述光线相交的几何形状;所述图形处理器包括可编程执行单元,所述可编程执行单元可操作为执行程序以执行图形处理操作,并且其中程序能够由多个执行线程的组一起执行;所述方法包括:在执行光线追踪加速数据结构遍历的程序中包括,其中所述程序待由一组多个执行线程执行,其中所述一组执行线程中的各个执行线程执行对应组光线中的相应光线的遍历操作,使得所述一组光线一起执行所述遍历操作,一条或多与盒测试指令集用于测试光线与所述一个或多个盒的相交,所述一个或多个盒与在所述遍历操作期间待测试的所述光线追踪加速数据结构的给定节点相关联,所述光线与盒测试指令集条光线当被所述一组多个执行线程中的执行线程执行时将使得:所述图形处理器测试来自正在一起执行所述遍历操作的所述一组多条光线中的一条或多条光线与和正被测试的所述节点相关联的所述一个或多个盒的相交;以及针对所述遍历操作的所述节点返回所述相交测试的结果;所述方法还包括:当一组执行线程正在为正在一起执行所述光线追踪加速数据结构的遍历的对应组光线执行所述程序时,响应于所述执行线程执行关于所述光线追踪加速数据结构的节点的所述一个或多个光线与盒测试指令集:测试来自正在一起执行所述遍历操作的所述一组多条光线中的一条或多条光线与和正被测试的所述节点相关联的所述一个或多个盒的相交;以及返回针对所述遍历操作的所述节点的所述相交测试的结果。12.一种可操作为使用光线追踪过程渲染表示包括一个或多个对象的场景视图的帧的图形处理器,其中所述光线追踪过程使用指示待渲染的所述场景的几何形状的分布的光线追踪加速数据结构,以确定所述场景的几何形状,所述几何形状能够与正被用于光线追踪操作的光线相交,所述光线追踪加速数据结构包括多个节点,每个节点与所述场景内的相应一个或多个盒相关联,所述光线追踪过程包括对多条光线执行所述光线追踪加速数据结构的遍历,以通过测试所述光线与由所述加速数据结构的所述节点表示的所述盒的相交来确定待渲染的所述场景的能够与所述光线相交的几何形状;所述图形处理器包括:可编程执行单元,所述可编程执行单元可操作为执行程序以执行图形处理操作,并且其中程序能够由多个执行线程的组一起执行;其中所述执行单元被配置为使得当一组执行线程正在执行程序以执行光线追踪加速数据结构遍历时,其中所述一组执行线程中的各个执行线程执行对应组光线中的相应光线的遍历操作从而一起执行所述遍历操作,响应于所述执行线程执行被包括在关于所述光线追踪加速数据结构的节点的所述程序中的一个或多个光线与盒测试指令集:所述执行单元触发测试关于来自正在一起执行所述光线追踪加速数据结构的所述遍历的所述一组多条光线中的一条或多条光线与和正被测试的所述节点相关联的所述一个或多个盒的相交,其中针对所述遍历操作的所述节点然后返回所述相交测试的结果。
13.根据权利要求12所述的图形处理器,其中所述图形处理器还包括相交测试电路,所述相交测试电路可操作为测试光线与和所述光线追踪加速数据结构的所述节点相关联的所述盒的相交,并且其中所述一条或多条光线与盒测试指令集当被所述一组多个执行线程中的执行线程执行时将使得所述执行单元向所述相交测试电路发送消息,以执行所述测试关于来自正在一起执行所述光线追踪加速数据结构的所述遍历的所述一组多条光线中的所述一条或多条光线与和待测试的所述节点相关联的所述一个或多个盒的相交,并针对正被测试的所述节点将所述相交测试的所述结果返回给所述执行单元。14.根据权利要求12或13所述的图形处理器,其中所述光线追踪加速数据结构包括树结构,所述树结构包括与相应多个叶节点相关联的多个分支,其中所述树结构中的每个非叶是多个子节点的相应集的父节点,每个非叶节点由此与对应多个子盒相关联,并且其中测试光线与和节点相关联的所述盒的相交包括测试所述光线与正被测试的所述节点的所述子节点的相应集中的每个相应集的所述盒的相交。15.根据权利要求12至14中任一项所述的图形处理器,其中维护遍历记录以便管理所述遍历操作,其中所述程序可操作为处理所述遍历记录中的条目以确定应该测试哪些节点,并且其中所述相交测试的所述结果包括在所述遍历操作期间待测试哪个或哪些节点的指示,所述指示被添加到所述遍历记录。16.根据权利要求15所述的图形处理器,其中所述遍历记录包括遍历堆栈。17.根据权利要求15或16所述的图形处理器,其中所述相交测试的所述结果还包括针对所述节点测试的所述一条或多条光线中的哪条光线被确定为与和所述节点相关联的所述一个或多个盒相交的指示。18.根据权利要求15、16或17中任一项所述的图形处理器,其中当添加所述相交测试的所述结果将使得所述遍历记录溢出时,将所述整个遍历记录写出到存储器中,并将对此的指示写入所述遍历记录中,以允许所述执行单元随后加载被写出的所述遍历记录。19.根据权利要求15、16、17或18中任一项所述的图形处理器,其中所述遍历记录经由共享寄存器集来管理,所述共享寄存器集被分配给正在执行所述程序以对所述一组多条光线执行所述遍历操作的所述一组多个执行线程。20.一种包括图形处理器的图形处理系统,所述图形处理器可操作为使用光线追踪过程渲染表示包括一个或多个对象的场景视图的帧,其中所述光线追踪过程使用指示待渲染的所述场景的几何形状的分布的光线追踪加速数据结构,以确定所述场景的几何形状,所述几何形状能够与正被用于光线追踪操作的光线相交,所述光线追踪加速数据结构包括多个节点,每个节点与所述场景内的相应一个或多个盒相关联,所述光线追踪过程包括对多条光线执行所述光线追踪加速数据结构的遍历,以通过测试所述光线与由所述加速数据结构的所述节点表示的所述盒的相交来确定待渲染的所述场景的能够与所述光线相交的几何形状;所述图形处理器包括:可编程执行单元,所述可编程执行单元可操作为执行程序以执行图形处理操作,并且其中程序能够由多个执行线程的组一起执行;并且所述图形处理系统还包括:
处理电路,所述处理电路被配置为:在执行光线追踪加速数据结构遍历的程序中包括,其中所述程序待由相应组多个执行线程一起执行,其中一组执行线程中的各个执行线程执行对应组光线中的相应光线的遍历操作,使得所述一组光线一起执行所述遍历操作,一条或多条光线与盒测试指令集用于测试光线与所述一个或多个盒的相交,所述一个或多个盒与在所述遍历操作期间待测试的所述光线追踪加速数据结构的给定节点相关联,所述光线与盒测试指令集当被一组多个执行线程中的执行线程执行时将使得:所述图形处理器用于测试来自正在一起执行所述遍历操作的所述一组多条光线中的一条或多条光线与和正被测试的所述节点相关联的所述一个或多个盒的相交;和针对所述遍历操作的所述节点返回所述相交测试的结果;其中所述执行单元被配置为使得当一组执行线程正在为正在一起执行所述光线追踪加速数据结构的遍历的对应组光线执行所述程序时,响应于所述执行线程执行关于所述光线追踪加速数据结构的节点的所述一个或多个光线与盒测试指令集:所述执行单元触发测试关于来自正在一起执行所述光线追踪加速数据结构的所述遍历的所述一组多条光线中的一条或多条光线与和正被测试的所述节点相关联的所述一个或多个盒的相交,其中针对所述遍历操作的所述节点然后返回所述相交测试的结果。21.根据权利要求20所述的图形处理系统,其中所述处理电路被进一步配置为在所述程序中包括一个或多个指令集,所述一个或多个指令集使得一组执行线程中的所述执行线程处于活动状态,至少直到用于确定所述场景的如果有的话的哪个几何形状能够与所述光线相交的所述遍历操作对于由所述一组执行线程正在处理的所述一组光线中的所有所述光线完成。22.一种用于编译待由图形处理器的可编程执行单元执行的着色器程序的编译器,所述可编程执行单元可操作为执行图形处理程序以执行图形处理操作;所述编译器包括处理电路,所述处理电路被配置为:在使用光线追踪过程渲染表示包括一个或多个对象的场景视图的帧时,在待由图形处理器的可编程执行单元执行的着色器程序中包括,其中所述光线追踪过程使用指示待渲染的所述场景的几何形状的分布的光线追踪加速数据结构,以确定所述场景的几何形状,所述几何形状能够与正被用于光线追踪操作的光线相交,所述光线追踪加速数据结构包括多个节点,每个节点与所述场景内的相应一个或多个盒相关联,所述光线追踪过程包括对多条光线执行所述光线追踪加速数据结构的遍历,以通过测试所述光线与由所述加速数据结构的所述节点表示的所述盒的相交来确定待渲染的所述场景的能够与所述光线相交的几何形状,并且其中所述程序待由多个执行线程的组执行,其中所述一组执行线程中的各个执行线程执行对应组光线中的相应光线的遍历操作:一条或多条光线与盒测试指令集用于测试光线与和在所述遍历操作期间待测试的所述光线追踪加速数据结构的给定节点相关联的所述一个或多个盒的相交,所述光线与盒测试指令集当被所述一组多个执行线程中的执行线程执行时将使得:所述图形处理器测试来自正在一起执行所述遍历操作的所述一组多条光线中的一条或多条光线与和正被测试的所述节点相关联的所述一个或多个盒的相交;以及
针对所述遍历操作的所述节点返回所述相交测试的结果。

技术总结
本发明涉及一种图形处理,本公开提供了一种可被包括在程序中以执行光线追踪加速数据结构遍历的指令(或指令集),其中执行该程序的一组执行线程中的各个执行线程对相应组光线中的相应光线执行遍历操作,使得该一组光线一起执行该遍历操作。该指令当被关于该光线追踪加速数据结构的节点的该执行线程执行时使得测试来自正在一起执行该遍历操作的该一组多条光线的一条或多条光线与和正被测试的该节点相关联的该一个或多个盒的相交。然后可针对该遍历操作返回该光线与盒相交测试的结果。该遍历操作返回该光线与盒相交测试的结果。该遍历操作返回该光线与盒相交测试的结果。


技术研发人员:R
受保护的技术使用者:Arm有限公司
技术研发日:2022.06.06
技术公布日:2022/12/5
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献