ceisum粒子系统实现爆炸效果

阅读: 评论:0

ceisum粒⼦系统实现爆炸效果
啥是粒⼦系统?概念听起来总是如此⾼深。
其实,简单的说,就是通过对⼤量的每⼀个微⼩粒⼦的控制(颜⾊、位置运动),来模拟某些场景。⽐如,模拟爆炸、下⾬、烟雾、等特效什么的。
这⾥以ceisum中实现爆炸特效为例,介绍如何在ceisum中实现爆炸效果。
棉花糖制造机爆炸特效实现的关键有两点:
1、漂亮的png透明⽕灾爆炸图(需要PS抠图,百度搜⼀下素材及做法)
2、创建⼀个粒⼦系统对象,设定参数
创建粒⼦对象
var staticPosition = Cesium.Cartesian3.fromDegrees(112,22,50);
var entity44 = ities.add({
position : staticPosition
})
function computeModelMatrix(entity, time){
var position = ValueOrUndefined(entity.position);
let modelMatrix = Cesium.Transforms.eastNorthUpToFixedFrame(position);
return modelMatrix;
}
function computeEmitterModelMatrix(){
let  hpr = Cesium.HeadingPitchRoll.fromDegrees(0,0,0);
let trs =new Cesium.TranslationRotationScale();
let result=Cesium.Matrix4.fromTranslationRotationScale(trs);
return result
}
viewer.scene.primitives.add(new Cesium.ParticleSystem({
image :'./Apps/SampleData/fire.png',棉花糖制造机
startColor : Cesium.Color.RED.withAlpha(0.7),
endColor : Cesium.Color.YELLOW.withAlpha(0.3),
startScale :0,
endScale :10,
//设定粒⼦寿命可能持续时间的最⼩限值(以秒为单位),在此限值之上将随机选择粒⼦的实际寿命。
minimumParticleLife :1,
maximumParticleLife :6,
minimumSpeed :1,
maximumSpeed :4,
imageSize :new Cesium.Cartesian2(55,55),
// Particles per second.
emissionRate :4,
lifetime :160.0,
//cesium内置的发射器,圆形发射器,因此参数是⼀个半径值
锐射//还有锥形发射器,new Cesium.ConeEmitter(Radians(45.0))
//长⽅形发射器,new Cesium.BoxEmitter(new Cesium.Cartesian3(1.0, 1.0, 1.0))
//半球发射器,new Cesium.SphereEmitter(0.5)
无烟烧烤炉
emitter :new Cesium.CircleEmitter(5.0),
//将粒⼦系统从模型转换为世界坐标的4x4变换矩阵
modelMatrix :computeModelMatrix(entity44),
//在粒⼦系统局部坐标系中变换粒⼦系统发射器的4x4变换矩阵
emitterModelMatrix :computeEmitterModelMatrix()
}))
注意:如果发现爆炸效果⽆法按预期实现动画效果,检查⼀下是否开启了shouldAnimate new Cesium.siumContainer, {
电子煎药壶>输出滤波器shouldAnimate: true,
})

本文发布于:2023-05-16 11:58:53,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/2/101571.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:系统   爆炸   发射器
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图