4.1 scene graph构建的基本问题

本文介绍了Scene Graph在游戏开发中的应用,包括其目的、组织原则以及如何提高游戏性能。Scene Graph通过空间从属关系和Render State相似性来优化物体剔除和渲染。在WM4中,culling与drawing pass分离以支持多线程渲染。文章还详细讨论了Scene Graph的核心类Geometry、Node和Spatial的关系,以及Controller和Modifiers在实现动画和物体属性附加信息中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一,概述

Scene graph 的目的是组织物体。

两个原则: 1 。空间从属关系(树)

           2 Render State 的相似性。

原则一是为了快速剔除大批不可见物体。

原则二是为了减少 RenderState 的频繁改变。

二者均可使游戏速度大大提高。

原则一通过空间划分实现( bounding volumes ),原则通过排序实现。

然而两个原则是互不兼容的。若按 RS 排序,物体必然会分散于各个空间。理论上讲,两个原则那个更快就以那个为排序标准。

事实上 通常以原则一为准,即先将所有物体按空间从属关系分块,确定出可见物体后,再按 RS 排序。

以下为 scene graph 管理系统的宏观结构:

                       更新 Geometric State

              (如顶点数据,变换,空间从属关系等)

                             

                       更新 Render State

               global state lights effects 等)

                               

                       

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值