dd_meshTexture.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. #ifndef DD_MESHTEXTURE_D
  2. #define DD_MESHTEXTURE_D
  3. #include "dd_meshColour.h"
  4. #include "dd_image.h"
  5. struct dd_meshTexture {
  6. struct dd_meshColour parent;
  7. int dirtyImage;
  8. struct dd_image img;
  9. int dirtyTextures;
  10. float *t;
  11. void (*load)(struct dd_mesh *m, const char *filename);
  12. void (*preloadTexture)(struct dd_mesh *m, const char *filename);
  13. int (*applyTexture)(struct dd_mesh *m);
  14. void (*loadTexture)(struct dd_mesh *m, const char *filename);
  15. void (*set_primitive_texcoords)(struct dd_meshTexture *m, float offsetX, float offsetY, float sizeX, float sizeY);
  16. void (*copyTexture)(struct dd_meshTexture *dest, struct dd_meshTexture *src);
  17. };
  18. // constructor
  19. void dd_meshTexture_create(struct dd_meshTexture *);
  20. void dd_meshTexture_load(struct dd_meshTexture *m, const char *filename);
  21. void dd_meshTexture_preloadTexture(struct dd_meshTexture *m, const char *filename);
  22. int dd_meshTexture_applyTexture(struct dd_meshTexture *m);
  23. void dd_meshTexture_loadTexture(struct dd_meshTexture *m, const char *filename);
  24. void dd_meshTexture_set_primitive(struct dd_meshTexture *m, enum dd_primitives shape);
  25. void dd_meshTexture_set_primitive_texcoords(struct dd_meshTexture *m, float offsetX, float offsetY, float sizeX, float sizeY);
  26. void dd_meshTexture_draw(struct dd_meshTexture *m);
  27. void dd_meshTexture_clean(struct dd_meshTexture *m);
  28. void dd_meshTexture_copy(struct dd_meshTexture *dest, struct dd_meshTexture *src);
  29. void dd_meshTexture_copyTexture(struct dd_meshTexture *dest, struct dd_meshTexture *src);
  30. #endif