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

PolyStrips: Proportional Edit #1455

Open
vxlcoder opened this issue Feb 27, 2025 · 3 comments
Open

PolyStrips: Proportional Edit #1455

vxlcoder opened this issue Feb 27, 2025 · 3 comments
Assignees
Labels
Milestone

Comments

@vxlcoder
Copy link
Contributor

(moved here from #1397)

The one nice-to-have but not necessary feature would be the ability to adjust strips that are already connected to other geometry and have a falloff for how much the surrounding geometry is affected. For example:

Given this strip:

Image

Adjusting it currently gives this result:

Image

Whereas, ideally, it would influence the surrounding geometry with a soft falloff based on topological distance.

Image

This would be extremely helpful for adjusting key loops around faces and other organic features. I don't know how hard that is though, so I think it should only be considered after the base functionality is there, if it would be an easy win, and if there is extra time before the release.

@vxlcoder
Copy link
Contributor Author

@jlampel, this shouldn't be hard to implement, but I have lots of follow-up questions.

should we use the brush size (screen space) to determine what all other verts should be edited?

  • if so, would we will need to change PS to always show the brush so the artist knows the affected size?
  • or maybe show the brush when hovering a control point?
  • should we add Wheel changes brush size while tweaking a handle?

right now, PS Edit transforms the verts uniquely from standard blender grab ops. i suppose i could try to adjust the vert positions by figuring out where each vert should go and iteratively call blender's transform op on each vert. this would allow blender to handle all the proportional editing stuff... but i think it would be very difficult to do this in a sane way. it seems extremly hacky!

alternatively, we write our own version of prop editing.

always the decision: should we use standard blender stuff so it matches, or do our own thing that's much easier to maintain and control?

vxlcoder added a commit that referenced this issue Feb 27, 2025
right now, only considering bmverts that share a face with a selected
bmvert.

right now, selected bmverts are moved with a factor of 1.0, and these
un-selected neighboring bmverts are moved with a constant factor of 0.5.

later, we can determine factor as a falloff based on distance from curve
and size of brush (or some property of edit)
@vxlcoder
Copy link
Contributor Author

commit 23af344 is a vertical slice through this as a quick test.

@jlampel
Copy link
Member

jlampel commented Feb 27, 2025

This is awesome! Thank you!!

I don't think we should use the brush size, since we're always going to want the affected size to be bigger than that and the user would need to be scaling up and down pretty often. Can we just use Blender's scene tool setting Proportional Size? And draw a similar circle only when transforming? It would be really nice if we could just lean on Blender's proportional editing here, but I'm not sure if that's possible.

@jlampel jlampel added this to the v4.0 milestone Feb 27, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants