可能我没表述清楚,这样说吧,我用箭头图片自定义了一个流动材质,然后在绘制的线中使用这个材质。那这个线的效果就是从起点到终点只有一个箭头。我想要的是这个箭头流动纹理在这个线上均匀分布,类似于图片材质repeat属性,这个需要在着色器上怎么修改呢 登录以回复
npm cesium1.16.8引用方式为模块化引入import{ Cartesian3} from “cesium”; 无法获取Cesium对象,也无法用如下方式设置属性Cesium.PolylineTrailLinkMaterialProperty = PolylineTrailLinkMaterialProperty; 如何集成呢?求大神指导。谢谢! 登录以回复
大神您好,创建好entity后又修改meterial,把它重新赋给entity就不行,还是原来的质材,请问如何动态修改meterial呀,代码如下,谢谢大神 let meterial = new Cesium.PolylineTrailLinkMaterialProperty(cesiumColor, speed, cvs); Entity.polyline.meterial=meterial; 登录以回复
PolylineTrailLinkMaterialProperty.prototype.equals 里面的Property(报错的地方) 改成 Cesium.Property; 调用方式增加了代码 你改了再试一下 登录以回复
你好,我把材质设置了一个duration之后赋给了一个wall,又设置了不同的duration之后赋给了另一个wall,但是第二个wall的流动速率跟第一个是一致的,没有改变,我想让两个wall的流动速率不同,请问这个应该怎么解决? 登录以回复
使用 materialInput.st 可以拿到 0~1 的坐标系,拿 0~实际大小 的坐标系的时候遇到了几个问题想问下: 1. 0~实际大小的坐标系可以用 gl_FragCoord.xy,但是做出的材质不是固定在几何体上而是会随屏幕的移动而移动,并且改变俯仰角(pitch),材质始终会面向屏幕。 2. 我用 dFdx() 和 dFdy() 通过换算能够拿到坐标系,材质也不会随屏幕移动或者始终面向屏幕,但是缩放后会非常不清晰,变成类似雪花屏的样子,代码如下 vec2 get_coord(vec2 st) { vec2 dx = dFdx(st); vec2 dy = dFdy(st); float pixel_size_x = length(dx); float pixel_size_y = length(dy); return vec2(st.x / pixel_size_x, st.y / pixel_size_y); } 想问下怎么解决这个问题,非常感谢! 登录以回复
新版的Cesium.defineProperties 已经被改掉 改为Object.defineProperties
跪谢老哥!!解答了我的疑惑
请问如何集成到cesium中去呢
写到自己的代码里面去不就行了?
动态线怎么可以重复渲染?
什么叫重复渲染?
如果是想多条线都动态渲染,就写个材质,每条线的材质都设置成这个材质
可能我没表述清楚,这样说吧,我用箭头图片自定义了一个流动材质,然后在绘制的线中使用这个材质。那这个线的效果就是从起点到终点只有一个箭头。我想要的是这个箭头流动纹理在这个线上均匀分布,类似于图片材质repeat属性,这个需要在着色器上怎么修改呢
已经解决
赞~~
怎么做的啊 求解
请问colors1.png图片是什么样的吗,能给我一份吗
加一
npm cesium1.16.8引用方式为模块化引入import{ Cartesian3} from “cesium”; 无法获取Cesium对象,也无法用如下方式设置属性Cesium.PolylineTrailLinkMaterialProperty = PolylineTrailLinkMaterialProperty;
如何集成呢?求大神指导。谢谢!
请问这个问题解决了吗?我也遇到了同样的问题
大神,多条线动态渲染就会报错,您能给我给个画多条动态线的例子吗,十分感谢
大神您好,创建好entity后又修改meterial,把它重新赋给entity就不行,还是原来的质材,请问如何动态修改meterial呀,代码如下,谢谢大神
let meterial = new Cesium.PolylineTrailLinkMaterialProperty(cesiumColor, speed, cvs);
Entity.polyline.meterial=meterial;
PolylineTrailLinkMaterialProperty.prototype.equals 里面的Property(报错的地方) 改成 Cesium.Property;
调用方式增加了代码
你改了再试一下
报错的地方已经按您说的改了,不报错了,我是实时修改material时不起作用,后来发现是material写错了,已解决,谢谢大神
请问下大佬如何在循环实体中设置每个实体展现出来的线条都是流动的样式?
为什么没有找到cesium。的defineproperties属性,还有这个评论为啥不让输入英文。。。
有大佬会调整动态纹理的流向吗。。。
http://cesium.xin/wordpress/archives/webgl-texture.html
嗯,我想实现的是在这个代码层次上,修改让图片斜向移动或者反向移动这样的,请问大佬这样能实现吗
你好,我把材质设置了一个duration之后赋给了一个wall,又设置了不同的duration之后赋给了另一个wall,但是第二个wall的流动速率跟第一个是一致的,没有改变,我想让两个wall的流动速率不同,请问这个应该怎么解决?
http://cesium.xin/wordpress/archives/cesium-custom-entity-dynamic-improve.html
解决了,谢谢!
使用 materialInput.st 可以拿到 0~1 的坐标系,拿 0~实际大小 的坐标系的时候遇到了几个问题想问下:
1. 0~实际大小的坐标系可以用 gl_FragCoord.xy,但是做出的材质不是固定在几何体上而是会随屏幕的移动而移动,并且改变俯仰角(pitch),材质始终会面向屏幕。
2. 我用 dFdx() 和 dFdy() 通过换算能够拿到坐标系,材质也不会随屏幕移动或者始终面向屏幕,但是缩放后会非常不清晰,变成类似雪花屏的样子,代码如下
vec2 get_coord(vec2 st) {
vec2 dx = dFdx(st);
vec2 dy = dFdy(st);
float pixel_size_x = length(dx);
float pixel_size_y = length(dy);
return vec2(st.x / pixel_size_x, st.y / pixel_size_y);
}
想问下怎么解决这个问题,非常感谢!