Nebula3中的模型

大体画了个结构图, UML不知道用得对不对, 反正我自己看懂就行了......

VisXXX可以看做是场景可见性裁剪的一部分, 渲染模块都是跟这个打交道的, 通过它可以把各个结点(node)排序以达到优化渲染目的.

Model是一个可以绘制的对象, 由一些树形结构的ModelNode组成. Model可以通过ModelServer创建, 这样能保持同一个Model只会载入内存一次. 要绘制Model的话, 一个ModelInstance是必不可少的. 通常一个游戏对象对应一个ModelInstance, 那些始终不变的数据(如网格)都保存在Model里.

ModelNode是组成Model中树形结构的基本元素, 分别看看各个子类有何作用:

  • TransformNode: 描述层级变换信息, 骨骼动画的最基本体现. 就是相对于父级的位置, 旋转, 缩放之类的数学信息.
  • StateNode: 包含Shader的状态和纹理信息, 渲染用的
  • ShapeNode: 说白了就是一Mesh, 网格, 三角形的集合
  • SkinShapeNode: 描述了一个蒙皮的网格.
  • ParticleSystemNode: 粒子系统的结点, 代表一个动态网格.
  • CharcterNode: 也是代表蒙皮网格, 具体没细看(模型这块下个版本的SDK估计改动很大, 所以只是大体先熟悉一下)

嗯, 基本上就是这样了, 还有个ManagedModel, 这个其实可以归到Resource子系统里去. 睡觉!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏胡力的专栏

高斯模糊效果的几种实现方案及性能对比

现在越来越多的 app 在背景图中使用高斯模糊效果,如 yahoo 天气,效果做得很炫。 我们5.2个性资料卡的标签模版也需要使用高斯模糊,这里就用一个 dem...

1.3K0
来自专栏机器学习养成记

R语言爬虫与文本分析

之前用python做过简单的爬虫与分析,今天尝试一下用R完成相应的功能。首先用R爬取了《了不起的麦瑟尔夫人》豆瓣短评作为语料,然后进行了词云绘制、关键词提取的基...

37814
来自专栏一“技”之长

Cocos2d-x-v3动作体系 原

        cocos2d-x-v3版本v2的版本有的很大的改动,最直观的是在一些函数的改动和类名的改动上,首先以CC开头的类,都不再使用CC。在我个人的理...

551
来自专栏数说工作室

【SAS Says】基础篇:ODS的使用(上)

你不可能总是在SAS上查看结果,如果结果很多你要一一的讲结果复制到word中去,有ODS就好啦!它可以把SAS的结果直接输出到word、PDF等文件中。 5.1...

4056
来自专栏编程

C语言嵌入式系统编程修炼之键盘操作

这是我13年前创作和发表在互联网上的文章,这么多年过去了,这篇文章仍然在到处传播。现在贴回Linuxer公众号。 全文目录: C语言嵌入式系统编程修炼之道——背...

1849
来自专栏向治洪

Android硬件加速介绍与实现

概述 在手机客户端尤其是Android应用的开发过程中,我们经常会接触到“硬件加速”这个词。由于操作系统对底层软硬件封装非常完善,上层软件开发者往往对硬件加速的...

1986
来自专栏Android点滴积累

Android高效内存1:一张图片占用多少内存

  在做内存优化的时候,我们发现除了解决内存泄露问题,剩下的就只有想办法减少真实的内存占用。而在App中,大部分内存可能被我们图片占用了,所以减少图片的内存占用...

1916
来自专栏美团技术团队

Android硬件加速原理与实现简介

在手机客户端尤其是Android应用的开发过程中,我们经常会接触到“硬件加速”这个词。由于操作系统对底层软硬件封装非常完善,上层软件开发者往往对硬件加速的底层原...

3825
来自专栏WeTest质量开放平台团队的专栏

移动平台 Unity3D 应用性能优化(下)

下篇:一些关于移动平台上Unity3D的性能优化经验,供分享。

3060
来自专栏向治洪

Android硬件加速介绍与实现

概述 在手机客户端尤其是Android应用的开发过程中,我们经常会接触到“硬件加速”这个词。由于操作系统对底层软硬件封装非常完善,上层软件开发者往往对硬件加速的...

2528

扫码关注云+社区