Search Unity

  1. Calling all beginners! Join the FPS Beginners Mods Challenge until December 13.
    Dismiss Notice
  2. It's Cyber Week at the Asset Store!
    Dismiss Notice

New Standard Asset Characters - Third Person

Discussion in 'Editor & General Support' started by willgoldstone, Apr 13, 2018.

  1. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    4,645
    Weren't just talking about mecanim's little brother kinematica? Ie motion matching with ML?
     
  2. transat

    transat

    Joined:
    May 5, 2018
    Posts:
    280
    No. They demo'd a multiplayer game with the controller. Not Kinematica. But you know better than to wait for Unity's motion matching solution @neoshaman ! Try this absolutely awesome asset instead: MXM motion-matching-for-unity . That's the asset I've been integrating with this beta SAC controller. Working well so far but I'm worried Unity will pull the rug out from under me by ditching this controller or breaking things some other way. I'd love to avoid using 2019.3 & URP but as I'm a solo developer not working to a deadline, I don't want to be in a situation where all the work I've done is rendered useless via deprecation.
     
  3. lukekazoo

    lukekazoo

    Joined:
    Jan 19, 2014
    Posts:
    31
    Code (CSharp):
    1. /// Note: The capsule is always upright. It ignores rotation.
    This is not cool, it's a big limitation of the old character controller. Being able to rotate it is an important feature to implement mechanics like the physics in Super Mario Galaxy, where the gravity and player rotation changes depending on the planet/platform shape. Other example is any Sonic game, where you're able to follow the ground normal and run through loops with full 360º character rotation. It's true that I still able to code my own controller for those situations, but if you guys pretend to implement a better solution for the older character controller, then make it really better! The capsule being always upright is an awful limitation.

    Here you can see a kinematic character controller that is able to match it's rotation to the surface normal:

     
    TheValar likes this.
  4. joostbos

    joostbos

    Joined:
    Feb 4, 2015
    Posts:
    35
    After struggling with the old 3rd person character controller I found this thread and the new SAC. Looks great! It solved my problem of having the character step at a target every time.

    But.... after I tried this in a separate project I decided to copy it to my own project. Got compile errors because Cinemachine and InputSystem were not installed. Installed Cinemachine and then InputSystem (I think I chose the same version as in the Github project, version 1.0.0 preview, not the preview.1 version). Then I got a message about upgrading native backend, which required a restart of the editor. Clicked yes and the editor closed.

    And then my project won't open anymore. Unity 2019.2.6 start, I get a message Compiling Assembly Definition Files scripts and then the editor crashes.
    I tried restarting the editor and then restarting the PC, no effect. Tried removing the inputsystem line from the manifest.json in the Packages folder, but that also made no difference.
    Decided to go all the way back and delete the _StandardAssets folder and the cinemachine line ffrom the manifest. Now I could open the project again, thankfully.

    Tried to do it in a different order, first import Cinemachine, but already at that step the editor crashed again. After I removed the cinemachine line again from the manifest and reopened the project it started recompiling pretty much everything!

    Please help. How can I include this new SAC in my own project?
     
  5. transat

    transat

    Joined:
    May 5, 2018
    Posts:
    280
    @joostbos It's promising but you should know that Unity doesn't consider this package to be ready for "preview" status and at the same time there have been no commits on GitHub in a month (and very few before that). But report your issues in GitHub anyway and see how you go. Otherwise... consider a more feature complete third party solution, one that is regularly being updated. This one we've been told is only intended for prototyping and hence shouldn't see basic features like swimming or climbing added anytime in the foreseeable future. Saying this with some degree of regret.
     
  6. joostbos

    joostbos

    Joined:
    Feb 4, 2015
    Posts:
    35
    @transat Thanks. Yes, I noticed that this seems to be dying out, unfortunately. I'll report the issue anyway.

    And I was able to fix my problem with the old character controller. The reason it was not consistent was because it was messing with rigidbody verlocity. When I changed that to simply move the object using its transform the character steps at the same spot every time.
     
  7. tonialatalo

    tonialatalo

    Joined:
    Apr 23, 2015
    Posts:
    21
    I may have encountered the same on Windows now, on 2019.2.8 with Input System 1.0.0 preview 2. Had to switch from Both to only use the new system, and input to FPS controller from this project started working.
     
  8. tonialatalo

    tonialatalo

    Joined:
    Apr 23, 2015
    Posts:
    21
    How should I modify the keyboard input bindings?

    I would like to add the arrow keys to work for FPS control, in addition to WASD.

    I read CharacterInput : MonoBehaviour, StandardControls.IMovementActions and saw how it says m_StandardControls = new StandardControls();

    StandardControls.cs says:

    // GENERATED AUTOMATICALLY FROM 'Assets/_Standard Assets/Characters/Scriptable Objects/Control Map/StandardControls.inputactions'

    But that file does not exist.

    I tried to modify the JSON there directly, but changes there did not have any effect. So am left clueless so far.
     
  9. willgoldstone

    willgoldstone

    Unity Technologies

    Joined:
    Oct 2, 2006
    Posts:
    733
    Hey everyone sorry for radio silence! So we've finally found a proper home for this project with the Education Content team based in the UK - who are planning to take it more in-house. I'll be passing comms over to their team to tell you more about where the project is going and updates to what we have so far. I'm hopeful they can share some updates with you next week about where they plan to take it.
     
  10. transat

    transat

    Joined:
    May 5, 2018
    Posts:
    280
    @willgoldstone I'm not sure if I should be happy or pissed off about this. Unity is like the Trump of tech... you desensitise your users through repeated mismanagement! So when a new flop happens, what used to be frustration now becomes "oh, this is just Unity being Unity." :)

    Question for you: does this asset relate to the announcement made at the last Unite about an exciting new character controller with lots of bells and whistles that would be made available soon? ie. Is this it? Surely not, as this asset has gotten 2 commits in the past 6 months! Can you then confirm that there is another character controller in the pipeline, one that will indeed be released soon? I'd appreciate an honest answer here because I feel I've been taken for enough of a ride this time.
     
    Karasu416 likes this.
  11. filod

    filod

    Joined:
    Oct 3, 2015
    Posts:
    60
    let me make a guess, "exciting new character controller" would be the upgrade/animated version of DOTS-sample's use case ;), but i doubt it's versatile and stable
     
  12. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    4,645
    We should crowd source one like the UMA group
     
    transat likes this.
  13. transat

    transat

    Joined:
    May 5, 2018
    Posts:
    280
    Though I'm looking at GKC now and the developer is so responsive to feedback I'd say it's virtually crowd sourced.
     
  14. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    4,645
    it's also way beyond a simple character controller
     
  15. dave24BG

    dave24BG

    Joined:
    Jun 12, 2018
    Posts:
    9
    Hi there

    If you are looking to add or modify bindings for actions, you wont need to edit any JSON manually.

    Find the 'StandardControls' InputAction asset in your project view, and double click it. The Input Action window will open, and you can simply add or change the bindings for a given action.

    So, open the Input Action asset, next to the move Action, click the + button, select "Add 2D Vector Composite", a new field will appear under the move action, it will look like the existing WASD binding. Now, you can just add key bindings for the Up, Down, Left and Right parts of the 2D composite vector.

    Hope that helps, for more on this, see the New Input System Docs. https://docs.unity3d.com/Packages/c...ActionAssets.html#editing-input-action-assets
     
  16. transat

    transat

    Joined:
    May 5, 2018
    Posts:
    280
    @willgoldstone Are we due to hear from the Education Team? Or is it back to radio silence?