earthsdk之tileset样式调整
作者:互联网
earthsdk之tileset样式调整
// 注意shader中写浮点数是,一定要带小数点,否则会报错,比如0需要写成0.0,1要写成1.0 float _baseHeight = 0.0; // 物体的基础高度,需要修改成一个合适的建筑基础高度 float _heightRange = 60.0; // 高亮的范围(_baseHeight ~ _baseHeight + _heightRange) 默认是 0-60米 float _glowRange = 300.0; // 光环的移动范围(高度)// 建筑基础色 float vtxf_height = v_stcVertex.z - _baseHeight; float vtxf_a11 = fract(czm_frameNumber / 120.0) * 3.14159265 * 2.0; float vtxf_a12 = (vtxf_height+50.0) / _heightRange + sin(vtxf_a11) * 0.1; // +50.0可以将渐变下移,遮挡住渐变的黑色部分 gl_FragColor *= vec4(vtxf_a12, vtxf_a12, vtxf_a12, 1.0); // vtxf_a12改为1.0可直接将渐变样式取消改为白色 // gl_FragColor *= vec4(1.0, 1.0, 1.0, 1.0);
// 动态光环 float vtxf_a13 = fract(czm_frameNumber / 360.0); float vtxf_h = clamp(vtxf_height / _glowRange, 0.0, 1.0); vtxf_a13 = abs(vtxf_a13 - 0.5) * 2.0; float vtxf_diff = step(0.005, abs(vtxf_h - vtxf_a13)); gl_FragColor.rgb += gl_FragColor.rgb * (1.0 - vtxf_diff);
钻研不易,转载请注明出处。。。。。。
标签:tileset,1.0,a13,a12,样式,float,vtxf,earthsdk,FragColor 来源: https://www.cnblogs.com/s313139232/p/16351238.html