An ambient light, which lights the entire scene equally.
An atomic version of
MaterialBindGroupId
that can be read from and written to
safely from multiple threads.
Configure the depth-slicing strategy for clustered forward rendering
Default render method used for opaque materials.
A Directional light.
Configures the “classic” computer graphics
distance fog effect,
in which objects appear progressively more covered in atmospheric haze the further away they are from the camera.
Affects meshes rendered via the PBR
StandardMaterial
.
The uniform struct extracted from
EnvironmentMapLight
.
Will be available for use in the Environment Map shader.
A GPU buffer that stores the environment map settings for each view.
A material that extends a base
Material
with additional shaders and data.
Metadata for fog
A plugin that consolidates fog extraction, preparation and related resources/assets
A convenient
Bundle
that contains all components necessary to generate a
fog volume.
The GPU-side representation of the fog configuration that’s sent as a uniform to the shader
A plugin that builds mesh uniforms on GPU.
The render node for the mesh uniform building pass.
A marker component for a light probe, which is a cuboid region that provides
global illumination to all fragments inside it.
Adds support for light probes: cuboid bounding regions that apply global
illumination to objects within them.
A GPU buffer that stores information about all light probes.
A per-view shader uniform that specifies all the light probes that the view
takes into account.
Component automatically attached to a light entity to track light-view entities
for each view.
A component that applies baked indirect diffuse global illumination from a
lightmap.
A plugin that provides an implementation of lightmaps.
Render pipeline data for a given
Material
.
Adds the necessary ECS resources and render logic to enable rendering entities using the given
Material
asset type.
Common
Material
properties, calculated for a specific material instance.
Bind groups for meshes currently loaded.
Information about each mesh instance needed to cull it on GPU.
A GPU buffer that holds the information needed to cull meshes on GPU.
Various flags and tightly-packed values on a mesh.
Information that has to be transferred from CPU to GPU in order to produce
the full
MeshUniform
.
All data needed to construct a pipeline for rendering 3D meshes.
MSAA uses the highest 3 bits for the MSAA log2(sample count) to support up to 128x MSAA.
Stores the view layouts for every combination of pipeline keys.
Provides support for rendering 3D meshes.
Add this component to make a
Mesh3d
not cast shadows.
Add this component to make a
Mesh3d
not receive shadows.
Sets up the entire PBR infrastructure of bevy.
A light that emits light in all directions from a central point.
Sets up everything required to use the prepass pipeline.
The compute shader bind group for the mesh uniform building pass.
The pipeline for the GPU mesh preprocessing shader.
Specifies variants of the mesh preprocessing shader.
The compute shader pipelines for the mesh uniform building pass.
Stores data for all lightmaps in the render world.
Stores all extracted instances of a
Material
in the render world.
CPU data that the render world keeps for each entity, when not using GPU
mesh uniform building.
Various useful flags for [RenderMeshInstance
]s.
CPU data that the render world needs to keep for each entity that contains a
mesh when using GPU mesh uniform building.
Information that is gathered during the parallel portion of mesh extraction
when GPU mesh uniform building is enabled.
The per-thread queues containing mesh instances, populated during the
extract phase.
CPU data that the render world needs to keep about each entity that contains
a mesh.
Information that the render world keeps about each entity that contains a
mesh, when using CPU mesh instance data building.
Information that the render world keeps about each entity that contains a
mesh, when using GPU mesh instance data building.
A component, part of the render world, that stores the mapping from asset ID
or IDs to the texture index in the appropriate binding arrays.
Component to apply screen space ambient occlusion to a 3d camera.
Bundle to apply screen space ambient occlusion.
Plugin for screen space ambient occlusion.
Add this component to a camera to enable screen-space reflections (SSR).
A GPU buffer that stores the screen space reflection settings for each view.
A convenient bundle to add screen space reflections to a camera, along with
the depth and deferred prepasses required to enable them.
The node in the render graph that traces screen space reflections.
Information relating to the render pipeline for the screen space reflections
shader.
Identifies which screen space reflections render pipeline a view needs.
Identifies a specific configuration of the SSR pipeline shader.
Enables screen-space reflections for a camera.
Sets the bind group for a given
Material
at the configured
I
index.
Data used to bin each object in the shadow map phase.
Maps each skinned mesh to the applicable offset within the
SkinUniforms
buffer.
The GPU buffers containing joint matrices for all skinned meshes.
Stops the GpuPreprocessNode
attempting to generate the buffer for this view
useful to avoid duplicating effort if the bind group is shared between views
A light that emits light in a given direction from a central point.
A component bundle for spot light entities
Bitflags info about the material a shader is currently rendering.
This is accessible in the shader in the
StandardMaterialUniform
The pipeline key for StandardMaterial
, packed into 64 bits.
Add this component to make a
Mesh3d
using a PBR material with
diffuse_transmission
> 0.0
receive shadows on its diffuse transmission lobe. (i.e. its “backside”)
Inserted on each Entity
with an ExtractedView
to keep track of its offset
in the gpu_fogs
DynamicUniformBuffer
within FogMeta
Collection of mesh entities visible for 3D lighting.
A plugin that implements volumetric fog.
Add this component to a
DirectionalLight
with a shadow map
(
shadows_enabled: true
) to make volumetric fog interact with it.