BsScriptMaterial.generated.h 3.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  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 Shader;
  9. class Material;
  10. class Texture;
  11. class MaterialEx;
  12. class SpriteTexture;
  13. class BS_SCR_BE_EXPORT ScriptMaterial : public TScriptResource<ScriptMaterial, Material>
  14. {
  15. public:
  16. SCRIPT_OBJ(ENGINE_ASSEMBLY, "BansheeEngine", "Material")
  17. ScriptMaterial(MonoObject* managedInstance, const ResourceHandle<Material>& value);
  18. static MonoObject* createInstance();
  19. private:
  20. static MonoObject* Internal_getRef(ScriptMaterial* thisPtr);
  21. static void Internal_setShader(ScriptMaterial* thisPtr, MonoObject* shader);
  22. static MonoObject* Internal_clone(ScriptMaterial* thisPtr);
  23. static MonoObject* Internal_getShader(ScriptMaterial* thisPtr);
  24. static void Internal_setFloat(ScriptMaterial* thisPtr, MonoString* name, float value, uint32_t arrayIdx);
  25. static void Internal_setFloatCurve(ScriptMaterial* thisPtr, MonoString* name, MonoObject* value, uint32_t arrayIdx);
  26. static void Internal_setColor(ScriptMaterial* thisPtr, MonoString* name, Color* value, uint32_t arrayIdx);
  27. static void Internal_setColorGradient(ScriptMaterial* thisPtr, MonoString* name, MonoObject* value, uint32_t arrayIdx);
  28. static void Internal_setVec2(ScriptMaterial* thisPtr, MonoString* name, Vector2* value, uint32_t arrayIdx);
  29. static void Internal_setVec3(ScriptMaterial* thisPtr, MonoString* name, Vector3* value, uint32_t arrayIdx);
  30. static void Internal_setVec4(ScriptMaterial* thisPtr, MonoString* name, Vector4* value, uint32_t arrayIdx);
  31. static void Internal_setMat3(ScriptMaterial* thisPtr, MonoString* name, Matrix3* value, uint32_t arrayIdx);
  32. static void Internal_setMat4(ScriptMaterial* thisPtr, MonoString* name, Matrix4* value, uint32_t arrayIdx);
  33. static float Internal_getFloat(ScriptMaterial* thisPtr, MonoString* name, uint32_t arrayIdx);
  34. static MonoObject* Internal_getFloatCurve(ScriptMaterial* thisPtr, MonoString* name, uint32_t arrayIdx);
  35. static void Internal_getColor(ScriptMaterial* thisPtr, MonoString* name, uint32_t arrayIdx, Color* __output);
  36. static MonoObject* Internal_getColorGradient(ScriptMaterial* thisPtr, MonoString* name, uint32_t arrayIdx);
  37. static void Internal_getVec2(ScriptMaterial* thisPtr, MonoString* name, uint32_t arrayIdx, Vector2* __output);
  38. static void Internal_getVec3(ScriptMaterial* thisPtr, MonoString* name, uint32_t arrayIdx, Vector3* __output);
  39. static void Internal_getVec4(ScriptMaterial* thisPtr, MonoString* name, uint32_t arrayIdx, Vector4* __output);
  40. static void Internal_getMat3(ScriptMaterial* thisPtr, MonoString* name, uint32_t arrayIdx, Matrix3* __output);
  41. static void Internal_getMat4(ScriptMaterial* thisPtr, MonoString* name, uint32_t arrayIdx, Matrix4* __output);
  42. static void Internal_create(MonoObject* managedInstance);
  43. static void Internal_create0(MonoObject* managedInstance, MonoObject* shader);
  44. static void Internal_setTexture(ScriptMaterial* thisPtr, MonoString* name, MonoObject* value, uint32_t mipLevel, uint32_t numMipLevels, uint32_t arraySlice, uint32_t numArraySlices);
  45. static MonoObject* Internal_getTexture(ScriptMaterial* thisPtr, MonoString* name);
  46. static void Internal_setSpriteTexture(ScriptMaterial* thisPtr, MonoString* name, MonoObject* value);
  47. static MonoObject* Internal_getSpriteTexture(ScriptMaterial* thisPtr, MonoString* name);
  48. };
  49. }