Navigation
API > API/Runtime > API/Runtime/Engine
Base struct of an instruction value.
An instruction is a value in a well defined order of evaluation. Instructions have a parent block and are organized in a linked list: the Next field indicates the instruction that will execute immediately after this one. Since the material shader has multiple stages, the same instruction can belong to two different graphs of execution, which explains why all fields in this structure have a different possible value per stage.
Note: All fields in this struct are not expected to be set by the user when emitting an instruction, and are instead automatically populated by the builder.
| Name | FInstruction |
| Type | struct |
| Header File | /Engine/Source/Runtime/Engine/Public/Materials/MaterialIR.h |
| Include Path | #include "Materials/MaterialIR.h" |
Syntax
struct FInstruction : public MIR::FValue
Inheritance Hierarchy
- FValue → FInstruction
Derived Classes
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| Linkage | TArrayView< FInstructionLinkage > | Array of linkage information (how this instruction is connected inside the IR graph) for each entry point registered in the module. | Materials/MaterialIR.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
const FBlock * GetBlock
(
int32 EntryPointIndex |
Returns the block this instruction belongs to in specified entry point. | Materials/MaterialIR.h | |
FInstruction * GetNext
(
int32 EntryPointIndex |
Returns the next instruction in specified entry point. | Materials/MaterialIR.h | |
uint32 GetNumUsers
(
int32 EntryPointIndex |
Returns the number of user sin specified entry point. | Materials/MaterialIR.h | |
FBlock * GetTargetBlockForUse
(
int32 EntryPointIndex, |
Returns the block in which the dependency with specified index should execute. | Materials/MaterialIR.h |