bevyengine / bevyengine/bevy

Picking groups or filtering

Open
#22,221 0 comments 0 reactions 0 assignees View on GitHub
A-Picking C-Feature C-Usability
Dominant language
Rust
Stars
48.2k
Forks
4.8k
Avg merge
3d 16h
Merged PRs (30d)
171

Description

## What problem does this solve or what need does it fill?

I have some overlapping picking meshes, which form 2 separate sets for selection. One set is active at a time, depending on the application state. Think "select an object" vs. "select a part of an object". I don't see currently a way to handle that; picking selection just flickers between one or the other since they're both active (all meshes are picked). Note I already use `Pickable`, because most mesh are for rendering and not picking.

## What solution would you like?

Disjoint sets of picking, like groups. Allow enabling and disabling picking on some meshes without having to spawn/despawn components.

## What alternative(s) have you considered?

Spawn/despawn components or entities. This is a lot more work and manual bookkeeping.

## Additional context

I believe some of the third-party crates used to have that. Can't remember on top of my head which one.

Contributor guide

Open the contributing guide

Research direction

Start by tracing the existing Pickable component and the picking-selection path; the issue does not name specific files or tests. Done means overlapping meshes can be separated into disjoint picking groups, with groups enabled or disabled without spawning or despawning components or entities.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
computer-graphics, game-dev
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.