RenderablesFilter QML Type
定义了一个过滤器,用于选择在pass 中要影响哪些可渲染对象。更多...
| Import Statement: | import QtQuick3D |
| Since: | Qt 6.11 |
| Inherits: |
属性
- layerMask : int
- renderableTypes : enumeration
详细说明
RenderablesFilter 类型用于指定场景中哪些可渲染对象应受RenderPass 的影响。通过设置renderableTypes 属性,您可以控制该渲染通道是影响不透明对象、透明对象,还是完全不影响任何对象。
当RenderPass 作为SubRenderPass 命令的容器,且自身不应渲染任何场景对象时,将renderableTypes 设置为None 非常有用。
除了按可渲染类型进行过滤外,您还可以使用layerMask ,根据对象分配的layers 进一步细化受影响的可渲染对象。
// A pass that renders only opaque scene objects
RenderPass {
id: opaquePass
commands: [
ColorAttachment { name: "color0"; target: opaqueColorTexture },
DepthTextureAttachment { target: depthTexture },
RenderablesFilter {
renderableTypes: RenderablesFilter.Opaque
}
]
}
// A pass that renders only transparent objects on top
RenderPass {
id: transparentPass
commands: [
ColorAttachment { name: "color0"; target: transparentColorTexture },
RenderablesFilter {
renderableTypes: RenderablesFilter.Transparent
}
]
}属性文档
layerMask : int
设置滤镜的图层蒙版。只有位于指定图层上的可渲染对象才会受到该滤镜的影响。
另请参阅 Node::layers 。
renderableTypes : enumeration [default: RenderablesFilter.Opaque | RenderablesFilter.Transparent]
设置过滤器将影响的可渲染对象类型。
| 常量 | 描述 |
|---|---|
RenderablesFilter.None | 将不会渲染任何可渲染对象。适用于仅包含子渲染通道(SubRenderPasses)的容器通道。 |
RenderablesFilter.Opaque | 仅渲染不透明的渲染对象。 |
RenderablesFilter.Transparent | 仅渲染透明的可渲染对象。 注意: 可使用 | 运算符组合多个 值。 |
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.