Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Inverse Kinematics: User Input #41

Open
starphys opened this issue Mar 25, 2023 · 5 comments
Open

Inverse Kinematics: User Input #41

starphys opened this issue Mar 25, 2023 · 5 comments
Assignees
Labels
Mission Control Web development related

Comments

@starphys
Copy link
Contributor

starphys commented Mar 25, 2023

The control system (in Target.tsx) needs to be updated to only accept input within the correct component, and to scale the x/y coordinates proportionally to that component instead of to the whole window. Right now clicking on the center of the screen is the only way to send input at the center of the model, even when it is not actually centered on the screen. This is a nice React task that doesn't strictly require other libraries, so a good way to improve React fundamentals.
We also need to decide on a way to control z input, which might be click in the window (just like x and y) or might be connected to the scroll wheel or a UI element. There are disadvantages to each approach, so we should try a few and see what feels most natural.
Additionally, it would be great to have an in-world cursor for the targeting system, that is a different color from the target once its placed. This will let us see where we're sending the hand to before we actually start sending angles for it.
Finally, we need to disconnect the click-to-set-target from the click-to-rotate-camera controls. We might be able to bind one or the other to ctrl+click instead, or take any other approach that allows us to control them independently.

@Viha123 Viha123 self-assigned this Mar 27, 2023
@william-green william-green self-assigned this Apr 8, 2023
@william-green
Copy link

william-green commented Apr 8, 2023

I got the branch setup and I replicated the issue. I can take the task.

@william-green
Copy link

Completed!

@starphys
Copy link
Contributor Author

starphys commented Apr 9, 2023

This still needs to be tested on someone else's machine. Additionally, there are several subtasks on here that haven't been started.

@starphys starphys reopened this Apr 9, 2023
@starphys
Copy link
Contributor Author

starphys commented Apr 9, 2023

  • Ignore clicks that are not on the IK pane.
  • Adjust input scaling to match the pane. (For example, clicking on the middle while the plane of the screen is perpendicular to the xy plane should place the cube directly in the center of the model.)
  • Add mechanics for controlling the z input (currently only take input in xy plane).
  • Cursor for targeting system to show where the target will be set to on click.
  • Modify event listeners to separate click-to-set-target and click-to-drag-camera.

@Viha123
Copy link

Viha123 commented Apr 15, 2023

I have modified the event listeners so that now it is left click drag to rotate camera and right click to set target. I can change the specifics later if required.

@Viha123 Viha123 added the Mission Control Web development related label May 6, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Mission Control Web development related
Projects
Status: In Progress
Development

No branches or pull requests

3 participants