new default camera: Spring camera

new default camera: Spring camera

Discuss the source code and development of Spring Engine in general from a technical point of view. Patches go here too.

Moderator: Moderators

Post Reply
abma
Spring Developer
Posts: 3556
Joined: 01 Jun 2009, 00:08

new default camera: Spring camera

Post by abma » 12 Feb 2015, 00:03

this is a thread to collect informations about the new camera mode in a single place.
in current development version the new Spring camera mode was introduced.

with this change, TW, Orbital & Smooth camera were removed.

Some Info about it: (from changelog)
- it's a merge of TW & Overhead camera
- it's using [alt] as modifier for rotating the camera (in key & middle click scrolling)
- also can be rotated with the screen edges of the upper 30% of the screen

add config tags:
- EdgeMoveWidth: defines the screen edge width used for scrolling
- EdgeMoveDynamic: if scroll speed depends on the distance to the screen edge (default on)
- CamSpringWarpMouseToZoomIn: enable mouse warp to screen center when zooming in (default off atm)

it was made default, "cause it's a replicate of the old default one with the feature of rotation" and there is one bug known about it atm: https://springrts.com/mantis/view.php?id=4670

(imo): to get it work like it was intended, CamSpringWarpMouseToZoomIn has to be set to 1 but this makes the mouse-cursor moved to the screen center when zooming in.
0 x

8611
XTA Developer
Posts: 242
Joined: 29 Dec 2014, 08:22

Re: new default camera: Spring camera

Post by 8611 » 12 Feb 2015, 02:25

spring_{develop}98.0.1-375-g7b238d8_minimal-portable.7z with non-default springsettings.cfg: http://pastebin.com/NRs3Yrhs
(because instead of only setting what is on my pc needed to run without crash, i copied whole file)

Overhead Camera:
It already begins scrolling when pointer is near screen-edge.
That causes unwanted scroll when pointer is near screen-edge, like over minimap or widget-GUI-thing.
After playing around a bit I decided I do not like that but luckily seems it can be configured. :) (EdgeMoveWidth, EdgeMoveDynamic)


New "Spring Camera":
The alt+middlemouse rotation seems good.
If excactly this and nothing else was added to Overhead-Cam then that would be pro, or maybe it can be configured like that?

I did not like that the upper areas of screen edge cause rotation because:
1) It rotates even if over minimap (for example one wants to midd-click to go there)
2) One can not scroll diagonally to up-left & up-right :?: :!:
3) Accidently moving the mouse into wrong area of screen could potentially be annoying. (the same could be sayed for scrolling, but rotating is much less used than scrolling)
Especially because it already begins to rotate when mouse is "near" the edge, even when hovering over a widget-GUI element. (what can widget do about it?)
4) The zooming feels "totally wacky and imprecise" to me. :shock: see video: http://youtu.be/ECiQxlei5d4
Turning the mousewheel in smallest possible "click" up&down and it makes these weird jumps, when zooming in? From mantis not sure if bug or feature or matter of taste..
5) The rotation is too slow to be usefull for playing. (like taking a quick look behind a hill)
But if it was faster than it would be difficult to stop rotation at right time. "Rotate by moving pointer into rotate-area" does not seem like good idea for cam-controll.
Some way to rotate camera in snappable 90° steps would be nice, or just using the alt+middlemouse mode alone seems good enough too.

Mildly related suggestion for camera changes:
Disable the old "Help, my mouse pointer is gone!" mode that accidently triggers by backspace or middlemouse. (holding middlemouse for scrolling is okay, but this toggle is not)
0 x

User avatar
enetheru
Posts: 627
Joined: 11 Jun 2010, 07:32

Re: new default camera: Spring camera

Post by enetheru » 12 Feb 2015, 02:43

This may be a dumb question, but why is the camera engine and not lua?
0 x

abma
Spring Developer
Posts: 3556
Joined: 01 Jun 2009, 00:08

Re: new default camera: Spring camera

Post by abma » 12 Feb 2015, 02:45

0 x

Google_Frog
Moderator
Posts: 2440
Joined: 12 Oct 2007, 09:24

Re: new default camera: Spring camera

Post by Google_Frog » 12 Feb 2015, 02:58

