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

[render_gl] Needs nominal support for glTF #20185

Closed
12 of 14 tasks
Tracked by #20152
SeanCurtis-TRI opened this issue Sep 13, 2023 · 2 comments
Closed
12 of 14 tasks
Tracked by #20152

[render_gl] Needs nominal support for glTF #20185

SeanCurtis-TRI opened this issue Sep 13, 2023 · 2 comments
Assignees
Labels
component: geometry perception How geometry appears in color, depth, and label images (via the RenderEngine API) priority: high type: bug

Comments

@SeanCurtis-TRI
Copy link
Contributor

SeanCurtis-TRI commented Sep 13, 2023

What happened?

Problem statement

Currently, if a Mesh or Convex referencing anything other than a .obj file is passed to RenderEngineGl, it will simply do a one time warning about it only uses .obj files and then ignore the geometry. RenderEngineGl is the last hold out for supporting glTF files (in any way). By giving it (at least nominal) support for glTF, we are free to promote glTF as the preferred visual representation in Drake.

Ideal solution

RenderEngineGl should consume the glTF and render it with a PBR-compliant render pipeline.

Challenges

  • RenderEngineGl doesn't currently have a PBR render pipeline (this would require extensive shader writing and delay the time before we'd be rendering anything.
  • A glTF file can have multiple disjoint pieces. Each would be associated with the GeometryId. Currently RenderEngineGl only associates a single geometry "piece" with a GeometryId.

Proposed solution

  • We won't expect PBR support out of the gate. Instead, we'll transform PBR to the current quasi-Phong model.
  • We need to upgrade RenderEngineGl to support a one-to-many mapping between GeometryId and geometry "pieces".

The plan

Version

No response

What operating system are you using?

No response

What installation option are you using?

No response

Relevant log output

No response

@SeanCurtis-TRI SeanCurtis-TRI added type: bug component: geometry perception How geometry appears in color, depth, and label images (via the RenderEngine API) labels Sep 13, 2023
@SeanCurtis-TRI SeanCurtis-TRI self-assigned this Sep 13, 2023
@jwnimmer-tri jwnimmer-tri moved this from Todo to In Progress in #dynamics (Drake board) May 20, 2024
@jwnimmer-tri jwnimmer-tri changed the title RenderEngineGl needs nominal support for glTF [render_gl] Needs nominal support for glTF Jul 9, 2024
@SeanCurtis-TRI
Copy link
Contributor Author

I've inserted a link to my simple experiment for comparing performance between RenderEngineGl and RenderEngineVtk up above. PTAL.

@SeanCurtis-TRI
Copy link
Contributor Author

The only thing left in this issue cannot be resolved until #18922 gets resolved. I've moved that remaining item into that issue.

@github-project-automation github-project-automation bot moved this from In Progress to Done in #dynamics (Drake board) Jul 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component: geometry perception How geometry appears in color, depth, and label images (via the RenderEngine API) priority: high type: bug
Projects
Archived in project
Development

No branches or pull requests

2 participants