Page MenuHome

Geometry: display generic attributes in the outliner [WIP prototype]
AbandonedPublic

Authored by Brecht Van Lommel (brecht) on Aug 19 2020, 7:26 PM.
Tags
None
Tokens
"Love" token, awarded by zNight."Love" token, awarded by corpse."Love" token, awarded by damian."Love" token, awarded by elbox01."Love" token, awarded by carl45456."Like" token, awarded by Fracture128."100" token, awarded by helloidonthaveanyideaformyusername."Love" token, awarded by angelbpineda."Love" token, awarded by digim0nk."Love" token, awarded by Shimoon."Love" token, awarded by dreamak."Love" token, awarded by GeorgiaPacific."Like" token, awarded by EAW."Love" token, awarded by ogierm."Party Time" token, awarded by manitwo."Burninate" token, awarded by charlie."Yellow Medal" token, awarded by rawalanche."Love" token, awarded by SteffenD."Love" token, awarded by wilBr."Love" token, awarded by printerkiller."Love" token, awarded by thornydre."Love" token, awarded by kenziemac130."Dat Boi" token, awarded by dfelinto.

Details

Reviewers
None
Summary

This is a prototype of a spreadsheet view for geometry attributes, which is
particularly useful for inspecting the results of particle nodes.

Since this only really does anything for point clouds and hair, it's quite weak
to have this as a general "Geometry" view. Further it's not clear such a
spreadsheet view belongs in the outliner or should be its own editor. Especially
if selectiong and add/remove of rows and columns is to be supported.

I don't know if it's worth trying to finish this for the first release of
particle nodes, but since this keeps coming up in design talks I thought it
would be useful to at least put something together in a few hours.

Depends on D8636

Diff Detail

Event Timeline

Brecht Van Lommel (brecht) requested review of this revision.Aug 19 2020, 7:26 PM
Brecht Van Lommel (brecht) created this revision.
Brecht Van Lommel (brecht) planned changes to this revision.Aug 19 2020, 7:26 PM

Quick impressions (though we can leave these for a design task, and have only code review discussions here):

  • Pretty cool to see you prototyping this.
  • Design doc?
  • This can be useful for mesh as well
  • We probably want to support select/active, but that means we need to be able to tell original points from generated ones
  • New/delete from there would be interesting indeed
  • Sorting (fast particles on top, ...)?

I think it would make sense to be a new editor. But I would lay out a minimal design doc first. Or at the very least map out the tasks we expect users to perform there.

Very nice!

I think it makes sense to have a "Spreadsheet Editor" that shows the attributes of the active or a pinned object.

Editing the values in the spreadsheet is nice, but is not necessary for an initial version imo. For now, the primary purpose should be data inspection. Therefore, we'll need good sorting and filtering options. Syncing selection with the 3d viewport is probably quite useful as well.

If we decide to go ahead with this I can make a proper design doc. But some quick points:

  • Agree this should be its own editor.
  • Editing values already works (for non-modified data), it's actually a little easier to draw these values using buttons. But probably the default should be to show modified geometry for inspection.
  • It uses the active object now and that's synced with the 3D viewport. Using selecting means there can be multiple objects, which means potentially different attributes or a very large number of objects, and handling those cases is not straightforward.
  • I imagine people will eventually want to show any data in spreadsheets, like object properties of multiple selected objects, or any kind of data on a list of datablocks.

This is amazing! I think it would make sense to continue building this as a generic spreadsheet style editor, since ultimately almost every type of datablock blender has will benefit from the ability to display its data in a spreadsheet manner. Particles, meshes, point clouds, even VDB volumes...

ogierm added a subscriber: ogierm.

It would be nice to have Python API to create and use such spreadsheet editors in addons (in panels, for example, or in nodes).

It would be nice to have Python API to create and use such spreadsheet editors in addons (in panels, for example, or in nodes).

True! The UI might be interesting, for example, for the NLE to display an edit list with in-out-poins, volume, track, etc..

Closing, because we have a spreadsheet editor now.