【技术实现步骤摘要】
本专利技术涉及计算机图形
,更具体地说,涉及场景的渲染优化方法。
技术介绍
随着图像技术的发展,图像需要更多的多边形,更多的杂物和更好的光照,以便场景看起来更真实。为此,不得不使用更多的美术方法来满足需求。帮助节省开发时间的一种技术是实例化方法。虽然实例化方法可以大量的降低开发时间,但这会使游戏受限于绘制调用次数。如果场景使用每一个实例都导致新增加一个批次,那么就不能很好的体现实例化的好处。批次变成了瓶颈。大多数的Gpu不能渲染上千个实例的场景,每一个实例都潜在的改变一系列渲染状态,直接状态的改变导致了驱动和cpu的开销,最后导致性能下降。虽然可以在内容一方避免这个问题,采用美术合并多个模型而产生新模型,然后在各处实例化,但是这样会导致场景看起来重复,降低真实感。本专利技术采用了分段缓存技术,把场景中彼此接近的实例,把他们合并到超级实例中,这样减少了调用次数,而且解决批次的瓶颈问题。
技术实现思路
本专利技术要解决的技术问题在于,采用分段缓存方式,自动合并相似的实例,同时保留了大量渲染的好处。分段缓存的主要好处在于非重复的外观和不绘制原始实例的能力。为了实现上述目的,本专利技术所采用的技术方案是基于分段缓存的场景渲染优化,其步骤如下 1)对场景中对象进行八叉树空间划分。树由一点产生,这些点代表了创造分段缓冲区实例的位置; 2)对八叉树进行深度优先遍历,每个树的节点总是先分支到左边,当达到一片叶的时候,把所有的叶片都添加到一个新的序列表中,这样就有了一个空间有序的实例表; 3)迭代列表兵构造一个包含所有实例的顶点缓冲区。这个缓冲区中包含所有实例的世 ...
【技术保护点】
基于分段缓存的场景渲染优化,其步骤如下:1)对场景中对象进行八叉树空间划分;树由一点产生,这些点代表了创造分段缓冲区实例的位置;2)对八叉树进行深度优先遍历,每个树的节点总是先分支到左边,当达到一片叶的时候,把所有的叶片都添加到一个新的序列表中,这样就有了一个空间有序的实例表;3)迭代列表兵构造一个包含所有实例的顶点缓冲区;这个缓冲区中包含所有实例的世界坐标;同时需要记录顶点缓冲区那些部分属于那个实例;4)根据视锥体裁剪,得出实例的可见性,把这个实例列表变换到前面为分段缓冲生成的顶点缓冲区的一部分;5)合并顶点缓冲区中相邻的分段,得到渲染缓冲区的优化列表。
【技术特征摘要】
【专利技术属性】
技术研发人员:不公告发明人,
申请(专利权)人:沈阳信达信息科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。