Search Unity

Vehicle Physics Pro beta, feedback welcome

Discussion in 'Works In Progress - Archive' started by Edy, Jan 22, 2016.

  1. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,065
    Hello,

    I'm working on Vehicle Physics Pro, a new vehicle simulation model conceived to be completely realistic and accurate. The core design, formulas and implementation have been written from the ground up for solving the long-standing needs and requirements of vehicles in video games and simulators.


    Vehicle Physics Pro is mature enough to be used in production projects (for example, Kerbal Space Program uses it for the wheel simulation). The project has just entered the beta stage and the plan is to land at the Asset Store within next few months. So I wanted to share it with you, so you could try it and let me know what do you think and how could it be improved.


    Features:
    • Advanced AAA+ vehicle dynamics simulation, targeting high-end simulators such as Grand Turismo.
    • Modular powertraing design. Any powertrain can be simulated by connecting functional blocks (engine, gearbox, differential...) in any number and combination.
    • Advanced wheel and tire simulation providing accurate friction forces in all situations.
    • High performance and coherency: tested with physics rates as low as 16 Hz (fixedTimeStep = 0.06)
    • Fully flexible and extensible: supports any custom design or extension.
    • Easy to use and integrate into existing projects: designed as Editor Extension following the Unity's UI standards.
    • Accurate force feedback calculation (demos support Logitech G27 only atm)
    • Detailed documentation: http://vehiclephysics.com

    You can download the demos for Windows/PC here:


    Several demos are available in different flavors: keyboard-controlled, Logitech G27, manual gears, auto shift, ...

    I'd like to hear your feedback, especially:
    • How do you feel the vehicle physics, especially if you can try the G27 demos with force feedback.
    • Documentation content: is it clear? can you easily find what you want to know? Is something missing?
    • Documentation grammar and typos are also very welcome (english is not my native language).
    • Feature requests.
    • Any general suggestions and feedback.
    You can also reach me on Twitter @VehiclePhysics

    Thank you very much!
    Edy
     
  2. ZJP

    ZJP

    Joined:
    Jan 22, 2010
    Posts:
    2,649
    Wow !!!
     
    nxtboyIII and Edy like this.
  3. Reanimate_L

    Reanimate_L

    Joined:
    Oct 10, 2009
    Posts:
    2,561
    Just curious, there's a lot of vehicle physics solution but mostly they going for realistic physic driving simulation.
    Is it possible to get a demo for arcade driving type games something like casual open world driving cars GTA
     
  4. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,065
    Yes, that's Edy's Vehicle Physics ;)
     
  5. Mikejmc

    Mikejmc

    Joined:
    Mar 2, 2015
    Posts:
    19
    Awesome work Edy! I loved Edy's Vehicle Physics back in Unity 4 which is what lured me in to game dev. My biggest design client is a car magazine and your new pro version is definitely on our radar. I've been driving the cars for the photoshoots for 4 years now so I'll have a play and see if there is anything useful I can add. But from what I can see in the videos it looks like you've nailed it already... The 458 is sexy but its hiding your amazing suspension work! :)
     
  6. Mikejmc

    Mikejmc

    Joined:
    Mar 2, 2015
    Posts:
    19
    Just tried the 458, Pickup and the Gymkhana demo... I have nothing to add... this is epic work.
     
    Edy likes this.
  7. Alex_V

    Alex_V

    Joined:
    Jun 25, 2012
    Posts:
    53
    This could be related to the setup only and not the actual physics, but all of the cars seem to suffer from a lot of excessive understeer (or it could be the tire model/wheel collider).

    Only complain i have are the sounds. I know it has nothing to do with physics but it plays tricks on your mind saying "there's something wrong here".
    Anyway keep it up!
     
  8. Reanimate_L

    Reanimate_L

    Joined:
    Oct 10, 2009
    Posts:
    2,561
    Oh i forgot i already buy that long time ago. . . :p
     
  9. zugsoft

    zugsoft

    Joined:
    Apr 23, 2014
    Posts:
    451
    Sincerely it's not real at all.
    I have a RWD car with 600hp and when I drive your f458, I think to drive a very bad car, too much understeer, not enough grip.
     
  10. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,065
    Thank you all for your feedback!

    @Alex_V @menfou Let me explain about the understeer. If you're using the keyboard-controlled version, then the behavior is just correct. Remember that there are no driving aids. Steering to the full left-right limits in less than a second pushes the tire over the point of maximum grip causing immediate understeer.

    I've already explained the understeer perception in detail here:

    http://vehiclephysics.com/advanced/misc-topics-explained/#too-much-understeer

    The explanation includes a quote from Stefano Casillo, developer of Assetto Corsa. It describes some causes on why realistic vehicles are perceived as "too much understeer / too few grip" by some users.

    In an open scenario, with a keyboard-controlled car, without convenient references, then you have very little information on how the car is actually performing. In Vehicle Physics Pro the real-time Telemetry data shows some objective information:

    vpp-lateral-g.jpg

    Stefano Casillo stated:
    In the above picture the Ferrari 458 is performing 1.7 G of lateral acceleration. This is a huge grip, like a supercar with slick tires! Even when the vehicle is under complete understeer, the lateral G is still 1.2 - 1.3.

    When you're using the G27 the force feedback lets you perceive the how the front tires are performing, and you can adjust your driving accordingly. In fact, the car is keen to loose the rear-end and oversteer on if you don't drive smoothly at high speeds. You can see several oversteer situations in this video, saved by counter-steering (see the video information for shortcuts to the specific positions). However, with the keyboard and no steer aids the driving perception is limited. This will improve in VPP when driving aids are implemented.

    @menfou about the specifications, the simulated F458 is actually "invented". It's not using specifications from the real model. The engine is much less powerful than the real one, as a realistic setup would result in a vehicle almost unable to control without driving aids. Here you can see the engine specifications for the "F458" in the demo:

    upload_2016-1-26_20-57-39.png

    I recommend you to try the Gymkhana demo (or watch the video). That vehicle has been explicitly set up to be controlled with keyboard / touch screen. Combining throttle with gear up/down allows very nice drifting effects and completely realistic behavior.

    Let me know if you have any question!
     
    Last edited: Jan 26, 2016
  11. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,065
    Can you be more specific? How could I improve the sound experience?
     
  12. zugsoft

    zugsoft

    Joined:
    Apr 23, 2014
    Posts:
    451
    The sound is bad, I am agree.
    How many .wav sound file do you use for the engine sound?
    In my game ProjectRacing I recorded 4 sounds minimum for each car, idle, 2000,4000,6000,8000rpm and rev-limiter.
     
  13. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,065
    @menfou good point. Actually the engine sound comes from a single audio clip. The main problem to me is finding proper engine audio clips I could work with. Can you suggest a good and reliable source for vehicle audio clips? I don't mind if it's a free or paid source.
     
  14. zugsoft

    zugsoft

    Joined:
    Apr 23, 2014
    Posts:
    451
    For my game I recorded sound directly on each car, it's very hard to find, but in Switzerland it's very easy to find F458 or others :D to make some record.
     
  15. Alex_V

    Alex_V

    Joined:
    Jun 25, 2012
    Posts:
    53
    @Edy for sounds you have tons of rFactor mods with loads of samples. Source of the wav files is mostly unknown, but you can contact the authors of the mods if you wish.

    Your explanation of the understeer behaviour makes sense, now I need to test it with my G25 (should work, right?)
     
  16. zugsoft

    zugsoft

    Joined:
    Apr 23, 2014
    Posts:
    451
    With your Gymkhana demo my feeling is the same, it's not real.
    Can you make a apk version with titl control ?
     
  17. jonfinlay

    jonfinlay

    Joined:
    Aug 25, 2015
    Posts:
    535
    Just tested this with a DFGT, works fine! The gear is using different buttons as opposed to the gear stick, but this can be calibrated in a settings menu. It wasn't using the full wheel range either, however this may be a problem with my wheel as I haven't used it for a while, perhaps I need to recalibrate it via the Logitech controller. The FFB works fine as well. Great job! Looking forward to this one when it's out.
     
  18. Zac-Yeates

    Zac-Yeates

    Joined:
    Jan 23, 2015
    Posts:
    20
    Great looking package so far. I've got some questions about the wheels/tires/suspension.

    1: How does the wheel calculate collision, is the a ray cast straight down or can it detect collision in a sphere so to avoid sudden jumping up and down over rough surfaces?

    2: Does the tire use width at all, both in collision calculations or grip calculations?

    3: Is it possible to use camber and have it affect the grip and handling of the vehicle in both straights and corners?

    4: How does the suspension move along its path of travel, does it move up and down in a straight line or is it more realistic by increasing negative camber as it compresses and increasing in positive camber as it extends

    I believe in order to achieve a realistic simulation these are pretty necessary. I've had a look around various areas and couldn't find answers so they would be appreciated.

    Thanks, Zac
     
  19. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,065
    @Alex_V, thanks for the hint on engine sounds! I'll try that direction.

    It should! In fact, I've updated the docs to the reflect "Logitech Steering Wheels", not just "G27".

    I understand your feeling, but let me assert that this denotes an actually realistic behavior for those vehicle settings.

    The telemetry shows that the Gymkhana vehicle performs a lateral acceleration in the range of 0.8-1.0 G. However, when steering the maximum performance is applied during a fraction of second only. This is because the steering limits push the tires beyond the point of maximum grip.

    Here I'm quoting Stefano Casillo, developer of the Assetto Corsa simulator:

    Tire lateral grip

    It depends a lot.. a typical road tire will give you 1.0 - 1.1 G.. with load sensitivity and all you should get close to 1.0G on a skidpad. A normal road car with 1.0G lateral acc is considered VERY good (ie. the BMW Mini scores a tad less than 1.0G and is considered a very good handling car).

    Casual players usually find this VERY low.. this has lots of possible explanations:
    1. No real experience with real cars.. and I mean track experience in a competitive way, not the kind of experience you get being an idiot on public roads.
    2. The result of 1 is that no driving skills are developed... typical sign, Joe-I-Go-Fast goes too fast into a corner, the car will understeer and he turns more into the corner, making understeer worse and going even more wide into the wall.
    3. They are used to other games either arcade a-la PGR or F1 games where cars have huge amount of grip.
    I'll be compiling an Android demo soon. Personally I don't like tilt control, but a proportional steering via touch control: an horizontal area with a central point and lateral limits. The amount of steering is proportional to the point where you touch/slide at. What do you think?

    Great to know that the DFGT works fine, including force feedback! I've updated the docs.

    I recommend to set the steering wheel range to 460 degrees for matching the visual steering wheel at the vehicle, but you can use any range in your controller. The default for my G27 was 90 degrees only (!). Ideally, the demo should adjust the range automatically, but the crappy Logitech sdk for Unity crashes the demo if I try to do so. I'll be implementing proper steering wheel support soon.
     
  20. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,065
    Thanks for your feedback! Here are the answers and comments:

    1. Wheel collision

    Actually VPP uses the WheelCollider for suspension only. Tire forces are calculated by the VPP code. So the collision is a ray cast straight down, and the suspension is vertical along all its travel.

    At this stage of the development I need a tight connection among the Unity's physic engine and the Vehicle Physics Pro code for vehicle dynamics simulation. For this, the WheelCollider is actually the most reliable way for getting the downforce value out of a damped spring connected to a rigidbody. I believe it's critical to get this part perfectly coherent and completed before adding further improvements.

    Note that most high-end racing simulators use a single ray cast straight down at the middle of the wheel for detecting the collision. I've verified that's the way it works in Assetto Corsa, for example. This method provides the best performance and realism. In these games, having a full-3D wheel provides no noticeable advantage, but a huge performance penalty.

    Still, I want Vehicle Physics Pro to provide the option for 3D-wheels as well. I don't want it to be limited to racing games, but also simulations where tires must collide along all their volume. After the first version is released as is now, I'll be performing a major overhaul of the suspension and wheel simulation. I already have some ideas on how to simulate 3D tires reliably.

    2. Tire width:

    No. At this version wider tires can be simulated by increasing tire friction. This is scheduled to improve with the anisotropic friction, where independent longitudinal-lateral friction curves will be supported.

    3. Camber

    Camber support is planned to be included in the first release. The placeholder code for the camber is already there.

    4. Variable camber

    Will be implemented with the camber support as well. Different values for camber at the limits of the suspension will be supported.


    Let me know if you have further questions!
     
  21. zugsoft

    zugsoft

    Joined:
    Apr 23, 2014
    Posts:
    451
    I already drove my car on Spa, make a demo with the F458 and I will give you my feeling and my time vs real time.
    1G is good for a Mini, but you can have 1.5G a very short time with a F458, and some secnds at 1.33G.
     
  22. zugsoft

    zugsoft

    Joined:
    Apr 23, 2014
    Posts:
    451
    Your movie on SPA is great, can I test it on PC and Android please?
     
  23. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,065
    @menfou Yes, the F458-Spa demo is available, but requires a Logitech steering wheel controller. As there are no driving aids yet, the keyboard control makes the car uncontrollable on these demos.

    The actual settings for the F458 (invented at this model, will use the real specs in an upcoming iteration) provide up to 1.7G at the point of maximum tire grip.

    I'll be building Android demos soon as well.

    BTW, which car have you driven at Spa, specifically? If I find a 3D model for it, I could try applying the real specs to it.
     
  24. MattMurphy

    MattMurphy

    Joined:
    Dec 24, 2013
    Posts:
    111
    Hi Edy,
    I just tested out your new Vehicle demo and I like it, even with a keyboard the car feels weighted and controllable. I've been developing a car based game for some time now, and have switched between a couple of packages up to now (including your last vehicle package). It would probably take quite a bit of effort to switch but if I'm going to go ahead I'm better doing it now, but I just have a few questions for you.

    - How easy is modifying the cars performance in real time? For example, currently I have a system where the player can upgrade their car, the game just looks up the car, the upgrade, the stage, and then adds the BHP / LB/FT to the vehicle. This is important because every car is instantiated as a stock car, and the modifications are made depending upon the players save game file. Other upgrades include things such as reducing shift time of the gearbox.

    - Real Time Tuning. For example, currently I have a system where the user can modify the vehicles ride height/camber/shock rates, gear ratios through a UI system. Changes are applied instantly, and you can see the results right away (for ex: ride height/camber). I understand I'd have to recode most of this system, but are functions readily available to apply this kind of changes at run time?

    - Wheel size. So in my game, the user can modify the wheel size of their car. Changes happen in real time, but if I understand correctly your package uses the Wheel Collider. My package uses its own system but IIRC a Wheel Collider's scale must be 1 otherwise you can end up with strange behavior. This is probably one of my main concerns as the rest I could probably figure out, but this is a fundamental part of my game and I'm not sure if its a idea that is compatible with this package.

    - Differentials. Does your package include the ability to tune the differential on the driven wheels? My current package allows tuning the diff of the front or rear depending on drivetrain but does not allow the independent tuning of each diff on a AWD car.

    - Sound. Is it a similar setup to your last package? I found that the amount of options in the last one really useful, as most packages only seem to give a single entry for engine sound, but being able to add turbo noise/supercharger whine is ideal for a game where you modify your car.

    - Wheelys. Part of my game includes drag racing. Up to now, Iv'e not found a package the can simulate a vehicle that would be IRL capable of performing a wheely off the start line. Is this something your package could achieve or would I need to build something on top of it to "fake" it?

    I know it's a lot of questions but I'd appreciate it if you found the time to answer them.
    Thanks a lot,
    Matt
     
  25. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,065
    Thanks for your feedback!

    Everything but the axles and the powertrain line setup can be modified in real time. This includes:

    -Wheels: suspension, damper, anchor point, brake power and balance, steering settings...
    - All engine settings: stall settings, torques, rpms...
    - All clutch settings
    - All gearbox settings: transmission type, gearbox aids (i.e. auto-shift), gear ratios, gear timing...
    - Driveline blocks: differential types, ratios, settings...

    Here you can see how the Axles and the Driveline settings are grayed our when playing the scene in the editor:

    upload_2016-2-8_9-28-5.png

    In summary, all blocks that are part of the powertrain can be configured in run time (from engine to differentials, torque converters and wheels), but the powertrain line itself cannot change in real time. Changes such adding differentials or inserting an additional gearbox in the powertrain would require disable and re-enable the vehicle.

    As described above, most settings can be changed in real time with changes having immediate effect.

    It's not a good idea to modify the Transform scale for the WheelCollider components. But modifying the radius in real-time is perfectly possible. Also, modifying the Transform scale for the visual wheels (which are located in different GameObjects) is perfectly supported as well.

    The provided Vehicle Controller assumes the same settings for both front and rear differentials ("Differential" setting as shown in the pic above). The center link connecting both differentials has it's own settings. It's a Torque Splitter in the case showed at the pic above, but it can be another differential as well.

    You can also write your own custom Vehicle Controller and build the powertrain using the functional blocks of your choice in any number and combination, then apply any settings to them.

    Yes, the audio component has been mostly adapted from EVP.

    Physically configuring the vehicle in the same way as the real life will provide the same results. Wheelies will happen if enough power is applied to the rear wheels while the center of mass and the mass are configured as in the real vehicle.
     
    Last edited: Feb 26, 2016
    MattMurphy likes this.
  26. Ecocide

    Ecocide

    Joined:
    Aug 4, 2011
    Posts:
    292
    Hi Edy,

    I have a few questions regarding the API of your physics. Is it possible to get information about forces, throttle/brake/clutch input, engine running/not running, etc.? We currently manipulate the input values and pass it to the vehicle physics (e.g. lower sensitivity regarding the steering wheel when speed gets higher). Is that also possible with your package?

    Another important question: Is it possible to run trucks with your package? (like UnityCar)
     
  27. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,065
    @.Rattlehead absolutely. In VPP external components communicate with the vehicle via the Databus, a procedure that is inspired in the OBD-II protocol used in real vehicles.

    In practice, the vehicle exposes collections of values which specific meaning. External components put values into the databus (i.e. for the input values) and also read values from the bus (i.e. for the engine state, currently engaged gear, etc).

    The provided input component reads the values from the standard Unity Input class, then puts these into the vehicle's databus. You can simply discard this component and write yours for writing the input values in the way you want.

    Here you can see the reference for the Databus values that are actually exposed and their meanings / usage:


    Vehicle Physics Pro can run trucks with complete realism. Even the Retarder brake, a critical truck-only component, is accurately simulated:

     
    Mr_Dan_O likes this.
  28. Ecocide

    Ecocide

    Joined:
    Aug 4, 2011
    Posts:
    292
    Oh sorry, I missed that part in the docs. Cool idea to simulate a bus system, I was implementing a simple version of the CAN bus system in university some years ago in Embedded Systems class.

    Could you make a webplayer build with a truck if you find the time? Maybe even with a simple trailer using a joint.
     
  29. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,065
    @.Rattlehead I plan to build a truck + trailer demo in the next iteration. The test scene already works perfectly, but I want to improve the keyboard control method for nicely driving large vehicles. Actual control method doesn't fit well, because it's just "full-left / full-right / full-throttle / full-brakes".

    More news, I've implemented the ABS feature and tested it in this video, which looks much like the real thing:

     
    Mr_Dan_O and jonfinlay like this.
  30. jonfinlay

    jonfinlay

    Joined:
    Aug 25, 2015
    Posts:
    535
    Looks very believable! Can't wait to get my hands on this. Is it still expected for around April?
     
  31. Ecocide

    Ecocide

    Joined:
    Aug 4, 2011
    Posts:
    292
    Really good. I'm sure this is going to be the best vehicle physics available for Unity.

    Another question: How is the automatic transmission working? We want to achieve the same behaviour you know from normal cars on the streets, like slowly moving when releasing the brake pedal and gear changes according to different throttle input and rpm. Most physics only have that static "Shift up RPM" and "Shift down RPM" value which is not really realistic.
     
    emergki likes this.
  32. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,065
    That's the goal. The "hardcore" deadline is to have it released before Unite 2016.

    Thanks!

    Yeah, you mean "normal cars on US streets" ;) Here in Europe most cars have manual transmission. But yes, Vehicle Physics Pro covers this as well.

    The Torque Converter (fluid coupling) is simulated. This is the device between the engine and the transmission, and it causes the effect of slowly moving the car when releasing the brake pedal. Here you can see the settings for the Torque Converter in VPP:

    upload_2016-3-10_11-38-58.png

    That small yellow line marks the idle RPMs of the engine. In this case when the engine is at idle the lock ratio among the engine and the transmission is 10%.

    You can test it yourself at the demo "JPickup / Playground 1K" in manual gears. Start the engine, engage 1st gear and observe the result. The demos use the Torque Converter with a manual transmission because the simulation is much easier to control than using the realistic clutch (which is also implemented, but would requires an analog pedal).

    Still, the automatic transmission is correctly implemented. Automatic transmissions make use of epicyclic gearing with clutches and/or band brakes. The result is a smooth transition when shifting gears, even when changing among forward and reverse gears. Here is a comparison among both transmission types:

    upload_2016-3-10_12-39-13.png upload_2016-3-10_12-39-37.png

    So you can accurately simulate the automatic transmission in normal US cars, including all the behaviors, reactions and side-effects. It's not just another "manual with auto shift". In fact, the gearbox modes available in VPP are:
    • Manual transmission
    • Manual transmission with auto-shift
    • Automatic transmission
    • Automatic transmission in manual M mode (named "semi-automatic" sometimes)
     
  33. Ecocide

    Ecocide

    Joined:
    Aug 4, 2011
    Posts:
    292
    Great! I like the clean look of the inspector. Yes, you are right, automatic transmission is still rare in Europe. I'm from Germany btw.

    I wrote you an email today. Hope you can take a look at it soon.
     
  34. Mr_Dan_O

    Mr_Dan_O

    Joined:
    Oct 12, 2013
    Posts:
    351
    Hello.
    I fairly agree, although Assetto Corsa uses "an empirical tire model with flat spots" but this game is not a real simulator one. But "rFactor2 uses a physical FEM tire model and simulates the entire contact patch in real-time, which also result in very accurate heat transfer, wear and flatspot and tire deformation. Also concepts like slip angle and slip ratio are no longer an input to the model, so issues like low speed accuracy which other models suffer from are history.

    rFactor1, uses an empirical model and despite its age can get results within 95% accuracy for the most part and yes you can control a drift in it.

    iRacing uses a physical tire model and are making great progress as their results improved a lot over the last few months."
    (SOURCE)

    BTW, this is my full review:

    NOTE 0: I have used another asset before and also customized it a lot (which means I know what I am talking about,though :D )

    NOTE 1: I have a Logitech G27 set it 460 degrees for SPA Farrari VR demo, Also disabled the "Allow game to adjust settings" and with a high end laptop. Also all the effects were (are) 100% on the Logitech G27 Profiler.

    NOTE 2: I once enabled the "Allow game to adjust settings" and the game didn't crash.

    NOTE 3: The following review was done with the "Allow game to adjust settings" unchecked (disabled).

    NOTE 4: I drive real cars like bus, truck and cars,too.

    NOTE 5: I have never driven a race car in real life but I have driven race cars on iRacing, Granturismo 4, rFactor 2 and also bunch of non-simulator games


    I've played lots of racing games a lot and I've played your Ferrari 458 demo with G27 for days and I can say that was much more fun than playing other games. But I found some notes that you might consider improving it so that the Vehicle Physics Pro could be better in the final build.
    Here is the notes:

    1. The number one problem with the demo was the "Force Feedback", there are problems with that:

      1-0 The reaction of force feedback is a bit slow and late and too high when steering, there is a bit latency there and I'm sure that was not my PC's fault.
      This means to me (as a customer) that the force feedback is generated artificially while a real simulating system like rFactor2 uses steering rack without fake effects.
      1-1 The Ferrari doesn't apply force feedback when it goes on the edge of the roads, but in simulator games (specially like rF 2 or pCARS or AC) you can feel a sharp and fast vibration when you do so there. However, there should be real bumps there, look at the image below which shows the bumps on the side of a road in rFactor 2 which are too sharp:


      1-2 I don't know if ABS was really working or not, but if you slam the break pedal in rFactor 2 or even ProjectCARS, you'll feel the force feedback which is true in real life (if your car has an ABS component,though) but I couldn't feel it in your Ferrari demo version.

      1-3 Couldn't feel the bumps on the road, maybe the road was completely flat, if that was the problem there should be a script that simulates road bumps or something like that, so that player can feel road bumps as if you drive in real life.


    2. There was no "rear light" or I couldn't see it. That is a bit small bug, I guess.
    3. I couldn't feel the car's wight, maybe there should be some fixes for the car's inertia... (I just say,though)
    4. The sound system is fairly real which I don't really care because the asset is obviously beta and I have some sound files that I myself recorded which are not that good but I have used it for my own racing game, if you want you can have it for free. (PM me)
    5. I can't say anything about the suspension, please make a truck or lifted sedan or something, maybe that way we can (or I can, at least) say more about it.UPDATE: I played the pickup demo just 40 minutes and the suspension feels realistic however if you could do something that the feeling of suspension could be transform via force feedback, that would be even more realistic.
    6. crash and damage system is not available now which I don't care now because your asset is still in beta
    7. Apart from the assistance components that have not been implemented yet, one thing is missing (maybe), and that is the radial-blurring the wheel when it rotates fast. Most games even simulator ones, use 3 states of it: non radial blur, a mild radial blur, more radial blur, which generally is a texture swap but sometimes it is a real motion blur. See the image below for more info:
    8. UPDATE: I just tested the pickup demo, when I steer left or right in slope surfaces, the steering doesn't feel realistic. When I steer in sand or asphalt the car doesn't steer differently and behaves the same.
    UPDATE Bugs:
    • I'm not sure about this but to start the engine, you put your foot on the clutch and press the start button, that is fine but when I do it for the first time (both in the SPA and Monza scenes) the engine get stalled so I should do it again and the car starts.
    • When you steer a little bit, the wheel rotates clockwise and then counter-clockwise for a long period of time (Only for Ferrari, the pickup has a bit of this behavior and returns to normal state sooner)

    Overall those were great times when I played it and as I mentioned before, truly more interesting than many simulator games like BeamNG and even arcade games like TestDrive Unlimited 2006 and definitely The Crew (In my own opinion,though). I really like this asset and I keep saying it to my colleagues:D but the problems with the Force Feedback really really turned me down and I really feel the arcade-ish feeling that TDU gave me,there. I believe using a non-ray (or sphere) cast system but a true 3D tire and also implementing a steering rack does and will completely change this situation and make force feedback the most realistic possible and also 3D tires will simulate the car state more realistic when the car crashes.

    One big note: Please don't just exaggerate the force feedback in the way that TDU2 did. In TDU2, the steering wheel always vibrates when the car is idle or on max RPM and on the dirt roads, the bumpiness is too high, that is not suitable for a simulator driving experience, either. PLEASE NOTE: When you have a car with a cold engine or the engine is damaged, the steering vibrates on low RPM, so this effect is not always fake.

    What I liked a lot about the demo:
    1. Dynamic steering force feedback: When I wanted to steer more and more left (or right) the force feedback became higher which is true in some cars ( I have not driven a electric steer car in real life but all the non-hydraulic steering and also some hydraulic steering cars that I have driven behave that way) There was no such thing, I guess I was wrong.
    2. Overall brake system, the brakes behave exactly like a non-ABS vented cars
    3. I couldn't feel the suspension (in both SPA and MONZA with the 458) but the camera movement got me the feeling of the car's movement when I used the interior cam.
    4. The wheel's friction: When using handbrakes or even breaks, the car has the real wheel rotation and behavior as it should have. BUT as I mentioned before, the behavior of them are equivalent to non-ABS equipped cars.
    5. Differential behaves well but we should test it with more options (Diff lock value, I mean).
    6. The sharp reaction of the body of the Ferrari when the wheel goes center
    • We can't say much when we have a car that doesn't have a real clutch and also with no options to adjust.
    • I've taken my time for this, I expect the author of this asset consider improving the asset with the review I've provided.
    • This asset is way better than some other in term of realism
    • by looking at the photos we can see that the inspector looks amazing and simple
    I'll keep trying and sending you feedback when new demos become available.
     
    Last edited: Mar 30, 2016
  35. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,065
    @D4N005H thank you very much for your detailed feedback! I'll be splitting my reply in several parts :)

    Well, I completely disagree with that assessment. What's a "real simulator", then? Just a wheel simulation model doesn't build up a simulator.

    Any simulator is a model of the reality. A simulator takes a sub-set of real conditions and tries to match the effects that are observed in reality. Some models only need to consider a small subset of conditions for simulating the most noticeable effects (this is the case of Vehicle Physics Pro). Other models evaluate a wide set of conditions trying to simulate even the most subtle effects (such as rFactor or Assetto Corsa).

    Still, all of them are just models and there are effects they won't simulate, or the simulation might reflect some effects in a wrong unrealistically way. A clear example of an unrealistic behavior can be observed in this rFactor video linked in your post. Fast-forward to position 3:50 and observe how the front wheel slightly rotates backwards at some times while braking. This is even more evident at postion 4:03, where the wheel can be clearly observed rotating backwards when lifted while braking. This weird effect cannot happen in Vehicle Physics Pro by design, despite implementing a simpler simulation model.

    The demo might crash only if the G27 is not connected. This is caused by the faulty Logitech wrapper for Unity. I've already implemented a generic DirectInput controller, so next versions will get rid of Logitech's.
     
  36. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,065
    Thank you very much! I'll be adding this quote to the VPP front page ;)

    Yes, this is because caster hasn't been implemented yet. Thus, the reaction of the force feedback is noticed when the car has already began rotating due to steering. Once the caster can be configured the force feedback effects will be immediate.

    The edges are plain, there are no bumps. You might notice some effect when driving over them abruptly.

    Still, when you drive on those bumps in a real car is the entire car which vibrates. Simulators somewhat fake this with the force feedback.

    ABS is not working in the Ferrari. I've fine-tuned the brake pressure and balance manually for not locking the wheels even when the brake pedal is fully pressed. The inner wheel might get locked when heavily braking and steering at the same time.

    Force feedback in VPP is physically linked with the tire-ground interaction of the steering wheels. Thus, all side effects including braking and accelerating (FWD) are transmitted to the steering wheel via force feedback. If using the stock brake setting without ABS, then locking the front wheels is clearly noticeable in the force feedback.

    The Monza track is almost completely flat except for the edges. Try Spa-Francorchamps demo, which has some bumps especially at the track margins.
     
  37. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,065
    It's missing at the 3D model of the Ferrari. You can see it at JPickup though.

    I'm not sure on what do you expect here. Other users reported they can feel the car's weight realistically.

    I have a limited set of audio samples. Sure, will do! I'd really like to improve this part.

    Try the JPickup. I plan to include a truck or heavy vehicle example as well.

    A simple deformation script is included (the same as in EVP), but it's not used in the demos. Damage is not a priority though, as each project using VPP will have their specific goals on this.

    The 3D model of the JPickup includes this, but it hasn't been used yet. My priority now is the physics and dynamics simulation model. Visual details will be improved at some point, but that's something any project using VPP can implement easily.

    That's most probably due to the caster not having been implemented yet. After this part gets an upgrade the force feedback will be greatly improved overall.

    The force feedback accounts for the material friction. Try the Ferrari demo on Monza. Sand has a completely different feeling (softer). I tested it specifically.
     
  38. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,065
    Are you following the startup procedure correctly?
    1. Press and release the ignition key button (moves the key from Off to Drive. The engine continues stopped).
    2. Press and hold the ignition key button until the engine starts (simulates moving the key from Drive to Ignite until the engine starts).
    You shouldn't need to press clutch, as all demos implement a Torque Converter (like those used at automatic transmission). The coupling among engine and driveline is progressive and automatic.

    Most probably this is the correct behavior. The self-alignment torque in the Ferrari, combined with speed and vehicle's inertia might have this result. I expect the forthcoming improvements in the force feedback to improve this part.

    Implementing a 3D tire with detailed contact patch like in rFactor is far beyond my goals. The problem is the force feedback alone, not the tire model. The current force feedback code was quickly implemented in a couple of hours. It's based on the slip of the tire only. It doesn't account for effects such as caster or downforce. Still, you can see that it works pretty well.

    When the force feedback gets the corresponding redesign and the input data is correctly taken from the actual contact patch, then the result will be as physically correct as it can be within the VPP simulation model.

    Don't worry. The force feedback is bound in a physically correct way to the steering wheels. Intensity will always be coherent with the actual wheel-ground interaction.

    I might add additional "faked" effects afterwards, such as the vibration of the vehicle, or driving on bumps. But the first goal is to simulate a physically accurate interaction.
     
  39. Mr_Dan_O

    Mr_Dan_O

    Joined:
    Oct 12, 2013
    Posts:
    351
    Okay, Good question. but before I reply, please note two facts:
    1. If anyone wants a 100% simulated game to experience all the effects very accurately, then he/she should go to the nearest circuit possible to drive a real car.
    2. The more important thing that makes 3D real wheel or something like rFactor's wheel model a must have, is the complexity of the script. Let me explain what I mean, I have used lots of car assets for Unity3D and even I made one for my game one time, the fact is using and "hacking" the assets is okay but hacking the scripts that are based on tire model (even if the model uses a singe raycast for wheel) is too hard !! because there are factors in the script that makes it hard to hack, Worse your free version of this asset is not available to hack. By the term "Hack" I mean modifying and converting it to lets say sphere cast or colliders (so that we can simulate the wheels of monster trucks, for example).
    I said AC is not a real simulator because if you compare it to ProjectCARS or rFactor 2, it doesn't simulate the factors that I've mentioned before and also other ones. And yes, rFactor pCARS etc... they all have glitches and bugs and you are a professional programmer you know that adding more subsystems and classes may lead to more errors and that should not be a huge problem which stops a developer to add a feature. These are all my opinions,though.

    It's not that much fancy, the car should start to move a bit late when you hit gas pedal else it's like as if the car is very lightweight. See what I mean?

    Aha, I apparently have not done it right. Will check it again and report if anything is wrong.
    I know what TC is, though.

    Anyways, what I said is to make this asset the best in the market other than that, can't wait for the new demos and good job this asset is great already.
    Regards.
     
    Last edited: Mar 30, 2016
  40. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,065
    This is not the case in VPP. Force feedback is bound to the physical tire-ground interaction. Currently it's like simulating an extremely simple steering rack. There are no fake effects.

    Correct. ABS is not used at the demos. Only the brake torque and brake balance have been configured for preventing wheels to lock when the brake pedal is fully pressed.

    Thank you very much! Another quote for the front page :D

    Some additional comments on your feedback:
    • Suspension in sports cars is very tight. As the tracks are ideally flat, then the suspension is better noticed from the onboard camera. There are situations where one can feel clearly the suspension effects. For example, when exiting the Parabolic in Monza, it might happen that the inner wheel partially loses traction. This denotes the need of an anti-roll bar (to be implemented in an upcoming upgrade) for helping the car to better distribute the traction among both rear wheels.
    • Yes, cars don't have ABS in the demos. Next demos will include it.
    • Differential, clutch: I plan to release a single demo featuring several vehicles and allow to adjust as many settings as possible, including: clutch type, differential type, traction mode (FWD / RWD / AWD), etc.
    Of course, I take all feedback very seriously. You help me to focus on the points that need more attention. Also, all feedback is a challenge for the VPP simulation model and allows me to realize how can it work correctly on many situations.
     
    Mr_Dan_O likes this.
  41. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,065
    I don't fully understand you here.

    The most important part of a vehicle simulation is the tire and wheel model. You shouldn't modify or hack the tire model. If you do that with VPP then the simulation will likely go bad, very bad. The wheel in VPP has been carefully designed to accurately simulate the result of any combination of drive / brake / friction. If you apply a drive torque of x Nm at the shaft, then you'll get the exact corresponding force at the tire (and the vehicle). If the tire has grip enough, it will keep adherent to the surface. Otherwise, the tire will slip and the wheel will gain angular velocity over the ground. Same with brakes, and same when combining drive and brake torques. Everything handled coherently and physically correct.

    There are no slip ratio nor slip angle either. My model works accurately at all speeds, even with the vehicle completely stopped. Forthcoming plans include support for camber, caster, tire wear, temperature, pressure, and more complete tire friction curves.

    I plan to add alternates to the raycast, such as using 3D colliders. Still, the wheel and tire model will (must!) be the same. The 3D colliders will help resolving situations like this, where the raycasts don't produce the expected result.

    Sure, but in that case there is a difference. In my opinion, that specific effect (backwards wheel rotation while braking) denotes not just a glitch or bug, but a design fault. To me, it looks like the brakes are implemented as negative torques. Thus, there are cases where an excess of that negative torque makes the wheel to rotate backwards. I think that fixing that would require either an ugly hack for patching that situation, or touching the design of the wheel and tire model (inaccurate on this situation).

    This specific case wouldn't happen in VPP because the brake torque is designed as sign-less in the core of the simulation: brake opposes any movement aiming to cancel it; once canceled, the brake torque prevents any movement in any direction to occur until enough "active" torque (signed) surpasses the brake torque.

    The response is immediate in such powerful sport carts :) Check out the longitudinal acceleration at the telemetry. You'd better test the JPickup for slower movement.

    Thank you very much!! You're providing a great feedback, as well as very interesting challenges to VPP :)
     
    Mr_Dan_O likes this.
  42. Mr_Dan_O

    Mr_Dan_O

    Joined:
    Oct 12, 2013
    Posts:
    351
    I was afraid you wouldn't add those features so I myself should have find a way to add them manually, but now it sounds great because those will be available in the asset.


    So does it mean that we can simulate a monster truck crushing a car?
     
  43. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,065
    That's the goal with the monster truck. No plans for softbody physics for the crushed car atm ;)
     
    Mr_Dan_O and hippocoder like this.
  44. Mr_Dan_O

    Mr_Dan_O

    Joined:
    Oct 12, 2013
    Posts:
    351
    Have a look at the video below to see the thing I was talking about.

     
  45. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,065
    @D4N005H thanks for the video!

    That behavior is for sure related to the strength of the force feedback. I configured the demos with the Logitech G27 and the force feedback global strenght set to 50%. Reduce it even more if the problem persists (maybe your wheel is softer than mine?). Also, is your "Centering Spring" setting enabled? If so, disable it.

    As previously said, the force feedback implementation is the very first version. It will be greatly improved for the next version. Also, the new generic DirectInput controller is completed and working. It supports any force feedback device from any brand.

    For now, the demos require the G27 steering wheel to be pre-configured correctly in order to work without issues. I've upgraded the configuration instructions by including all the parameters:

    http://vehiclephysics.com/about/demos/#logitech-steering-wheels

    Let me know if configuring the G27 with those exact setting resolved the issue.
     
    Last edited: Apr 12, 2016
  46. Mr_Dan_O

    Mr_Dan_O

    Joined:
    Oct 12, 2013
    Posts:
    351
    Did the exact adjustment in the "game specific options" for all of those scenes. Although the cars are now more controllable, but still the steering issue is present.
    EDIT 0: Even setting the "Overall strength" option in the "Game specific" menu of the Logitech profiler software to the 0% won't remove the issue.
    EDIT 1: Such issue kinda exist in ProjectCARS,too. Even the popular gamer youtuber, SlapTrain captured it on camera.
    EDIT 2: Found a video of this bug in a real car!! Jajajaja just watch it below.


    Big Update: I now believe that Assetto Corsa's physics is way better than pCARS, specially for drifting. I said this because I have said that pCARS is more realism than AC in my previous posts here, which I recently think that I was wrong. Now after playing the new update of AC and comparing to pCARS, I guess AC is more realistic (at least up to the time that I'm writing this,though) . These are all my opinions.
     
    Last edited: May 6, 2016
    JamesArndt likes this.
  47. jonfinlay

    jonfinlay

    Joined:
    Aug 25, 2015
    Posts:
    535
    Hey Edy, any news on a release date?
     
  48. Zac-Yeates

    Zac-Yeates

    Joined:
    Jan 23, 2015
    Posts:
    20
    I've got a couple more questions that came to mind about VPP.
    1-Some old trucks have 2 physical gearboxes. Often there is a 5 speed gearbox with reverse and then a 4 speed auxiliary gearbox behind. Can VPP simulate this and how would it handle the gear input (These trucks have 2 gear sticks)?
    2-Are different types of suspension such as solid beam axles that connect the wheels simulated?

    Thanks, Zac
     
  49. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,065
    This means that your settings are not having effect in the demos. The option "Allow Game to Adjust Settings" should be disabled. If the problem persists, then there's some other issue that prevent your settings to have effect in the demos.

    I've decided to put the idea of releasing on May to one side as a realistic option. I've had several unplanned issues with other projects that didn't allow me to dedicate too much time to VPP. I think a more realistic target is July to cover all the angles. Next week I'll be at Unite Europe in Amsterdam. I'm preparing an EVP release for the event. Once I'm back, I'll get back to work on VPP full time for polishing and packaging VPP for the Asset Store.
     
  50. Edy

    Edy

    Joined:
    Jun 3, 2010
    Posts:
    2,065
    1- Yes. You can create custom vehicles including the functional blocks of your choice in any number and combination.

    VPP includes two different blocks that can serve as gearbox:
    • A full-featured gearbox covering the different transmission types, neutral position, gear shifting times, etc.
    • A simple GearSet block, which is just a list of non-zero gear ratios. There's no neutral or gear shifting times here. The selected gear ratio have immediate effect.
    In your case, you may use a GearBox block with the 5-speed and reverse gears. Then connect it to a GearSet component providing the extra 4 speeds. You can create your own custom input component for controlling both "gear sticks". Check out the example code at the create custom vehicles page, which includes both the vehicle controller and the input component.

    2- Yes. You may use the VPVehicleJoint component for composing your vehicle out of different parts, as in this example:

    upload_2016-5-24_12-24-32.png

    The front axle of the rear part is an independent rigidbody using an VPVehicleJoint for providing the rotation. It could be configured for providing suspension as well.
     
    Cristineltr likes this.
unityunity