Commit Graph

162 Commits

Author SHA1 Message Date
Brian L 7b5382e855 let rayTriangleParametric return an optional 2024-07-24 13:47:12 -06:00
Brian L d03181a97a Revert changes to ForEachPrimitiveInSceneXXX callbacks 2024-07-24 13:17:22 -06:00
Brian L 3b6c5a4467 Rewrite to not rely on != 1.0 checks 2024-07-09 15:04:40 -06:00
Brian L 7f2d18b0d4 Replace assert with getSafe for index accessor 2024-07-09 14:47:42 -06:00
Brian L 2e6695de20 Update documentation and hit result cleanup 2024-07-09 13:50:39 -06:00
Brian L 888f611f45 Remove unneeded decltypes 2024-07-09 09:05:50 -06:00
Brian L 16d18a1ceb Remove duplicate implementations of ::readFile 2024-07-08 16:12:56 -06:00
Brian L 04f17a34dc Change some occurrences of double 1 to 1.0 2024-07-08 16:01:01 -06:00
Brian L 4f47b7b0fc update cullBackFaces doc 2024-07-08 15:35:04 -06:00
Brian L ca25ad4840 Change int to int32_t when specifying an ID 2024-07-08 15:15:44 -06:00
Brian L 728668a873 Merge branch 'main' into gltf-ray-intersect 2024-07-08 09:15:30 -06:00
Kevin Ring 7c9ea84178 Merge remote-tracking branch 'origin/main' into vcpkg-swl 2024-07-02 17:39:20 +10:00
Kevin Ring ff96b9b07a
Merge pull request #874 from CesiumGS/forced-assertions
Add ability to force assertions
2024-06-21 16:12:56 +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
Brian L 6731089edc Add intentionally invalid models, and corresponding unit tests 2024-06-13 15:09:15 -06:00
Brian L df5a3a5581 Rework result of intersect function to include warnings for malformed gltfs 2024-06-13 14:47:52 -06:00
Brian L 1f6ac44834 Merge branch 'main' into gltf-ray-intersect 2024-06-12 16:22:01 -06:00
Brian L 7c291b5ea2 Add cube translation test generated from script 2024-06-12 16:13:32 -06:00
Brian L 7bdd2104a5 Change index component types for more unit test coverage 2024-06-12 16:06:29 -06:00
Brian L 31aeae754e Change iteration cadence to protect against incomplete triangles 2024-06-12 15:55:33 -06:00
Brian L 1854ecf55a Fix bug where first triangle in strip would get skipped 2024-06-12 15:48:19 -06:00
Brian L 7b58901bf3 Add support for gltf quantized mesh extension (non-float positions) 2024-06-12 15:34:07 -06:00
Brian L 2fd0b3a2c7 Add quantized cube test data 2024-06-12 10:44:17 -06:00
Ashley Rogers f332464b30 Merge with main 2024-06-06 16:57:20 -04:00
Ashley Rogers d961a40e3d Remove as many WGS84 defaults as possible. 2024-06-06 16:53:48 -04:00
Kevin Ring ca42500d54 Merge remote-tracking branch 'origin/main' into vcpkg-2 2024-06-05 14:06:47 +10:00
Brian L dfea26831c Remove redundant move (build warning) 2024-05-31 13:38:14 -06:00
Brian L 5092d26ee6 More warnings fixes and cleanup 2024-05-31 12:57:02 -06:00
Brian L aa95514762 update from main 2024-05-31 12:39:37 -06:00
Brian L dcee2c8aab warning fix 2024-05-31 12:30:29 -06:00
Brian L b0b48bdee4 Update comments from peer review 2024-05-31 12:25:09 -06:00
Brian L 5d72dcf615 Fix bug where intersecting gltfs with nodes with different scaling could produce incorrect results
Also unify the ::intersectRayGltfModel and ::intersectRayGltfModelParametric functions. We don't really need two anymore
2024-05-31 12:22:46 -06:00
Brian L d4ec50da28 Add rejection of non-float positions 2024-05-31 10:38:38 -06:00
Brian L 402a485f6b Ignore float component types for index buffers 2024-05-31 10:13:24 -06:00
Brian L a9c5658242 Add checks for invalid indices. Fix casting for AccessorView operations 2024-05-31 09:46:07 -06:00
Brian L 905eb94912 let findClosestIndexedRayHit specify a templated AccessorView for indices, for clarity 2024-05-31 09:30:07 -06:00
Brian L 84eb49097c Use ::createAccessorView to clean up handling of index format variations 2024-05-31 09:17:36 -06:00
Sean Lilley fe64db3c94 Added removeUnusedMeshes and removeUnusedMaterials 2024-05-30 13:54:47 -04:00
Brian L 5a50038b88 Update code doc 2024-05-30 10:40:58 -06:00
Brian L cab5d1e843 Fix bug where a scaled gltf would produce incorrect hit results. Add test. 2024-05-30 10:32:41 -06:00
Brian L 9b0640dfca Update code doc 2024-05-28 11:00:54 -06:00
Brian L 1734847f9e Fix bug where ray AABB test would always miss (missing .transform call) 2024-05-28 10:50:54 -06:00
Kevin Ring eeab8694bf
Merge pull request #883 from CesiumGS/remove-unused-buffers
Added `removeUnusedBuffers`
2024-05-24 15:48:04 +10:00
Kevin Ring 95bf6826a0
Merge pull request #880 from CesiumGS/no_stb_image_implementation
Fix STB library conflicts
2024-05-24 15:47:11 +10:00
Kevin Ring 7a20339054 Eliminate some duplication, update CHANGES.md. 2024-05-24 14:26:39 +10:00
Brian L e3320e409e Add proper support for indexed triangle fans and enable test 2024-05-23 16:28:17 -06:00
Brian L 7ea3f2ec65 Add indexed triangle fan test cube 2024-05-23 16:09:35 -06:00
Brian L 13185615cd Add triangle fan support and enable test 2024-05-23 15:35:29 -06:00
Brian L aedb8cc6d7 Add proper support for indexed triangle strips and enable test 2024-05-23 15:15:24 -06:00
Brian L 331cd18993 Add indexed triangle strip test cube 2024-05-23 15:13:15 -06:00
Brian L b0a92fff59 Add proper support for triangle strips and enable test 2024-05-23 10:10:46 -06:00
Brian L dc0f4d6d2d Add non-indexed cube test and fix logic bugs 2024-05-22 21:39:22 -06:00
Brian L 41ee75bc72 Flesh out non-indexed code path 2024-05-22 15:38:20 -06:00
Brian L 7af234419d update format 2024-05-22 14:54:38 -06:00
Brian L 938e5cd6cc Remove unnecessary test asset 2024-05-22 14:53:22 -06:00
Brian L 1c73911e54 Stub out the rest of the unit cube tests 2024-05-22 14:53:13 -06:00
Brian L 2e5ff62fc6 switch to using new unit cube test model 2024-05-22 14:49:45 -06:00
Brian L c5ebb81fb0 Add cube fan example and generation script 2024-05-22 14:08:20 -06:00
Sean Lilley 4b3148a562 Added removeUnusedBuffers 2024-05-21 21:14:32 -04:00
Sean Lilley 85c03c8564 Faster collapseToSingleBuffer 2024-05-21 20:43:16 -04:00
Brian L 018c7640eb Remove unneeded test files 2024-05-21 17:22:48 -06:00
Brian L 25331a91c9 Add cube with triangle strip test 2024-05-21 17:22:38 -06:00
Brian L a0b49cefbe Explicitly declare triangle mode 2024-05-21 16:20:12 -06:00
Brian L bef7cbfc78 update test generation scripts 2024-05-21 16:01:47 -06:00
Kevin Ring 206c1c8195 Add test for `compactBuffers` with meshopt bufferviews. 2024-05-21 21:43:13 +10:00
Kevin Ring 2f9cf0ad0d Add tests for GltfUtilities::collapseToSingleBuffer. 2024-05-21 21:35:04 +10:00
Kevin Ring 1c3739474c Leave meshopt fallback buffers intact in collapseToSingleBuffer. 2024-05-21 20:48:00 +10:00
Brian L bc8a918058 Add some test glbs
Also add the source python that created them
2024-05-17 16:06:05 -06:00
Brian L 88797d6156 Declare stb write implementation as static (to prevent future conflicts) 2024-05-17 10:29:02 -06:00
Brian L 2924edefba Add tests for intersections with model with transformation matrix 2024-05-16 16:32:21 -06:00
Brian L 90755aff5a Rename getPointAlongRay to pointFromDistance 2024-05-16 16:02:09 -06:00
Brian L c35b8d3b94 Undo unnecessary changes 2024-05-16 15:24:56 -06:00
Brian L 8ba05076ac Fix warning 2024-05-16 10:47:31 -06:00
Brian L f13d733705 Fix bug where intersect test would hit tris behind the ray. Add more tests 2024-05-16 10:37:09 -06:00
Brian L fad02b554c Fix casting warnings 2024-05-15 16:36:12 -06:00
Brian L 39fc592974 Fix check to not generate a warning 2024-05-15 16:09:22 -06:00
Brian L 48db4d0313 Rework tests to also traverse into model using hit results 2024-05-15 15:56:33 -06:00
Brian L 1fed700539 Fix primitiveToWorld not getting copied to hit result 2024-05-15 15:49:33 -06:00
Brian L 54b352b15b Add missing initializers 2024-05-15 14:31:00 -06:00
Brian L a01ef4cdc4 Store primitiveToWorld transform in the hit result 2024-05-15 13:50:54 -06:00
Brian L ccce2f098e Let intersectRayGltfModel HitResult return primitiveId correctly 2024-05-15 13:34:58 -06:00
Brian L 5bcfe34ded Let intersectRayGltfModel HitResult return meshId correctly 2024-05-15 13:21:11 -06:00
Brian L 54da172e29 Add more hit result info to ::intersectRayGltfModel
Still more work to do in the implementation...
2024-05-15 11:18:16 -06:00
Brian L 0ad31921ff revert changes 2024-05-06 15:09:56 -06:00
Brian L b765a735c9 update from main 2024-05-06 15:07:03 -06: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
Kevin Ring feec23050d Fix GCC / Clang warning. 2024-05-03 22:52:10 +10:00
Kevin Ring 220b5b7adf 8-byte alignment for moveBuffers, too.
Also allow removal of any number of bytes from the end of the buffer.
2024-05-03 22:46:47 +10:00
Kevin Ring 9fb0ee9f9f Preserve alignment in GltfUtilities::compactBuffer. 2024-05-03 22:27:30 +10:00
Brian L 5817d88224 Only put stb resize into own our namespace (others can stay put) 2024-04-30 18:21:24 -06:00
Brian L ff60e4c2b5 Put STB in the Cesium namespace 2024-04-30 18:10:41 -06:00
Sean Lilley 46c8b9e736
Merge pull request #860 from CesiumGS/build-tweaks
Improvements to the build process
2024-04-15 10:24:38 -04:00
Kevin Ring a3237c9195 Formatting. 2024-04-15 09:39:32 +10:00
Kevin Ring dd35563ff8 Tweaks for the tilers build.
* Use `ktx` library instead of `ktx_read`. The former includes writing
  ability, and there's no library that includes _just_ writing.
* Move STB image resize implementation code into CesiumGltfReader
  (instead of CesiumGltfContent).
2024-04-15 09:30:05 +10:00
Janine Liu 2cb26ebeeb Doc improvements and function flattening 2024-04-12 14:13:51 -04:00
Kevin Ring 528193f08b Add missing const. 2024-04-10 23:16:08 +10:00
Kevin Ring a04b315d9d More GltfUtilities tests. 2024-04-10 21:33:51 +10:00
Kevin Ring 5306abda97 Add GltfUtilities::getNodeTransform/setNodeTransform tests. 2024-04-10 19:40:01 +10:00