Closed liuxi150 closed 4 months ago
The updates introduce advanced quaternion-based calculations and skinning methods into the effects-core package. Key changes include new classes for handling Bezier curves with quaternions, enhanced animation handling with quaternion-based rotation curves, and improved skinning data structures across various geometry and rendering files. The modifications aim to enhance animation precision and flexibility, particularly for complex 3D transformations and skinning operations.
File Path | Change Summary |
---|---|
packages/effects-core/src/math/bezier.ts |
Added BezierQuat and QuaternionInner classes for quaternion-based Bezier curve calculations. |
packages/effects-core/src/math/value-getter.ts |
Added quaternion handling in ValueGetter , introduced BezierCurveQuat class, and updated BezierCurvePath class. |
packages/effects-core/src/plugins/cal/calculate-vfx-item.ts |
Introduced RotationCurve interface for quaternion-based rotation animations and updated AnimationClip class. |
packages/effects-core/src/render/geometry.ts |
Renamed SubMesh to SkinProps , updated subMeshes type, and added getSkinProps method in Geometry class. |
packages/effects-threejs/src/three-geometry.ts |
Added getSkinProps method to ThreeGeometry class. |
packages/effects-webgl/src/gl-geometry.ts |
Added skin property and getSkinProps method to GLGeometry class. |
packages/effects-webgl/src/gl-renderer-internal.ts |
Updated count variable assignment logic in GLRendererInternal class. |
plugin-packages/model/demo/src/json.ts |
Updated URLs and maintained compatibleMode constant. |
plugin-packages/model/src/gltf/json-converter.ts |
Refactored JSONConverter class, introduced TreeInfo class, and updated geometry and animation component creation logic. |
plugin-packages/model/src/loader-ecs.ts |
Modified LoaderECSImpl to push mesh.geometryData to this.geometries and removed processMeshComponentData method call. |
plugin-packages/model/src/index.ts |
Added AnimationComponentData type to the list of exported types. |
plugin-packages/model/src/plugin/model-item.ts |
Added ModelAnimationComponent and ModelAnimationClip classes for handling 3D animations. |
plugin-packages/model/src/runtime/animation.ts |
Updated PSkin class for improved skinning and joint handling, including renaming variables and changing method signatures. |
plugin-packages/model/src/runtime/mesh.ts |
Added rootBoneItem property to PMesh and EffectsMeshProxy classes, and updated logic for skin detection and object creation based on rootBoneItem . |
π In the realm of quaternions and curves so fine,
Bezier paths and skins align.
Animations now dance with newfound grace,
In 3D spaces, they find their place.
Geometry and bones, intertwined,
Celebrate these changes, so well-defined.
π
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
Summary by CodeRabbit
New Features
Improvements
Bug Fixes
Documentation