My preference is for no changes from the old default camera. The previous zoom worked well and I think rotation is a bit of a gimmick which is too dangerous to put in prominently in the UI (people can get disoriented easily). If I can set the old camera to be the default then I am happy.
0 x

gajop
Moderator
Posts: 3023
Joined: 05 Aug 2009, 20:42

Re: new default camera: Spring camera

Post by gajop » 12 Feb 2015, 03:34

I'm not sure it should be the default camera yet. I used it a bit and it seemed to work quite different than what I'm used to.
It could be a bug, or an early version, but in any case, I think it's a bit too immature to be made the default.
PS: Default settings matter, especially for games outside of ZK where people tend to use their own configs instead of game-supplied ones.
0 x

raaar
Metal Factions Developer
Posts: 817
Joined: 20 Feb 2010, 12:17

Re: new default camera: Spring camera

Post by raaar » 12 Feb 2015, 03:47

Google_Frog wrote:My preference is for no changes from the old default camera. The previous zoom worked well and I think rotation is a bit of a gimmick which is too dangerous to put in prominently in the UI (people can get disoriented easily). If I can set the old camera to be the default then I am happy.
same here.

but I wouldn't event want to have to change from the new default. Make it so that the default behaviour matches the old one.

It's not about me as a user, it's about new players brought into the game that would stumble with camera issues, making them more likely to leave.
0 x

User avatar
Silentwings
Moderator
Posts: 3593
Joined: 25 Oct 2008, 00:23

Re: new default camera: Spring camera

Post by Silentwings » 12 Feb 2015, 09:18

As now said in many places, I'd prefer the old camera to be the default. The new Spring camera has potentially nice features but seemed unpopular with testers and currently it has bugs (and maybe bugs that won't be found before release); the old one is well tested and afaik widely liked.
enetheru wrote:why is the camera engine and not lua?
It's actually both - you can make new cameras in lua too and people have done so (can't find a link to an example atm, but iirc BrainDamage made one which quite a few people use). There are also addons that allow you to follow other peoples cameras.
0 x

User avatar
enetheru
Posts: 627
Joined: 11 Jun 2010, 07:32

Re: new default camera: Spring camera

Post by enetheru » 12 Feb 2015, 13:53

Silentwings wrote:
enetheru wrote:why is the camera engine and not lua?
It's actually both - you can make new cameras in lua too and people have done so (can't find a link to an example atm, but iirc BrainDamage made one which quite a few people use). There are also addons that allow you to follow other peoples cameras.
Thanks Silentwings.
0 x

User avatar
zoggop
Posts: 289
Joined: 07 Sep 2010, 18:47

Re: new default camera: Spring camera

Post by zoggop » 12 Feb 2015, 17:12

If we're collecting player opinion then: The rotation is okay for me because the way it snaps back to increments of 90 degrees is slick. However, the alt+scroll rotation hasn't worked for me. The new zoom is just really difficult. I think I get what it's supposed to do, but it's hard to control.
0 x

User avatar
jK
Spring Developer
Posts: 2299
Joined: 28 Jun 2007, 07:30

Re: new default camera: Spring camera

Post by jK » 17 Feb 2015, 04:55

https://github.com/spring/spring/commit ... 635198767e

better?
(removed the old zoom behaviors)


@ "5) The rotation is too slow to be usefull for playing. (like taking a quick look behind a hill)"
rotation uses alt & shift as speed modifiers
For implementing switching through cardinal directions (90deg), at least alt modifier (slow rot) would have to be dropped.
Implementing the current temporal lock of cardinal directions (there is also a conftag for that: CamSpringLockCardinalDirections) cost me a lot time and I am happy with it as is.
0 x

MaDDoX
Posts: 53
Joined: 08 Jan 2006, 17:45

Re: new default camera: Spring camera

Post by MaDDoX » 11 Mar 2016, 07:26

Add to your SpringSettings.cfg:
CamSpringScrollSpeed = 30

Default is 10, which basically means "keep shift held the whole time for it to be useful.

Couldn't find that damn setting anywhere, had to check the source code. Hope that helps someone else.
0 x

User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14603
Joined: 17 Nov 2005, 02:43

Re: new default camera: Spring camera

Post by Forboding Angel » 19 Mar 2016, 23:40

Camera should NEVER zoom in on mouse cursor, period.
0 x

Post Reply

Return to “Engine”