Cesium添加全球水材质

Cesium添加全球水材质

实现效果

全球水面

全球水面放大

材质贴图

earthspec1k.jpg
在这里插入图片描述
waterNormals.jpg在这里插入图片描述

关键代码

let worldRectangle;

function createPrimitives(scene) {
	worldRectangle = scene.primitives.add(
      new Cesium.Primitive({
        geometryInstances: new Cesium.GeometryInstance({
          geometry: new Cesium.RectangleGeometry({
            rectangle: Cesium.Rectangle.fromDegrees(-180.0, -90.0, 180.0, 90.0),
            vertexFormat: Cesium.EllipsoidSurfaceAppearance.VERTEX_FORMAT,
          }),
        }),
        appearance: new Cesium.EllipsoidSurfaceAppearance({
          aboveGround: false,
          material: new Cesium.Material({
            fabric: {
              type: 'Water',
              uniforms: {
                specularMap: '../images/earthspec1k.jpg',
                normalMap: Cesium.buildModuleUrl('Assets/Textures/waterNormals.jpg'),
                frequency: 10000.0,
                animationSpeed: 0.01,
                amplitude: 1.0,
              },
            },
          }),
        }),
        show: true,
      }),
    )
}

createPrimitives();
posted @ 2023-06-21 13:10  青花·  阅读(31)  评论(0)    收藏  举报  来源