1、粒子效果
2、加载场景
3、不同粒子效果实现
在做3D项目时,我们经常需要模拟下雨,下雪的天气,有时也会模拟喷泉、着火等效果。这些效果需要使用名为粒子系统(particle)的技术来实现。使用ThingJS可以快速编写粒子效果,比如:下雨、下雪(可以控制雨雪大小)、喷水、火焰效果等,甚至可以通过对接第三方的数据,实时控制三维场景的效果(比如:对接天气接口)。
1、粒子效果
ThingJS 提供 ParticleSystem 物体类来实现粒子效果。自己制作粒子效果需要图片处理、写代码、3D渲染, 是个很艰巨的任务,需要掌握大量 3D 算法知识,还要掌握 shader 语言。ThingJS封装了粒子效果的实现方法,减少了代码量和开发投入,更受3D开发初学者的欢迎,直接用query查询API接口,在场景中加入火焰效果。
ThingJS内置一些粒子效果可以直接调用,可点击在线开发选择代码块进行调用。
2、 加载场景
CampusBuilder(又称模模搭)搭建场景完成后,在ThingJS直接加载url进行二次开发。

// 加载场景代码
var app = new THING.App({url: 'https://www.thingjs.com/static/models/storehouse' // 场景地址
});

3、不同粒子特效实现
火焰效果

代码如下:

/*** 通过创建粒子实现火焰效果*/
function createFire() {resetAll();// 创建粒子var particle = app.create({id: 'fire01',type: 'ParticleSystem',name: 'Fire',parent: app.query('car01')[0],url: 'https://model.3dmomoda.com/models/19061018snbajhvuzrheq9sbgwdoefuk/0/particles',localPosition: [0, 0, 0] // 设置粒子相对于父物体的位置});
}

飘雪效果

代码如下:

/*** 通过创建粒子实现飘雪效果*/
function createSnow() {resetAll();// 创建降雪效果var particleSnow = app.create({type: 'ParticleSystem',id: 'No1234567',name: 'Snow',url: 'https://model.3dmomoda.com/models/18112014q3t8aunaabahzxbxcochavap/0/particles',position: [0, 50, 0]});
}

喷水效果

代码如下:

/*** 通过创建粒子实现喷水效果*/
function createWater() {resetAll();// 创建喷水效果var particle = app.create({id: 'water01',type: 'ParticleSystem',name: 'Water',url: 'https://model.3dmomoda.com/models/19081611ewlkh7xqy71uzixefob8uq1x/0/particles',position: [0, 0, 5]});
}

降雨效果

代码如下:

