# Blocks

Control the behavior, appearance, and simulation of particles.

| **Page** | **Description** |
| --- | --- |
| [Attribute Blocks](Attribute.md) | Write values to the attributes of particles. |
| [Collision Blocks](Block-Collision-LandingPage.md) | Configure how particles collide with shapes or the depth buffer. |
| [Force Blocks](Force.md) | Apply and control forces on particles, such as gravity and turbulence. |
| [Custom HLSL Block](Operator-CustomHLSL.md) | Write an HLSL function that takes inputs and produces outputs. |
| [Implicit Integration Blocks](Implicit.md) | Explore the hidden Blocks that Visual Effect Graph uses to update the position and rotation of particles. |
| [Orientation Blocks](Orientation.md) | Change the direction that particles face. |
| [Output Blocks](Output.md) | Control particle output and rendering. |
| [Set Position Blocks](Block-SetPositionShape-LandingPage.md) | Configure particle positions based on an input shape. |
| [Size > Screen Space Size](Block-ScreenSpaceSize.md) | Calculate the scale needed for a particle to reach a specific size. |
| [Spawn Blocks](Spawn.md) | Customize behavior for spawning particles. |
| [Trigger Event Block](Block-Trigger-Event.md) | Spawn particles using a GPU Event. |
| [Velocity Blocks](Velocity.md) | Dynamically adjust the velocity of particles. |

## Additional resources

- [Blocks](Blocks.md)
- [Graph logic and philosophy](GraphLogicAndPhilosophy.md)
- [Output event handlers](OutputEventHandlers.md)

