Layer Lock Button
Layers would benefit tremendously from the ability to lock them.
An accidental move, selection error, or switch update delay can cause a lot of problems with a piece.
I'm also somewhat of the opinion that the sketch should default to starting on layer one instead of the main layer. This way selecting main layer just moves everything (holds the nodes) and you avoid tricky problems when making modifications later due to unintentionally applying things globally.
I'm also somewhat of the opinion that the sketch should default to starting on layer one instead of the main layer. This way selecting main layer just moves everything (holds the nodes) and you avoid tricky problems when making modifications later due to unintentionally applying things globally.
31 Replies
I'm not sure I understand. You should only be able to select things on the current layer and there's no way to move the layer as a whole. I did fix "select all" a while back as I think it selected things across layers..
The intention is that you can never select across multiple layers and all selection actions affect the current layer.
But - I don't think this is enforced beyond the selection tool specifically.
It probably should also extend to moving 3d models and reference images without using the select tool.
I'm undecided whether other tools should also be restricted to the current layer
It might have been user error, I will confirm. As I recall it affected models and images.
Layer locking or unlocking would have the advantage of being able to modify objects on multiple layers while leaving the rest alone.
This can be useful if you have multiple figures or a situation such as a figure wearing complex armor for example. This way the armor can be easily modified without affecting the figure, but the layers can be unlocked and they can move together. :: update. Confirmed. Layer enforcement does not apply to images or models (at least not consistently.
In the test I had nothing on the main layer, models on layer 2, images on layer3, on layer 4 I added brush strokes. As long as the other layers were visible I was able to select the models while working on layer 4, as well as images.
Aside from the other advantages mentioned, this was my reason for the initial post.
This can be useful if you have multiple figures or a situation such as a figure wearing complex armor for example. This way the armor can be easily modified without affecting the figure, but the layers can be unlocked and they can move together. :: update. Confirmed. Layer enforcement does not apply to images or models (at least not consistently.
In the test I had nothing on the main layer, models on layer 2, images on layer3, on layer 4 I added brush strokes. As long as the other layers were visible I was able to select the models while working on layer 4, as well as images.
Aside from the other advantages mentioned, this was my reason for the initial post.
OK. I think the correct fix is to be consistent in whether you can modify layers other than the current one. There's obviously quite a few loopholes here we aren't catching.
Ya, that's the first thing to address. Can get by with the pin mechanism, but it's definitely undesirable behavior to have it work inconsistently.
Locks would add a lot more functionality, for complex pieces.
Effectively creates a method for defining subgroups, which can be important if working on an intricate model using a small number of brushes which you might want to change later. Muscles and clothing are the ones that I run into the most. Although there's lots of other situations where this would be useful. In this instance I want to be able to work on just the active layer, but I want to be able to move the layers together. Currently this isn't possible without merging the layer which defeats the advantages of keeping them separate
Effectively creates a method for defining subgroups, which can be important if working on an intricate model using a small number of brushes which you might want to change later. Muscles and clothing are the ones that I run into the most. Although there's lots of other situations where this would be useful. In this instance I want to be able to work on just the active layer, but I want to be able to move the layers together. Currently this isn't possible without merging the layer which defeats the advantages of keeping them separate
Just played around and I can add a bit more detail here.
1. The select tool seems to work correctly. i.e. you can only select stuff on the current layer
2. Grabbing models or images without the select tool works for any object
3. Brush strokes can only be grabbed using the select tool so there's no issue here
So I suppose the question becomes "Should grabbing be disabled for objects not on the current layer?"
Arguments for are:
1. It's inconsistent to have it behave differently from the select tool
2. There's no way to prevent grabbing things by mistake unless you use the pin tool
Arguments against:
1. It's been like this for a while and there's been no complains (other than this).
2. Prior to layers - there was no situation where you couldn't just grab something that wasn't pinned
I'm on the fence slightly on this. Also - i think rebrush and other tools probably work across layers. Select is the only tool that doesn't.
Another solution is to add layer locking and then allow the select tool to work across any unlocked layers. The decision to disallow this originally was to simplify the implementation of layers and reduce the number of potential edge cases. It's possibly worth revisiting.
@Seethrough - any thoughts?
Oh I actually ran into this during my animation testing, in my opinion given how other programs with layers work, the select tool should work only on the active layer
Having it apply to all of them kind of reduces the purpose of the layer system
Layer locking is probably easier to work with from a user perspective.
Also allows the flexibility of being able to work cross layer when needed and stay on a specific layer when you want to. This can also be really helpful when detailing if there's large scale differentials in the piece.
I seldom have issues of grabbing things on inactive layers, like I can put smoke clouds there and not hit them Models don't seem to be consistently bound by that and I always have to pin them if I want them to stay still.
Also noticed that collapsing layers has to be sequential.
This can be tricky. Not sure if this currently ignores hidden layers or not. If so, I'd prefer it didn't to avoid accidental mergers. Didn't look too deep at it. I think undo may fail sometimes on mergers and deletions. Sometimes getting errors around that, but I don't understand them well enough to elaborate yet If you decide to lock layers that should also prevent deletion/merging
Also allows the flexibility of being able to work cross layer when needed and stay on a specific layer when you want to. This can also be really helpful when detailing if there's large scale differentials in the piece.
I seldom have issues of grabbing things on inactive layers, like I can put smoke clouds there and not hit them Models don't seem to be consistently bound by that and I always have to pin them if I want them to stay still.
Also noticed that collapsing layers has to be sequential.
This can be tricky. Not sure if this currently ignores hidden layers or not. If so, I'd prefer it didn't to avoid accidental mergers. Didn't look too deep at it. I think undo may fail sometimes on mergers and deletions. Sometimes getting errors around that, but I don't understand them well enough to elaborate yet If you decide to lock layers that should also prevent deletion/merging
I think this boils down to whether "other layers are locked" should be the default or if you should actively have to lock each layer. @Seethrough is arguing for the former and you're arguing for the latter. I genuinely can't decide.
i'd probably go for the former but mostly because it's nearly what we've got - and it's me that has to do the work!
So "pull requests welcome" is pretty much the final decider 😉
To clarify:
Ideally my preference is for an actual lock button which defaults to open (although could get used to either as a default).
You can click on it and toggle it if you want the layer closed/changed. If I have to choose whether all other layers are locked I'd prefer the former because accidentally moving things sucks. Best solution of course is best of both worlds, which is why the lock button was suggested. The additional flexibility would be quite powerful
You can click on it and toggle it if you want the layer closed/changed. If I have to choose whether all other layers are locked I'd prefer the former because accidentally moving things sucks. Best solution of course is best of both worlds, which is why the lock button was suggested. The additional flexibility would be quite powerful
My two cents; I was surprised that the layer palette had no lock button. While trying to add and modify the camera path, I kept accidentally moving objects around. It was very frustrating and simply being able to lock my layers would have been incredibly helpful.
Hiya - there's a nuance here. The selection tool is behaving correctly (you can only select from the current layer But the grip button without using the select tool is (as we agreed above) currently working incorrectly and allows you to move stuff from any layer. That much as been agreed.
What's still up for debate is whether - after fixing this issue - we still need an explicit lock button or not.
Imo the ability to lock layers, more than a "needed feature", is some sort of creative standard. There are ways to do without, but there's a reason why most software with layer capabilities have it, and also Gravity Sketch has it: it's a comforting and reassuring feature. Gives you the ability to double check if you REALLY want to edit the layer you selected, and prevents you from spending 10 mins adding details to a wrongly selected layer
Of course, I'm bumping this because it just happened to me 🙂
Regarding HOW to do it: I'd copy the most used way in the most similar softwares, leaving the mental toll to their experience - no need to reinvent the wheel. The way gravity sketch does it is pretty good imo
I personally like the way medium handles it. Super powerful. Also agree that it's pretty essential, for the reasons you mentioned among others.
Is one place I'd accept a larger palette if needed, can never have too many layers
Yea, medium is a pretty great example as well!
Can you please bump up the feature request using the arrow up button in the OP?
I did, although I'm pretty sure it's in there already.
(sorry, was in a hurry the other day and didn't notice you were the author AND a member of the team. Heh 😅)
OK. I'm still not clear on why we need both these things:
A. Ensuring everything not on the current layer is unselectable
B. Locking a layer
If we implement A then isn't B superfluous? All other layers are locked automatically so the only action that the user can take is to also lock the current layer. If you really want to do this, then just create an empty layer and switch to that. If you do that then nothing can be selected.
@AncientWorlds ? @Farfalk ?
imo the lock is usually used as a safety feature to completely lock layers you don't want to edit anymore
imagine a big work, 10 layers
you work for a week
at some point you realize you made the last two hours of your work in the wrong layer, a layer you didn't want to touch
on krita, gimp, or even gravity sketch you can lock a layer
here you can't
OK. So it's not about accidentally grabbing something? I wasn't even thinking about drawing - just selecting!
yes exactly! It's about editing a layer you don't want to edit, so i'm thinking more about drawing than selecting
at least, that's the point for me
(sorry, misread)
in which case the lock button could simply make it so you can't switch to that layer. That way you can't draw OR select anything.
that could be a way, but imo would be different from the "standard" way locks work in art softwares with layers
What does it mean to switch to a layer that's locked? What actions could you take on that layer?
it means you try to do something and you can't
and you remember "ah, it's locked!"
and you unlock it, or realize you're mistakenly working on a layer you don't want to edit and switch to another
hmmmm. ok
that's what happens on other software, but it's true that there are other things you can do in other layers on those softwares
like, opacity
naming
filters
masks
so you lock only editing but there's still a "why" you would want to select it even if it's locked
in this case you can do nothing, at least for the time being, so your solution would be the same
Photoshop is a bit more complex:
quite a bit more yeah
but you can do lots of stuff there you can't actually do in openbrush. So I think the only very useful stuff, as a QoL feature, is an editing lock
maybe with a small popup that reminds you of the lock, for finesse
It's really easy to find yourself working on a layer you didn't think you were working on.
Locking prevents that, and also prevents you from accidentally clicking on it and moving things out of place.
We currently don't have any tools which allow you to work across multiple layers (in theory more so than in practice),
however being able to lock some layers would be useful if that were ever designed in or desired to be.
For example, maybe I want to rebrush everything that isn't on a locked layer.
Another useful thing might involve bulk selection or inverse selection of everything that isn't in the locked layers. This can also be really useful if say you've got something like a complex arm that's part mechanical and part organic, each of these might have their own layer. You'll want to keep them precisely together when moving.
At some point you might wish to reposition the arm, or the figure it's attached to. Locked layers gives you that control if you can otherwise globally select Other use cases might emerge, depending on what other features eventually appear So there's a bit of future proofing that goes with that.
The main safety feature of locks is to prevent accidental moves and alignment shifts and avoid mixing details.
Another useful thing might involve bulk selection or inverse selection of everything that isn't in the locked layers. This can also be really useful if say you've got something like a complex arm that's part mechanical and part organic, each of these might have their own layer. You'll want to keep them precisely together when moving.
At some point you might wish to reposition the arm, or the figure it's attached to. Locked layers gives you that control if you can otherwise globally select Other use cases might emerge, depending on what other features eventually appear So there's a bit of future proofing that goes with that.
The main safety feature of locks is to prevent accidental moves and alignment shifts and avoid mixing details.
We currently don't have any tools which allow you to work across multiple layers(You can work across multiple layers in one regard. You can add things from different layers to your selection and then move that selection. Multiple layers will have things removed from them. It's not a tool specifically but shows one of the edge cases)
I think it may sometimes apply to selection and rebrushing.
Selection across layers is generally undesirable, but at other times very helpful when moving everything, or everything except 'this' thing.
Layer lock would definitively prevent undesired selection, which is one of the primary benefits. If I select something and then grab something else, or continue drawing they tend to get associated. I've had to 'put things back' or undo several times when I've done this without realizing it. Maybe after copy actions, will have to look for what I was doing at the time. At any rate, I don't want to accidentally move things from different layers across layers. It should be an intentional action that is fairly mistake proof. That thing you were trying to keep on a separate layer, because it's a detail that's hard to separately select (say bones or wires in/on an arm) would be a an example of something that you definitely wouldn't want to accidentally 'move to new layer' after say dragging the arm into a position. Layer locks provide clear definition for these kinds of operations, which is why they are used widely Even more control can be given with layer hierarchies, but its not strictly necessary, may take more space, and is presumably harder to code on the interface level. Locks would probably be sufficient, but I feel they are pretty necessary especially if there are actions which may or may not span across multiple layers
Selection across layers is generally undesirable, but at other times very helpful when moving everything, or everything except 'this' thing.
Layer lock would definitively prevent undesired selection, which is one of the primary benefits. If I select something and then grab something else, or continue drawing they tend to get associated. I've had to 'put things back' or undo several times when I've done this without realizing it. Maybe after copy actions, will have to look for what I was doing at the time. At any rate, I don't want to accidentally move things from different layers across layers. It should be an intentional action that is fairly mistake proof. That thing you were trying to keep on a separate layer, because it's a detail that's hard to separately select (say bones or wires in/on an arm) would be a an example of something that you definitely wouldn't want to accidentally 'move to new layer' after say dragging the arm into a position. Layer locks provide clear definition for these kinds of operations, which is why they are used widely Even more control can be given with layer hierarchies, but its not strictly necessary, may take more space, and is presumably harder to code on the interface level. Locks would probably be sufficient, but I feel they are pretty necessary especially if there are actions which may or may not span across multiple layers