/*** 通过创建粒子实现降雨效果*/
function createByParticle() {resetAll();// 创建粒子var particle = app.create({type: 'ParticleSystem',name: 'Rain',url: 'https://model.3dmomoda.com/models/18112113d4jcj4xcoyxecxehf3zodmvp/0/particles',position: [0, 300, 0],complete: function (ev) {ev.object.scale = [10, 10, 10];}});// 设置粒子最大密度particle.setGroupAttribute('maxParticleCount', 1000);// 设置粒子最小密度particle.setParticleAttribute('particleCount', 500);}

雨雪天气,是通过粒子图片渲染来实现的,我们可以通过控制粒子数量的最大密度和最小密度来实现降雨降雪量大小。
清除粒子效果

function resetAll() {// 获取当前已创建的粒子var particle = app.query('.ParticleSystem');// 判断当前有无创建的粒子if (particle) {// 存在,将已创建的粒子删除particle.destroy();}
}

结尾:
ThingJS面向物联网的3D可视化开发平台拥有强大的物联网开发逻辑,ThingJS 为可视化应用提供了简单、丰富的功能,只需要具有基本的 Javascript 开发经验即可上手。使用者通过接入平台api,轻松集成3D可视化界面,场景搭建-在线开发-数据对接-项目部署,让开发更高效!

ThingJS粒子特效一键实现雨雪效果相关推荐

  1. UE4 粒子特效基础学习 (04-光圈效果制作)

    在上一个博客(UE4 粒子特效基础学习 (03-制作上升光线特效))的基础上继续完成光圈效果的制作 . 效果: 步骤: 1.打开PS软件,新建一个文档,宽高都设为512 2.ctrl+R打开标尺 3. ...

  2. unity3d 气泡效果_Unity粒子特效插件打造冰与水物语

    原标题:Unity粒子特效插件打造冰与水物语 粒子系统用于在三维空间渲染一些二维图像,在游戏中模拟一些逼真的烟雾.火焰.雨.雪.冰.沙尘及爆炸等效果,而一般来说,水特效是其中最具挑战性的.今天我们就为 ...

  3. Unity中使用粒子特效(Particle System)制作烟花和烛光效果

    Unity中使用粒子特效(Particle System)制作烟花和烛光效果 烟花 烛光 烟花 Unity&烟花效果实例 烛光 Unity3d粒子特效:制作火焰效果 由于烛光的火焰是比较稳定的 ...

  4. unity3d 气泡效果_unity游戏水泡气泡肥皂泡粒子特效Jiggly Bubble v1.31

    unity游戏水泡气泡肥皂泡粒子特效Jiggly Bubble v1.31,这是一个粒子效果库,包含12个Shuriken粒子系统预制件,用于制作肥皂泡.水下气泡.沸腾气泡和汽水及碳酸饮料气泡的动画. ...

  5. Unity UGUI NGUI 模型 粒子特效 三者之间 渲染层级设置

    目录 1.介绍两大UI插件NGUI和UGUI  2.unity渲染顺序控制方式  3.NGUI的控制  4.UGUI的控制  5.模型深度的控制  6.粒子特效深度控制  7.NGUI与模型和粒子特效 ...

  6. html5粒子形成图案,html5 canvas粒子形成下雪背景的效果

    本篇文章给大家带来的内容是关于html5 canvas粒子形成下雪背景的效果,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. canvas粒子形成下雪背景 body{ margin: ...

  7. 【IOS-COCOS2D游戏开发之十】添加粒子系统特效并解决粒子特效与LAYER之间的坐标问题;...

    本站文章均为 李华明Himi 原创,转载务必在明显处注明: 转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/iphone-cocos2d/472.html ...

  8. Silverlight 解谜游戏 之四 粒子特效

    前几篇一直在Blend中工作没体现出开发者的作用,本篇将为订书器(Stapler)添加自定义粒子效果,当订书器被点击时产生更好的视觉效果.其中将使用到nerdplusart 的Silverlight ...

  9. yanobox nodes 3 Mac新一代点线粒子特效运动图形插件

    Yanobox Nodes 3.0.3 for Mac版是一款适用于Mac操作系统的粒子特效插件,可直接使用于fcpx和ae软件.打开Final Cut Pro X,在已经安装好的[发生器]中,你会看 ...

最新文章

  1. 看有道难题比赛有恶心感 ,付源码挑战,博客园目前纯速度最快。
  2. ucosii事件控制块------消息邮箱与消息队列
  3. LinearLayout、RelativeLayout、FrameLayout居中显示
  4. 面试最后HR都要问一句有没有什么问题要问我?
  5. android 9.0 一加6,一加6终于升级到安卓9.0,但这两个BUG令人遗憾!
  6. FineUI 选中多行获取行ID
  7. python excel取列_python取excel表格第一列数据-python操作excel,使用xlrd模块,获取某一列数据的......
  8. openmv 神经网络 超出内存_【openmv】openmv各种bug问题记录
  9. 微服务集成cas_Spring Cloud(四) Spring Cloud Security集成CAS (单点登录)对微服务认证...
  10. 物理层接口特性、数据通信模型、物理层基本概念(数据、信号、码元 、信源、信道、信宿 、速率、波特、带宽)...
  11. check mk mysql_Mysql管理必备工具Maatkit详解之四(mk-duplicate-key-checker)
  12. 关于instanceof、isinstance和isAssignableFrom的区别
  13. 计算机网络暗地里范围,《计算机网络应用技术教程》期中试题.doc
  14. 计算机英语词汇_通信人必备英语词汇大全
  15. [译] APT分析报告:05.Turla新型水坑攻击后门(NetFlash和PyFlash)
  16. 【LBS】高德地图、百度地图的经纬度科普|MySQL和编程语言是如何计算两个坐标之间的距离?
  17. vs2019键盘钩子_低级键盘钩子回调函数
  18. 二本学院计算机专业的考研er如何顺利上岸?
  19. 存储系列篇之IDE、SATA、SCSI、SAS、FC、SSD等概念介绍
  20. iPhone模拟器突然开始运行非常慢

热门文章

  1. 灌装机的灌装结构设计及仿真(lunwen+任务书+开题+文综+翻译及原文+答辩PPT+cad图纸+UG模型及运动仿真)
  2. 索引(从零开始)必须大于或等于零,且小于参数列表的大小的错位问题
  3. CAD二次开发 ZOOM 居中视野
  4. 账龄分析表excel模板_商品分析之季度订货分析表 | 附模板 |商品管理
  5. v3S编译大全(uboot 主线linux buildroot)
  6. UE4C++学习篇(六)--- 碰撞组件的Overlap处理
  7. [下载]黑莓BlackBerry开发官方文档系列
  8. L101. 对称二叉树/镜像二叉树
  9. 20130822-STM8L101F3P6的PD0使用异常,尚未解决~!
  10. python curses_简单的Python的curses库使用教程