Skip to content
Snippets Groups Projects
This project is mirrored from https://git.alchemyviewer.org/alchemy/alchemy-next.git. Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer or owner.
  1. Apr 05, 2024
  2. Dec 06, 2023
    • Henri Beauchamp's avatar
      Fix LLGLTFMaterial hashing · 7bbacdd5
      Henri Beauchamp authored and Rye Mutt's avatar Rye Mutt committed
      This PR fixes the non-working material hashing for LLGLTFMaterial instances.
      
      There are several issues in the current code, stemming to the fact that the hashing is performed on the block of the member variables:
      
      1.- There are padding bytes between member variables, even after rearranging them to avoid most of the padding; in particular, the std::array's size is not a multiple of 4 bytes (64 bits), and most compilers will pad them to the next 4-byte aligment as a result. Note that C++ standards do not impose the zeroing of padding bytes on construction of a class instance, with only a couple exceptions (such as explicit zero-initialization). Those bytes MUST therefore be zeroed by us on construction.
      2.- The TextureTransform strutcure getPacked() method did not touch some of the packed bytes, and as a result could *potentially* cause an issue for hashing when applied to a transform of another material instance.
      3.- With the recent addition of the local textures tracking map, the said map cannot be hashed as a block of memory (map pairs will typically be allocated on the heap or on the stack, not in the memory block used by member variables).
      
      This PR solves all these issues and offers proper hashing of LLGLTFMaterial instances.
      7bbacdd5
  3. Nov 21, 2023
  4. Nov 18, 2023
  5. Nov 16, 2023
  6. Nov 14, 2023
  7. Nov 13, 2023
  8. Nov 09, 2023
  9. Nov 08, 2023
  10. Nov 07, 2023
  11. Nov 06, 2023
  12. Oct 25, 2023
  13. Oct 12, 2023
  14. Oct 11, 2023
  15. Oct 09, 2023
  16. Oct 08, 2023
  17. Sep 22, 2023
  18. Sep 05, 2023
  19. Aug 29, 2023
  20. Aug 11, 2023
  21. Jun 27, 2023
  22. May 03, 2023
  23. Apr 21, 2023
  24. Apr 13, 2023
  25. Apr 11, 2023
  26. Apr 04, 2023
  27. Apr 03, 2023
Loading