Water
大约 1 分钟
Water
水面,继承自Thing,拥有Thing、THREE.Object3D一切属性和方法。
构造器
new VT.Water({
    // 几何造型类型,可选 Plane 和 Polygon,当选择为 Polygon 时, points 需要独立赋值
    geometryType: "Plane",
    geometry: {
        width: 10,
        height: 10,
    },
    // 点位,[[x, y, z], [x, y, z]...] 可选
    points: [],
    // 材质
    material: {
        // 材质参数
        uniforms: {
            // 生成纹理宽度,可选:256、512、1024、2048
            textureWidth: 512,
            // 生成纹理高度,可选:256、512、1024、2048
            textureHeight: 512,
            // 水纹理图片
            waterNormals: "",
            // 时间初始值 
            time: 0,
            // 角度
            clipBias: 0.8,
            // 角度
            alpha: 0.9,
            // 光线颜色 
            sunColor: 0xffffff,
            // 水面颜色 
            waterColor: "#003399",
            // 扭曲比例
            distortionScale: 1.0,
            //是否受雾影响
            fog: true,
            // 水面波动速度,为0静止
            speed: 0,
        }
    },
})
属性成员
isSync
- 类型: 
{Boolean}是否异步对象,是,不可修改 
isWater
- 类型: 
{Boolean}是否水面物体,是,不可修改 
type
- 类型:
{String}Water,不可修改 
water
- 类型:
{ThreeWater}ThreeWater 实例 
方法
updateGeometry
更新几何造型参数
- updateGeometry(geometry)
 - 类型:
Function - 参数: 
- geometry 
{Object}几何造型参数- width 
{Number}宽度 - height 
{Number}高度 
 - width 
 
 - geometry 
 - 返回:无
 
setGeometry
设置水面的几何实例
- setGeometry(geometryInstance)
 - 类型:
Function - 参数: 
- geometryInstance 
{THREE.BufferGeometry|VT.Geometry}几何实例 
 - geometryInstance 
 - 返回:无
 
事件
loaded
水面贴图加载后触发
water.addEventListener("loaded", () => {
    // 加载完成
});