Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add attitude autopilot v2 #3014

Merged
merged 3 commits into from
Jul 16, 2014
Merged

add attitude autopilot v2 #3014

merged 3 commits into from
Jul 16, 2014

Conversation

dvolk
Copy link
Contributor

@dvolk dvolk commented Jul 5, 2014

Uses the more appropriate CONTROL_FIXHEADING_*

I also added a kill rotation mode, which stops the ship from rotating and then sets control to manual again. It's bound to numpad 5.

@bszlrd
Copy link
Contributor

bszlrd commented Jul 5, 2014

Numpad 5 is a strange choice, being right among the view controls.

@dvolk
Copy link
Contributor Author

dvolk commented Jul 5, 2014

You're right. I was thinking that now that the view can be controlled with the mouse, the numpad could be used for rotation/translation (like in Orbiter, heh). Meanwhile it should perhaps have a better keybind (I'm open for suggestions).

@bszlrd
Copy link
Contributor

bszlrd commented Jul 5, 2014

I think view controls with numpad are fine as they are now. They are controlling the internal views in a nice, spatially coherent way in my opinion, and I think we should keep that. WASD and IJKLUO is a good layout in my opinion, since there are a bunch of other keys around them, so you don't have to lift your hands for a lot of things. (I swapped rotation and translation controls on my setup though, rotation with my left felt strange)
Also, there are a lot of laptops and even external keyboards which lack numpad. (And I even had a keyboard which had a numpad combined with a calculator, and it wasn't really able to control Orbiter or any other game for some reason. I guess it sent the signal in a different way or rythm. This is a marginal case though)
Also the third mouse view manipulator lacks roll control for example, and generally feels less exact (not that exactness is that important though, mostly for screenshot making)

I think kill rot would fit better somewhere around the translation controls. P for example. This way you can play with the rot controls with one hand, and kill rot with the other, if needed.

And one last thing: we already have a kill rot function practically. It's a toggle though. It's "R" I believe, and called Rotation Damping. Is a second different way to do it needed?

@corundscale
Copy link

"WASD and IJKLUO is a good layout in my opinion"
Do remember that there are people with different handedness and so on.
There is no one size that fits all (for example I'm left-handed and have retros on Num5 as a carry-over from JJFFE).

And we already have two killrots - rotation damping toggle and "grabbing" the rotation controls for a moment with mouse.

@bszlrd
Copy link
Contributor

bszlrd commented Jul 6, 2014

I'm also left-handed (altough I use the mouse with my right, so I consider myself right-handed in this question, even if I use my left hand for almost every other thing). And I think that that layout is better for both lefties and righties, then moving things to the numpad. I swapped translation controls to WASD mostly because I just got used to it as strafing in FPS games, and I rotate already with my other hand on the mouse.
I think JKLI translation controls are good for lefties because they can reach the shift modifier with the same hand, and and also it's close enough to the spacebar, but far enough to allow a comfortable mouse handling for the left hand. (Oni had a similar layout for lefties for example)
I understand that one size fits all doesn't really happen, but that shouldn't rule out a good consistent default layout.

Does the mouse rotation kill rot even if the rot damping is off? Can't check it right now, so not sure.
Also, I'm not against another way to kill rot at all, but even then I think we should ask this question to ourselves in general, to avoid adding stuff that doesn't realy needed. No need to add clutter.

@dvolk
Copy link
Contributor Author

dvolk commented Jul 6, 2014

I didn't mean that the current layout should be replaced, just that some controls could be cloned on the numpad. I'll look into adding roll to the mouselook

I think kill-rot is essential if flying with rotation damping off is to be viable. Turning on and off rotation damping for this function requires one more button press and you also need to visually check if the ship has stopped rotating . A lot of the time you want to align all three axis, making this six presses and three checks vs. three presses.

@corundscale
Copy link

@nozmajner
JKLI are around the KB's center, so still not exactly where a southpaw might want them.
Personally I've always found games that more or less forced me to use WSAD or any other default scheme to be my private little hell, so the more controls can be rebound, the better.

My current control scheme is:
Num8 - forward
Num5 - retro
Num7,9 - lateral
Num+ - up
NumEnter - down
Num4,6 - Roll
Num0 - low thrust
Num. - rotation damping (IIRC, I don't really use it much)
Num/,1,2,3 - camer front, left, back, right
PgUp, PgDn - camera up, down.

And yes, switching the mouse rotation on kills rotation as fast as it physically can (as it tries to slave ship's rotation to the mouse), overall I find Pioneer's mouse flight control scheme to be one of the best I have ever seen - very intuitive and controllable, you can even "throw" ship's nose in the desired direction and catch it to counter the spin with your RCS when you're done. The only thing it could get is a bit smarter thruster use when rotating (allowing ship to rotate inertly as long as it's doing what player has ordered it to) and of course no clicking on GUI buttons when rotating the ship (is it fixed already? It really screws up combat when you start clicking random buttons when trying to turn and shoot rapidly).

@laarmen
Copy link
Contributor

laarmen commented Jul 6, 2014

@Brianetta any thoughts on the whole PR ?

@haxys
Copy link

haxys commented Jul 6, 2014

Just to chip in: I like using WASD and numpad, but I have also liked WASD and IJKL. It's fairly easy to adopt.

When I reassign keys, I use my right hand to fly (including throttle and roll and elevation) using numpad, and I use my left-hand for other controls.

@dvolk
Copy link
Contributor Author

dvolk commented Jul 9, 2014

I changed the keybinding to 'p' like suggested? Anything else?

@johnbartholomew
Copy link
Contributor

Seems pretty good to me. Why are the hold-radial controls commented out?

@dvolk
Copy link
Contributor Author

dvolk commented Jul 16, 2014

I commented it out because I didn't want to clutter the comms UI and those are least useful (I think?) Ultimately I'd like a more modular UI for world view.

@johnbartholomew
Copy link
Contributor

Maybe the list of attitude control modes could be split into two columns? That might give space to include the radial hold modes. It seems a little silly including code for those control modes with no way of activating it.

@johnbartholomew johnbartholomew merged commit 20de2a6 into pioneerspacesim:master Jul 16, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants