-
-
Notifications
You must be signed in to change notification settings - Fork 4.4k
Open
2 / 22 of 2 issues completedLabels
A-MathFundamental domain-agnostic mathematical operationsFundamental domain-agnostic mathematical operationsA-RenderingDrawing game state to the screenDrawing game state to the screenC-FeatureA new feature, making something new possibleA new feature, making something new possibleC-Tracking-IssueAn issue that collects information about a broad development initiativeAn issue that collects information about a broad development initiative
Description
This issue tracks progress on primitive shapes, which were first added in #10466 based on the primitive-shapes RFC.
Meshing #10569
Primitives should support Mesh construction.
- 2D shapes Add
Meshabletrait and implement meshing for 2D primitives #11431 - 3D shapes Implement
Meshablefor some 3D primitives #11688 - Deprecate shapes in
bevy_render::mesh::shapeDeprecate shapes inbevy_render::mesh::shape#11773 - Support subdivisions
Gizmos #10571
Gizmos should support drawing primitives.
Bounding volumes #10570
Bevy should have first-party bounding volumes and support computing them for primitives.
- Implement bounding volume types #10946
- Implement bounding volumes for primitive shapes #11336
- Implement bounding volume intersections #11439
- Add RayTest2d and RayTest3d #11310
- Add volume cast intersection tests #11586
List of primitives
- Rectangle
- Cuboid
- Circle
- Sphere
- Ellipse
- Ellipsoid
- Triangle
- Tetrahedron
- Plane
- Line
- Line segment
- Polyline
- Polygon
- Regular polygon
- Annulus/Ring Add
Annulusprimitive tobevy_math::primitives#12706 - Torus
- Capsule
- Cylinder
- Cone
- Conical frustum
- Pyramidal frustum
- View frustum
- Pyramid
- Prism (can be built by extruding 2D shapes)
- Wedge/Ramp (can be built by extruding a triangle)
- Half-space
- Arc New circular primitives:
Arc2d,CircularSector,CircularSegment#13482 - Circular sector New circular primitives:
Arc2d,CircularSector,CircularSegment#13482 - Circular segment New circular primitives:
Arc2d,CircularSector,CircularSegment#13482
Remove bounding volumes from bevy_render
See #13945
Misc
- Split
RayintoRay2dandRay3dand simplify plane construction #10856 - Remove AABBs and collision logic from
bevy_spriteUseIntersectsVolumefor breakout example collisions #11500 - Support projecting 3D shapes onto 2D
- Support extruding 2D shapes into 3D Extrusion #13270
- Point queries (
project_point,contains_point, etc.) - Ray casting Ray Casting for Primitive Shapes #15724
- Support maps
- Signed distance functions
Long-term possibilities
- Bounding Volume Hierarchies (BVH)
- Broad phase collision detection
- Spatial query pipeline
- Rendering
- Frustum culling
- Collider shapes and collision detection for primitives
- Raycasting and other spatial queries for primitives
- Signed Distance Functions (SDF) for primitives
Reactions are currently unavailable
Sub-issues
Metadata
Metadata
Assignees
Labels
A-MathFundamental domain-agnostic mathematical operationsFundamental domain-agnostic mathematical operationsA-RenderingDrawing game state to the screenDrawing game state to the screenC-FeatureA new feature, making something new possibleA new feature, making something new possibleC-Tracking-IssueAn issue that collects information about a broad development initiativeAn issue that collects information about a broad development initiative