Skip to content

Let Gizmos support arcs in 3D #11536

Closed
Closed
@RobWalt

Description

@RobWalt

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

Currently we don't have the functionality of drawing 3D arcs with gizmos. This is useful for drawing any kind of compound shape however.

What solution would you like?

Initial thoughts (just here for documentation of the process) I explored the APIs of other engines for this and documented my findings [here](https://github.com//pull/11072#issuecomment-1882755344). It seems that it would make most sense to replicate unity's API because:
  1. It's the easiest way for a first implementation
  2. People switching engines instantly feel "home"

Update:

I opted for a custom implementation in the end. The unity-like implementation had some flaws and other unintuitive quirks. I think the API should draw orientation from easy to get mental models for placement/orientation/general configuration of the arcs. I went for a combination of:

  • the builder pattern we already had
  • intuitive (?) defaults
  • extensions of the builder pattern to the maximum

What alternative(s) have you considered?

Initial thoughts (just here for documentation of the process) I searched for the implementations in other engines and even tried to come up with an original approach myself but unity's API. Compared to unity's API there were too many cons to follow these paths further.

Update:

I looked into other implementations of similar APIs and documented this here. I even implemented the unity API in the first implementation of this issue but that was not really feeling good in the end when I tried to use it in the examples.

Additional context

The functionality for this is already there. I'll cherry-pick it from another PR branch, open a distinct one just for this feature and link it here.

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-GizmosVisual editor and debug gizmosC-FeatureA new feature, making something new possible

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions