CesiumInspector控件并不是带来太多功能上的,但对开发人员来说,对于了解Cesium的渲染效果以及性能调优,还是一个很有价值的控件,特别是一些渲染状态下的问题,采用该控件,应该还是会有很多启发性的收获。

废话不多说,直接上代码:

简单一句话,就会出现如下这个超级专业的控件:

里面的具体功能不多,但每一个都很专业,也间接说明了Cesium内部一个很出色的管理机制,下面就一一道来。

Show Frustums

地球半径是6378137,处于精度的考虑,比如深度值和相机抖动等问题,Cesium根据当前区域的可视范围的深度最大值和最小值,会动态的维护裁剪区域,在必要的情况下会由近及远的分成多个裁剪区,这样每个区域的深度区间不至于太大。我还没有仔细看这块的代码,只能先说一个思路,后续涉及到原理篇时在深入研究。

而Show Frustums就是实时显示当前的裁剪区,并会统计在不同裁剪区中Command(渲染对象)的个数。通常,在稳定的情况下,一个裁剪区就足够了,除非存在两个高度差距比较大的物体同时在场景内。当然,在快速缩放的时候,特别是拉平时,可能在瞬间,深度区间会比较大,所以需要多个裁剪区。

如图,现实了不同的裁剪区间的分割,但可视范围稳定后,会更新裁剪区间,尽可能的保持在一个裁剪区内,如下图:


Performance Display

Scene中有一个Performance类,如果开启,会update统计帧数和每一帧的时间,和Chrome的帧数统计对比了一下,还是比较准的。


Globe Depth & Pick Depth

下面来看看两个深度的,大部分场景下,两者的深度值是相同的,除非有模型,且模型在空中,和地面差距比较大的时候,就有一些不同之处了。

我们先打开地形,选择STK影像,正常情况下效果如下:

查看深度效果如下:

可以看到越近则深度越小,越趋近于黑色(0),月原则深度值越大(255)。我们加载一架飞机到此处,再看看会有如何的变化:

由于这架飞机高度为5000,当我们靠近该飞机时,则会构造两个裁剪区域,所以效果如下:


Primitive

我们在看看Primitive,选中该飞机,选择如下选项:

如下图所示,你会看到该模型的bounds,以及自身坐标系的xyz轴:


Terrain

这个功能很强大,选中一个Tile,可以看它的三角网,选择如下属性:

STK是Tin的三角网,基于特征点,同时还有裙边的处理,通过Wireframe都可以清楚的看到。同时你也可以中断LOD策略,这样缩放时可以详细的了解Tile的三角网信息。一目了然,可以充分的认识到STK地形的强大之处,后面讲到地形篇时,我们会详细的介绍STK和高度图两种方式,以及STK在数据层面上很多优化,水面等效果。

OK,Inspector的介绍到此结束,功能不多,但各个都很精致,能帮助我们很好的剖析Cesium的内部渲染机制,也能够对一些复杂的渲染问题,提供一个整体的线索,方便我们对问题的分析定位。

