UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
GenericPlatformProperties.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CoreTypes.h"
7
8
17{
23 static constexpr UE_FORCEINLINE_HINT const char* GetPhysicsFormat()
24 {
25 return "Chaos";
26 }
27
33 static constexpr UE_FORCEINLINE_HINT bool HasEditorOnlyData()
34 {
36 }
37
45 static const char* IniPlatformName();
46
52 static constexpr UE_FORCEINLINE_HINT bool IsGameOnly()
53 {
54 return UE_GAME;
55 }
56
62 static constexpr UE_FORCEINLINE_HINT bool IsServerOnly()
63 {
64 return UE_SERVER;
65 }
66
72 static constexpr UE_FORCEINLINE_HINT bool IsClientOnly()
73 {
74 return !WITH_SERVER_CODE;
75 }
76
80 static constexpr UE_FORCEINLINE_HINT bool IsMonolithicBuild()
81 {
82 return IS_MONOLITHIC;
83 }
84
88 static constexpr UE_FORCEINLINE_HINT bool IsProgram()
89 {
90 return IS_PROGRAM;
91 }
92
98 static constexpr UE_FORCEINLINE_HINT bool IsLittleEndian()
99 {
100 return true;
101 }
102
110 static UE_FORCEINLINE_HINT const char* PlatformName();
111
121 {
122 return "";
123 }
124
131 {
132 return !HasEditorOnlyData();
133 }
134
141 {
142 return false;
143 }
144
151 {
152 return false;
153 }
154
162 {
163 return true;
164 }
165
169 static constexpr UE_FORCEINLINE_HINT bool SupportsAutoSDK()
170 {
171 return false;
172 }
173
180 {
181 return true;
182 }
183
190 {
191 return false;
192 }
193
200 {
201 return false;
202 }
203
208 {
209 return true;
210 }
211
216 {
217 return false;
218 }
219
221 {
222 return true;
223 }
224
226 {
227 return true;
228 }
229
231 {
232 return true;
233 }
234
236 {
237 return true;
238 }
239
241 {
242 return true;
243 }
244
246 {
247 return false;
248 }
249
251 {
252 return false;
253 }
254
256 {
257 return false;
258 }
259
261 {
262 return false;
263 }
264
266 {
267 return 0;
268 }
269
270 // Guaranteed virtual memory alignment on a given platform, regardless of a specific device
272 {
273 return 4096;
274 }
275
277 {
278 return false;
279 }
280
281 static constexpr UE_FORCEINLINE_HINT bool SupportsLumenGI()
282 {
283 return true;
284 }
285
287 {
288 return false;
289 }
290
295 {
296 return true;
297 }
298
299 static constexpr UE_FORCEINLINE_HINT bool SupportsMinimize()
300 {
301 return false;
302 }
303
304 // Whether the platform allows an application to quit to the OS
305 static constexpr UE_FORCEINLINE_HINT bool SupportsQuit()
306 {
307 return false;
308 }
309
310 // Whether the platform allows the call stack to be dumped during an assert
312 {
313 return IsProgram();
314 }
315
316 // If this platform wants to replace Zlib with a platform-specific version, set the name of the compression format
317 // plugin (matching its GetCompressionFormatName() function) in an override of this function
318 static constexpr UE_FORCEINLINE_HINT const char* GetZlibReplacementFormat()
319 {
320 return nullptr;
321 }
322
323 // Whether the platform requires an original release version to make a patch
325 {
326 return false;
327 }
328};
#define UE_GAME
Definition Build.h:23
#define IS_MONOLITHIC
Definition Build.h:134
#define UE_SERVER
Definition Build.h:42
#define IS_PROGRAM
Definition Build.h:142
#define WITH_EDITORONLY_DATA
Definition CoreMiscDefines.h:24
FPlatformTypes::int64 int64
A 64-bit signed integer.
Definition Platform.h:1127
#define UE_FORCEINLINE_HINT
Definition Platform.h:723
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
EBuildTargetType
Definition GenericPlatformMisc.h:158
Definition GenericPlatformProperties.h:17
static constexpr UE_FORCEINLINE_HINT bool SupportsAudioStreaming()
Definition GenericPlatformProperties.h:215
static constexpr UE_FORCEINLINE_HINT bool IsProgram()
Definition GenericPlatformProperties.h:88
static constexpr UE_FORCEINLINE_HINT bool SupportsDistanceFieldShadows()
Definition GenericPlatformProperties.h:230
static constexpr UE_FORCEINLINE_HINT bool SupportsMultipleGameInstances()
Definition GenericPlatformProperties.h:189
static UE_FORCEINLINE_HINT const char * PlatformVariantName()
Definition GenericPlatformProperties.h:120
static constexpr UE_FORCEINLINE_HINT bool SupportsLowQualityLightmaps()
Definition GenericPlatformProperties.h:225
static constexpr UE_FORCEINLINE_HINT bool SupportsHighQualityLightmaps()
Definition GenericPlatformProperties.h:220
static constexpr UE_FORCEINLINE_HINT bool SupportsHardwareLZDecompression()
Definition GenericPlatformProperties.h:286
static constexpr UE_FORCEINLINE_HINT bool SupportsQuit()
Definition GenericPlatformProperties.h:305
static constexpr UE_FORCEINLINE_HINT bool RequiresUserCredentials()
Definition GenericPlatformProperties.h:150
static constexpr UE_FORCEINLINE_HINT int64 GetMemoryMappingAlignment()
Definition GenericPlatformProperties.h:265
static constexpr UE_FORCEINLINE_HINT bool SupportsGrayscaleSRGB()
Definition GenericPlatformProperties.h:179
static constexpr UE_FORCEINLINE_HINT bool SupportsMemoryMappedFiles()
Definition GenericPlatformProperties.h:250
static constexpr UE_FORCEINLINE_HINT bool HasFixedResolution()
Definition GenericPlatformProperties.h:294
static UE_FORCEINLINE_HINT const char * PlatformName()
static constexpr UE_FORCEINLINE_HINT bool SupportsAutoSDK()
Definition GenericPlatformProperties.h:169
static constexpr UE_FORCEINLINE_HINT bool HasSecurePackageFormat()
Definition GenericPlatformProperties.h:140
static constexpr UE_FORCEINLINE_HINT bool AllowsFramerateSmoothing()
Definition GenericPlatformProperties.h:207
static UE_FORCEINLINE_HINT bool SupportsBuildTarget(EBuildTargetType TargetType)
Definition GenericPlatformProperties.h:161
static constexpr UE_FORCEINLINE_HINT bool SupportsMeshLODStreaming()
Definition GenericPlatformProperties.h:245
static constexpr UE_FORCEINLINE_HINT bool RequiresOriginalReleaseVersionForPatch()
Definition GenericPlatformProperties.h:324
static constexpr UE_FORCEINLINE_HINT bool HasEditorOnlyData()
Definition GenericPlatformProperties.h:33
static constexpr UE_FORCEINLINE_HINT const char * GetPhysicsFormat()
Definition GenericPlatformProperties.h:23
static constexpr UE_FORCEINLINE_HINT bool SupportsMinimize()
Definition GenericPlatformProperties.h:299
static constexpr UE_FORCEINLINE_HINT bool IsLittleEndian()
Definition GenericPlatformProperties.h:98
static constexpr UE_FORCEINLINE_HINT bool SupportsWindowedMode()
Definition GenericPlatformProperties.h:199
static constexpr UE_FORCEINLINE_HINT bool SupportsMemoryMappedAudio()
Definition GenericPlatformProperties.h:255
static constexpr UE_FORCEINLINE_HINT bool SupportsMemoryMappedAnimation()
Definition GenericPlatformProperties.h:260
static constexpr UE_FORCEINLINE_HINT bool IsClientOnly()
Definition GenericPlatformProperties.h:72
static constexpr UE_FORCEINLINE_HINT bool SupportsLumenGI()
Definition GenericPlatformProperties.h:281
static constexpr UE_FORCEINLINE_HINT int GetMaxSupportedVirtualMemoryAlignment()
Definition GenericPlatformProperties.h:271
static constexpr UE_FORCEINLINE_HINT bool IsMonolithicBuild()
Definition GenericPlatformProperties.h:80
static constexpr UE_FORCEINLINE_HINT bool SupportsTextureStreaming()
Definition GenericPlatformProperties.h:240
static constexpr UE_FORCEINLINE_HINT bool IsGameOnly()
Definition GenericPlatformProperties.h:52
static constexpr UE_FORCEINLINE_HINT bool AllowsCallStackDumpDuringAssert()
Definition GenericPlatformProperties.h:311
static constexpr UE_FORCEINLINE_HINT const char * GetZlibReplacementFormat()
Definition GenericPlatformProperties.h:318
static const char * IniPlatformName()
Definition GenericPlatformProperties.cpp:8
static constexpr UE_FORCEINLINE_HINT bool IsServerOnly()
Definition GenericPlatformProperties.h:62
static constexpr UE_FORCEINLINE_HINT bool SupportsDistanceFieldAO()
Definition GenericPlatformProperties.h:235
static constexpr UE_FORCEINLINE_HINT bool RequiresCookedData()
Definition GenericPlatformProperties.h:130
static constexpr UE_FORCEINLINE_HINT bool SupportsRayTracing()
Definition GenericPlatformProperties.h:276