> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC

> Décrit une structure d'accélération de lancer de rayons. Passez cette structure à ID3D12GraphicsCommandList4::BuildRaytracingAccelerationStructure pour décrire la.

Décrit une structure d'accélération de lancer de rayons. Passez cette structure à [ID3D12GraphicsCommandList4::BuildRaytracingAccelerationStructure](/fr-CA/reference/graphics/d3d12/interfaces/id3d12graphicscommandlist4/methods/id3d12graphicscommandlist4_buildraytracingaccelerationstructure_public) pour décrire la structure d'accélération à générer.

## Syntaxe

```cpp theme={null}
typedef struct D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC
{
    D3D12_GPU_VIRTUAL_ADDRESS DestAccelerationStructureData;
    D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS Inputs;
    D3D12_GPU_VIRTUAL_ADDRESS SourceAccelerationStructureData;
    D3D12_GPU_VIRTUAL_ADDRESS ScratchAccelerationStructureData;
} D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC
```

### Membres

*DestAccelerationStructureData*\
Type : D3D12\_GPU\_VIRTUAL\_ADDRESS

Emplacement où stocker la structure d'accélération résultante. [ID3D12Device5::GetRaytracingAccelerationStructurePrebuildInfo](/fr-CA/reference/graphics/d3d12/interfaces/id3d12device5/methods/id3d12device5_getraytracingaccelerationstructureprebuildinfo_public) indique la quantité de mémoire requise ici pour le résultat, selon un ensemble donné de paramètres de génération de la structure d'accélération.

L'adresse doit être alignée sur 256 octets, valeur définie par [D3D12\_RAYTRACING\_ACCELERATION\_STRUCTURE\_BYTE\_ALIGNMENT](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/constants).

<Info>
  La mémoire doit être dans l'état [**D3D12\_RESOURCE\_STATE\_RAYTRACING\_ACCELERATION\_STRUCTURE**](/fr-CA/reference/graphics/d3d12_x/enums/d3d12_resource_states).
</Info>

*Inputs*\
Type : D3D12\_BUILD\_RAYTRACING\_ACCELERATION\_STRUCTURE\_INPUTS

Description des données d'entrée pour la génération de la structure d'accélération. Ces données sont stockées dans une structure distincte, car elles sont également utilisées avec **GetRaytracingAccelerationStructurePrebuildInfo**.

*SourceAccelerationStructureData*\
Type : D3D12\_GPU\_VIRTUAL\_ADDRESS

Adresse d'une structure d'accélération existante si une mise à jour de la structure d'accélération (une génération incrémentielle) est demandée, en définissant [D3D12\_RAYTRACING\_ACCELERATION\_STRUCTURE\_BUILD\_FLAG\_PERFORM\_UPDATE](/fr-CA/reference/graphics/d3d12/enums/d3d12_raytracing_acceleration_structure_build_flags_public) dans le paramètre Flags. Sinon, cette adresse doit être NULL.

Si cette adresse est identique à <i>DestAccelerationStructureData</i>, la mise à jour est effectuée sur place. Toute autre forme de chevauchement entre la mémoire source et la mémoire de destination est invalide et produit un comportement indéfini.

L'adresse doit être alignée sur 256 octets, valeur définie par [D3D12\_RAYTRACING\_ACCELERATION\_STRUCTURE\_BYTE\_ALIGNMENT](https://learn.microsoft.com/en-us/windows/desktop/direct3d12/constants), ce qui devrait automatiquement être le cas, puisque toute structure d'accélération existante passée ici aurait déjà dû être placée avec cet alignement.

<Info>
  La mémoire doit être dans l'état [**D3D12\_RESOURCE\_STATE\_RAYTRACING\_ACCELERATION\_STRUCTURE**](/fr-CA/reference/graphics/d3d12_x/enums/d3d12_resource_states).
</Info>

#### ScratchAccelerationStructureData

Emplacement où la génération stockera les données temporaires. **GetRaytracingAccelerationStructurePrebuildInfo** indique la quantité de mémoire de travail dont l'implémentation aura besoin pour un ensemble donné de paramètres de génération de la structure d'accélération.

<Info>
  La mémoire doit être dans l'état [**D3D12\_RESOURCE\_STATE\_UNORDERED\_ACCESS**](/fr-CA/reference/graphics/d3d12_x/enums/d3d12_resource_states).
</Info>

*ScratchAccelerationStructureData*\
Type : D3D12\_GPU\_VIRTUAL\_ADDRESS

## Configuration requise

**En-tête :** d3d12\_xs.h\
**Bibliothèque :** d3d12\_xs.lib\
**Plateformes prises en charge :** consoles XBOX Series


## Related topics

- [BuildRaytracingAccelerationStructure (consoles XBOX Series)](/fr-CA/reference/graphics/d3d12/interfaces/id3d12graphicscommandlist4/methods/id3d12graphicscommandlist4_buildraytracingaccelerationstructure_public.md)
- [D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS](/fr-CA/reference/graphics/d3d12/structs/d3d12_build_raytracing_acceleration_structure_inputs_public.md)
- [D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC](/fr-CA/reference/graphics/d3d12/structs/d3d12_raytracing_acceleration_structure_postbuild_info_desc_public.md)
- [D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_TOOLS_VISUALIZATION_HEADER (consoles XBOX Series)](/fr-CA/reference/graphics/d3d12/structs/d3d12_build_raytracing_acceleration_structure_tools_visualization_header_public.md)
- [D3D12_RAYTRACING_GEOMETRY_DESC (consoles XBOX Series)](/fr-CA/reference/graphics/d3d12/structs/d3d12_raytracing_geometry_desc_public.md)
