材料决定了 MeshComponent 的可视化方式。此特殊材料 (基于 MeshMaterial) 使用金属/粗糙度光照模型来启用基于物理的光照。金属和粗糙度属性可用于模拟各种现实材料,包括金属和塑料。
在这张图片中,您可以看到 metallic 和 roughness 属性值是如何影响材质显示的:
metallicRoughnessTexture 可用于映射模型不同部分的特定金属/粗糙度属性。
构造函数
属性概述
名称 | 类型 | 描述 | 类 |
---|---|---|---|
Number | 指定如何处理对象上的透明度。 更多详情 | MeshMaterial | |
String | 指定如何处理对象上的透明度。 更多详情 | MeshMaterial | |
Color | 为格网组件指定单一的统一颜色。 更多详情 | MeshMaterial | |
MeshTexture | 指定要从中获取颜色信息的纹理。 更多详情 | MeshMaterial | |
String | 类的名称。 更多详情 | Accessor | |
Boolean | 指定是显示每个三角形的两边,还是仅显示正面。 更多详情 | MeshMaterial | |
Color | 为 MeshComponent 指定单个统一的发光颜色。 更多详情 | MeshMaterialMetallicRoughness | |
MeshTexture | 指定要从中获取发光颜色信息的纹理。 更多详情 | MeshMaterialMetallicRoughness | |
Number | 指定材料与金属之间的相似程度。 更多详情 | MeshMaterialMetallicRoughness | |
MeshTexture | 指定要从中获取组合金属/粗糙度信息的纹理。 更多详情 | MeshMaterialMetallicRoughness | |
MeshTexture | 指定要从中获取常规信息的纹理。 更多详情 | MeshMaterial | |
MeshTexture | 允许指定从中获取遮挡信息的纹理。 更多详情 | MeshMaterialMetallicRoughness | |
Number | 指示材料表面的粗糙度。 更多详情 | MeshMaterialMetallicRoughness |
属性详细信息
-
指定如何处理对象上的透明度。如果 alphaMode 设置为
mask
或auto
,则此属性可指定掩膜发生的中断值 (即,Mesh 的对应部分被渲染为完全透明)。- 默认值:0.5
-
指定如何处理对象上的透明度。另请参阅 alphaCutoff。
类型 描述 opaque Alpha 将被忽略,并且对象将渲染为完全不透明。 blend Alpha 值用于渐变透明,在对象及其背景之间混合。 mask Alpha 值用于二进制透明度,其显示对象或背景值。另请参阅 alphaCutoff。 auto 该实现混合了 mask
和blend
设置,在alphaCutoff
之下进行掩膜,在之上进行混合。可能值:"auto"|"blend"|"opaque"|"mask"
- 默认值:"auto"
-
为格网组件指定单一的统一颜色。这可自动使用命名字符串、十六进制字符串、rgb 或 rgba 值数组、具有
r
、g
、b
和a
属性的对象,或 Color 对象。
-
-
指定要从中获取颜色信息的纹理。使用 Mesh.vertexAttributes 中为每个折点指定的 uv 坐标访问纹理。
-
类的名称。声明的类名称格式化为
geoscene.folder.className
。
-
指定是显示每个三角形的两边,还是仅显示正面。
- 默认值:true
-
为 MeshComponent 指定单个统一的发光颜色。emissiveColor 被添加到组件的基色中。这可自动使用命名字符串、十六进制字符串、rgb 值数组、具有
r
、g
、b
属性的对象,或 Color 对象。请注意,对于发光颜色,会忽略 alpha 通道。
-
emissiveTexture MeshTextureautocast
-
指定要从中获取发光颜色信息的纹理。使用格网折点属性中为每个折点指定的 uv 坐标访问纹理。纹理中的颜色被添加到组件的基色中。当同时使用
emissiveTexture
和 emissiveColor 时,它们的值会相乘,然后添加到组件的基色中。
-
metallic Number
-
指定材料与金属之间的相似程度。值必须在 0(非金属材料)到 1(金属材料)的范围内。物理上精确的材料通常是金属 (1) 或非金属 (0),而不是介于两者之间的东西。
- 默认值:1
-
metallicRoughnessTexture MeshTextureautocast
-
指定要从中获取组合金属/粗糙度信息的纹理。金属值应存储在
blue
通道中,而粗糙度值应存储在green
通道中。red
和alpha
通道被忽略。使用格网折点属性中为每个折点指定的 uv 坐标访问纹理。
-
-
指定要从中获取常规信息的纹理。使用 Mesh.vertexAttributes 中为每个折点指定的 uv 坐标访问纹理。
-
occlusionTexture MeshTextureautocast
-
允许指定从中获取遮挡信息的纹理。这可用来模拟环境光对物体的影响。使用格网折点属性中为每个折点指定的 uv 坐标访问纹理。遮挡值应编码在纹理的红色通道中。
-
roughness Number
-
指示材料表面的粗糙度。值必须在 0(完全光滑的表面)到 1(完全漫射的表面)的范围内。
- 默认值:1
方法概述
名称 | 返回值类值 | 描述 | 类 |
---|---|---|---|
添加一个或多个与对象的生命周期相关联的句柄。 更多详情 | Accessor | ||
Boolean | 如果存在指定的句柄组,则返回 true。 更多详情 | Accessor | |
移除对象拥有的句柄组。 更多详情 | Accessor |
方法详细说明
-
addHandles(handleOrHandles, groupKey)inherited起始版本:GeoScene Maps SDK for JavaScript 4.25
-
添加一个或多个与对象的生命周期相关联的句柄。当对象被销毁时,将移除句柄。
// Manually manage handles const handle = reactiveUtils.when( () => !view.updating, () => { wkidSelect.disabled = false; }, { once: true } ); // Handle gets removed when the object is destroyed. this.addHandles(handle);
参数handleOrHandles WatchHandle|WatchHandle[]对象销毁后,标记为要移除的句柄。
groupKey *optional标识句柄应添加到的组的键。组中的所有句柄稍后都可使用 Accessor.removeHandles() 进行删除。如果未提供键,则句柄将被添加到默认组。
-
起始版本:GeoScene Maps SDK for JavaScript 4.25
-
如果存在指定的句柄组,则返回 true。
参数groupKey *optional组键。
返回类型 描述 Boolean 如果存在指定的句柄组,则返回 true
。示例// Remove a named group of handles if they exist. if (obj.hasHandles("watch-view-updates")) { obj.removeHandles("watch-view-updates"); }
-
removeHandles(groupKey)inherited起始版本:GeoScene Maps SDK for JavaScript 4.25
-
移除对象拥有的句柄组。
参数groupKey *optional要移除的组键或组键的数组或集合。
示例obj.removeHandles(); // removes handles from default group obj.removeHandles("handle-group"); obj.removeHandles("other-handle-group");