今天我们来做下智慧城市建筑群泛光的效果。效果如下图所示:

1、素材准备

(1)白模的3dtiles数据。这个可以通过cesiumlab来生成,一般情况下,有shapefile面数据,即可通过cesiumlab进行高度拉伸生成。

(2)cesium源码。这里使用的是1.75.0版本。

2、原理剖析

由于cesium并没有提供类似的api,只能通过修改源码实现。有其他大神相关的帖子可以参考,本文也参考了一些其他人的做法,再此先感谢过。

首先,实现的原理是通过修改着色器实现的。在粗略的研究下,可以得知,cesium的加载方式大致如下:

加载数据----通过着色器渲染----展示到屏幕上。

且cesium只会渲染一次,并不会每帧渲染,这个跟其他一些游戏引擎并不一样。

然后,我们需要想办法介入其着色器的修改过程。这里参考了网上大神的帖子,后面章节直接给出操作方式。

3、修改源码

需要修改两处地方,第一处在行145604左右的地方,插入如下代码。这里给出上下文,可以根据代码关键字进行搜索。

【Cesium】智慧城市建筑白模泛光特效相关推荐

  1. cesium中添加建筑白模

    1.在cesium中添加模型依赖于Cesium ion帐户的资产id,在这里创建账户. 2.上传模型(模型文件类型在Cesium ion中有说明,模型的提取办法可在这里查看)到账户中并平铺为3D Ti ...

  2. cesium 智慧城市态势管理系统介绍

    个人博客,已转移至http://www.zgeo.work:8022/wordpress 一直想写个cesium的实例系统,一直不能成行,感觉写了没啥用,一直拖托.在一个机缘巧合的情况下,有了写系统的 ...

  3. 边缘计算赋能智慧城市:机遇与挑战

    本文系国家重点研发计划项目和国家自然科学基金联合基金重点支持项目的阶段性研究成果,项目编号分别为:2018YFB0204100.U1911201:胡淼.吴润.陈嘉文.谢自轩等对本文亦有贡献. [摘要] ...

  4. Cesium实现建筑物泛光特效,使用自定义shader实现源码

    自从Cesium1.87以后的版本,提供了方便的自定义shader的接口,从而不用修改源码,就可以方便的实现很多自定义的特效,这对Cesium的从业人员来说是一个极大的好消息,所用到的接口是 Cesi ...

  5. 城市建筑三维白膜数据的制作

    城市建筑数据,指的是一个城市的建筑平面轮廓图,跟某栋建筑的详规.控规图纸不一样,而是城市范围内所有建筑的轮廓,轮廓可以简单的就一个矩形,或者多边形封闭区域,表达的是在这个区域内有栋建筑,不需要详细的信 ...

  6. ArcGIS Pro实现I3S城市白模更新

    简介 在之前的文章当中介绍过,白模属于3DObject类型的数据.如何实现城市白模数据的更新?这需要提前对数据做一些设置.本文同样适用于精模(FBX.OBJ)等类型的SLPK. 所需环境和数据 所需环 ...

  7. 打造宜居韧性智慧城市,武汉“智”理有模 华为云有样

    楚天雄风展,江涛声声慢! 作为"国家九大中心城市之一""新一线城市",江城武汉在"打造宜居.韧性.智慧城市"的新指引下,正以城市云为基座,加 ...

  8. 广和通Cat.1模组与亚华物联智慧燃气表组成“CP”,高效赋能智慧城市建设

    近期,因"价格"再夺眼球的Cat.1产品持续登上"物联网热搜",在中低速率连接领域再次出圈.相较NB-IoT,通信能力更强.适用性更广的Cat.1更能满足大多数 ...

  9. 最新会议:第二届绿色建筑、土木工程与智慧城市国际会议(GBCESC 2023)

    第二届绿色建筑.土木工程与智慧城市国际会议(GBCESC 2023)将于2023年7月21日-23日在贵阳召开.会议由贵州大学主办,桂林理工大学.中南大学.苏州大学.西安建筑科技大学.ACI美国混凝土 ...

最新文章

  1. Python 动态变量名定义与调用
  2. 《ASCE1885的信息安全》の使用Crypto++的MD5算法对字符串进行哈希
  3. C、CPP const 详解
  4. 【远程沟通】“云答辩”“云招聘”双管齐下,解救“最难毕业生”
  5. 使用MariaDB后端在Ubuntu 18.04 / Debian 9上安装PowerDNS和PowerDNS-Admin
  6. 三星uboot1.1.6源码分析——start.s(1)
  7. bzoj 4514: 数字配对
  8. c语言入门教程怎么编程,从零开始的C语言入门教程-编程语言的基础
  9. matlab串级控制系统设计,SVPWM在串级调速系统中的MATLAB仿真研究
  10. 440 亿美元成交!Twitter 「卖身」马斯克
  11. MvvmLazy Android懒人框架
  12. 企业微信收款后可以进行退款吗?如何操作?
  13. PDF文件太大怎么压缩,一分钟学会压缩PDF
  14. java mp4 合并_使用 Python 把多个 MP4 合成一个视频
  15. 《Precise and realistic grasping and manipulation in Virtual Reality without force feedback》论文解读
  16. python自动获取cookie_python如何获取cookie
  17. gsoap使用方法及心得
  18. Python中匿名函数详解
  19. 管理计算机管理没有其他设备,电脑里的设备管理器没有怎么办
  20. Charles抓包的使用步骤

热门文章

  1. html5倒计时秒杀怎么做,如何让秒杀、活动倒计时更精确?
  2. skyline三维地图与arcgis二维地图联动
  3. 北京大学计算机考研资料汇总
  4. Usage of API documented as @since 1.8+ less... (Ctrl+F1) Inspection info: This inspection finds all
  5. 连续变量的全概率和贝叶斯公式_浅谈条件概率、全概率公式和贝叶斯公式
  6. 软考高级 真题 2010年上半年 信息系统项目管理师 综合知识
  7. Java小技巧输出26个英文字母,不用一个一个手打
  8. Git使用学习(七、版本回滚)
  9. Error:Attempt to invoke virtual method ‘void android.widget.TextView.setText(java.lang.CharSeq
  10. Ubuntu和win10系统(N卡)