Search Unity

Third Person Controller - Third Person, AI, Multiplayer, Mobile Framework

Discussion in 'Assets and Asset Store' started by opsive, Jan 21, 2015.

Thread Status:
Not open for further replies.
  1. Astaelan1

    Astaelan1

    Joined:
    Sep 29, 2015
    Posts:
    192
    Thank you. That gives me something to think about.
    I would be interested in the bundle, but I guess it might not be the right timing yet. Of course, it all kinda starts with a character controller. Will you consider retroactive bundle/upgrade discounts for uFPS if or when that option becomes available, if people have already purchased TPC on the asset store?
     
  2. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,126
    We haven't thought about that side of things too much yet since it's still many months away, but I do know that we're going to make it as easy as possible to purchase related assets, whether you purchase the asset now or a year from now :) Sorry I don't have a more concrete answer for you yet.
     
  3. Astaelan1

    Astaelan1

    Joined:
    Sep 29, 2015
    Posts:
    192
    It's more than I expected within 15 minutes of asking, I appreciate that. Consider TPC bought, and probably BD in the near(ish) future. uFPS will be the icing on the cake when the integrations are complete, whether bundling is available or not.
    Thanks again.
     
    opsive likes this.
  4. Astaelan1

    Astaelan1

    Joined:
    Sep 29, 2015
    Posts:
    192
    As it so happens, TPC made it into the final cut for my list, but as I was looking through the integrations I realized that one of the other things I want to use may not play nice.
    Does TPC support Bone Controller for the IK stuff instead of Final IK? If not, is this an integration in the pipeline, or could it be? :)
    I ask this, because MegaSplat uses Bone Controller for dealing with the tessellation displacement maps for foot placement, would be nice to stick to one solution for IK (MegaSplat may very well introduce Final IK integration too, so I'm looking both directions...)

    Thanks again.
     
  5. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,126
    I haven't personally used Bone Controller so it doesn't support it out of the box, but the FinalIK integration wasn't too tough to get going so if you want to take a stab at it I can help along the way. With version 2 development going strong I don't think we'll be adding any more integrations before it is released but I can definitely take a look at it after.

    In somewhat related news, we have a new member joining our team so even while version 2 development is going on we should still be able to get 1.x releases out the door. I can see if he has any Bone Controller experience and if he does we can get to it a lot sooner.
     
  6. Astaelan1

    Astaelan1

    Joined:
    Sep 29, 2015
    Posts:
    192
    Hey, that'd be fantastic. I do realize that I'm kind of poking the bear when it comes to integrations with other stuff, and something like this... I should really just pull the trigger, get TPC and start exploring into the FinalIK integration to see for myself. But it's great that you might have someone with vetted eyes to see if it'll be quick and easy, look forward to hearing back either way on that end.
    Really do appreciate your patience and support for even those who haven't purchased quite yet. 5/5 on support.

    I had a last minute thing pop up during researching that had me look twice at my controller choice again, but I'm confident this will be the right for me with the tight uFPS integration coming and the outstanding support for anything I might need a hand to work out :)
     
    opsive likes this.
  7. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,126
    Version 1.3.5 of the Third Person Controller has been sent to opsive.com purchases and released on this Asset Store. You can see the full release notes here. The highlights of this release include two new abilities:

    Fly
    Fly.PNG

    Dive (Underwater Swim)
    Dive.PNG
     
    Hamesh81, Malbers and TonyLi like this.
  8. Astaelan1

    Astaelan1

    Joined:
    Sep 29, 2015
    Posts:
    192
    @opsive
    Just one word. Woot. :)
    I admit I thought the underwater swimming was already there, but now I know it is. One more notch in the belt for TPC.
    TPC is at the top of my list with Rewired when I move into the controller soon(ish), assets related to terrain building had to come first.
    For my own peace of mind, is the 2.0 release going to involve a price increase on TPC? Might have to budget it in a bit sooner if so.
     
    opsive likes this.
  9. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,126
    We have some thoughts on the business side of things for version 2 of TPC and UFPS but we haven't put the idea through the paces yet so I don't want to give anything away yet :) Right now nothing is definitive so I'd suggest picking it up when you need a character controller for your game - there's no rush yet as we will give plenty of notice for our plans.
     
    Astaelan1 likes this.
  10. MrIconic

    MrIconic

    Joined:
    Apr 5, 2013
    Posts:
    239
    If I run upstairs my character goes off it like a car going off a ramp.
    If I increased ground stickiness and the stars align my character will go flying.
    Running downstairs is twice as fast as running upstairs.

    :(
     
  11. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,126
    That's related to the Rigidbody velocity - if you change the friction material on the stairs you should be able to get the desired effect. This doesn't help immediately, but in version 2 we are no longer using the Rigidbody for movement so you won't have to worry about changing the friction material then.
     
  12. MrIconic

    MrIconic

    Joined:
    Apr 5, 2013
    Posts:
    239
    So basically wait until version 2. Got it. :)
     
    Malbers likes this.
  13. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,126
    Not using a Rigidbody does have its advantages, but in this case setting the physic material should work well :) If you don't want to set the physic material an ability could also be created which limits the velocity when the character is on a slope.
     
  14. Astaelan1

    Astaelan1

    Joined:
    Sep 29, 2015
    Posts:
    192
    Woo, talk about timing, I was just about to buy TPC yesterday and it went on sale today, nice one @opsive
     
  15. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,126
    I had nothing to do with it - thank everybody who had TPC on their wishlist :)
     
  16. Astaelan1

    Astaelan1

    Joined:
    Sep 29, 2015
    Posts:
    192
    Okay, thanks to them too. But thanks to you for making a product that is on everyone's wishlist :)
     
    opsive likes this.
  17. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    592
    Hello,

    I would need it for an RTS game. I saw in of your videos code fragments, where a lot of raycasts are involved, like checking balancing object under the character. That is absolutelly amazing, but if I have about 20-40 infantry units in an RTS game, then I would like to have a bit more optimized version. I guess the code can be optimized well for my purposes, but can it be used for an PC RTS game (because performance reasons)?

    Do you have a list of animations? I saw the RPG animation, that doesn't look good at all, at fireing a saw no recoil. But however, you have a lot of different animations, which could satisfy my needs for my RTS game.

    Optimal would be, one script which defines what to do in special situations, like jump over collider, swim, maybe hide at collider, with a very low number of raycasts (1-2) in a frame. A simple code based solution would be worth for me to by this asset. (I need it for this RTS: www.metadesc.com )
     
  18. RonnyDance

    RonnyDance

    Joined:
    Aug 17, 2015
    Posts:
    557
    @opsive
    Are you planning to add a VR support? I mean you are already supporting First Person Camera Controller but supporting VR fully would be really cool. So besides 3D (Third Person / First Person), 2.5D you also would support VR making VR experience great using your Controller.

    Btw the flight and swim animations look great. Really happy that you hold your word by adding new animations and features. I like where the Controller is going.

    Cheers
    Ronny
     
    opsive likes this.
  19. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,126
    When profiling the controller the thing that takes the most amount of time is Animator.Update. For an RTS game with a lot of units you'd want to create a culling system which would enable/disable the animator from updating to squeeze every ounce of performance. You could also use a similar concept with the abilities - do less physics calculations based on whether the character is within view.

    If you scroll in the file list on the Asset Store most of the animations are under the Third Person Controller/Demos/Shared/Animations folder. While the animations are getting better (in the latest version we replaced the walk/run animations with some of those that will be used for 2.0), the goal is to be a great character controller rather than an animation pack.
     
  20. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,126
    Yes - VR support will be coming with version 2 :) UFPS already supports the Rift so there's no way I'm taking a feature like that away in the next version. I have seen some games which have already added VR support to the Third Person Controller and they got it working well so I can't wait to play around with it.
     
  21. DigitalGrif

    DigitalGrif

    Joined:
    Feb 18, 2017
    Posts:
    4
    Hey Justin/Opsive I have been lurking around here and your website for awhile, and I remember a review or discussion where someone said you helped them get split screen co-op working with your TPC.

    I am probably going to buy you asset today anyway (SALE YAY!), but I was wondering if split screen was something you would be able to support on a new project? Thanks for your time!
     
  22. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,126
    Thanks for taking a look at the Third Person Controller!

    Split screen/coop is supported in the current version :) Each UI component has a field which allows you to specify the character that it corresponds to. For something like input I highly recommend Rewired as it has much better support for multiple players rather then Unity's Input Manager.
     
  23. DigitalGrif

    DigitalGrif

    Joined:
    Feb 18, 2017
    Posts:
    4
    I love your quick replies, part of the reason your asset is at the top of my list. Thank you! I will check out Rewired as an addition after I pick up your controller.

    I'm sure I will have more questions later, but I will take them to Opsive forums ;)
     
    opsive likes this.
  24. Astaelan1

    Astaelan1

    Joined:
    Sep 29, 2015
    Posts:
    192
    @opsive
    You brought up a good point, that TPC is a controller and not a pack of animations. Despite having a good starting point, this actually got me thinking about it a bit. I've purchased TPC, that wishlist sale dug into my pocket this month. So now I'm starting to think about some other stuff I have, like Kubold's Animset Pro. I haven't had a chance (hopefully this weekend) to dig in with TPC yet, but while I'm at work and daydreaming about it, I was wondering if it's easy to integrate our own animations into TPC to replace them? Does TPC use the unity animator stuff and make it easy to swap in our own animations and adjust transitions etc?
    Figure if it's pretty easy to snap them in, might as well make use of the animations I got some time ago (pretty good quality mocaps from Kubold).
     
  25. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,126
    Yes, you can switch the animations out like normal through the Animator Controller. The big thing is to make sure you also add any events to the animation that you are replacing. This page has a little overview of the process:

    http://www.opsive.com/assets/ThirdPersonController/documentation.php?id=111
     
  26. Astaelan1

    Astaelan1

    Joined:
    Sep 29, 2015
    Posts:
    192
    Ahh very good advice, I might have overlooked that. Yeah, at first I was thinking footstep events for audio, but there are some other specific cases mentioned on that page I'll keep an eye out for too.
    Thanks.
     
  27. AcePhilips85

    AcePhilips85

    Joined:
    Mar 18, 2016
    Posts:
    20
    This is excellent. I absolutely love this update. underwater swimming has cemented this as the best controller asset on the unity asset store. Are there any plans to incorporate an air system with the underwater swimming that affects the player health?
     
  28. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,126
    Awesome to hear!

    I've added it to the list :) I try to keep the controller as game-neutral as possible but since we provide a health component it could be extended onto that pretty easily.
     
    AcePhilips85 likes this.
  29. TeagansDad

    TeagansDad

    Joined:
    Nov 17, 2012
    Posts:
    957
    @Astaelan1 - Kubold's Movement Animset Pro and Female MAP both work very well with TPC. It's very easy to sub in the locomotion animations, but you'll likely want to tweak the animation speeds and the blend tree settings. Subbing the jumping animations is doable but trickier.

    His Sword Animset Pro also works very well with TPC; I'm sure that Sword & Shield does too but I haven't tried it with TPC yet. Mostly you're just directly substituting animations and making minor tweaks; I didn't have to do much in terms of adding animator states and transitions.
     
    opsive and Malbers like this.
  30. Astaelan1

    Astaelan1

    Joined:
    Sep 29, 2015
    Posts:
    192
    Thank you for the second confirmation. As opsive confirmed there was no black magic ontop of a normal animator controller I pretty much knew I could swap them out.
    And yeah, Kubold has some really nice animations, but I think I spent somewhere in the area of 80 hours just tweaking the transitions and variables on the controller to get a smooth but responsive movement basic movements... I went with the 90/10 rule where most of the time it looked good, never could get that last bit of ugly snapping out without having to force an animation to play out a bit longer which felt lagged.
    Tweaking is almost too subtle of a word to describe the effort it takes to mangle animations together nicely lol.
     
  31. TeagansDad

    TeagansDad

    Joined:
    Nov 17, 2012
    Posts:
    957
    @Astaelan1 - You're welcome! I know that I kind of said the same thing that Justin did, but I wanted to pipe in because I did set set up those exact animation packs that you were asking about a few months back.

    Some animation packs don't include the 45 degree and 135 degree strafing motions; these ones do, so you get much smoother transitions when going from forward/reverse movement to sideways.

    I remember that I also swapped out TPC's unarmed combat animations for the ones in Movement Animset Pro.

    If you own both MAP and Female MAP, one neat trick you can do is to add an animator float parameter called "Femininity" (valid ranges 0 to 1) and use that at the first level of your locomotion blend tree, which then splits off into MAP and FMAP blend trees. The motions in both packs are timed such that they are perfectly synchronized and blend together seamlessly. This lets you give characters a little more personality and distinctiveness in how they walk; male characters look good with the Femininity parameter between 0 and 0.15, and female characters look good with that parameter set between 0.80 and 1. The Female MAP animations perhaps have a bit too much hip sway, so this helps reduce that a little bit. The middle ground is good for when you want something really distinctive.
     
  32. Astaelan1

    Astaelan1

    Joined:
    Sep 29, 2015
    Posts:
    192
    @TeagansDad
    Hey, that's a neat idea. I do not currently own the female MAP, but that does make me consider it. I was just going to use the regular pack for both genders, but now I'm thinking twice :)
    And yes, the 45/135 angles are precisely what I was thinking about in switching the animations. "Tweaked" right, those animations are pretty much flawless, couldn't ask for more (except to do every possible locomotion ever! lol).
    I'll probably be picking up the rifle and pistol animsets for my purposes as well, and if TPC supports wall covers, possibly the cover animations as well if I can make them work with pistols, bows, and melee things as well without too much hassle... see https://www.assetstore.unity3d.com/en/#!/content/23360 for examples of the type of cover meant (I know TPC video shows one of the forms of cover).
     
  33. lezan_

    lezan_

    Joined:
    Nov 27, 2016
    Posts:
    50
    Hello,
    I am experience two problems and I cannot figure out how to solve it.
    The first one is about swim: I have attached a box collider to my waterplane and set as Layer Water, then I added Swim as ability to my char and check if Swim in exist on animator controller and all seems okay, but I cannot make him swim like in Clean Scene. What am I missing?
    The second one is about something that I do not know how to explain, so I make a video of it. It seems like something is in front of her, but there is nothing in Scene. This issue occur also in other place.

    Thanks for your support!
     
  34. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,126
    Make sure you add the Water component to your BoxCollider GameObject. Your BoxCollider should also be a trigger. This thread has some more troubleshooting ideas: http://opsive.com/forum/index.php/topic,3379.0.html

    It looks like at that instant the slope is too great. Try increasing the slope limit under the RigidbodyCharacterController.
     
    lezan_ likes this.
  35. RonnyDance

    RonnyDance

    Joined:
    Aug 17, 2015
    Posts:
    557
    Sure you don't need to take away an UFPS feature. Just wondering if your Controller will bring own VR Support with it so I can simple use it with RIFT / Vice in the future without investing in other assets. I mean a tutorial or documentation part which explains how to add VR support would be also fine for me ;)

    Also just to be sure: your controller already supports First Person Camera isn't? Just asking because I did not find any demo in first person on your site. Or will you also add First Person Camera in V2.0?

    Cheers
    Ronny
     
  36. Astaelan1

    Astaelan1

    Joined:
    Sep 29, 2015
    Posts:
    192
    I asked the same question not that long ago. With the aquisition of uFPS, both products will remain independent. However, with 2.0 there will be features from both added to each other (an example was adding footsteps that uFPS has to TPC).
    And the final piece, will be having the two work together seamlessly through integrations if you have both. Which is to say yes you'll have easy switching, but you'll need to purchase both to have both perspectives. Currently TPC does not have a first person mode.

    Of course, if opsive comes in and says otherwise, then something may have changed :)
     
  37. RonnyDance

    RonnyDance

    Joined:
    Aug 17, 2015
    Posts:
    557
    Thanks a lot Astalean1 for your response. That's good to know because I was searching for a "MMO" Typical Camera where you can simple Zoom from Third Person to First Person camera, just by using Mouse Wheel Scrolling or pressing a Button. Lot of controllers offer that so I simply thought that Opsive TPC does it also. But well I always forget that UFPS is also created by the same guys.

    Cheers
    Ronny
     
  38. Astaelan1

    Astaelan1

    Joined:
    Sep 29, 2015
    Posts:
    192
    Well, actually... until fairly recently, uFPS was made by someone else.
    Opsive purchased it from the original author though, and now owns the 2 top ranked controllers. And your exact situation is one of the many reasons for the logical step of integrating the two together with exceptional integrations being in control of both products.
    So of course, having had to purchase uFPS (I'm sure it wasn't free), Opsive should recover his costs and continue to sell it as a separate product. And not everyone needs both controllers, but for those like you and myself who would like that option of zooming straight into first person mode, this is something we can expect to see (or some similar tight integration) between uFPS and TPC probably starting with the 2.0 releases as I understand it.

    Edit: I wanted to add that I looked at a lot of the controllers out there, and I think I only ran into one that already had both First Person and Third Person in one package. And there were a lot of reasons not to choose it that brought me back to TPC and waiting for uFPS integrations instead.
     
  39. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,126
    @Astaelan1 is spot on. We acquired UFPS at the start of last year and started a few months ago to really start to ramp up the UFPS integration with TPC. This integration will lead to a new version, 2.0, because I started a completely fresh project for it and am taking the best parts of UFPS and TPC and joining them into one. The core framework structure is in place and working really well, and I'm slowly working on adding new "higher" level features such as weapons and the ability system. Due to the recent Wishlist Sale I had to step back from 2.0 dev for a bit to prep our assets for this sale, but yesterday I was back to v2 fulltime. I've been tweeting small updates here if you want to follow along - so far it has mostly been locomotion/view stuff.
     
    TeagansDad and Astaelan1 like this.
  40. lezan_

    lezan_

    Joined:
    Nov 27, 2016
    Posts:
    50
    I add a Box Collider component to waterplane and check Is trigger. I also put Swim ability on top of the list. I set waterplane to Water level. I also play with Swim depth value, but I cannot Swim work.
    Can I make something else?

    Playing with it do the trick.

    Thanks for your support!
     
  41. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,126
    Does the swim ability try to start? If you place a breakpoint/debug statement within Water.OnTriggerEnter does it get to the line:

    Code (csharp):
    1.  
    2. controller.TryStartAbility(swimAbility);
    3.  
     
    lezan_ likes this.
  42. lezan_

    lezan_

    Joined:
    Nov 27, 2016
    Posts:
    50
    Nope, seems this line is not run.
    There is some kind of problem with the trigger.

    EDIT: checking in debug bode I can see that
    Code (csharp):
    1.  
    2. if (controller != null)
    3.  
    fails, because controller is null.
     
    Last edited: Mar 2, 2017
  43. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,126
    It doesn't sound like OnTriggerEnter is being called for your character. Any object that intersects with the trigger will cause that callback to fire so that's why the controller null check is there. Is your trigger setup similar to the clean scene? It should be a BoxCollider on the top of the water:

    water.PNG
     
    lezan_ likes this.
  44. lezan_

    lezan_

    Joined:
    Nov 27, 2016
    Posts:
    50
    I have something like that
     

    Attached Files:

    • TPC.jpg
      TPC.jpg
      File size:
      37.1 KB
      Views:
      780
    • TPC2.jpg
      TPC2.jpg
      File size:
      150.3 KB
      Views:
      703
  45. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,126
    Can you send me your project to support@opsive.com? Based on those screenshots I can't see any reason why the trigger wouldn't be called on your character.
     
    lezan_ likes this.
  46. lezan_

    lezan_

    Joined:
    Nov 27, 2016
    Posts:
    50
    What can I send you? Because the whole project is too much. Charcter, terrain and water?

    Meanwhile, maybe it can be useful: I am play with debuger and with Water.cs;
    Code (csharp):
    1. var controller = other.GetComponent<RigidbodyCharacterController>();
    • is null when char collide with water.
    • with Clean scene controller value is Opsive.ThirdPersonController.Wrappers.RigidbodyCharacterController.
    Thanks for your support!

    EDIT: I take from Clean scene pool and water and add them to my scene and swim system work.

    EDIT 2: okay, make a new Game Object child of Water plane and add to it Box Collider and Water script change something (see image in attachment). Now I just need to play swim animation.

    EDIT 3: If I jump on water animation work, if I walk in does not work. In both case TryToStartAbility is been executed.
     

    Attached Files:

    Last edited: Mar 3, 2017
  47. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,126
    Glad you are making progress!

    Check your depth offset on the swim ability - this value indicates how deep the water should be before the character actually starts to swim.
     
    lezan_ likes this.
  48. lezan_

    lezan_

    Joined:
    Nov 27, 2016
    Posts:
    50
    This is not the problem, because with the same depth offset I can swim if I jump in, but I walk in I cannot swim (on the ability list Swim is Active, but I am walking as on Terrain). I put Swim on top of list, with max prorietis. It seems that Swim cannot interrupt walk and run animations.

    Thanks for your support!
     
  49. opsive

    opsive

    Joined:
    Mar 15, 2010
    Posts:
    5,126
    I think that I'll need to see the project in order to help solve it. If you can send me the smallest repro project that you can create that would be great.
     
    lezan_ likes this.
  50. Astaelan1

    Astaelan1

    Joined:
    Sep 29, 2015
    Posts:
    192
    @lezan_
    Just spitballing here, but it sounds like the trigger is being entered, but the character is stuck in the walking animation until jumping promotes recognition of being in water. Until then the trigger is being entered, but the character is not transitioning from walk to swim.

    @opsive
    So is there a scenario that exists where Swim can be active, but not animating the swim, possibly due to being latched to the ground for falling checks or the like?

    I'm going to have some time this weekend to get TPC into my project, I'll see if I get the same results. I am also integrating with Aquas but that shouldn't have any real impact here.
     
    lezan_ likes this.
Thread Status:
Not open for further replies.