- Added Collider and ColliderCondition types to manage collider properties.
- Created a new useColliderStore for managing colliders and their arrows.
- Implemented ColliderArrow component for visual representation and interaction of arrows.
- Enhanced ColliderProperties UI for managing directions and conditions.
- Updated PhysicsSimulator and Scene components to integrate collider features.
- Refactored existing code for better organization and clarity.
Replaced hardcoded spline points with first two raycast intersection points on click.
Computed the middle control point using the incenter of a triangle formed with the midpoint as the third vertex, creating a dynamic Bézier curve.
- Added @react-three/rapier to package.json for physics support.
- Refactored AssetBoundingBox to utilize RigidBody for collision detection.
- Implemented ConveyorCollider to manage object movement on conveyor belts.
- Enhanced Model component to include rigid body references and bounding box calculations.
- Updated Ground component to use RigidBody for ground physics.
- Introduced Colliders component to manage material instances with physics interactions.
- Created SecondaryCamera for enhanced camera management and editing capabilities.
- Added secondary canvas for rendering secondary camera views.
- Updated selection controls to utilize bounding boxes for asset selection.
- Added support for handling "Human" type events in the copy and duplication controls.
- Created a new HumanEventSchema to manage human-related events, including position, rotation, and action details.
- Updated the HumanAnimator to improve rotation handling using quaternions for smoother transitions.
- Enhanced the HumanInstance to ensure proper synchronization of human positions and rotations.
- Integrated human event handling in the trigger handler for various interactions, including vehicle and machine actions.
- Introduced material drop functionality from vehicles to humans, allowing for dynamic interactions in the simulation.
fix: Update Model component to manage animation states and transitions more effectively
feat: Implement worker action handling in useWorkerHandler for material management
feat: Add MaterialAnimator to HumanInstance for dynamic material loading
feat: Extend useTriggerHandler to support interactions between humans and various entities
feat: Create WorkerAction component for managing load capacity and actions
feat: Introduce MaterialAnimator for human instances to visualize material loads
refactor: Update asset store to manage animation completion state
fix: Ensure proper handling of human materials in useHumanStore
- Added human event handling in the simulation, including the ability to add, update, and remove human instances.
- Introduced a new Human store to manage human states and actions.
- Updated the simulation context to include human management.
- Enhanced the Points and TriggerConnector components to support human interactions.
- Refactored existing components to integrate human-related functionalities.
- Added HumanInstance and HumanInstances components for rendering human entities in the simulation.
- Updated TypeScript definitions to include human-related types and actions.
- Added zone handling in the Line component for removing and updating zones based on points.
- Enhanced Point component to support snapping and updating zone positions.
- Introduced zone-related API calls for upserting and deleting zones.
- Updated zone store to manage zones more effectively, including methods for removing zones by points and getting zones by point IDs.
- Improved zone instance rendering to handle dynamic point connections.
- Refactored zone creation logic to allow for better interaction and snapping behavior.
- Updated API endpoints for zone operations to use version 1 of the API.