CumulusCloud

new Cesium.CumulusCloud()

A cumulus cloud billboard positioned in the 3D scene, that is created and rendered using a CloudCollection. A cloud is created and its initial properties are set by calling CloudCollection#add. and CloudCollection#remove.


Example cumulus clouds
Performance:

Similar to Billboard, reading a property, e.g., CumulusCloud#show, takes constant time. Assigning to a property is constant time but results in CPU to GPU traffic when CloudCollection#update is called. The per-cloud traffic is the same regardless of how many properties were updated. If most clouds in a collection need to be updated, it may be more efficient to clear the collection with CloudCollection#removeAll and add new clouds instead of modifying each one.

Demo:
See:

Members

brightness : Number

Gets or sets the brightness of the cloud. This can be used to give clouds a darker, grayer appearance.

cloud.brightness = 1.0;
cloud.brightness = 0.6;
cloud.brightness = 0.0;
Default Value: 1.0
Sets the color of the cloud
Default Value: Color.WHITE

Gets or sets the maximum size of the cumulus cloud rendered on the billboard. This defines a maximum ellipsoid volume that the cloud can appear in. Rather than guaranteeing a specific size, this specifies a boundary for the cloud to appear in, and changing it can affect the shape of the cloud.

Changing the z-value of maximumSize has the most dramatic effect on the cloud's appearance because it changes the depth of the cloud, and thus the positions at which the cloud-shaping texture is sampled.

cloud.maximumSize = new Cesium.Cartesian3(14, 9, 10);
cloud.maximumSize.x = 25;
cloud.maximumSize.y = 5;
cloud.maximumSize.z = 17;

To modify the billboard's actual size, modify the cloud's scale property.

See:
Gets or sets the Cartesian position of this cumulus cloud.

Gets or sets the scale of the cumulus cloud billboard in meters. The scale property will affect the size of the billboard, but not the cloud's actual appearance.

cloud.scale = new Cesium.Cartesian2(12, 8);
cloud.scale = new Cesium.Cartesian2(24, 10);

To modify the cloud's appearance, modify its maximumSize and slice properties.

See:

show : Boolean

Determines if this cumulus cloud will be shown. Use this to hide or show a cloud, instead of removing it and re-adding it to the collection.
Default Value: true

slice : Number

Gets or sets the "slice" of the cloud that is rendered on the billboard, i.e. the specific cross-section of the cloud chosen for the billboard's appearance. Given a value between 0 and 1, the slice specifies how deeply into the cloud to intersect based on its maximum size in the z-direction.

cloud.slice = 0.32;
cloud.slice = 0.5;
cloud.slice = 0.6;

Due to the nature in which this slice is calculated, values below 0.2 may result in cross-sections that are too small, and the edge of the ellipsoid will be visible. Similarly, values above 0.7 will cause the cloud to appear smaller. Values outside the range [0.1, 0.9] should be avoided entirely because they do not produce desirable results.

cloud.slice = 0.08;
cloud.slice = 0.8;

If slice is set to a negative number, the cloud will not render a cross-section. Instead, it will render the outside of the ellipsoid that is visible. For clouds with small values of `maximumSize.z`, this can produce good-looking results, but for larger clouds, this can result in a cloud that is undesirably warped to the ellipsoid volume.

cloud.slice = -1.0;
cloud.maximumSize.z = 18;

cloud.slice = -1.0;
cloud.maximumSize.z = 30;

Default Value: -1.0
Need help? The fastest way to get answers is from the community and team on the Cesium Forum.