1. 01 11月, 2020 1 次提交
  2. 30 10月, 2020 1 次提交
  3. 29 10月, 2020 2 次提交
  4. 27 10月, 2020 5 次提交
  5. 24 10月, 2020 3 次提交
  6. 21 10月, 2020 2 次提交
  7. 17 10月, 2020 3 次提交
  8. 16 10月, 2020 2 次提交
  9. 15 10月, 2020 3 次提交
  10. 14 10月, 2020 3 次提交
    • A
      Revert accidental whitespace change · 191a7936
      Arseny Kapoulkine 提交于
      191a7936
    • A
      GLTFLoader: Implement support for EXT_meshopt_compression · 75f4c14e
      Arseny Kapoulkine 提交于
      EXT_meshopt_compression is a recent extension that supports compressing
      glTF data - geometry, animation, instance transforms - in a generic
      fashion.
      
      Specification:
      https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Vendor/EXT_meshopt_compression
      
      It is possible to produce files that use the extension using gltfpack
      (https://github.com/zeux/meshoptimizer/tree/master/gltf). To decompress
      the files, loader needs to decode the bufferView data - the extension
      specification details the compressed format, but meshoptimizer library
      provides a portable decoder that can be readily consumed from JS; the
      decoder requires WebAssembly and will automatically dispatch to Wasm SIMD
      when available, or use MVP otherwise.
      
      meshopt_decoder.js is a drop-in copy of
      https://github.com/zeux/meshoptimizer/blob/master/js/meshopt_decoder.js;
      since it implements the specified format, it can be updated at any point
      without loss of backwards compatibility.
      
      The PR for EXT_meshopt_compression in glTF repository
      (https://github.com/KhronosGroup/glTF/pull/1830) contains file sizes for
      a lot of example models - the benefit of using this extension is that it
      supports compressing every possible type of glTF binary data except for
      images, and can decode at breakneck speeds (~1 GB/s when using Wasm SIMD
      on a recent desktop Intel CPU) while only requiring a very small decoder
      binary (meshopt_decoder.js is at 21 KB raw, 6 KB deflated, while
      including *two* builds of the decoder, scalar and SIMD).
      
      As an example, I've tested this PR on BrainStem model from
      glTF-Sample-Models repository that contains animation data. The original
      file size is 3120 KB, Draco-compressed version is 1942 KB, and
      meshopt-compressed version is 362 KB, produced by gltfpack with `-cc`
      option. The large size delta is due to animation data being compressed
      with the extension; the loader extension decompresses bufferViews upon
      request and the rest of the loader pipeline works without further
      changes.
      
      To integrate the extension after this change the user simply needs to
      include the module, and pass the exported MeshoptDecoder global to the
      loader:
      
      	import './js/libs/meshopt_decoder.js';
      
      	...
      
      	loader.setMeshoptDecoder( MeshoptDecoder );
      75f4c14e
    • D
      f76f8862
  11. 13 10月, 2020 1 次提交
  12. 23 9月, 2020 2 次提交
  13. 18 9月, 2020 4 次提交
  14. 17 9月, 2020 3 次提交
  15. 16 9月, 2020 4 次提交
  16. 14 9月, 2020 1 次提交