SceneManagersFAQ

简介:

一个场景代表在虚拟世界中显示的物品。场景可以包括静态几何体(比如地形或者室内),模型(比如树、椅子等),光和摄像机。

场景有下面种类。室内场景:可能由走廊、有家具的屋子和挂着装饰品的墙组成。室外场景:可能由山,树木,微微摇动的草地,飘着云彩的天空组成。

Ogre提供了一套不同的场景管理器,每一种特别支持某种场景。

本文档将列出Ogre提供的场景管理器和它们的优缺点。 

内容

[hide]

[edit]

选择一个场景管理器

你可以通过getSceneManager 方法选择一种场景管理器,来代替默认的ST_GENERIC :

 Dagon 1.2 version 以后版本:

老版本:

它们的参数有以下值可选择:

  • ST_GENERIC – 如果你设定加载Plugin_OctreeSceneManager 将使用八叉树管理如果你设定加载Plugin_DotSceneManager 就可以加载DotScene .scene

  • ST_EXTERIOR_CLOSE – 地形场景管理Terrain_Scene_Manager

  • ST_EXTERIOR_FAR – 自然场景管理(Nature scene manager

  • ST_EXTERIOR_REAL_FAR – 分页场景管理Paging_Scene_Manager

  • ST_INTERIOR – BSP场景管理

八叉树场景管理器(Octree Scene Manager

用八叉树分割场景,对于多数场景效果良好,除了那些非常封闭的场景。

优点:

  • 一个简单的解决方案,对于多数场景实用。

  • 如果有大量静态几何体,可以用StaticGeometry 类来加速

缺点:

  • 对特殊的场景结构没有加速

  • 不适用于非常封闭的空间

地形场景管理器(Terrain Scene Manager 

 terrain scene manager 是为非常小的包含静态地形的场景所设计的。这个场景管理器方便从高度图来产生场景。(译注:也就是说有高度图就用不了八叉树了?倒……)

优点:

  • 可以很快渲染高分辨率的地形

  • 可以很方便地由高度图和地形材质产生地形

  • 材质可以使用shader

缺点:

  • 没有分页hooks接口但是你需要添加它

具体描述地形管理器的文档可以在这里找到。

自然场景管理器 (Nature Scene Manager:插件)

似乎没人用,略。

分页场景管理器(Paging Scene Manager:插件

 Paging Scene Manager 可以将场景分成多页。只有哪些正在被使用的页面才会显示,随意可以用在非常大的场景上。每个页有自己的高度图,并且可以使用不同材质。(可以创建绿色平原上的雪山之类的场景)

优点:

  • 可以处理比terrain and nature scene managers更大的场景

  • 允许实时卸保存载地形

  • 允许多个高度图,每个高度图允许多材质

  • 地图工具 ( "Mapsplitter") 可以将大地图和材质分成页

  • 支持16 bits per height Raw 格式的高度图

  • 实时改变地图和材质

  • Demo http://tuan.kuranes.free.fr/Ogre.html

  • Horizon Occlusion Visibility Real-time determination:比如山之后的物体不会被送到显卡处理

  • 支持八叉树

缺点:

  • 需要安装paging scene manager 插件

  • 需要用地图工具来产生分页

  • 更多的选择也意味着更复杂

BSP 场景管理器

该场景管理器用来管理室内场景。特别会优化那种有交错的墙壁和走廊组成的场景。

BSP场景管理器产生level的步骤简要如下

  • 可以用 各种level编辑工具来创建你的level.map格式保存

  • .map格式编译成Quake 3.bsp格式这种格式可以被BSP场景管理器读取。可以用q3map3来转换

优点:

  • 可优化室内场景

  • 很多level编辑工具可选择

缺点:

  • 现在可能有一些GPU处理不了Quake 3 .bsp 格式

  • 一些人建议不要用Blender来创建level而是要导出为.scene格式

DotSceneOctree 场景管理器(插件)

DotSceneOctree 场景管理器可以令几何体和mesh存在同一个文件中。

优点:

  • 可以在一个文件中包括所有场景

  • meshes可是是静态或者动态

  • 支持八叉树

Cons:

  • 需要工具来建立八叉树文件 (.bin)

  • 不支持32 bit indices,所以大的mesh需要切开
目录
相关文章
|
23天前
|
供应链 监控 安全
对话|企业如何构建更完善的容器供应链安全防护体系
阿里云与企业共筑容器供应链安全
171356 14
|
25天前
|
供应链 监控 安全
对话|企业如何构建更完善的容器供应链安全防护体系
随着云计算和DevOps的兴起,容器技术和自动化在软件开发中扮演着愈发重要的角色,但也带来了新的安全挑战。阿里云针对这些挑战,组织了一场关于云上安全的深度访谈,邀请了内部专家穆寰、匡大虎和黄竹刚,深入探讨了容器安全与软件供应链安全的关系,分析了当前的安全隐患及应对策略,并介绍了阿里云提供的安全解决方案,包括容器镜像服务ACR、容器服务ACK、网格服务ASM等,旨在帮助企业构建涵盖整个软件开发生命周期的安全防护体系。通过加强基础设施安全性、技术创新以及倡导协同安全理念,阿里云致力于与客户共同建设更加安全可靠的软件供应链环境。
150300 32
|
1月前
|
弹性计算 人工智能 安全
对话 | ECS如何构筑企业上云的第一道安全防线
随着中小企业加速上云,数据泄露、网络攻击等安全威胁日益严重。阿里云推出深度访谈栏目,汇聚产品技术专家,探讨云上安全问题及应对策略。首期节目聚焦ECS安全性,提出三道防线:数据安全、网络安全和身份认证与权限管理,确保用户在云端的数据主权和业务稳定。此外,阿里云还推出了“ECS 99套餐”,以高性价比提供全面的安全保障,帮助中小企业安全上云。
201979 15
对话 | ECS如何构筑企业上云的第一道安全防线
|
7天前
|
机器学习/深度学习 自然语言处理
Deepseek开源R1系列模型,纯RL助力推理能力大跃升!
近期Deepseek正式发布 DeepSeek-R1,并同步开源模型权重。DeepSeek-R1 遵循 MIT License,允许用户通过蒸馏技术借助 R1 训练其他模型。
|
2天前
|
人工智能 JavaScript 前端开发
白嫖 DeepSeek ,低代码竟然会一键作诗?
宜搭低代码平台接入 DeepSeek AI 大模型能力竟然这么方便!本教程将揭秘宜搭如何快速接入 DeepSeek API,3 步打造专属作诗机器人,也许你还能开发出更多有意思的智能玩法,让创意在代码间自由生长。
532 11
|
11天前
|
机器学习/深度学习 自然语言处理 PyTorch
深入剖析Transformer架构中的多头注意力机制
多头注意力机制(Multi-Head Attention)是Transformer模型中的核心组件,通过并行运行多个独立的注意力机制,捕捉输入序列中不同子空间的语义关联。每个“头”独立处理Query、Key和Value矩阵,经过缩放点积注意力运算后,所有头的输出被拼接并通过线性层融合,最终生成更全面的表示。多头注意力不仅增强了模型对复杂依赖关系的理解,还在自然语言处理任务如机器翻译和阅读理解中表现出色。通过多头自注意力机制,模型在同一序列内部进行多角度的注意力计算,进一步提升了表达能力和泛化性能。
|
15天前
|
存储 人工智能 安全
对话|无影如何助力企业构建办公安全防护体系
阿里云无影助力企业构建办公安全防护体系
1261 11
|
16天前
|
消息中间件 人工智能 运维
1月更文特别场——寻找用云高手,分享云&AI实践
我们寻找你,用云高手,欢迎分享你的真知灼见!
969 46
1月更文特别场——寻找用云高手,分享云&AI实践
|
10天前
|
消息中间件 存储 缓存
一文带你秒懂 Kafka工作原理!
Apache Kafka 是一个高吞吐量、低延迟的分布式消息系统,广泛应用于实时数据处理、日志收集和消息队列等领域。它最初由LinkedIn开发,2011年成为Apache项目。Kafka支持消息的发布与订阅,具备高效的消息持久化能力,适用于TB级数据的处理。
|
16天前
|
人工智能 自然语言处理 程序员
通义灵码2.0全新升级,AI程序员全面开放使用
通义灵码2.0来了,成为全球首个同时上线JetBrains和VSCode的AI 程序员产品!立即下载更新最新插件使用。
1512 26