Decoupling x-ray and limit selection to visible

"Default box select tool in x-ray mode first tries to select edges that are completely inside the selection box. And then, if none edges was found, tries to select edges that intersect the selection box.

I modified the tool to always select intersected edges as you requested. And it has the option on the tool settings to revert default blender behavior."

Get in there and try it. If you dont want to override your Blender, download another version from the Blender website. Cirno is pretty open to modifying the plugin tool if a reasonable argument is brought up.

It has a custom intersection test to identify selected edges and based on that faces, so that’s not likely to happen here.

1 Like

Yes, I agree it’s not consistent in object mode. They should start from there first.

2 Likes

Wasted time unfortunately. The major feature of being able to select occluded geometry without the dumb face center makes selection on anything else than really low poly models unusably slow :frowning: So it’s back to the waiting game…

Just this weeks, I’ve again wasted several hours of my time just because of many broken selection. This really needs to be fixed asap.

2 Likes

I’m sorry tp hear that. I’m still using kio’s custom build over here, though once this project was finished I was planning on trying 2.83 with that addon. You say that if we have very dense meshes, the scenes get very slow to navigate? That’s sad to hear.

Luckily I am mostly using Blender in my free time for lazy-speed portfolio pieces, but if this was being used in my office that would suck.

I highly encourage you to get in contact with Cirno and let him know your problems with the addon. Perhaps a solution could be worked out - he certainly seems fully intent on working on this issue, as seen by his support in the thread. It doesn’t hurt to take those 5 min to write to him.

There’s no problem he is not aware of. He explicitly states that the facedot-less mode is very slow and hence disabled by default. On my very high poly model test, the face dot xray box select has about 1 second delay while the face area box select through has about 30 seconds delay.

This will hardly get much better simply because of python limitation. The only proper way to get it performing right is on C++ level, and that likely won’t happen as Kio’s patch got flagged as abandoned.

there is an unresolved design task here:

https://developer.blender.org/T73479

Yes, for almost 3 months now :frowning:

1 Like

I am surprise this thing still not implemented yet !
any software maya modo etc… they give us freedom to select from behind or from x-ray.
what I notice sometimes the developer say false information like “Why?” x-ray better, more pro etc… and when I asked in blender day they just read it and said use xray !!
sorry who the hell tell you this “xray” more pro ?
Iam professional artist I do most of my time modeling and I never use X-ray during my modeling in Maya
when I start using blender each time I need to select from behind I must use Xray serious…
so now to finish prop in maya took 1hour
but in blender it will be 3 hours … you get the idea
not all of us use modifier not all of us use Xray but give us freedom to choose we didn’t ask to remove it .
all the members here wants this features because they are professional they use it daily in modeling.

Select hidden geo without xray display:

Option to select (face,edge,vertex) behind object

3 Likes

This Addon helps ALOT with this, but still not ideal. I agree, proper backfacing/selection through is still needed and better ways to customize/display that.

But maybe this will help some people in the meantime.

Eidt: I should mention, he also made it work so you DON"T have to select face centers! You can select even on the edges and it works! :slight_smile:

1 Like

I must agree with @LudvikKoutny here. Having to constatnly switch between X-Ray+Wireframe and Solid modes is annoying and takes unnecessary time during modeling.
I’d gladly welcome backface selection enabled on a fully opaque mesh with no face centers as an option.

2 Likes

Just want to chime in with my frustration with this. The old system pre-2.8, with the “limit selection to visible” worked just fine, can we please just get that button back? Basic modelling tasks are taking me so much longer in the new versions. I mentioned this issue to my friend who mainly uses Maya and it blew his mind.

5 Likes

2.90 roadmap is out, and of course still no fix for the xray selection problem in sight: https://devtalk.blender.org/t/2020-06-09-blender-2-90-roadmap
):[

1 Like

This week I uploaded Benjamin’s custom Blender build to dropbox for an easier download, because another Blender user asked me to. He loves it.

If anyone wants to grab it, the link is above. Just be aware this was done with an early 2.82 beta, so some scripts that work for the official release may not behave the same here.

More info about the build: https://developer.blender.org/D6322

2 Likes

Just registered and posting here first time to give a little poke. This is giving me and many others quite some problems.

2 Likes

Thanks a lot for the link to the source changes for this, got it working for 2.83. Only one difference needed, far as I can tell anyways, it’s here:

https://developer.blender.org/differential/changeset/?ref=229154

Line 448, ‘ar’ has been changed to ‘region’

One thing I’m trying to figure out is how to get a select through option showing up in the keymap. That way I can just add an entry under selectbox for it and alt-drag to select visible, alt-shift drag to extend visible, alt-ctrl drag to exclude visible.

I figured it would just show up there once it was added to tool settings, but I don’t see it.

Anybody know how to add this to the keymap?

1 Like

The only person I can think of that could know more about this is @kio , the original patch modder. How about it Benjamin?

If we can get this working on the official 2.83 release, I am downloading that build faster than a slap to the knee!

Yeah it works in 2.83, I just want to make it a little more convenient.

At the moment you have to go into tool settings and click it on and off. Once I figure out how (or someone shows me how) to add that part into the keymap, we’d be able to map it to whatever we want.

To get it working just go through all the scripts at the end of that link
https://developer.blender.org/D6322

I found it easier by clicking the ‘view options’ and choosing ‘view standalone’

It will show you each script and where it’s located. The original is on the left, and the new one on the right. Green stuff on the right is additions, red stuff on the left is subtractions. Just have that one change to the iterators script that I pointed out.

Everything else is fine, but most of it is on different lines.

Best I can think of right now is to make a custom operator in python that basically just “clicks” that checkbox for you, but I was thinking more along the lines of having it in the keymap where you can map it to a modifier the same way you do the different modes like extend, subtract, intersect, etc

wm_operator_props.c
looks promising

Yeah, sure enough, adding that will put a “select through” checkbox under “wait for input” but at the moment it doesn’t actually do anything. Now to figure out where to put stuff so it connects up with it like it should.

Ok so the guy who actually did all the work on this says
“The setting itself is setup as a toolsetting and not as an operator property, mostly because it was easier for me to access it in the draw code (needed do decide if we draw the facedots in xray mode).”

I’m noticing stuff saying
if (blablabla)… ts->mesh_select_through

So yeah this will probably require some actual work. Going to go through this and hope for the best. Not expecting much though honestly, don’t know much about this stuff.

wm_operator_props.c
this is where you can add a select through property in
void WM_operator_properties_border

under wait for input

prop = RNA_def_boolean(ot->srna, “mesh_select_through”, true, “Select Through”, “”);
RNA_def_property_flag(prop, PROP_HIDDEN | PROP_SKIP_SAVE);

it will add a checkbox for select through in the keymap, where I want it to be, but it needs more to do stuff.

I think it will work like I want if I make it check for this property in the relevant parts of view3d_select.c where it currently checks for ts->mesh_select_through (the tool setting of select through)

I don’t know how to do that. How to make something check for a property in another script? I wish there was something like a cheatsheet for doing this. You know, what magic words to say and which Include stuff to throw at it. Going to fumble around some and figure it out one way or another. How hard could it be? :roll_eyes:

I rarely ever need it to click it off, so I don’t mind not having a keymap for now. If you made this work with the official 2.83 LTS release, could you please upload the build somewhere like I did to DB, so that others (including myself) can get this more easily?