Commit Graph

790 Commits

Author SHA1 Message Date
Ashley Rogers bb365c8aee Dependency graph generation 2024-12-04 14:39:16 -05:00
Kevin Ring 24a2bdca2b
Merge pull request #1008 from CesiumGS/fix-gcc13
Fix compiler error on GCC 13
2024-12-02 07:16:58 +11:00
Kevin Ring 1a7bbbd6c9 Report AccessorView as invalid when BufferView byteStride is negative. 2024-12-01 17:22:05 +11:00
Ashley Rogers 573469f6f9 Format 2024-11-26 14:28:52 -05:00
Ashley Rogers 08dcb82f9e Document undocumented parameters 2024-11-26 14:27:37 -05:00
Ashley Rogers fdabe39f6e Fix some Doxygen warnings 2024-11-26 14:14:58 -05:00
Sean Lilley 472669a06d Ignore in clang 2024-11-26 09:56:15 -05:00
Sean Lilley 859e1617e1 Fix formatting 2024-11-26 09:47:40 -05:00
Sean Lilley 428483d57c Ignore maybe-unitialized in test files 2024-11-26 09:44:51 -05:00
Ashley Rogers fde31cf262 Merge branch 'main' of github.com:CesiumGS/cesium-native into clang-tidy-4 2024-11-25 14:20:56 -05:00
Kevin Ring dce56afd86 Give a more specific name to the TEST_CASE. 2024-11-25 18:21:58 +11:00
Kevin Ring df79aa055f Fix compiler error on GCC 13. 2024-11-25 14:51:03 +11:00
Sean Lilley d1ccc7a10f Add equality operator for JsonValue 2024-11-22 15:47:08 -05:00
Ashley Rogers 2dd41959e8 Format... again 2024-11-22 11:35:06 -05:00
Ashley Rogers cca8871eef Include both catch2 headers 2024-11-22 11:30:45 -05:00
Ashley Rogers 9b46d6f93e Format 2024-11-22 11:19:22 -05:00
Ashley Rogers f82d65bead Change Catch2 header 2024-11-22 11:17:21 -05:00
Ashley Rogers cedc1bbd05 Ubuntu 24.04 for clang-tidy CI, cast fix 2024-11-22 11:12:32 -05:00
Ashley Rogers acc9e81d12 Merge from main 2024-11-20 17:12:43 -05:00
Ashley Rogers f573e49ad5 Fix remaining non-CesiumGltf warnings 2024-11-20 16:51:44 -05:00
Ashley Rogers 52633c67f4 Non-PropertyTable changes 2024-11-20 16:20:04 -05:00
Ashley Rogers 86a4bf7e53 Fix warnings ignored on headers with SYSTEM 2024-11-19 15:47:40 -05:00
Ashley Rogers 2dbd86e5c3 Merge branch 'cpp20' of github.com:CesiumGS/cesium-native into clang-tidy-4 2024-11-19 14:39:38 -05:00
Ashley Rogers 17c1887164 Regenerate classes 2024-11-19 14:39:18 -05:00
Kevin Ring fb24a2efe1 Merge remote-tracking branch 'origin/cpp20' into remove-gsl 2024-11-19 09:15:21 +11:00
Kevin Ring 8a23ca54d9 Merge remote-tracking branch 'origin/main' into cpp20 2024-11-19 09:14:49 +11:00
Kevin Ring 1f092764fe Add int casts in generated code to placate clang/gcc. 2024-11-17 14:16:42 +11:00
Ashley Rogers 67044b3e2e Merge from main 2024-11-15 15:46:44 -05:00
Ashley Rogers aa11cca7e5 Fix generate-3d-tiles and generate-quantized-mesh-terrain 2024-11-15 15:41:48 -05:00
Kevin Ring 651d3b4d43 Merge remote-tracking branch 'origin/main' into remove-gsl 2024-11-15 13:58:24 +11:00
Ashley Rogers 7fd9590e95 Update doc comments, add 'const' to foreach 2024-11-14 15:39:23 -05:00
Sean Lilley f51948fbe4 Remove old CESIUM_NATIVE_ CMake variables 2024-11-13 11:22:17 -05:00
Kevin Ring bc9165659f Merge remote-tracking branch 'origin/cpp20' into remove-gsl 2024-11-12 15:07:50 +11:00
Kevin Ring 73da501e8c Merge remote-tracking branch 'origin/main' into cpp20 2024-11-12 15:06:45 +11:00
Ashley Rogers 381888148b Update getSizeBytes generation 2024-11-11 15:54:55 -05:00
Ashley Rogers 03da4c4560 Improve glTF getSizeBytes generated code 2024-11-07 15:33:48 -05:00
Janine Liu 5071400ac8 Formatting 2024-11-06 10:46:33 -05:00
Janine Liu a8c25c029d Add default constructor to ImageAsset 2024-11-06 10:45:30 -05:00
Kevin Ring 89dfc44bdc Remove use of GSL.
Change gsl::span to std::span, and replace the few uses of gsl::narrow
with an alternative.
2024-11-06 15:16:03 +11:00
Kevin Ring 6d562824d7
Merge branch 'main' into additional-component-types 2024-11-05 20:26:55 +11:00
Kevin Ring 97331792d3 Compile with C++20 and fix the problems. 2024-11-05 16:54:11 +11:00
Ashley Rogers cfbee560b5 Bring in line with SharedAsset changes 2024-11-01 11:50:09 -04:00
Ashley Rogers d976ec13c6 Merge from main, still needs to be fixed 2024-11-01 10:49:26 -04:00
Kevin Ring 9dfe894056 ImageDecoder cleanup. 2024-10-30 13:15:03 +11:00
Kevin Ring e3c3daf6c3 Move SharedAsset to CesiumUtility.
This avoids adding a new dependency on CesiumAsync to CesiumGltf.
2024-10-30 12:49:07 +11:00
Kevin Ring e216b54a4a More small tweaks. 2024-10-30 12:14:33 +11:00
Kevin Ring 33d4948634 Image::pCesium -> pAsset 2024-10-30 09:40:04 +11:00
Kevin Ring c5533b7ead Cleanup. 2024-10-28 20:55:29 +11:00
Ashley Rogers 76185746d7 Add test for external structural metadata 2024-10-22 14:43:38 -04:00
Ashley Rogers 714aa28c28 SharedAsset support in gltf generated code 2024-10-22 11:42:09 -04:00
Sean Lilley 3f2d4ff9e5 Additional component types 2024-10-22 09:49:43 -04:00
Ashley Rogers 5c4cafdfc4 Shared asset support in schema codegen 2024-10-18 15:38:15 -04:00
Ashley Rogers 883e36f100 Rename ImageAssetMipPosition 2024-10-10 15:44:42 -04:00
Ashley Rogers df1f887e6d Doc comments, rename ImageCesium 2024-10-10 15:28:05 -04:00
Kevin Ring 7f798379f4 GltfSharedAssetSystem 2024-10-10 21:56:09 +11:00
Kevin Ring a9516a0c84 Move SharedAsset[Depot] to CesiumAsync. 2024-10-10 21:00:16 +11:00
Kevin Ring e3975911cd Even independent assets can be shared. 2024-10-10 20:31:17 +11:00
Kevin Ring 36783ad030 SharedAsset improvements...
* Make SharedAsset constructor and destructor protected, so instances of
  this type can't be created directly.
* Maintain `_sizeInDepot` field on `SharedAsset` to defend against the
  asset size changing between when we add its size and when we remove
  its size.
* Add some doc comments.
* Change the staleAssetSizeLimit to 16 MiB.
* Add some defensive assertions.
* Fix use-after-free when removing deletion candidates.
2024-10-10 20:18:58 +11:00
Kevin Ring c8d961214c Remove unnecessary SharedAssetSystem::deletionTick. 2024-10-10 20:16:31 +11:00
Kevin Ring 8595163c92 getSizeBytes can use sizeInBytes or pixelData.size(). 2024-10-10 20:15:25 +11:00
Kevin Ring 1b0934ec6c Don't use an iterator after it's erased. 2024-10-09 22:48:16 +11:00
Kevin Ring ee4b391d14 Remove TODO. 2024-10-09 22:39:58 +11:00
Kevin Ring 21ecab90b8 Fix asset lifetime, avoid circular reference counting. 2024-10-09 22:18:11 +11:00
Ashley Rogers 924b000e00 Add accessors for deletion stats 2024-10-08 15:27:52 -04:00
Ashley Rogers 95749246de Format 2024-10-04 11:45:25 -04:00
Ashley Rogers d6c77858c2 Merge branch 'shared-assets-image-cesium-only' of github.com:CesiumGS/cesium-native into HEAD 2024-10-04 11:43:02 -04:00
Ashley Rogers e3e566502b Rework deletion 2024-10-04 11:42:47 -04:00
Kevin Ring a88d83f8d1 Move constructor for SharedAsset. 2024-10-04 23:17:48 +10:00
Kevin Ring 275bac0325 Better naming. 2024-10-04 21:16:11 +10:00
Kevin Ring ab21441ce4 Fix water mask bug, add assets to depot. 2024-10-04 18:50:27 +10:00
Kevin Ring cee6f21ea6 Make SharedAsset a base class an eliminate AssetContainer. 2024-10-04 16:10:28 +10:00
Kevin Ring e781a9c4bc AttributeSemantics -> VertexAttributeSemantics 2024-10-04 08:04:54 +10:00
Kevin Ring 97909b8e3f Add AttributeSemantics. 2024-09-26 17:18:42 +10:00
Ashley Rogers 31d0048b58 Add timer for deleting assets 2024-09-25 17:18:43 -04:00
Ashley Rogers 0ce17c897b Fix wonky namespaces 2024-09-18 14:11:58 -04:00
Ashley Rogers 5ae5539478 Clean up SharedAssetDepot 2024-09-18 14:06:36 -04:00
Ashley Rogers d612b329e0 Use template for factory so it can be moved into the future 2024-09-17 14:00:18 -04:00
Ashley Rogers 8e664a18b3 Fix warnings breaking Unreal build 2024-09-13 11:00:38 -04:00
Ashley Rogers 0e44d92482 clang-format 2024-09-11 15:12:22 -04:00
Ashley Rogers 8d38927a6c Merge with main 2024-09-11 14:58:19 -04:00
Ashley Rogers 96cd924630 Update based on review 2024-09-11 14:53:52 -04:00
Ashley Rogers 2f852d0b9f Re-add thread safety that I accidentally reverted 2024-08-23 14:37:45 -04:00
Ashley Rogers 7e36d6c45f Refactor to use IntrusivePointer for AssetContainer 2024-08-23 14:31:08 -04:00
Janine Liu daeca25354 Add more unit tests 2024-08-19 13:49:29 -04:00
Ashley Rogers e79b31379c Merge with main 2024-08-16 14:13:55 -04:00
Ashley Rogers 4e5bff4dfb Changes for Unreal implementation 2024-08-16 14:10:08 -04:00
Janine Liu 1cb6e3809d Merge branch 'main' into instance-metadata 2024-08-16 10:54:12 -04:00
Kevin Ring 832b2c91f2 Changes from review (comments only). 2024-08-16 07:19:41 +10:00
Tim Moore b51af67b3b Add test case for getFeatureIdAccessorView 2024-08-15 19:09:05 +02:00
Kevin Ring b1d7da4795 Small tweaks, and update CHANGES.md. 2024-08-15 11:47:40 +10:00
Kevin Ring ac74cc3cda
Merge pull request #820 from jherico/vcpkg-2
Second attempt at migrating packages to vcpkg
2024-08-15 09:47:09 +10:00
Tim Moore 109f3897a4 Add getFeatureIdAccessorView for instances
Implement getFeatureIdAccessorView for feature IDs stored in the
EXT_mesh_gpu_instancing extension. Refactor the existing function,
used for accessing feature IDs in primitives, to use common code.
2024-08-05 11:15:52 +02:00
Sean Lilley a109c7dacb Add removeExtensionUsed and removeExtensionRequired 2024-08-02 20:15:42 -06:00
Kevin Ring 1fcdeadfd9 Merge remote-tracking branch 'origin/main' into vcpkg-swl 2024-08-02 19:45:58 +10:00
Kevin Ring 23eaa7f370 Disable spurious warning from MSVC in our tests. 2024-07-24 14:39:56 -04:00
Kevin Ring d65747e8a2 Fix clang/gcc errors. 2024-07-24 10:55:02 -04:00
Ashley Rogers 2f622d7892 Unused param 2024-07-23 14:25:53 -04:00
Ashley Rogers 9bf3ac4307 Fix unnecessary reference 2024-07-23 14:24:00 -04:00
Ashley Rogers 8d2c5e1e61 clang-format 2024-07-23 14:15:39 -04:00
Ashley Rogers dd8e3d0775 Merge branch 'main' of github.com:CesiumGS/cesium-native into shared-assets 2024-07-23 14:03:20 -04:00
Ashley Rogers a0954e3fbc Add test for shared images 2024-07-23 14:03:06 -04:00
Sean Lilley 7873ef6e5c Fix AccessorWriter constructor 2024-07-15 22:44:55 -04:00
Brian Langevin d6523beaf7
Merge pull request #921 from CesiumGS/add-component-type-conversion
Add method to convert integer `AccessorSpec::ComponentType` to `PropertyComponentType`
2024-07-15 11:11:41 -06:00
Janine Liu 707dd8b770 Add missing includes 2024-07-11 10:25:23 -04:00
Ashley Rogers 40806a24c7 Add ability for images to be shared between glTFs 2024-07-10 16:00:31 -04:00
Janine Liu 2179d943b9 Add convertAccessorComponentTypeToPropertyComponentType 2024-07-09 12:00:34 -04:00
Kevin Ring 7c9ea84178 Merge remote-tracking branch 'origin/main' into vcpkg-swl 2024-07-02 17:39:20 +10:00
Brian L 74653140f3 Rename to CESIUM_ASSERT 2024-06-20 10:14:38 -06:00
Brian L 91300f9a61 update from main 2024-06-20 09:54:52 -06:00
Kevin Ring 4319aa6562 PropertyArrayCopy stores a byte buffer. 2024-06-20 17:59:33 +10:00
Kevin Ring d9f7a6ceed Traits for PropertyArrayCopy. 2024-06-19 18:34:53 +10:00
Kevin Ring 91dc6cdb93 Avoid shadowing, fix formatting. 2024-06-18 16:14:27 +10:00
Kevin Ring 62d4346190 Separate owning PropertyArrayView to PropertyArrayCopy. 2024-06-18 15:57:38 +10:00
Kevin Ring 8158fa0f3a Fix owning PropertyArrayView without using a variant. 2024-06-18 11:08:54 +10:00
Kevin Ring 9fe0d7aa05 Stub out PropertyArrayView ownership, as a test. 2024-06-15 10:37:34 +10:00
Kevin Ring bac574c13d Lots of changes to support Cesium for Unreal. 2024-06-06 20:57:11 +10:00
Kevin Ring ca42500d54 Merge remote-tracking branch 'origin/main' into vcpkg-2 2024-06-05 14:06:47 +10:00
Janine Liu e1ed4db7dc
Merge pull request #854 from CesiumGS/i3dm-2024
Support 3D Tile I3dm legacy tile format
2024-05-29 09:44:15 -04:00
Kevin Ring 264333f06a
Merge pull request #889 from CesiumGS/regenerate-gltf-schemas
Regenerate glTF schemas for metadata extensions
2024-05-24 16:47:42 +10:00
Kevin Ring 32dc4befd3 Re-add accidentally removed size_t cast. 2024-05-24 16:09:50 +10:00
Kevin Ring 20266ffae8 Restore static casts where integer conversions aren't checked. 2024-05-24 16:08:53 +10:00
Kevin Ring 7e84f68411 Consistent integer types and conversions. 2024-05-24 16:05:03 +10:00
Sean Lilley 231e899aad Fix bug 2024-05-23 19:35:39 -04:00
Sean Lilley 67032dffb1 Fix typos in TestModel 2024-05-23 18:32:36 -04:00
Sean Lilley 6c1d8cc816 Fixed Model 2024-05-23 18:32:27 -04:00
Sean Lilley 5bb68a00a7 Regenerate glTF schemas 2024-05-23 18:22:52 -04:00
Sean Lilley d64f5a3be5 Added forEachNodeInScene to Model 2024-05-21 22:24:01 -04:00
Kevin Ring beb4fb9d71 Add test for Model::merge with EXT_meshopt_compression. 2024-05-21 20:53:31 +10:00
Tim Moore ea79bb8a76 Reponse to feedback: change ConverterSubprocessor to AssetFetcher 2024-05-16 17:05:33 +02:00
Kevin Ring 66860989a4 Various glTF fixes, mostly meshopt related. 2024-05-06 13:53:37 +10:00
Brian L 47414f09fb Make our ASSERT macro. Move everything to use this. 2024-05-03 12:50:50 -06:00
Tim Moore db9637db42 Merge branch 'main' into i3dm-2024 2024-05-03 13:31:55 +02:00
Kevin Ring 13970f94c8 Add tests of Model::merge for newly supported extensions. 2024-05-03 13:00:46 +10:00
Kevin Ring 6450e5660a Improve support for merging extensions. 2024-05-03 11:04:51 +10:00
Tim Moore ab70a66f3e Merge branch 'main' into i3dm-2024 2024-05-02 11:39:26 +02:00
Sean Lilley 5982c15875 Merge branch 'main' into index-from-accessor 2024-04-30 16:51:37 -04:00
Sean Lilley 6f93079df3 Fix formatting 2024-04-30 14:39:44 -04:00
Sean Lilley 01be080354
Update CesiumGltf/include/CesiumGltf/AccessorUtility.h
Co-authored-by: Janine Liu <32226860+j9liu@users.noreply.github.com>
2024-04-30 11:57:49 -04:00
Sean Lilley f62a7a7a47 Add getComponentCountFromPropertyType 2024-04-29 12:11:12 -04:00
Tim Moore 2cef550f00 Merge branch 'main' into i3dm-2024 2024-04-26 16:58:30 +02:00
Tim Moore 46581092d1 Refactor with helpers for converting glTF values to glm. 2024-04-26 16:54:18 +02:00
Sean Lilley 33913f1ca7 Add IndexFromAccessor 2024-04-22 11:43:59 -04:00
Kevin Ring 2d05768b26
Merge pull request #840 from CesiumGS/accessor-writer-from-view
Create AccessorWriter from AccessorView
2024-04-18 20:45:10 -04:00
Tim Moore 0a4a5a9665 Merge branch 'main' into i3dm-2024 2024-04-17 17:56:57 +02:00
Sean Lilley 4c6cd3cb37 Add getNormalAccessorView 2024-04-15 12:02:04 -04:00
Janine Liu bc13fa617c Fold single sections in tests 2024-04-12 15:08:30 -04:00
Janine Liu 2cb26ebeeb Doc improvements and function flattening 2024-04-12 14:13:51 -04:00
Kevin Ring 4bf70c5a20 Fix another clang warning. 2024-04-10 23:02:52 +10:00
Kevin Ring a3fd50f9c9 Fix warnings on Linux. 2024-04-10 22:53:43 +10:00
Kevin Ring 9f17ef2a4a Add forEachRootNodeInScene tests. 2024-04-10 18:55:56 +10:00