c_api_material.h - Engine C API Reference

c_api_material.h
  1. #pragma once
  2. #include "c_api_types.h"
  3. #ifdef __cplusplus
  4. extern "C" {
  5. #endif
  6. struct MaterialCApi
  7. {
  8. void (*set_scalar)(MaterialPtr material_pointer, unsigned variable_name_id32, float value);
  9. void (*set_vector2)(MaterialPtr material_pointer, unsigned variable_name_id32, ConstVector2Ptr value);
  10. void (*set_vector3)(MaterialPtr material_pointer, unsigned variable_name_id32, ConstVector3Ptr value);
  11. void (*set_vector4)(MaterialPtr material_pointer, unsigned variable_name_id32, ConstVector4Ptr value);
  12. unsigned (*material_id)(ConstMaterialPtr material_pointer);
  13. void (*set_shader_pass_flag)(MaterialPtr material_pointer, unsigned flag_name_id32, int enabled);
  14. void (*set_texture)(MaterialPtr material_pointer, unsigned slot_name_id32, uint64_t texture_resource_name_id64, const char *optional_debug_texture_resource_name);
  15. void (*set_resource)(MaterialPtr material_pointer, unsigned slot_name_id32, ConstRenderResourcePtr render_resource);
  16. void (*set_matrix4x4)(MaterialPtr material_pointer, unsigned variable_name_id32, ConstMatrix4x4Ptr value);
  17. };
  18. #ifdef __cplusplus
  19. }
  20. #endif