Cesium应用篇:3控件(5)CesiumInspector的更多相关文章

  1. iOS开发UI篇—UIScrollView控件实现图片缩放功能

    iOS开发UI篇—UIScrollView控件实现图片缩放功能 一.缩放 1.简单说明: 有些时候,我们可能要对某些内容进行手势缩放,如下图所示 UIScrollView不仅能滚动显示大量内容,还能对 ...

  2. iOS开发UI篇—UIScrollView控件介绍

    iOS开发UI篇—UIScrollView控件介绍 一.知识点简单介绍 1.UIScrollView控件是什么? (1)移动设备的屏幕⼤大⼩小是极其有限的,因此直接展⽰示在⽤用户眼前的内容也相当有限 ...

  3. iOS开发UI篇—UITableview控件简单介绍

    iOS开发UI篇—UITableview控件简单介绍 一.基本介绍 在众多移动应⽤用中,能看到各式各样的表格数据 . 在iOS中,要实现表格数据展示,最常用的做法就是使用UITableView,UIT ...

  4. iOS开发UI篇—UITableview控件基本使用

    iOS开发UI篇—UITableview控件基本使用 一.一个简单的英雄展示程序 NJHero.h文件代码(字典转模型) #import <Foundation/Foundation.h> ...

  5. iOS开发UI篇—UITableview控件使用小结

    iOS开发UI篇—UITableview控件使用小结 一.UITableview的使用步骤 UITableview的使用就只有简单的三个步骤: 1.告诉一共有多少组数据 方法:- (NSInteger ...

  6. iOS开发UI篇—UIScrollView控件实现图片轮播

    iOS开发UI篇—UIScrollView控件实现图片轮播 一.实现效果 实现图片的自动轮播            二.实现代码 storyboard中布局 代码: #import "YYV ...

  7. 【转】 iOS开发UI篇—UIScrollView控件实现图片轮播

    原文:http://www.cnblogs.com/wendingding/p/3763527.html iOS开发UI篇—UIScrollView控件实现图片轮播 一.实现效果 实现图片的自动轮播 ...

  8. WPF 精修篇 用户控件

    原文:WPF 精修篇 用户控件 增加用户控件 数据绑定还是用依赖属性 使用的事件 就委托注册一下 public delegate void ButtonClick(object b,EventArgs ...

  9. iOS开发——基本常识篇&各种控件默认高度

    各种控件默认高度   1.状态栏 状态栏一般高度为20像素,在打手机或者显示消息时会放大到40像素高,注意,两倍高度的状态栏在好像只能在纵向的模式下使用.如下图 用户可以隐藏状态栏,也可以将状态栏设置 ...

  10. 【转】iOS开发——基本常识篇&各种控件默认高度

    原文:http://www.cnblogs.com/iCocos/p/4595614.html 各种控件默认高度   1.状态栏 状态栏一般高度为20像素,在打手机或者显示消息时会放大到40像素高,注 ...

随机推荐

  1. tab22

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  2. centos下为大硬盘分区(大于2T)

    问题:centos/redhat下使用分区工具fdisk创建大于2TB的分区,无法创建 关键字:MBR.GPT.CHS.LBA MBR:主引导记录 GPT:GUID 分区表 CHS:磁柱 磁头 扇区 ...

  3. nodejs学习之events

    在node里许多对象都发出事件:一个net.Server对象每次一个连接到来,都发出一个事件,一个fs.readStream对象在文件打开时放出一个事件.所有能放出事件的对象都是event.Event ...

  4. WPF整理-使用ResourceDictionary管理Logical Resources

    “Logical resources may be of various types, such as brushes, geometries, styles, and templates.Placi ...

  5. 【noip】noip201503求和(市赛后公布)

    3. 求和 难度级别:B: 运行时间限制:1000ms: 运行空间限制:51200KB: 代码长度限制:2000000B 题目描述   一条狭长的纸带被均匀划分出了n个格子,格子编号从1到n.每个格子 ...

  6. Hibernate一对多配置

    刚刚学习了Hibernate框架的基础知识,下面我来说说关于Hibernate一对多的配置 首先是大配置 连接数据库 用户名 和密码 能和小配置连接 部门小配置: 员工小配置: 部门实体类 员工实体类 ...

  7. C#如何测试代码运行时间

    1.System.Diagnostics.Stopwatch stopwatch = new Stopwatch(); stopwatch.Start(); // 开始监视代码运行时间 // 需要测试 ...

  8. 剑指Offer面试题:7.旋转数组的最小数字

    一.题目:旋转数组的最小数字 题目:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转.输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素.例如数组{3,4,5,1,2}为{1,2 ...

  9. [.net 面向对象程序设计进阶] (12) 序列化(Serialization)(四) 快速掌握JSON的序列化和反序列化

    [.net 面向对象程序设计进阶] (12) 序列化(Serialization)(四) 快速掌握JSON的序列化和反序列化 本节导读: 介绍JSON的结构,在JS中的使用.重点说明JSON如何在.N ...

  10. 让Chrome 接管邮件连接,收发邮件更方便了

    页面中除了传统的超链接外,还可以将邮箱地址写入<a>标签,意思不表自明,当然是用户点击后就会打开相应的邮件客户端向这个连接指向的邮件地址发邮件. <a href="mail ...