Material
public string ShaderName { get; set; }
Language: C#
Имя шейдера материала.
public Dictionary<string, object?> Properties { get; set; }
Language: C#
Свойства материала (uniforms).
public Material(string shaderName)
Language: C#
Создать материал с указанным шейдером.
Автоматически инициализирует uniforms из шейдера.
public void InitializeFromShader()
Language: C#
Инициализировать свойства материала на основе uniforms в шейдере.
Игнорирует встроенные uniforms (world_to_view и т.д.).
public bool IsShaderExists()
Language: C#
Проверить, существует ли шейдер для материала.
Returns: True, если шейдер существует, иначе false
public bool Apply()
Language: C#
Применить материал к шейдеру с валидацией типов.
public bool ApplyBaseProperties(Viewport? viewport, FMatrix4x4 transform)
Language: C#
Применить базовые свойства материала (матрицы трансформации) к шейдеру.
Parameters:
- viewport: Вьюпорт для получения матриц преобразования
- transform: Матрица трансформации объекта
Returns: True, если шейдер существует и свойства применены, иначе false
public uint? GetAttributeLocation(string name)
Language: C#
Получить локацию атрибута в шейдере по имени.
Parameters:
- name: Имя атрибута
Returns: Локация атрибута или null, если атрибут не найден
public void SetValue(string name, object? value)
Language: C#
Установить значение uniform свойства.
Автоматически обновляет Properties без необходимости в типизированных методах.
public void SetValue(string name, uint val)
Language: C#
Установить значение uniform свойства с типизацией.
Parameters:
- name: Имя uniform свойства
- val: Значение uniform свойства
public void SetValue(string name, int val)
Language: C#
Установить значение uniform свойства с типизацией.
Parameters:
- name: Имя uniform свойства
- val: Значение uniform свойства
public void SetValue(string name, float val)
Language: C#
Установить значение uniform свойства с типизацией.
Parameters:
- name: Имя uniform свойства
- val: Значение uniform свойства
public void SetValue(string name, double val)
Language: C#
Установить значение uniform свойства с типизацией.
Parameters:
- name: Имя uniform свойства
- val: Значение uniform свойства
public void SetValue(string name, FVector2 vec)
Language: C#
Установить значение uniform свойства с типизацией.
Parameters:
- name: Имя uniform свойства
- vec: Значение uniform свойства
public void SetValue(string name, IVector2 vec)
Language: C#
Установить значение uniform свойства с типизацией.
Parameters:
- name: Имя uniform свойства
- vec: Значение uniform свойства
public void SetValue(string name, FVector3 vec)
Language: C#
Установить значение uniform свойства с типизацией.
Parameters:
- name: Имя uniform свойства
- vec: Значение uniform свойства
public void SetValue(string name, IVector3 vec)
Language: C#
Установить значение uniform свойства с типизацией.
Parameters:
- name: Имя uniform свойства
- vec: Значение uniform свойства
public void SetValue(string name, FVector4 vec)
Language: C#
Установить значение uniform свойства с типизацией.
Parameters:
- name: Имя uniform свойства
- vec: Значение uniform свойства
public void SetValue(string name, IVector4 vec)
Language: C#
Установить значение uniform свойства с типизацией.
Parameters:
- name: Имя uniform свойства
- vec: Значение uniform свойства
public void SetValue(string name, FMatrix2x2 mtx, bool transpose = false)
Language: C#
Установить значение uniform свойства с типизацией.
Parameters:
- name: Имя uniform свойства
- mtx: Значение uniform свойства
- transpose: Флаг транспонирования матрицы
public void SetValue(string name, FMatrix2x3 mtx, bool transpose = false)
Language: C#
Установить значение uniform свойства с типизацией.
Parameters:
- name: Имя uniform свойства
- mtx: Значение uniform свойства
- transpose: Флаг транспонирования матрицы
public void SetValue(string name, FMatrix2x4 mtx, bool transpose = false)
Language: C#
Установить значение uniform свойства с типизацией.
Parameters:
- name: Имя uniform свойства
- mtx: Значение uniform свойства
- transpose: Флаг транспонирования матрицы
public void SetValue(string name, FMatrix3x2 mtx, bool transpose = false)
Language: C#
Установить значение uniform свойства с типизацией.
Parameters:
- name: Имя uniform свойства
- mtx: Значение uniform свойства
- transpose: Флаг транспонирования матрицы
public void SetValue(string name, FMatrix3x3 mtx, bool transpose = false)
Language: C#
Установить значение uniform свойства с типизацией.
Parameters:
- name: Имя uniform свойства
- mtx: Значение uniform свойства
- transpose: Флаг транспонирования матрицы
public void SetValue(string name, FMatrix3x4 mtx, bool transpose = false)
Language: C#
Установить значение uniform свойства с типизацией.
Parameters:
- name: Имя uniform свойства
- mtx: Значение uniform свойства
- transpose: Флаг транспонирования матрицы
public void SetValue(string name, FMatrix4x2 mtx, bool transpose = false)
Language: C#
Установить значение uniform свойства с типизацией.
Parameters:
- name: Имя uniform свойства
- mtx: Значение uniform свойства
- transpose: Флаг транспонирования матрицы
public void SetValue(string name, FMatrix4x3 mtx, bool transpose = false)
Language: C#
Установить значение uniform свойства с типизацией.
Parameters:
- name: Имя uniform свойства
- mtx: Значение uniform свойства
- transpose: Флаг транспонирования матрицы
public void SetValue(string name, FMatrix4x4 mtx, bool transpose = false)
Language: C#
Установить значение uniform свойства с типизацией.
Parameters:
- name: Имя uniform свойства
- mtx: Значение uniform свойства
- transpose: Флаг транспонирования матрицы
public IReadOnlyDictionary<string, UniformInfo> GetShaderUniforms()
Language: C#
Получить информацию об uniforms в шейдере (для отладки и редактора).
public bool HasUniform(string name)
Language: C#
Проверить, существует ли uniform с указанным именем в шейдере.
public object? GetValue(string name)
Language: C#
Получить значение uniform свойства.