Search Unity

[RELEASED] uTire Dynamic Tire Deformation

Discussion in 'Assets and Asset Store' started by Pecek, Mar 31, 2018.

  1. Barritico

    Barritico

    Joined:
    Jun 9, 2017
    Posts:
    330
  2. Pecek

    Pecek

    Joined:
    May 27, 2013
    Posts:
    177
    @Barritico Sorry for the late reply. Yes, both V1 and the (hopefully soon to be released) V2 will support VPP. Currently I'm focusing entirely on V2, but if it's critical for your project let me know and I'll prioritize it.
     
    Freznosis and Barritico like this.
  3. Pecek

    Pecek

    Joined:
    May 27, 2013
    Posts:
    177
    I was finally able to work on V2, here is a small, no bullshit teaser - the headline here is the accuracy, and the fact that there is no more magic number to be set, it just works(and not in a Todd Howard way, it really does!).


    More to come in the following weeks!
     
    Freznosis, Meceka, khos and 2 others like this.
  4. Pecek

    Pecek

    Joined:
    May 27, 2013
    Posts:
    177
    The promised update, in a lot more polished state - though it's a somewhat unconventional demo, I thought this would be the absolute worst case scenario so it would showcase it better(and I also really wanted to do something like this for a while lol)


    There is still a lot to be done, but the shader itself is done(I'll tidy it up and look for places to optimize, but every functionality I wanted is already there), and the core of the system is done, now to create a new manual(although this one is going to be a lot shorter as there is not much to do manually), and I have to rewrite it to use the job system, but I'm pretty sure I can submit it next week, and post a summary of the changes by the weekend. :)
    If you have specific questions let me know, and I'll make sure to address them by then.
     
  5. newlife

    newlife

    Joined:
    Jan 20, 2010
    Posts:
    908
    Cool it seems that in a full physical coherent way. How much raycast are you using?
     
  6. Pecek

    Pecek

    Joined:
    May 27, 2013
    Posts:
    177
    @newlife In this video 24(3x8), but it's completely scalable between 1 and 255. The distribution doesn't have to be uniform either, it's possible to only cast rays in a certain direction and in a certain angle range(~it doesn't waste rays checking against the fender unless you need 360 collision detection).
     
  7. newlife

    newlife

    Joined:
    Jan 20, 2010
    Posts:
    908
    @Pecek thanks. Are the raycasts batched?
     
  8. Pecek

    Pecek

    Joined:
    May 27, 2013
    Posts:
    177
    @newlife not yet, but at release they will be(for 3D anyway, 2D raycast jobs are not supported yet as far as I know)
     
  9. Barritico

    Barritico

    Joined:
    Jun 9, 2017
    Posts:
    330
    Hi.

    Any new release date estimates?
    It does start to run a bit fast for my game.

    Thank you.
     
  10. Pecek

    Pecek

    Joined:
    May 27, 2013
    Posts:
    177
    @Barritico Thanks for bringing it up, I will look into it right away and let you know later today.

    About V2.
    I was hoping to sort it out, but the way things look now I'm not sure if I can release(or use) it at all. It was done on time, everything is working as expected, it's not that.
    Potential legal issues popped up, I was working for a company this year and they claim I worked on V2 while I still had a contract with them which states pretty much every dev work I do is theirs(this part is absolutely correct, however I didn't even start working on the update while I had a contract with them - I'm in the process of trying to prove this.) I honestly don't know what's going to happen, if they back off eventually I can release it(it would make sense, they don't even do anything 3D, or even game related - but then again, I don't see how this claim makes any sense), but if they don't this is it basically, I'm not going to court over this.
     
  11. newlife

    newlife

    Joined:
    Jan 20, 2010
    Posts:
    908
    Oh that's a pity!. Hope that you'll find a settlement for this.
     
  12. Pecek

    Pecek

    Joined:
    May 27, 2013
    Posts:
    177
    @Barritico I just submitted the update with VPP support(like with the other integrations, open up Tools->TSD->Tire Deformation Integrations Installer-> Install Vehicle Physics Pro Integration). After that you will be able to use both the VPVehicleController or just VPWheelController. If you don't want to wait for Unity's approval(should be a day or two) let me know and I'll send the update directly.

    @newlife Thank you! I hope so, it's about as demoralizing as it can get. However just for clarification, this doesn't affect V1 in any way, it's not going to be deprecated, or anything like that - as someone already asked about it in PM. If there is a development about this I'll let you know.
     
    keeponshading and Barritico like this.
  13. Barritico

    Barritico

    Joined:
    Jun 9, 2017
    Posts:
    330
    Thanks!!!
    I wait for Unity until monday. If not, then mail to you.

    Good luck!!!
     
  14. overthere

    overthere

    Joined:
    Jun 28, 2013
    Posts:
    108
    Sorry to hear about your contract issues :( particularly as V2 looks so good!

    For V1 is there a way to get a read out of the extent of tyre deformation based on the raycasts? thanks
     
  15. Pecek

    Pecek

    Joined:
    May 27, 2013
    Posts:
    177
    @overthere Thank you! Yeah, it sucks, but for now it is what is.:\
    Without deforming the mesh on the CPU as well you couldn't calculate the exact visual deformation, but if you don't need it to be that accurate then it would be quite easy to calculate from the ray array that's already available(from the top of my head I'm not sure if this is a public a variable or not, but they are already calculated).
    If you can tell me more about what you need I could probably answer your question a bit better.
     
    overthere likes this.
  16. overthere

    overthere

    Joined:
    Jun 28, 2013
    Posts:
    108
    @Pecek Thanks, no wouldn't need to be particularly accurate. Was just wanting to prototype if modulating friction based on extent of deformation added anything to the driving feel. So if you were driving over uneven terrain with a low pressure -> greater deformation -> increased friction
     
  17. keeponshading

    keeponshading

    Joined:
    Sep 6, 2018
    Posts:
    812
    Nice VPP integration. Thanks. I would start V3. Forget about V2.)
     
  18. StudioTatsu

    StudioTatsu

    Joined:
    Dec 31, 2018
    Posts:
    8
    v2 looks like it will be impressive. I am looking for GPU approach instead of CPU to deform tires.
    I purchased the current version, unfortunately, It looks like I will need to rewrite it due to wasted raycast calls. :(

    My custom wheel collider returns the position, force, and pressure of the contact point - uTire (3d version) seems to do a raycast check basically returning the same value.

    I did a test with 10 BelAZ 75710 Dump Trucks and the performance dropped significantly when I added uTires.
    Would it be complicated to create a modification that doesn't use an array of raycasts to deform the tires for the 3D Version? I think that would solve my performance issues.
     
    Last edited: Aug 13, 2020
  19. khos

    khos

    Joined:
    May 10, 2016
    Posts:
    1,159
    PS: Your demos are really cool, the ones I seen on Reddit etc! Congrats, are those wheels using utire?!
     
  20. StudioTatsu

    StudioTatsu

    Joined:
    Dec 31, 2018
    Posts:
    8

    Thanks, My custom wheels are currently using my Soft-Mesh tech for deformation -
    which is overkill for tires in my opinion.

    That is why I am currently looking for a GPU solution, this will hopefully have better performance on lower-end machines. ;)
     
  21. NelsonHurst

    NelsonHurst

    Joined:
    Dec 4, 2014
    Posts:
    12
    Can the 3D tire deform at a world or local position instead of an array of raycasts?
     
  22. Pecek

    Pecek

    Joined:
    May 27, 2013
    Posts:
    177
    @NelsonHurst technically sure, but then you would have to supply the "collision" data yourself - for the deformation itself it doesn't care about the rays, it might as well be a world space position if the additional data is provided(like ray length, but since this is a wheel the ray length always equals to Abs(wheelCenter-hitPoint)).

    @StudioTatsu you can set the amount of rays even down to 1, it would be slightly faster without using arrays then but I feel like if the performance budget is that critical the single ray based solution would be a better choice. World collisions need at least 6 rays to look convincing in my opinion, more if a wheel is big enough.
     
    NelsonHurst likes this.
  23. rz_0lento

    rz_0lento

    Joined:
    Oct 8, 2013
    Posts:
    2,148
    As a side note, you could now also add tessellation on URP and HDRP since ASE now supports this.
     
    Freznosis and Pecek like this.
  24. keeponshading

    keeponshading

    Joined:
    Sep 6, 2018
    Posts:
    812
    Hi. Any news on V2 or V3?
     
  25. ahmetyazir22

    ahmetyazir22

    Joined:
    Jan 7, 2021
    Posts:
    1
    I wonder which vehicle asset you used for the vehicle itself. I really liked the way it crawls on the rocks. Would you mind sharing the asset name?
     
  26. djarcas

    djarcas

    Joined:
    Nov 15, 2012
    Posts:
    160
    And a bump. Were the issues resolved?
     
  27. Pecek

    Pecek

    Joined:
    May 27, 2013
    Posts:
    177
    @keeponshading @djarcas I can't be more specific yet, but you can finally expect some good news in the following weeks. :)
     
  28. khos

    khos

    Joined:
    May 10, 2016
    Posts:
    1,159
    To be honest I cant even remember, it was a while back! Not sure if I even have the project anymore....maybe I'll go thru backups and get back to you.
     
  29. Pecek

    Pecek

    Joined:
    May 27, 2013
    Posts:
    177
    Dear Pit-Stop crew!

    A few weeks passed(more than I hoped for, my GPU died and I had to survive on a gtx650 for two weeks, wouldn't wish it on my worst enemy), and here I am with some news to report! I just recorded a short, no bullshit video about the most important feature, the new and improved setup process, and the possible results. Disclaimer, I found the mesh online as-is, it wasn't prepped for uTire in any way.



    The only requirement is proper orientation(you will get a notification if your mesh is off), other than that it should pretty much work with any mesh - at least I wasn't able to break it yet.
    So it's basically plug and play, as many of you were hoping it to be. :)

    There is still work to do, namely
    • optimization, the first release will use the job system for raycasting and other math-heavy problems(for now everything is done in the traditional, rather expensive single-threaded way)
    • feature parity with V1(since V2 was rewritten from scratch I still have to rewrite some old goodies(like 2D compatibility, integrations with packages on the store and what not)
    • One of the more annoying problems with V1 was the constant need to re-upload it with compatibility with the latest HDRP and URP. Except for maybe one time, this didn't require much on my part, it was basically done with a push of a button - but to avoid this in the future V2 will ship(although it might not make it for the initial release, we'll see) with both Amplify Shader Editor, and ShaderGraph nodes(along with a guide on how to integrate it with your own shaders), so any time there is a new HDRP update you can recompile the shader and use it right away. I'll try and keep up with the new releases of course, but every now and then someone has to wait a day or two and it really isn't necessary.
    • Ease of use is the most important design goal here, so everything is going to be much simpler compared to V1. Are you using HDRP? It's going to import the HDRP shaders automatically. Do you have EVP, RCC, or NWH installed? It's going to install the integration for it, etc. I can't stress this enough - less editor windows, less clicks, less tutorials, less everything. Drag and drop, and it's going to work. There are only two options on the shader itself that has to be set manually(although the default values work just fine), the "harshness" of the rim(on the video it's set to 0, that's why it deforms the rim) - this is a simple slider that accepts a value between 0 and 1, and there is a multiplier for the side distortion - this is more for some artistic freedom. In some edge cases tweaking these values can give better visuals, but again, default values will work as well.
    • The code requires some heavy cleanup and refactor
    • Some proper marketing material, I'm posting these raw recordings with S*** audio like there is no tomorrow, but for the average user it's not going to work on the store at all lol
    But the bulk of the work is done. I'm not comfortable with a release date yet(especially since apparently everything goes wrong for some reason), but it is happening, within a reasonable time.

    A slight price increase is to be expected, but V2 is going to be free for everyone who owns V1.

    If I didn't address any questions, or if I'm unclear on something please let me know!
    What do you think?
     
    Recon03, rz_0lento, m0nsky and 3 others like this.
  30. khos

    khos

    Joined:
    May 10, 2016
    Posts:
    1,159
    Looking nice.
    Can an option be included to so that the inner rim does not bend, only the tire part.
    What kind of price might you be looking at, no worries if cannot say yet.
     
  31. khos

    khos

    Joined:
    May 10, 2016
    Posts:
    1,159
    Hi Pecek,

    So I wanted to have another go with your awesome soft tires, but this time I want to use spheres as tires, like really round balloon type wheels, where the whole tire can deform.. but so far I'm not getting any results. Would it be possible to get your advise, maybe you can spot something in the screenshots below:

    adasd.PNG ssss.PNG
     
  32. Pecek

    Pecek

    Joined:
    May 27, 2013
    Posts:
    177
    @khos
    There is an option already. :)

    You can even make the transition completely hard if you want of course, but in my opinion it doesn't look good on any model I tried. Sort of like how armor tends to deform in fantasy games, even though it makes no sense physically, it looks better than no transition at all.

    For V1 owners the upgrade is going to be free.
    As for new users, I'm not sure yet - but definitely not more than $30. I would love to get some input on this from anyone though, considering V1 is $20 now it seems fair, but pricing is way outside of my expertise.

    Frankly in this case I would just wait for the release of V2, you could probably tweak the values until they sort of work, but with V2 it will just work - out of curiosity I just checked it with the default Unity sphere and this is what I got out of the box. If you are interested you can try V2 before release as well - just expect some potential performance-related issues, and possible UI changes.

     
    khos likes this.
  33. khos

    khos

    Joined:
    May 10, 2016
    Posts:
    1,159
    Awesome!

    Regarding the Unity sphere test, which values did you tweak, that is exactly what I'm looking for! to bend the sphere like in your screenshot. Does it matter if using v1 or v2?
     
  34. Pecek

    Pecek

    Joined:
    May 27, 2013
    Posts:
    177
    @khos the screenshot was made with v2 - I should probably start using watermarks at this point. :)
    Send me a PM(or email) if you want to try it out, along with some info about your project(if you are using a vehicle physics package tell me which one, and what wheel solution do you have(built-in WheelCollider, WheelController3D, or some custom one)).

    Same goes for everyone who would like to see it in action by the way, I really would like to get some feedback.
     
    khos likes this.
  35. khos

    khos

    Joined:
    May 10, 2016
    Posts:
    1,159
    Many thanks Pecek!
     
    Pecek likes this.
  36. Recon03

    Recon03

    Joined:
    Aug 5, 2013
    Posts:
    672
    Looking great. so far.
     
    Pecek likes this.
  37. Pecek

    Pecek

    Joined:
    May 27, 2013
    Posts:
    177
    One last peek before release! It should be up and running by the end of next week. :)

    In the video I'm using the excellent NWH2 vehicle system(which is NOT part of this asset, however, it demonstrates how well they work together(along with any other vehicle system).

     
    TerraUnity, m0nsky and khos like this.
  38. localhost

    localhost

    Joined:
    Dec 9, 2012
    Posts:
    43
    up and running as in released on the store? :D

    looking amazing btw!!
     
    Pecek likes this.
  39. Pecek

    Pecek

    Joined:
    May 27, 2013
    Posts:
    177
    @localhost Yes, as in released on the store. :) Thank you!
     
    khos and localhost like this.
  40. Pecek

    Pecek

    Joined:
    May 27, 2013
    Posts:
    177
    V2 is standing in queue for review for almost a month now - if anyone wants to get their hands on it let me know, and I'll send a unitypackage directly. Currently it says it's 843rd in line - and it was like 1495th when I submitted it on August 20. So, yeah. :/
     
    khos likes this.
  41. CoderPro

    CoderPro

    Joined:
    Feb 21, 2014
    Posts:
    320
    Will you give a discount to celebrate the new version ?
     
  42. Pecek

    Pecek

    Joined:
    May 27, 2013
    Posts:
    177
    Yes, there will be a launch discount, and it's going to be free for V1 owners(it's submitted as a separate package instead of an update, so even if you own V1 you would have to click buy/upgrade, but the price will be $0).
     
    CoderPro and GarbageCat like this.
  43. alienorbit

    alienorbit

    Joined:
    May 1, 2013
    Posts:
    14
    @Pecek Which Unity configuration are you using with NWH2? Trying to get NWH running on 2019.4.3 - has a bunch of shader problems. Maybe I should be targeting 2020?
     
  44. alienorbit

    alienorbit

    Joined:
    May 1, 2013
    Posts:
    14
    It turns out that some of the shaders in the NWH2 demo scenes are not really updatable to URP directly - so are showing up as pink until changes - all good - will set up a new environment for testing anyway!
     
  45. keeponshading

    keeponshading

    Joined:
    Sep 6, 2018
    Posts:
    812
    Last edited: Sep 26, 2021
  46. I-R0B0T

    I-R0B0T

    Joined:
    Mar 14, 2019
    Posts:
    1
    Is this working with articulated bodies? Like having an articulated root body four legs with some joints and the wheels attached via revolute joints?
     
  47. khos

    khos

    Joined:
    May 10, 2016
    Posts:
    1,159
    Trying out some balloon tires, utire is in use, but keeping it very subtle

     
    keeponshading likes this.
unityunity