|
|
|
![]() |
|
|||||||
|
||||||||
![]() |
|
|
Thread Tools | Rate Thread | Display Modes |
|
|
|
#1
|
|||||
|
|||||
|
Re: Driving: Tank, Arcade or FPS?
Quote:
![]() |
|
#2
|
||||
|
||||
|
Re: Driving: Tank, Arcade or FPS?
Now that I am not doing a billion things at once I will go over more in depth what I am talking about.
So generally speaking video game developers sink a lot of time into control systems when they make a game. When playing a game the controls should be either engaging and fun to use (like in the case of the original Wii it was supposed to be fun and involving to do those motion things) or to make it feel like there is no controller you are just plugged directly into the character you have. When you have a poor control system in a video game it really shows. When moving if you get stuck on objects its frustrating. When the inputs are delayed you feel sluggish and clumsy. When the control system is your enemy the game isn't difficult because its challenging its because the game is not responding the way you want it. That is where GTA drive tackles a number of issues, the original GTA's were 2D top down so they don't count and can go away in this discussion. But as soon as GTA went 3D it faced this wall of problems. With top down games your vision is done for you and it moves with the character so you don't need any controller input. When you move to 3D there is no way to have a character see in a 3rd person perspective and still see the entire world. It is just not possible, that being said this forces one of the vision controls onto the joysticks (keeping in mind most console controllers have 2 joysticks*). With only one joystick remaining lets look at the other tasks that need to be accomplished in order to fully control your character in a 3D environment. Now that we can see the world we can navigate through it. Most navigation is done with the other Joystick on a controller because it provides movement in all directions, its a simple obvious solution. But that is if you are controlling something that can move in all directions. Remember grand theft auto is done in cars a lot... That is the Auto part, in this aspect you don't actually need to move left or right because most cars don't strafe, instead you need to turn in a car. This makes putting movement on one joystick detrimental because of the zones of control on the joystick. When a joystick is in its neutral state most games treat it as dead. This means you get no input. The cardinal directions are just as simple you are either moving forward or backward, or in a position where you are turning. It is the diagonals that get sketchy. Since you are limited to a circle on most joysticks when combining forward and left you get these fuzzy zones where you can only move so fast while turning. This isn't actually ideal because this ties the speed and turning together in a way where you lose a lot of control. To tackle this issue (and make it feel more like driving a car) the developers of GTA said "Well what if when driving a car instead of having to push forward to drive forward and backwards to drive backwards we switched those to buttons." That is the basis of GTA drive that you have one button for forward and one button for backwards and now your speed and your turning are never tied together. Since it is also supposed to emulate driving it is more like that because the button for forward and backwards is used to accelerate to desired speed but I digress. Translating GTA drive to robotics we can start off with the same thing. Take a standard kitbot, and on the controller have one button be forward and one button be backwards. So if we take the left joystick and make it at its neutral state make the robot go (when pressed with a forward or backward button) at a set speed of say 50% of its total. As you tilt the stick forward you slowly increase the speed until you are at 100% and when you tilt it back you decrease the speed. The difference between this and movement being on one stick is that controllers are really limited on inputs. When you take only the forward tilt on a joystick as forward and backwards as backwards you only have a small area to define your speed**. With GTA drive in theory you have a larger area for controlling speed. * yes I know the N64 had one joystick but were talking about good controller design ** There is a work around to that but I don't want to ruin the surprise yet |
|
#3
|
||||
|
||||
|
Re: Driving: Tank, Arcade or FPS?
Our team is trying the tank drive this year instead of the single joystick. So far it is working out great!
|
|
#4
|
||||
|
||||
|
Re: Driving: Tank, Arcade or FPS?
As a (relatively) old-school driver I liked single-stick arcade control for FRC robots. This typically works best with a real gimbal'd joystick, where the driver can 'feel' center on the stick. Most common joysticks are not gimbal and thus lose a lot of the 'on-center' feeling that makes this control scheme beloved by many.
In recent years we've used game pads with single-stick arcade that I found easy to drive, and I liked it a lot. This takes some modest drive transforms to fine-tune to the driver's taste, but nothing complex. These transforms help address the 'on center' feeling and let the robot drive forward even if the thumb-stick is off-centered slightly. I've got an RC car with 'dual stick' arcade that I like to drive and find very easy to control. The divorced axes for f/r and l/r are really nice and lets one send precisely the inputs they want. I have raced a lot of Forza (car simulation game) which uses one thumb-stick for turning and two triggers for throttle/brake (forward/reverse on a robot) and like that too. The f/r and l/r axes are divorced, which is nice, and the forward/reverse axes are also divorced. For the extra-fine control required for a semi-realistic car sim it is great to be able to apply both the throttle and the brake, and I imagine it would work well for an FRC robot as well, but perhaps only marginally better than 'dual stick' arcade. I absolutely cannot stand 'tank drive' where two joysticks are used. It forces the driver to do the drive 'math' in their head, something a computer is MUCH better suited to do. I never felt that it was intuitive, fluid, or an efficient use of controllers. I know some people/teams have been successful with it, but I can only imagine how much more successful they could have been with any of the controls described above. |
|
#5
|
|||||
|
|||||
|
Re: Driving: Tank, Arcade or FPS?
The FPS configuration is the same as a traditional RC car controller, but instead of a trigger for the throttle and a steering wheel, it uses the right joystick Y axis for throttle, and left joystick X axis for steering.
Which makes it even stranger that we never figured this out, because we used an RC car controller to drive our robot in 2008 and 09. |
|
#6
|
|||||
|
|||||
|
Re: Driving: Tank, Arcade or FPS?
Quote:
|
|
#7
|
|||
|
|||
|
Re: Driving: Tank, Arcade or FPS?
My personal favorite way to drive a tank drivetrain is to use 2 single axis joysticks for tank drive control scheme. The removal of the degrees of freedom of the joysticks allows you way better feedback and control. This is because if you are off straight on a double-axis joystick, your hands will feel a different travel distance than the controls are being sent.
|
|
#8
|
||||
|
||||
|
Re: Driving: Tank, Arcade or FPS?
Quote:
Two-stick tank drive is like drawing with an etch-a-sketch and single-stick arcade is like drawing with a pencil; yeah, the etch-a-sketch can sometimes make a good approximation of a pencil drawing, but it's never going to be quite as good. |
|
#9
|
|||
|
|||
|
Re: Driving: Tank, Arcade or FPS?
Quote:
But less anecdotally . . . look at guitar-playing: the non-dominant hand is doing at least equal dexterity tasks, probably moreso. Practice and muscle memory can remove that weakness from that activity. |
|
#10
|
||||
|
||||
|
Re: Driving: Tank, Arcade or FPS?
Quote:
Frankly, even FPS style control won't be guaranteed to drive perfectly straight without closed-loop control due to variances in motor torque and drivetrain drag. And when closed-loop control is in the mix, almost anything can manage to reliably drive straight. It is a horrific and sweeping generalization to say that: "teams who used two-stick tank or one-stick arcade drive were struggling to balance the bridge." Your conclusion that their control system was holding them back is simply false. Now, I'm not saying "FPS" drive is bad, it certainly is a great drive control scheme, but don't undercut your own argument by making such rash statements. Quote:
Still, how can a two-stick system drive straight at part-throttle? This is VERY difficult to do. Consider this thread from last year: http://www.chiefdelphi.com/forums/sh...d.php?t=125759 Team 33 found that all drivers wound up preferring FPS-style control to two-stick tank and found it "way easier" to control their robot(s). |
|
#11
|
|||
|
|||
|
Re: Driving: Tank, Arcade or FPS?
Quote:
Regarding "FPS Drive", I think the name is actually good for describing a drive that allows strafing - many FPSes (Halo, etc.) allow you to strafe using the left joystick (same one for going forward and backward). "RC Car Drive" could also be considered a bad name for the control scheme, because real RC cars are not tank drive and can't turn on a dime. Regarding the rest of your post, I am glad we agree that it is very important to have a foolproof way of going straight forward and backward. I am very curious about everyone's opinion about what drive control schemes perform the best, or if it matters at all. I think that your chosen scheme does impact your performance, but not as much as driver skill and practice. And yes, one of my statements up there could be considered a "horrific and sweeping generalization". I was considering removing it, but I'll leave it there for now. This was my first controversial post on CD!! ![]() |
|
#12
|
|||
|
|||
|
Re: Driving: Tank, Arcade or FPS?
Running octocanum this year, and because of the driver (I don't know why, he just likes it and it seems to work well) the traction wheels will be controlled via tank, however the mecanum drive will be a sort of split arcade where one joystick is f/b/l/r and one joystick is purely turning. Kind of a weird setup, but he likes it and it seems to work.
|
|
#13
|
|||||
|
|||||
|
Re: Driving: Tank, Arcade or FPS?
I used to prefer 2-joystick tank drive to regular arcade, but after trying split-arcade, it's my new favorite. Very intuitive, especially for anyone who has played video games.
IMHO the terms "split-arcade" and "FPS" control modes are not interchangeable terms for the same thing. Split-arcade is for skid-steer robots, as it cannot handle strafing of any kind. FPS can only be used on swerve/mecanum/holonomic robots where the left joystick is full X-Y translation and the right joystick is rotation. |
|
#14
|
|||
|
|||
|
Re: Driving: Tank, Arcade or FPS?
Quote:
![]() I have no question that 2-stick tank requires finesse; but from running driver training with RC controls, I know that that is not a unique situation. If people find something that they like, more power to them. I haven't discounted any method of control. Last edited by RunawayEngineer : 27-01-2015 at 13:02. Reason: Terminology for "RC/FPS/Split arcade/etc" |
|
#15
|
||||
|
||||
|
Re: Driving: Tank, Arcade or FPS?
Quote:
|
![]() |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|