TeamPorcupine / ProjectPorcupine

Project Porcupine: A Base-Building Game...in Space!
GNU General Public License v3.0
484 stars 277 forks source link

GUI Visual Indicator for layers #1552

Open BraedonWooding opened 8 years ago

BraedonWooding commented 8 years ago

Specs

asset 1

The above image was a rough 10 second Illustrator sketch of what it could look like. Maybe we also have an indicator for the base level?

@koosemose the GUI Visual Indicator that you wanted me to draw up

koosemose commented 8 years ago

I will note that I'm an old-school gamer, so my tastes may differ wildly from many others, but for me that is less clear than a simple spinner style control. image

I personally prefer a very clear indication of what layer I'm viewing, in your image, while when focusing on it I can see the layer, It takes a lot more visual attention to identify which layer is the active layer. With the up/down arrows graying out when you're at the top. maybe something like a scrollbar to show where you are in a relative fashion. It could even be something like a simplified version of what you have. image

Though either of the stacked sort of controls may be somewhat less effective as more floors are added, I think the simplified version will be a bit more extensible (though after a certain point it may no longer be obvious as distinct layers, and more of just having a red horizontal bar in the middle of a black vertical bar.

All together I'd picture something like this. image

Though obviously in a visual style more fitting to the project, and not looking like it was drown by a 1st grader. :D

BraedonWooding commented 8 years ago

I like that design but I was viewing it less of a control and more of an indicator? And you could always place them together? Like this?

koosemose commented 8 years ago

Perhaps, but that's a lot of space. And I think the intended design is for a theoretically unlimited amount of layers (or at least capped at a fairly large number, and absolute minimum of more than the current 5), I just used 5 as a number to not slow things to a crawl while we got code cleaned up and more optimized (and more base functionality), and I worry that a more complicated image like that will lose visual separation after a point (appearing as more of a half white half gray block with a bit of red in the middle).

But really it's a matter of opinion, so we should see if other's have a preference one way or another (or an idea that wow's us both :D )

BraedonWooding commented 8 years ago

Yep exactly, so anyone who is just seeing this issue now pleaseeee also present your opinion

dusho commented 8 years ago

I like also more simple things.. just plain semi-transparent stuff - something like @koosemose proposed with having those arrows as transparent buttons.. Not even sure number is good for anything for user, so maybe just: image

BraedonWooding commented 8 years ago

I actually like that one quite a bit, Idk I like the lines/layers so you can see your 'half way' or so; more than the number.

koosemose commented 8 years ago

Number is for precision. If you have, for example, 20 levels, being halfway starts being more unclear, without stopping and counting, which takes away from playing.

BraedonWooding commented 8 years ago

Could we have number next to it? Obviously in the middle rather than bottom right? 4/25

Tranberry commented 8 years ago

uielements

@koosemose imo it could be as small as this, lower left corner, with your number next to it. I'm so old skool that I don't even think it should be a click-able button just an indicator.

Geoffrotism commented 8 years ago

I like the solid arrow with number in the middle from @koosemose. If it's not clickable it at least needs a tooltip telling you what key to press in my opinion. And then at the top and bottom layers get rid of the corresponding arrow.

f-montanari commented 8 years ago

Hang on, if we're gonna have 10+ levels, wouldn't that slider be quite annoying? Lets say I'm in floor 15 and wanted to go all the way down to floor 1, I'd have to click 14 times that slider... Maybe adding some other input may solve that.

BraedonWooding commented 8 years ago

Which is why I like the stack/slider option mmm. I think maybe have just keys to navigate levels (the UI becomes unclickable) and having maybe something like CTRL + 1...9 for levels so that way you can do those levels quickly and maybe CTRL + cycle up/down levels for increments of 5/10 kind of thing?

f-montanari commented 8 years ago

I'd prefer that over using Home and insert keys for level navigation...

BraedonWooding commented 8 years ago

Yep especially if level changing is a common activity. What do you think @koosemose about having CTRL + 1...9 for the first 9 levels and having CTRL + Up/Down Key to move up/down 5/10 (whatever is more common) levels, and Up/Down key moving up a single level (with WASD being the camera control)? Could even be something like T/G and well with camera bindings this would be editable.

koosemose commented 8 years ago

I don't see much point in having hotkeys for a limited range of levels, wouldn't that be better rolled into saved camera views? So a player can set which levels and positions they store, rather than a preset range which may or may not be useful to them.

And I really don't like Up/Down for the levels, it scatters controls in more areas, and there's not much else we can stick on the arrow keys that would make sense, whereas on the section with the current change levels we have both that and zoom, and could use insert/delete for something else.

Tranberry commented 8 years ago

I would love something like [alt] + [space] opens a text field where you ju + [down] 12 (jump 12) and it would 'zoom' you to level 12.

vogonistic commented 8 years ago

I like the numeric shortcuts, but not the hardcoded levels. How about shift-ctrl-<number> to change what level and coordinates ctrl-<number> jumps to so that the user can determine where to jump with the shortcuts. ctrl-1 could default to the starting location.

ctrl-g would allow the user to type in the level number.

@Tranberry Is that the start of a new dev console?

Geoffrotism commented 8 years ago

Why not also allow clicking on the level indicator to allow choosing the z axis. Ctrl + G wouldn't need a new window to pop up since it could focus there instead. My vote is ctrl + scroll wheel for level change if that's possible.

koosemose commented 8 years ago

@vogonistic That's basically the saved camera views (currently ctrl+F1-F4 to save and F1-F4 to go to I think), except I don't think the saved camera views have layer. Have it also save layer and perhaps move it to number keys should do well on that.

Ctrl+Scroll wheel seems like a good second way to change level a bit at a time.

BraedonWooding commented 8 years ago

I like Ctrl+Scroll to!

Tranberry commented 8 years ago

Yes, or no it's more like the spotlight app - I'm glad it's your next project @vogonistic 😉

vogonistic commented 8 years ago

@koosemose I forgot about those. I don't generally use the F keys so I would prefer the numerical buttons, but it's not a big deal.

Ctrl-scroll is a good idea.

@Tranberry We should start a new issue thread and figure out what we'd do with something like that.