BsScriptMaterial.generated.h 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. #pragma once
  2. #include "BsScriptEnginePrerequisites.h"
  3. #include "Wrappers/BsScriptResource.h"
  4. #include "../../../bsf/Source/Foundation/bsfUtility/Image/BsColorGradient.h"
  5. #include "../../../bsf/Source/Foundation/bsfCore/Animation/BsAnimationCurve.h"
  6. namespace bs
  7. {
  8. class Material;
  9. class MaterialEx;
  10. class BS_SCR_BE_EXPORT ScriptMaterial : public TScriptResource<ScriptMaterial, Material>
  11. {
  12. public:
  13. SCRIPT_OBJ(ENGINE_ASSEMBLY, "BansheeEngine", "Material")
  14. ScriptMaterial(MonoObject* managedInstance, const ResourceHandle<Material>& value);
  15. static MonoObject* createInstance();
  16. private:
  17. static void Internal_setShader(ScriptMaterial* thisPtr, MonoObject* shader);
  18. static MonoObject* Internal_clone(ScriptMaterial* thisPtr);
  19. static MonoObject* Internal_getShader(ScriptMaterial* thisPtr);
  20. static void Internal_setFloat(ScriptMaterial* thisPtr, MonoString* name, float value, uint32_t arrayIdx);
  21. static void Internal_setFloatCurve(ScriptMaterial* thisPtr, MonoString* name, MonoObject* value, uint32_t arrayIdx);
  22. static void Internal_setColor(ScriptMaterial* thisPtr, MonoString* name, Color* value, uint32_t arrayIdx);
  23. static void Internal_setColorGradient(ScriptMaterial* thisPtr, MonoString* name, MonoObject* value, uint32_t arrayIdx);
  24. static void Internal_setVec2(ScriptMaterial* thisPtr, MonoString* name, Vector2* value, uint32_t arrayIdx);
  25. static void Internal_setVec3(ScriptMaterial* thisPtr, MonoString* name, Vector3* value, uint32_t arrayIdx);
  26. static void Internal_setVec4(ScriptMaterial* thisPtr, MonoString* name, Vector4* value, uint32_t arrayIdx);
  27. static void Internal_setMat3(ScriptMaterial* thisPtr, MonoString* name, Matrix3* value, uint32_t arrayIdx);
  28. static void Internal_setMat4(ScriptMaterial* thisPtr, MonoString* name, Matrix4* value, uint32_t arrayIdx);
  29. static float Internal_getFloat(ScriptMaterial* thisPtr, MonoString* name, uint32_t arrayIdx);
  30. static MonoObject* Internal_getFloatCurve(ScriptMaterial* thisPtr, MonoString* name, uint32_t arrayIdx);
  31. static void Internal_getColor(ScriptMaterial* thisPtr, MonoString* name, uint32_t arrayIdx, Color* __output);
  32. static MonoObject* Internal_getColorGradient(ScriptMaterial* thisPtr, MonoString* name, uint32_t arrayIdx);
  33. static void Internal_getVec2(ScriptMaterial* thisPtr, MonoString* name, uint32_t arrayIdx, Vector2* __output);
  34. static void Internal_getVec3(ScriptMaterial* thisPtr, MonoString* name, uint32_t arrayIdx, Vector3* __output);
  35. static void Internal_getVec4(ScriptMaterial* thisPtr, MonoString* name, uint32_t arrayIdx, Vector4* __output);
  36. static void Internal_getMat3(ScriptMaterial* thisPtr, MonoString* name, uint32_t arrayIdx, Matrix3* __output);
  37. static void Internal_getMat4(ScriptMaterial* thisPtr, MonoString* name, uint32_t arrayIdx, Matrix4* __output);
  38. static void Internal_create(MonoObject* managedInstance);
  39. static void Internal_create0(MonoObject* managedInstance, MonoObject* shader);
  40. static void Internal_setTexture(ScriptMaterial* thisPtr, MonoString* name, MonoObject* value, uint32_t mipLevel, uint32_t numMipLevels, uint32_t arraySlice, uint32_t numArraySlices);
  41. static MonoObject* Internal_getTexture(ScriptMaterial* thisPtr, MonoString* name);
  42. static void Internal_setSpriteTexture(ScriptMaterial* thisPtr, MonoString* name, MonoObject* value);
  43. static MonoObject* Internal_getSpriteTexture(ScriptMaterial* thisPtr, MonoString* name);
  44. };
  45. }