[BUILD] Blender 312 Select Through
[DIFF] Sthru312
[OPTIONAL] Alternate Header
Ok here’s a release build for 3.12, should be good as far as bugs (edit - Intersect selection doesn’t work with faces in xray/select through unless it’s by facedot, see posts below), optix should be working. I don’t think the HIP sdk is out yet, so you’ll need to compile the DIFF later if you need that. I couldn’t check it anyways since the latest AMD I have is a 7870.
Current behaviour of Blender is intact and should be unchanged if you reset to default. List of what it does, some pictures where applicable:
Facedots
Facedots are split into xray and solid shading. Just means you can toggle them independently. Facedots can be turned off in xray.
This is accessed from the viewport overlay popover. If anybody has a keymap for the facedot toggle in vanilla blender it will still work as usual (it toggles facedots in solid shading only). But if you assign the operator I put in its place it will toggle facedots for whatever mode you are currently in, solid or xray. Similar to the default xray button, it will toggle xray for either wireframe or shaded depending if you are in wireframe or not.
X-ray and Select Through
You can select occluded elements without turning on xray manually. This is available in 3 flavors, auto xray, select through header button, and select through keymap. Xray has it’s own popover and the settings for it are in there instead of Viewport Shading. These alternate xray modes are also available whenever you have box, lasso, or circle as your fallback tool for things like the transform tools.
Auto-Xray will turn on xray for you while drag selecting in box, lasso, or circle. When selection is finished, or cancelled out of, it will turn xray back off for you. Can be turned on and off, header button will reflect this.
The on/off status for auto xray and select through header button can be synchronized amongst any combination of the 3 selection tools.
Select through header button lets you select as if xray was on without changing anything visually. Toggles on or off like auto xray.
Select through keymap is the same as the header button version except instead of a toggle, you hold down whatever you assign it to in the keymap during each selection. You’ll need to do this keymap assignment for yourself, tooltip will show you how. It’s in the keymap for each of the 3 select tools, you will find a checkbox called ‘Mesh Select Through’
Drag Select Options
You can select edges and faces differently. Accessed from toolsettings from the two usual spots. Also available whenever you have box, lasso, or circle as your fallback tool for things like the transform tools. You can force select all edges instead of needing to fully enclose them. Circle select does not have fully enclosed edges or faces options, only the ability to disable xray facedot selection.
Faces are slightly more complicated. In short, xray facedots has priority when you are in xray and facedots are visible. This is the default behaviour. If you turn off ‘xray facedots’ it will select by face area aka intersecting faces. If you have enclosed faces on it will only select fully enclosed faces, but again, only if ‘xray facedots’ is off if you’re in xray with facedots visible.
Alternate Header
This is just something I’ve done for myself, and since it’s all python, you don’t need to compile to use it if you’re interested. It saves a little space by moving the shading buttons into the popover. To make more use of the button, it is actually just the xray button with a different icon depending on what mode you’re in. This is so you can have the usual xray state visible in button form when in either auto xray or select through header button, where you’d otherwise have to open the popover to see a button that lights up to show when xray is on.
Let me know if somethings wrong, thanks for helping everybody. I’ll wait a bit to be sure nothing’s messed up, and then go about submitting something. Based on what I read, they don’t want something that combines multiple features in one diff. So it might be split into 3 different diffs (facedot, select through, drag select options)