UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
ChaosDDRenderer.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2#pragma once
3
4#include "Chaos/Core.h"
6
7#if CHAOS_DEBUG_DRAW
8
9namespace Chaos
10{
11 struct FLatentDrawCommand;
12}
13
14namespace ChaosDD::Private
15{
16 //
17 // Primitive rendering API for use by debug draw objects
18 //
20 {
21 public:
23 virtual ~IChaosDDRenderer() {}
24
25 // Are we rendering a Server scene?
26 virtual bool IsServer() const = 0;
27
28 // The region of interest
29 virtual FSphere3d GetDrawRegion() const = 0;
30
31 // Utility functions for use by Debug Draw commands (e.g., FChaosDDLine)
32 virtual void RenderPoint(const FVector3d& Position, const FColor& Color, float PointSize, float Lifetime) = 0;
33 virtual void RenderLine(const FVector3d& A, const FVector3d& B, const FColor& Color, float LineThickness, float Lifetime) = 0;
34 virtual void RenderArrow(const FVector3d& A, const FVector3d& B, float ArrowSize, const FColor& Color, float LineThickness, float Lifetime) = 0;
35 virtual void RenderCircle(const FVector3d& Center, const FMatrix& Axes, float Radius, const FColor& Color, float LineThickness, float Lifetime) = 0;
36 virtual void RenderSphere(const FVector3d& Center, float Radius, const FColor& Color, float LineThickness, float Lifetime) = 0;
37 virtual void RenderCapsule(const FVector3d& Center, const FQuat4d& Rotation, float HalfHeight, float Radius, const FColor& Color, float LineThickness, float Lifetime) = 0;
38 virtual void RenderBox(const FVector3d& Position, const FQuat4d& Rotation, const FVector3d& Size, const FColor& Color, float LineThickness, float Lifetime) = 0;
39 virtual void RenderTriangle(const FVector3d& A, const FVector3d& B, const FVector3d& C, const FColor& Color, float LineThickness, float Lifetime) = 0;
40 virtual void RenderString(const FVector3d& TextLocation, const FString& Text, const FColor& Color, float FontScale, bool bDrawShadow, float Lifetime) = 0;
41
42 // Render legacy debug draw command (See FChaosDDScene::RenderLatestFrames)
43 virtual void RenderLatentCommand(const Chaos::FLatentDrawCommand& Command) = 0;
44 };
45}
46
47#endif
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
uint32 Size
Definition VulkanMemory.cpp:4034
Definition SkeletalMeshComponent.h:307
Definition Color.h:486