GSoC 2021: Knife Tool Improvements: Feedback

Already answered, 2 posts ahead

I have fixed the bug shown in the video. Currently, I am focusing on better multi-object edit mode but if I finish it ahead of time I will add snapping relative to the receiving edge as you show.

4 Likes

Are you able to reliable reproduce the behaviour where it cuts through even with “cut through (OFF)”? I cannot seem to reproduce it myself.

How to reproduce:

  1. Simple Box
  2. hit “K” - to activate knife
  3. with MMB rotate view slightly that top face hided behind view
  4. start to cut from top edge
  5. see how its cut through top face

if you rotate view with more angle, then it did not cut through.
Look on video at edge where I draw arrow, the point from Knife disappears after I rotate view more perpendicular to the top Cube face (X-Ray mode just for visual presentation).
So it Cut Through only if faces that behind 3dview and 3dView itself in some angle range…

Example with more complex mesh.
There are two issues:

  1. As with Cube top face (cut through)
  2. Cut line not a solid line (not closed), did not cut last face. Second half of video

3 Likes

Apologies all for the lack of communication recently. College has eaten most of my time when it comes to working on my knife project.

Nonetheless, I have just finished work on better multi-object edit mode and I have also fixed the majority of bugs discussed in this thread as far as I am aware. A proper update will be posted soon in the weekly reports thread.

35 Likes

I’m happy to report that this work has been committed to master, and therefore should be in release 3.0.

39 Likes

Congratulation on the merge!

It’s 90% just as good IRL as it was on paper. You made us very happy, honestly.

But I did find one big problem with it.

Axis lock was requested so we don’t have to always change views to make an axis aligned cut.
In the old system (with C) it was only possible by going to specific viewpoints (top, side etc) when the view angles aligned with the 3D world axes.

Now with the new axis lock this shouldn’t be the case any more BUT IT VERY MUCH IS!

These new axis lock cuts only work on already axis aligned polygons (like the default cube).
But if they are tilted, the resulting cut is not projected to keep the axis in the cut, instead it’s very much view dependent… as it was before with C.
One could argue it’s even more arbitrary as it was before - unfortunately - making axis lock even less useful.

To sum it with words:
If you start axis locked cuts from the same vertex from different viewport angles, you’ll always get new cuts, depending on the VIEW angle. This should not be the case at all.

And to sum it with images:

I must add that on the other hand the local axis constrain is perfect. :heart:

3 Likes

Isn’t local constraint what you actually need to get the results you’re expecting ? if the plane is not axis-aligned and you’re making a cut using a global axis constraint, the results don’t seem surprising
Or maybe I’m missing something

I see your point here. This had not occurred to me when I added global axis locking as I designed it to work in the same way as grabbing an object and sliding it along an axis works. I realise now this makes the current knife global axis locking somewhat redundant, however at the very least it can be used in some cases along with local axis locking.

I will investigate changing this to the way you propose, however with BCON2 coming up tomorrow I cannot promise to get it done in time.

6 Likes

When I’d like to create a vertical cut (for example) and I hit Z to lock, I’m expecting one particular vertical cut.
Always, from all viewport angles.
Now it’s viewport dependend so I never get the same cut twice. It’s going (kind of) vertical, but not exactly.

1 Like

Thank you very much!

Any time you could make this happen is a nice bonus to everything you already did (I know you also have your studies to do too)

2 Likes

Would it be possible to make right-click exit knife mode if no cuts have been made yet?

Recently I’ve been using L (select linked) a lot and often fat-finger the K-key instead. I then instinctually right-click to cancel like in other tools, puzzle a moment over how nothing’s happened, before clumsily feeling my way over to the escape key. It can be a bit of a flow killer.

The “no cuts yet” condition would mean we get this quick-cancel ability back, while also not compromising the new “right-click to end cut” functionality or otherwise running the risk of accidentally losing all cuts like in the old “right-click any time to cancel” system.

10 Likes

That sounds like a great idea, I will add this functionality. Thanks for the suggestion!

10 Likes

The new shortcuts… I don’t think it is reasonable.

I can create a new cut by pressing E in traditional way. So I don’t need a right click to do the same thing.

And instead, after right click became the new cut shortcut, the new cancel shortcut gives me the ESC to reach. Is that fast and convenient?

I think the traditional way is better.

Would it be possible to fmod the angle constraint printout by 180? It makes the printout much more useful at a glance since you’re doing a lot less mental math like trying to snap to 45 degrees but it often shows up as 315 or 225 etc.

I’ve also noticed a little bit of jitter for the printout. For instance, when using a 10degree snap, sometimes the number will flop between 2 values, e.g 100 and 110, but the line hasn’t moved. It’s like the printout is unsynchronized with the drawing of the line a bit.

1 Like

The reason I changed right click is because it was one of the largest complaints with the way the knife tool worked previously. It was very easy to accidentally right click and erase an entire cut. In this way it becomes harder to throw out your work unless you definitely want to by pressing ESC.

I have also changed it so you can still use right click cancel when there are no cuts. This helps keep the flow of the tool similar, but not the same, as it was.

4 Likes

Apologies for the slow response. I have been incredibly busy with college as of late. I will try to take a look at these things by the end of this week. I noticed you also created a ticket (T92952) which I will interact with as well.

6 Likes

I think the tool’s shortcut keys are a bit too much, would it be better to add some ui properly?

3 Likes

We are using RMB for view pan by the way (that moves the entire viewport navigation to the mouse)

1 Like

I’m using it for rotation :+1: