UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
SpriteIndexBuffer.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "RenderResource.h"
6#include "RHI.h"
7#include "RHICommandList.h"
8
9template< uint32 NumSprites >
11{
12public:
13 virtual void InitRHI(FRHICommandListBase& RHICmdList) override
14 {
15 const FRHIBufferCreateDesc CreateDesc =
16 FRHIBufferCreateDesc::CreateIndex<uint16>(TEXT("FSpriteIndexBuffer"), 6 * NumSprites)
20
21 TRHIBufferInitializer<uint16> Indices = RHICmdList.CreateBufferInitializer(CreateDesc);
22
23 for (uint32 SpriteIndex = 0; SpriteIndex < NumSprites; ++SpriteIndex)
24 {
25 Indices[SpriteIndex*6 + 0] = SpriteIndex*4 + 0;
26 Indices[SpriteIndex*6 + 1] = SpriteIndex*4 + 3;
27 Indices[SpriteIndex*6 + 2] = SpriteIndex*4 + 2;
28 Indices[SpriteIndex*6 + 3] = SpriteIndex*4 + 0;
29 Indices[SpriteIndex*6 + 4] = SpriteIndex*4 + 1;
30 Indices[SpriteIndex*6 + 5] = SpriteIndex*4 + 3;
31 }
32
33 IndexBufferRHI = Indices.Finalize();
34 }
35};
#define TEXT(x)
Definition Platform.h:1272
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
@ VertexOrIndexBuffer
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition RenderResource.h:509
FBufferRHIRef IndexBufferRHI
Definition RenderResource.h:524
Definition RHICommandList.h:455
FRHIBufferInitializer CreateBufferInitializer(const FRHIBufferCreateDesc &CreateDesc)
Definition RHICommandList.h:792
Definition SpriteIndexBuffer.h:11
virtual void InitRHI(FRHICommandListBase &RHICmdList) override
Definition SpriteIndexBuffer.h:13
Definition RHIResources.h:1417
FRHIBufferCreateDesc & SetInitActionInitializer()
Definition RHIResources.h:1542
FRHIBufferCreateDesc & SetInitialState(ERHIAccess InInitialState)
Definition RHIResources.h:1528
FRHIBufferCreateDesc & AddUsage(EBufferUsageFlags InUsage)
Definition RHIResources.h:1524
RHI_API FBufferRHIRef Finalize()
Definition RHIBufferInitializer.cpp:17
Definition RHIBufferInitializer.h:110