![]() |
UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
|
#include <MetalBaseShader.h>
Inheritance diagram for TMetalBaseShader< BaseResourceType, ShaderType >:Public Types | |
| enum | { StaticFrequency = ShaderType } |
Public Member Functions | |
| TMetalBaseShader (FMetalDevice &MetalDevice) | |
| virtual | ~TMetalBaseShader () |
| void | Init (TArrayView< const uint8 > InCode, FMetalCodeHeader &Header, MTLLibraryPtr InLibrary) |
| void | Destroy () |
| NS::String * | GetSourceCode () |
Protected Member Functions | |
| MTLFunctionPtr | GetCompiledFunction (bool const bAsync=false, const int32 FunctionIndex=-1) |
Protected Attributes | |
| FMetalDevice & | Device |
Additional Inherited Members | |
Public Attributes inherited from FMetalShaderData | |
| FMetalShaderBindings | Bindings |
| TMap< uint32, MTL::ArgumentEncoder * > | ArgumentEncoders |
| TMap< uint32, TBitArray<> > | ArgumentBitmasks |
| TArray< FUniformBufferStaticSlot > | StaticSlots |
| int32 | SideTableBinding = -1 |
| uint32 | SourceLen = 0 |
| uint32 | SourceCRC = 0 |
| uint32 | ConstantValueHash = 0 |
| MTLFunctionPtr | Function |
| MTLLibraryPtr | Library |
| NS::String * | GlslCodeNSString = nullptr |
| TArray< uint8 > | CompressedSource |
| uint32 | CodeSize = 0 |
| bool | bHasFunctionConstants = false |
| bool | bDeviceFunctionConstants = false |
| uint32 | LibraryFunctionIndex = -1 |
|
inline |
|
inlinevirtual |
| void TMetalBaseShader< BaseResourceType, ShaderType >::Destroy | ( | ) |
|
protected |
|
inline |
Gets the Metal source code as an NSString if available or nullptr if not. Note that this will dynamically decompress from compressed data on first invocation.
| void TMetalBaseShader< BaseResourceType, ShaderType >::Init | ( | TArrayView< const uint8 > | InCode, |
| FMetalCodeHeader & | Header, | ||
| MTLLibraryPtr | InLibrary | ||
| ) |
|
protected |