Search Unity

iRDS - Intelligent Race Driver System Available on Asset Store

Discussion in 'Assets and Asset Store' started by rhodnius, Mar 18, 2013.

?

What you prefer (features are, Transmission, differential and Engine as separate component)

Poll closed Nov 12, 2019.
  1. Release new physics at it's current state and do new stuff on next releases?

    0 vote(s)
    0.0%
  2. Wait for all the new stuff on physics to be implemented then do the release?

    100.0%
  1. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    Hi @fredastaire you need to call this method to enable it:

    public void EnableSpeedRestriction(int firstWaypoint, int lastWaypoint, bool flag, float speedLimit)


    and this one to disable it.
    public void DisableSpeedRestriction()


    this is on the instance of IRDSCarControllerAI of the car that you want to yellow flag it.

    Currently there is not a buit-in way to not count laps under yellow flag
     
  2. nikolai-niedermeier

    nikolai-niedermeier

    Joined:
    Mar 30, 2017
    Posts:
    20
    Hi

    All of the sudden the AI drivers are going bonkers. I am using Unity 2019.2 with the latest version of IRDS, v3.2.6.

    I edited the racing line and thought I had to press the "Process All Tracks Data" button to have the AI recalculate max speeds and braking points or something. After this the AI very vaguely follow the track centreline. They end up driving off the track more often than on it. On start the AI immediately turn arbitrarily into the walls and spin around into them until they eventually respawn on the racing line and can then speed off in a straight line. I have not changed any of the AI drivers' settings.

    I edited the EVP Car Control Input script for VPP and it was working fine until I accidentally processed the track data. I cleared all the track data and recreated the track but the problem persists, especially the violently turning into the walls at start.

    I am using the LWRP. That means I cannot see the track boundaries anymore. I have to take a cube and sample the road width and make sure I put the track waypoints exactly in the middle of the road.

    Can you please add a feature that creates the most optimum racing line automatically? Adding of the grid start positions automatically in a correct way would also be very helpful. Having to add a hill radius value seems to me like something that has to be calculated automatically. The whole system feels a bit finicky to me now.

    Here is the code I am using for controlling the cars with VPP, but like I said, it was working fine before:

    Edit: I was just thinking. I don't know what these initializations do in the Awake function. I just left it as it was from the EVP version. Maybe they have something to do with the suicidal AI?

    Code (CSharp):
    1. using UnityEngine;
    2. using System.Collections;
    3. using VehiclePhysics;
    4.  
    5. public class IRDSCarControllInputVPP : MonoBehaviour
    6. {
    7.     public VPStandardInput playerInput;
    8.     public VehicleBase m_vehicle;
    9.     public IRDSCarControllInput carInputs;
    10.     public IRDSCarControllerAI carAI;
    11.     private float airDrag;
    12.     public Transform[] frontWheels;
    13.     private float steer;
    14.     private float throttle;
    15.     private float brake;
    16.     private float handbrake;
    17.     public float[] kfriction = {1,1};
    18.  
    19.     void Awake ()
    20.     {
    21.         if (m_vehicle == null)
    22.             m_vehicle = GetComponent<VehicleBase>();
    23.         if (playerInput == null)
    24.             playerInput = GetComponent<VPStandardInput>();
    25.         if (carInputs == null)
    26.             carInputs = GetComponent<IRDSCarControllInput>();
    27.         if (carAI == null)
    28.             carAI = GetComponent<IRDSCarControllerAI>();
    29. //        airDrag = drivetrain.maxSpeed;
    30.         carAI.SetFrictionExtaernalPhysics(kfriction);
    31.         carInputs.SetTopSpeedExternalPhysics(50f);
    32.         carAI.SetHFactorExternalPhysics(0.2f);
    33.         carAI.SetClFactorExternalPhysics(0.3f);
    34.         carAI.SetWingaFactorExternalPhysics(1f);
    35.     }
    36.     void Start()
    37.     {
    38.         if (playerInput != null)
    39.         {
    40.             if (carInputs.GetCarPilot () && (!carInputs.auto1 && !carInputs.auto2 && !carInputs.auto3))
    41.             {
    42.                 playerInput.enabled = true;
    43.             } else
    44.             {
    45.                 playerInput.enabled = false;
    46.                 //this.m_vehicle.data.Set (Channel.Input, InputData.AutomaticGear, 4);
    47.             }
    48.         }
    49.  
    50.         carAI.SetIRDSWheelsCenter(frontWheels);
    51.         carAI.SetMaxSteerLockExternalPhysics(28);
    52.         carInputs.gearRatiosLengthExternalPhysics = 3;
    53.         carInputs.maxRpmExternalPhysics = 1000;
    54.         carInputs.gearSpeedsExternalCarPhysics = new float[3];
    55.     }
    56.  
    57.     void FixedUpdate()
    58.     {
    59.         if (!carInputs.GetCarPilot())
    60.         {
    61.             carController();
    62.             if (playerInput != null && playerInput.enabled == true)playerInput.enabled = false;
    63.         }else
    64.         {
    65.             if (playerInput != null && playerInput.enabled == false && (!carInputs.auto1 && !carInputs.auto2 && !carInputs.auto3))playerInput.enabled = true;
    66.         }
    67.     }
    68.  
    69.     void carController()
    70.     {
    71.         steer = carInputs.GetSteerInput() * 10000;
    72.         this.m_vehicle.data.Set(Channel.Input, InputData.Steer, (int)steer);
    73.         handbrake = carInputs.GetHandBrakeInput() * 10000;
    74.         this.m_vehicle.data.Set(Channel.Input, InputData.Handbrake, (int)handbrake);
    75.      
    76.         if (IRDSStatistics.GetCanRace()|| carAI.rollingStart)
    77.         {
    78.             if (carInputs.targetGearExtarnelPhysics-1 <1)
    79.             {
    80.                 //brake = carInputs.GetBrakeInput() * 10000;
    81.                 //this.m_vehicle.data.Set(Channel.Input, InputData.Brake, (int)brake);
    82.             }else
    83.             {
    84.                 throttle = carInputs.GetThrottleInput() * 10000;
    85.                 this.m_vehicle.data.Set(Channel.Input, InputData.Throttle, (int)throttle);
    86.                 brake = carInputs.GetBrakeInput() * 10000;
    87.                 this.m_vehicle.data.Set(Channel.Input, InputData.Brake, (int)brake);
    88.             }
    89.         }else
    90.         {
    91.                 this.m_vehicle.data.Set(Channel.Input, InputData.Brake, 10000);
    92.         }
    93.     }
    94.  
    95.     void PlayerController()
    96.     {
    97.         if (carInputs.auto3)
    98.             this.m_vehicle.data.Set(Channel.Input, InputData.Throttle, (int)carInputs.GetThrottleInput() * 10000);
    99.         else
    100.         {
    101.          
    102.             if (Input.GetKey(KeyCode.UpArrow))
    103.                 this.m_vehicle.data.Set(Channel.Input, InputData.Throttle, (this.m_vehicle.data.Get(Channel.Input, InputData.Throttle)) + 500);
    104.         }
    105.         if (carInputs.auto1)
    106.             this.m_vehicle.data.Set(Channel.Input, InputData.Brake, (int)carInputs.GetBrakeInput() * 10000);
    107.         else
    108.         {
    109.          
    110.             if (Input.GetKey(KeyCode.DownArrow))
    111.                 this.m_vehicle.data.Set(Channel.Input, InputData.Brake, (this.m_vehicle.data.Get(Channel.Input, InputData.Brake)) + 500);
    112.         }    
    113.         if (carInputs.auto2)
    114.             this.m_vehicle.data.Set(Channel.Input, InputData.Steer, (int)carInputs.GetSteerInput() * 10000);
    115.         else
    116.         {
    117.          
    118.         }
    119.         this.m_vehicle.data.Set(Channel.Input, InputData.Handbrake, (int)carInputs.GetHandBrakeInput() * 10000);
    120.     }
    121. }
     
    Last edited: Oct 16, 2019
  3. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    Hi @nikolai-niedermeier ,

    I think this issue had to do with the Friction assigned to the IRDSCarControllInputVPP script on the inspector, what values you currently have there on this friction array?
     
  4. nikolai-niedermeier

    nikolai-niedermeier

    Joined:
    Mar 30, 2017
    Posts:
    20
    Hi @rhodnius

    Thanks for the quick reply.

    All my drivers currently have a friction value of 1. Can you please explain what this is for? I've always ignored these values.

    I have recently changed the track physics materials to ones that have been provided by VPP. Maybe that has something to do with it?
     

    Attached Files:

  5. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    That's for telling the AI how much grip the tires of the car have, so it can calculate the max speed on corners.

    I don't think that would actually do something about it, did you notice any errors on the console?
     
  6. nikolai-niedermeier

    nikolai-niedermeier

    Joined:
    Mar 30, 2017
    Posts:
    20
    Hi @rhodnius

    I tried using very low or very high grip values and the effects remain the same.

    I also tried changing the physics materials back, but the behaviour remains the same. The only error I have that I still wanted to ask you about is about the Mobile Control Manager. I cannot remove it as its part of the dll so I have to sit with these annoying messages. Can you please remove them?
     

    Attached Files:

  7. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    Sure ill look into it, but they are really harmless, they are warnings and should not affect in anyway the performance or behavior.
     
  8. nikolai-niedermeier

    nikolai-niedermeier

    Joined:
    Mar 30, 2017
    Posts:
    20
    When I set the kfriction values to very high the cars speed off and when I set them to low (like 0.01) they drive very slowly and carefully, however in both cases the cars still don't follow the racing line, turn off the road and randomly brake in straight stretches of road. Sometimes the cars even drive wrong way around.
     
  9. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    Hi all!

    The issues @nikolai-niedermeier was having on Unity 2019 was related to a bug from that version (2019) which prevents the API Updater from running, and the code was not getting updated, this is due to the issue of having the unity installed on a path that contains white spaces, like i.e. the default path which is under program files folder, to solve this issue you need to install unity in a folder without spaces like i.e. C:\UnityInstalls\Unity2019\

    Sadly there is nothing i can do about it, and I think this have been already solved on the latest 2019 versions, but just in case, always install your unity versions into a folder without spaces, and if using Unity hub just change the default install path to the same, a folder without spaces.

    Cheers!
     
    hopeful likes this.
  10. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    Hi guys,

    I'm yet working on the refactoring of car classes and new tire physics for the next update, is there anything you think related to physics you would like to get added? also, I'm going to upload a demo so you could try it out too and see the differences with the actual physics on iRDS. The release would be done first on the Source version, since getting it to the lite (dll) version needs a few more work to be done (like i.e. changing some settings on prefabs, etc.)

    After this is completed, the idea is to start on the refactoring of the AI core, so it gets easier to extent if needed, also easier to understand whats going on.

    Stay tuned!

    Cheers
     
  11. JaseTechGF

    JaseTechGF

    Joined:
    Jul 23, 2015
    Posts:
    9
    Thinking about buying,

    But, I need to know, are there any video or decent tutorials on how to get set up player and ai, to work with my own personal sbp vehicle physics 2.0 and randomation? and is there a spawn system in place jut in case player car falls off the track or destroyed. Thanks.
     
  12. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    Hi @JaseTechGF

    Here is the youtube channel where the tutorial videos are, you can take a look there before buying:

    https://www.youtube.com/user/TheDagagames/videos

    there is a tutorial to show how to get things ready about rigging the track.

    About integration with other physics, there is a step by step guide included on the readme file, Randomation has been deprecated for some time now, so the included interface scripts may need some minor typo or fields name changes fixes if there have been changes on Randomation side. currently there is no interface scripts for SBP physics, but pretty sure the integration should be similar to the ones already included there that you could use as a base for sure.

    Let me know if you have any other questions
     
  13. JaseTechGF

    JaseTechGF

    Joined:
    Jul 23, 2015
    Posts:
    9
    Thank, I'm planning on getting the non source version, since it'sin my price range between the 2, in order to use SBP, will the non source be fine for my needs?

    Also are there sample scenes with other vehicle physics in action?
     
  14. fredastaire

    fredastaire

    Joined:
    Sep 10, 2017
    Posts:
    53
    I’m having issues with cars wheels going through the ground when the car flips and lands on its side also sometimes walls.
     
  15. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    Hi @JaseTechGF, dll version should be fine for what you described so far.

    The demos included are just for iRDS included physics. Making other physics to work with it ain't difficult with the interface scripts which also have an editor menu to help out on the process, which is pretty much including some scripts (this is done automatically with the menu option) and assigning the references of the front wheels transforms to the added interface script.

    Also I'm here to help you out if you have any issues in the way.

    This is due to the physics relaying only on a single raycast, and the raycast currently is pretty much from the center of the tire on all axis, which type of vehicle you are currently using? is to understand i.e. if it is a monster truck which have really big tires and really wide, which in this case you could add a capsule collider to the wheel so it is the size of the wheel rim to prevent the tires from completely going through a wall or ground when the car is flipped on its side.

    Let me know if this helps.

    Cheers!
     
  16. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    Hi guys, I'm currently on the way of implementing base class of some elements of the physics, i.e. the suspension, currently i have it in a way that all different suspension derive from a base class, and you would see all of the derived suspension on the inspector for selection, which makes it really easy to add new types of suspension, this is pretty handy for adding new stuff, but if you would use it at runtime, you would need to know the types you would like to use and use a SetSuspensionType method on the wheels class to set the suspension you want to use(just if you would like to change the actual suspension, since all is handled automatically at start), and you can get the instance with a property on each wheel named i.e. CurrentSuspension, which returns the current instance as a Base suspension class, so if you want to modify any variables, you would need to cast it to the proper type, so my question is, does this sound like something easy to handle on your side or not?

    Also i think i would be implementing on the base class a generic method that accept a Dictionary of type string and object, so you can send there the parameters you want to adjust on the class, and each derived class would implement an override of this method to actually process those parameters and set them to the proper fields.

    Let me know if this sounds to you guys like something helpful, also all this derived classes would be Monobehaviors, so you could be able to access them using the GetComponent from unity API and then set the fields you would like to change there.

    Any feedback/comments are more than welcome
     
  17. JaseTechGF

    JaseTechGF

    Joined:
    Jul 23, 2015
    Posts:
    9
    btw is this compatible, with 2019.2?
     
  18. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    Yes it is, just take into consideration what i have posted before about the bug on that version of unity if it is installed on a path with white spaces on the path, like i.e. the default install path which is under program files.
     
  19. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    Hi guys, on another note, iRDS new versions would be from unity 2017.4 and up unity versions, since older unity versions are pretty much not used anymore.

    Cheers!
     
    hopeful likes this.
  20. mthawley

    mthawley

    Joined:
    Sep 7, 2018
    Posts:
    53
    Hi! I have just purchased the full source version after using the DLL version for a while. What is the best way to upgrade from DLL to source without losing current settings? Cheers.
     
  21. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    Hello @mthawley
    First you should do a full backup of your project. After this make sure you are on the latest dll version, then use the Save/Load settings from the iRDS menu which is on GameObject top menu, and save your current cars settings and iRDSManager.

    then you would need to delete the iRDS folder (your cars prefabs could be in the Resources/Cars folder by default so move them out from there) and then you import the source version. This would make scripts references to be lost, from there you have 2 options, one is rigging your cars and loading the settings, and the second would be manually referencing the scripts into your prefabs, I suggest the first one as it is way less time consuming.

    This is due to the dlls and the scripts from the source version not having the same GUID within unity and there fore, even they are the same classes the references to the scripts would get lost.

    For the IRDSManager, you can also use the old markers to recreate your tracks, but you need to add a new IRDSManager because of the missing references, this process would take some time, but would be done just once.

    Let me know if you need any help in the process.

    Cheers!
     
  22. mthawley

    mthawley

    Joined:
    Sep 7, 2018
    Posts:
    53
    Ok thanks!
     
  23. mthawley

    mthawley

    Joined:
    Sep 7, 2018
    Posts:
    53
    Hi Rhodnius. An issue I've come across with recreating the IRDSManager is that the IRDS Speed Limits (inside the RacingLine folder) are being regenerated. Therefore it looks like all pre-entered limits have been reset. I have set up many tracks and altered a lot of Speed Limits. I have tried copying these limits from backups but each time the Speed Limit script is no longer recognised and has to be re-attached, and so the Hill Radius is always reset to the default value.

    Is there any way around this other than manually comparing each Waypoint for each track with a backup project?

    Cheers.
     
  24. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    when you reassign the script it resets or you remove the old one and attach the new? you should try going into inspector Debug mode and selecting all the waypoints at once and then on the inspector you would see a field with the script reference and assign there the reference to Speed limits script.

    Let me know if this helps
     
  25. mthawley

    mthawley

    Joined:
    Sep 7, 2018
    Posts:
    53
    Hi. When is IRDSStatistics.SetCurrentCar run? I see the method but there are no references to it. I'm having issues with LapTime and TotalTime in that they are not being updated during the race, and in each case they are referencing IRDSStatistics.CurrentCar. Cheers.
     
  26. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    You wont see a reference to it, since it is internally set on iRDSCarCamera class by accessing directly the property on IRDSStatistics, part of the refactoring that is taking place is removing those methods and using events to properly manage all the events that are triggered.

    Maybe you are not using the IRDSCarCamera ? if you are not, then you need to assign into IRDSStatistics.CurrentCar the car you want to track with the UI.

    Let me know if you have any further questions
     
  27. mthawley

    mthawley

    Joined:
    Sep 7, 2018
    Posts:
    53
    That worked, thanks.
     
    rhodnius likes this.
  28. dragon-RK

    dragon-RK

    Joined:
    May 18, 2019
    Posts:
    4
    Last edited: Oct 27, 2019
  29. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
  30. mthawley

    mthawley

    Joined:
    Sep 7, 2018
    Posts:
    53
    Hi. I am working on an open-world racing project which allows the player to enter races without loading or reloading scenes. The player drives up to a trigger which then sets up the race, and during the race the player can restart, resume or quit out of the current race. At the moment the restart and resume race options work perfectly however I'm having issues with implementing the Quit Race functionality.
    So basically I am looking for a way to reset IRDSPlaceCars, IRDSStatistics etc. so that I can restart a race at a later time as if the race had never occurred previously. At the moment I am using the following;

    IRDSManager.Instance.Initialize();
    IRDSStatistics.DestroyAllCars();
    IRDSPlaceCars.Instance.InitializeLocalProperties();
    IRDSStatistics.Initialize();

    I can see that IRDSPlaceCars is retaining the details (cars List, ai Car List, and Car Object Lists) from the previous race, and so when trying to enter the race for a second time the game freezes. Can you please advise on how to get around this? Cheers.
     
  31. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    Seems those are the methods to get called for when you want to restart a race, what you call after quitting a race for starting a new race?
     
  32. mthawley

    mthawley

    Joined:
    Sep 7, 2018
    Posts:
    53
    Hi. That is what I am asking. What should I call to completely reset a race to its pre-run state?
     
  33. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    You wont be able to reset it, just calling the restart race would do, and just make sure to have LevelLoad update with the settings of the race you want it to run, and it would be using that one, not the latest ran race.

    Code (CSharp):
    1. IRDSPlaceCars.Instance.RestartRaceAutoPositionCarsOnGrid();
    Edit: if you call that method, it would do what you wrote on your post and start the process to place the cars on the racetrack, all using the current levelload settings
     
  34. dragon-RK

    dragon-RK

    Joined:
    May 18, 2019
    Posts:
    4
    I'm sorry I'm late, I made it safe!
    And how do I use iRDS with Rewired and Sony's DualShock 4?
     
  35. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    You just need to import Rewired and do their setting up of the controller you want to use, then use the included rewired script which is on a zip file called IRDSPlayerControlsRewired.rar on the Rewired folder inside iRDS, attach this script to your cars and set the player controls to External and you should be ready to go.

    Cheers
     
  36. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    @mthawley How it went with the stop and restart of the races? let me know if you need something else
     
  37. mthawley

    mthawley

    Joined:
    Sep 7, 2018
    Posts:
    53
    Hi Rhodnius. I got it working by adding a new method to IRDSPlaceCars;

    public void ResetRaceSettings()
    {
    pitNumber = 0;
    maxCars = 0;
    lastGridPosition = 0;
    copCarsList.Clear();
    carsList.Clear();
    aiCarsList.Clear();
    randomPos.Clear();
    playersCarObjectList.Clear();
    copsCarObjectList.Clear();
    aiCarObjectList.Clear();
    }

    Then when I go back and re-activate the Track I call;

    IRDSPlaceCars.Instance.ResetRaceSettings();
    IRDSPlaceCars.Instance.RestartRaceAutoPositionCarsOnGrid();

    This seems to do the trick.

    Cheers.
     
    rhodnius likes this.
  38. dragon-RK

    dragon-RK

    Joined:
    May 18, 2019
    Posts:
    4
    Sorry to bother you again.
    I'm sorry, but I didn't understand even if I tried.
    Could you make a video to set up Sony DualShock 4 with iRDS and Rewired?
     
  39. longroadhwy

    longroadhwy

    Joined:
    May 4, 2014
    Posts:
    1,459
    rhodnius likes this.
  40. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
  41. dragon-RK

    dragon-RK

    Joined:
    May 18, 2019
    Posts:
    4
    It worked fine!
    Thank you.
    Please let me know if there is anything else.
     
    rhodnius likes this.
  42. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    Hello guys, I have just added a poll, would appreciate if you vote there.

    The main thing that I'm thinking about is, taking all the physics stuff to be as components (which is the way that is going to be from now on) and the stuff that i think are just remaining are the transmission, differential and engine, which are currently part of a single class (IRDSDrivetrain), this would still be used inside the IRDSDrivetrain class but as components, this allows for easily adding new sub types of those parts of the car physics, as I already did with suspension and clutch.

    One thing is, that when this parts are taken from the IRDSDrivetrain, they would also take with them all the public fields they use (like gear ratios for transmission, an all engine parameters for the engine) which would need from your end to do some transitioning work if you are going to upgrade current projects, for that i could be making a loading script that could take the data you save with the save tool and load it into the new components, pretty much like an upgrade tool, so you could be able to upgrade your cars on the project.

    So taking all that into consideration, i was thinking maybe it could be best to just have it all finished and after that do the release of it, so the upgrade would be done once on your side, and not like more than one time for this big upgrade.

    Would like to know your thoughts.

    Cheers!
     
  43. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    On another note, i just created a Discord channel in case anyone would like to join here is the link:

    https://discord.gg/R4rn9z
     
  44. fredastaire

    fredastaire

    Joined:
    Sep 10, 2017
    Posts:
    53
    I would like the ability to move the raycast of the wheels if they will remain single ray so I can put them towards the outer side of the wheel to make open wheel cars not have undesirable behavior when flipping.
     
    rhodnius likes this.
  45. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    Cool, I already did this on the new physics:D
     
    fredastaire likes this.
  46. fredastaire

    fredastaire

    Joined:
    Sep 10, 2017
    Posts:
    53
    @rhodnius

    I’m having an issue if I load a scene with SceneManager.LoadScene(mystring); the scene loads but the cars are falling from the air and landing on the ground instead of rolling start. If I just have the scene open and hit play it runs just fine. Using unity 2019.1.10
     
  47. fredastaire

    fredastaire

    Joined:
    Sep 10, 2017
    Posts:
    53
    I think it is a bug with 2019.1.10 I used the 2018 build and it has no issues loading
     
  48. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    Hmm weird, do you have tried on a later version 2019? like 2019.2?
     
  49. fredastaire

    fredastaire

    Joined:
    Sep 10, 2017
    Posts:
    53
    I found the issue the damper was too high lowered it and cars stayed grounded
     
    rhodnius likes this.
  50. rhodnius

    rhodnius

    Joined:
    Apr 11, 2012
    Posts:
    1,168
    What you guys think about this idea I have currently going round on my mind, I was thinking to deliver fewer physics components to the lite version and more to the pro version for the new physics, i.e. for the lite version maybe just one type of differential (pretty much the same as the current version on the asset store have) and for the pro more options, like LSD, Viscous, etc.

    By doing this, the lite version wont be needing to be upgraded (the car setups), as i would keep the same structure it have already which is more simple, and only the pro version owners would need to upgrade their physics (optionally) by a feature i would add to do so automatically.

    The idea is to give some more value to the users that own the pro version, and not just the source code, comments are welcome.