Search Unity

Official Say hello to the new Starter Asset packages

Discussion in 'Assets and Asset Store' started by UnityHas, Jun 9, 2021.

  1. darashayda

    darashayda

    Joined:
    Jun 27, 2020
    Posts:
    442
    Installed on 2022 Editor worked great! Some issues with installation but kludged the code a bit and Step Audio SFX was terrific, though I found the actual audio not that appealing.

    Nonetheless much appreciated.

    Dara
     
    Last edited: Apr 23, 2022
  2. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    445

    Hello Emma,

    thank you for the update and the fixes.
    While many things improved, one thing that i found disimproved: The "PackageChecker".
    Previously it was possible to edit a JSON file to include additional packages like for example "com.unity.postprocessing" to the PackageChecker.
    Doing so in the PackageCheckerSettings.json file now however won't install the specified packages.
    Instead it only installs the two main packages "Cinemachine" and "Input System".
    I guess this is not the expected behaviour and therefore a bug.
    While the PackageChecker previously was a C# file, now it is a DLL which makes things additionally worse to debug and fix in my opinion.

    Here is the PackageCheckerSettings.json that I tried to use:

    Code (JavaScript):
    1. {
    2.     "EditorFolderRoot": "Assets/_HoaxGames/iStep_Demo_BuildIn/StarterAssets_Subset/Editor/",
    3.     "PackagesToAdd": [
    4.         "com.unity.cinemachine",
    5.         "com.unity.inputsystem",
    6.         "com.unity.postprocessing"
    7.     ]
    8. }
    Maybe the issue is on my side, I don't know, however it would be very nice if someone could have a look at it.

    Best regards,
    Kreshi
     
  3. Nostromos

    Nostromos

    Joined:
    Nov 30, 2019
    Posts:
    22
    Hey there just updated and imported the latest/greatest first person starter assets and I'm getting compile errors - anybody seen this or know a decent fix? Thanks! Unity Version 2021.3.0f1

    Assets\StarterAssets\Editor\FirstPersonStarterAssetsDeployMenu.cs(26,68): error CS1503: Argument 3: cannot convert from 'System.Type[]' to 'Type[]'

    Assets\StarterAssets\Editor\FirstPersonStarterAssetsDeployMenu.cs(49,64): error CS1503: Argument 3: cannot convert from 'System.Type[]' to 'Type[]'

    Assets\StarterAssets\Editor\StarterAssetsDeployMenu.cs(51,95): error CS1503: Argument 3: cannot convert from 'System.Type[]' to 'Type[]'

    Assets\StarterAssets\Editor\StarterAssetsDeployMenu.cs(87,83): error CS1503: Argument 3: cannot convert from 'System.Type[]' to 'Type[]'

    Assets\StarterAssets\Editor\StarterAssetsDeployMenu.cs(133,59): error CS1503: Argument 1: cannot convert from 'Type' to 'System.Type'
     
  4. altepTest

    altepTest

    Joined:
    Jul 5, 2012
    Posts:
    1,115
    maybe you don't have all the required packages. if I recall if you say no to additional packages or maybe there is some option disabled in the settings. normally untiy should install the dependencies automatically but if not you get these strange errors.

    probably the new input package is missing or is out of date
     
  5. Nostromos

    Nostromos

    Joined:
    Nov 30, 2019
    Posts:
    22
    I tested this on a brand new install/project and it worked. But for existing projects that you are trying to upgrade it seems broken. Anybody else seen this issue or just me and I need to start my project from scratch to get this to work? Thanks!
     
  6. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    445
    Try to delete the Starter Assets Editor subfolder, then reimport the newest Starter Assets version again so that you get a clean Editor folder back. This may solve your problem .
     
  7. darashayda

    darashayda

    Joined:
    Jun 27, 2020
    Posts:
    442
  8. Nostromos

    Nostromos

    Joined:
    Nov 30, 2019
    Posts:
    22
    Thanks Kreshi, tried that and its still busted. Interesting there must be some sort of interop (w/ input system) upgrade bug that Unity missed during testing.
     
    Last edited: Apr 26, 2022
  9. bronsonzgeb

    bronsonzgeb

    Unity Technologies

    Joined:
    Aug 10, 2020
    Posts:
    101
    The fact that the JSON settings file doesn't work is certainly a bug, we'll look into it.

    The reason we decided to compile it to a DLL is because now if the project fails to compile (due to a missing package for example) then the package checker can still run and potentially fix the issue. I'm not sure if there's a way to get the best of both worlds, but I'm open to suggestions.
     
  10. bronsonzgeb

    bronsonzgeb

    Unity Technologies

    Joined:
    Aug 10, 2020
    Posts:
    101
    What OS and compiler or IDE are you using? This feels like a dotnet issue to me..

    As a workaround I would try changing StarterAssetsDeployMenu.cs line 114 from
    Code (CSharp):
    1.         private static bool TryLocatePrefab(string name, string[] inFolders, Type[] requiredComponentTypes, out GameObject prefab, out string path)
    2.  
    to
    Code (CSharp):
    1.         private static bool TryLocatePrefab(string name, string[] inFolders, System.Type[] requiredComponentTypes, out GameObject prefab, out string path)
    2.  
    That is, specifying that the requiredComponentTypes argument is a System.Type[]. Is it possible there's another class called Type defined in your project?
     
  11. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    445
    I understand, makes sense :).
    Could an Assembly Definition file potentially do the trick as well or would it fail in the specified case?
     
    Last edited: Apr 26, 2022
  12. MagendanzC

    MagendanzC

    Joined:
    Jun 11, 2021
    Posts:
    3
    When creating a new project on 2021.3.1f1 LTS or 2020.3.33f1 LTS with the Third Person (Core) template, I get the following console error immediately after switching the platform to Android in Build Settings:

    Assets\Scripts\ThirdPersonController.cs(85,11): error CS0246: The type or namespace name 'PlayerInput' could not be found (are you missing a using directive or an assembly reference?)

    This blocks building or even testing in the IDE, but all worked prior to upgrading to v1.1 of the Starter Assets. Any suggested workarounds? (I'm a teacher, and so have a classroom of Mobile Game Development students in limbo until I can get this working again.)

    UPDATE: It seems that I can successfully switch to the Android platform if I create a blank 3D project and then import the Starter Assets - Third Person Character Controller (v1.1) using Package Manager. For now we'll just avoid using the new project template.
     
    Last edited: Apr 27, 2022
  13. bronsonzgeb

    bronsonzgeb

    Unity Technologies

    Joined:
    Aug 10, 2020
    Posts:
    101
    As far as I can tell it also fails because the asmdefs are compiled after the pre-defined assemblies, which includes your project's assemblies. I fixed the bug in question and I can share the source here since it'll take some time to get through release management and find its way into the package. You could use the source to replace the DLL if you prefer, either by compiling your own DLL or just swapping the DLL file for the CS file.
     
    Kreshi likes this.
  14. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    445
    Thank you for providing such a quick solution :)
     
  15. teli-unity

    teli-unity

    Joined:
    Apr 6, 2017
    Posts:
    10
    Finally, I found the root of the issue. This is another change from your playground scene which is actually affecting my case, as I need to rotate around my camera in First Person Controller settings/view.

    REASON: I'm using `Aim` to `POV` in `PlayerFollowCamera` [Screenshot]
    QUESTION: How I can make `Aim` to `Do nothing` in `PlayerFollowCamera` programmatically??? This will solve my issue in the case of mobile devices found after testing

    As in my case, I'm building WebGL build, so I need to rotate around using the mouse on desktop browsers and use touch on touch devices.

    So rotate around on desktop browsers is working fine with a mouse, but on touch devices, full-screen acts as rotate around too with the right joystick. While I want to disable only fullscreen rotation on touch devices, as both (left and right for movement and rotate around respectively) joysticks doing that part fine.

    Also, I updated the plugin to the latest version, still facing the issue.

    Any help?
     
    Last edited: Apr 29, 2022
  16. jumana_515

    jumana_515

    Joined:
    Mar 21, 2022
    Posts:
    1
    I would like to ask how to use both Unity Engine.Input class with third person controller package input system, I got this error (
    InvalidOperationException: You are trying to read Input using the UnityEngine.Input class, but you have switched active Input handling to Input System package in Player Settings.
    PickUpKey.Update () (at Assets/script/PickUpKey.cs:47)
    )
    I want to use both but how
     
  17. Nostromos

    Nostromos

    Joined:
    Nov 30, 2019
    Posts:
    22
    Thanks so MUCH this did the trick!!!!! Do you think this is a visual studio code IDE issue?
    Using Windows 10 with Visual Studio Code as my IDE/Compiler.
     
    Last edited: Apr 28, 2022
  18. enursha13drs

    enursha13drs

    Joined:
    Apr 2, 2020
    Posts:
    2
    Would you be willing to do a speed tut on how you did that by any chance, I personally understand what you did, I'd just like to see how you managed that, I've been trying to get the same results : /
     
  19. bronsonzgeb

    bronsonzgeb

    Unity Technologies

    Joined:
    Aug 10, 2020
    Posts:
    101
    It's possible, but it's hard for me to say without digging into your computer. It's helpful feedback for us moving forward though :)
     
  20. bronsonzgeb

    bronsonzgeb

    Unity Technologies

    Joined:
    Aug 10, 2020
    Posts:
    101
    Under Player Settings > Other Settings > Configuration > Active Input Handling you can select "Both" as an option. upload_2022-5-2_8-55-34.png
     
  21. Reanimate_L

    Reanimate_L

    Joined:
    Oct 10, 2009
    Posts:
    2,788
    @bronsonzgeb out of curiosity, are you guys still developing this assets? or it will be upgraded with gigaya controller?
     
  22. bronsonzgeb

    bronsonzgeb

    Unity Technologies

    Joined:
    Aug 10, 2020
    Posts:
    101
    Right now we're committed to maintenance and support between Unity LTS versions. Most of the folks that built these assets are currently building Gigaya.

    This controller was designed to be a lightweight starting point for users to prototype with and build into their own custom controller alongside their game. I consider it a generic starting point upon which you could build many different types of controllers. The Gigaya controller is heavier and more fully featured. It's the Starter Assets Third Person Controller taken to the finish line for a certain kind of game. I think both assets provide value in their own way. We may pull some features from the Gigaya controller into the Starter Assets controller if they're generic enough to work for all types of controllers, or maybe the Gigaya controller will be released as a separate asset. These questions are actively being discussed so I can't give a definitive answer.
     
    PutridEx and Reanimate_L like this.
  23. teli-unity

    teli-unity

    Joined:
    Apr 6, 2017
    Posts:
    10
    @bronsonzgeb any help on this?
     
  24. bronsonzgeb

    bronsonzgeb

    Unity Technologies

    Joined:
    Aug 10, 2020
    Posts:
    101
    Oops sorry! Thanks for poking me again I missed it the first time.

    To set it to "Do nothing" programatically you get a reference to the CinemachineVirtualCamera, then get the POV component and destroy it. Something along these lines:
    Code (CSharp):
    1. var cinemachineVirtualCamera = FindObjectOfType<CinemachineVirtualCamera>();
    2. Destroy(cinemachineVirtualCamera.GetCinemachineComponent<CinemachinePOV>());
    Does that solve the issue?
     
  25. teli-unity

    teli-unity

    Joined:
    Apr 6, 2017
    Posts:
    10
    It's ok, no prblem.

    Thanks a lot! :) Haven't thought it would be so easy, as it didn't seem like a (usual) component. o_O

    I was trying something like this (which also worked, but wasn't good, as if it is not needed, should be removed)
    Code (CSharp):
    1. cinemachineVirtualCamera.GetCinemachineComponent<CinemachinePOV>().enabled = false;
     
    bronsonzgeb likes this.
  26. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    445
    Check out the image below it shows you how to increase the sensitivity of your camera controls :);).

     
    Last edited by a moderator: Dec 12, 2022
  27. darashayda

    darashayda

    Joined:
    Jun 27, 2020
    Posts:
    442
    @Gnel87

    Please kindly do not use foul language, and I am not a moderator nor related in any ways to Unity nor have any authority, but my kids are here reading these posts and I wanted them to walk away with great impression from you and other posters and Unity itself.

    I do share much frustration with some Unity assets but this place is public and very young kids are roaming around and we like to keep here feeling safe and welcoming for all.

    I did not mean to lecture you but my kids are worthy of all considerations as are yours.

    Dara
     
    Last edited: May 6, 2022
    Kreshi likes this.
  28. PutridEx

    PutridEx

    Joined:
    Feb 3, 2021
    Posts:
    1,136
    @bronsonzgeb - There's severe ghosting for the third character controller in HDRP when using TAA (somewhat a must in HDRP) -- Especially evident when moving the mouse camera. To reproduce place the nested armature third person prefab, upgrade mats from built-in to HDRP, and move the mouse without moving the character. And you need to have something in the background, could do terrain with textures. Make sure camera has TAA active

    Maybe there's a motion vector issue within the character causing this.


    The video is with base blend lowered to minimum, otherwise the ghosting is a lot worse
    speed rejection helps, but the main issue is still there

    - So far the asset has been quite helpful, great work :)
     
    Last edited: May 9, 2022
  29. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    445
    I think this is related to the post-processing algorithms of HDRP.
     
  30. true_warlock

    true_warlock

    Joined:
    Aug 2, 2019
    Posts:
    60
    Several reasons why I don't like this setup. No alternative Rgidbody character, only Character Controller. Can't actually alter anything to make it walk/run/jump backwards. Always turns around like every other annoying "character controller" system. No ability to change it without breaking a bunch of other things if you want to use mouse to rotate and WASD/Arrows to do the other basic motions and constantly having to use the escape button to select something else. Tried to make it so mouse handles rotation using any mouse button so as to get around this annoyance breaks everything. Trying to add any other inputs is worse, especially when it comes to other functions like triggering something like climb or whatever. Keeping the camera behind player and trying to add ability to zoom into first sand third person views using scroll wheel. It sucks when trying to set up one object for sliding and another not sliding or trying to get audio to change for footsteps on different surfaces. For a "basic" asset its got a lot of issues trying to customize.
     
  31. darashayda

    darashayda

    Joined:
    Jun 27, 2020
    Posts:
    442
    @true_warlock I agree with almost all of what you wrote and experienced most of them. However I removed the Unity's Body/bones and replaced it with a new ones and was able to 100% customize the character. I do not know how to do that programmatically but will find out soon. I also learned how to manipulate the Cinemachine's cameras programmatically and was not a pleasant experience and still lacks much APIs but worth every trouble!

    However when I worked with other non-Unity controllers from Asset Store, while they allowed considerable customizations, mostly required Editor interface and human labour which are not applicable for our cloud customizations.

    As a recent comer to Unity, I suggest to stay with Unity Character Controllers and Cinemachine and attempt to adapt/integrate the other characters and controllers into the framework controller of Unity's. While I did that with huge amounts of pain... still is the best longterm strategy.

    After reviewing many non-Unity controllers, with exception of Hoax Games' radically new approach, I continue to adapt and integrate with Unity controllers.

    One last item not many people consider: The fact that we can incorporate the Unity controller with Old and New Input System (on screen touch and buttons) and Cinemachine's many cinematic cameras freely offered, the Unity controller is an attractive option for hardcore new R&D. Many non-native controllers due to bad software engineering only work with Old Input System and their own cameras.

    I do not benefit a penny from writing these and no one should read them more than just programming experiences of yet another person in this forum.

    Dara


    Disclaimer: None of the presented materials by any stretch of imagination were meant to Advertise nor Spam any Unity organization. Nor meant to solicit business from anyone at Unity nor its customer base. Materials are solely meant for non-commercial Work-In-Progress presentation.
     
    Last edited: May 10, 2022
    true_warlock likes this.
  32. EmmaUnity

    EmmaUnity

    Unity Technologies

    Joined:
    Jan 30, 2020
    Posts:
    15
    Hello!
    We just released a small patch to the 1.1 version (now version 1.1.1) based on some of the conversation here in the forum, and other minor bug fixes.

    This is the changelog for the patch:

    First person controller
    • Removed camera damping
    • Removed camera shoulder offset
    Deploy Menu
    • Fixed a naming collision that happened for some users with the Type type
    Package Checker
    • Fixed the package checker so it will read the settings file correctly if it's present in the project
     
    Kreshi likes this.
  33. darashayda

    darashayda

    Joined:
    Jun 27, 2020
    Posts:
    442
    Thank you, I will test today, it means a lot and much obliged to apply.



    Disclaimer: None of the presented materials by any stretch of imagination were meant to Advertise nor Spam any Unity organization. Nor meant to solicit business from anyone at Unity nor its customer base. Materials are solely meant for non-commercial Work-In-Progress presentation.
     
    Last edited: May 10, 2022
  34. bronsonzgeb

    bronsonzgeb

    Unity Technologies

    Joined:
    Aug 10, 2020
    Posts:
    101
    Thanks @Kreshi! I also suspect that's the case @PutridEx, but I'll investigate if there's anything related to Starter Assets that might be making it exceptionally bad.
     
  35. andersonta73

    andersonta73

    Joined:
    Aug 3, 2020
    Posts:
    3
    How can I use Oculus controllers to move the third party character
     
  36. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    445
    I guess you have to install the Oculus SDK for Unity and implement your own custom control scheme. Maybe my knowledge is out of date since I haven't touched VR for a long time. However it would surprise me if there is a shortcut for implementing custom VR-controls.
     
  37. kjleo

    kjleo

    Joined:
    May 12, 2022
    Posts:
    3
    What do I have to do to make the navigation work with this resource pack, by that I mean that the navigation allows the character to walk on its own.
     
  38. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    445
    Do you mean Unitys NavMesh and NavMeshAgent?
     
  39. M_Blackfur

    M_Blackfur

    Joined:
    May 12, 2022
    Posts:
    1
    I'm still a bit new to unity, but I decided to learn about first person games.

    When I imported the Asset into Unity 2019.4.31f1, I got an error for FirstPersonController.cs, stating that: 'PlayerInput' does not contain a definition for 'currentControlScheme' and no accessible extension method 'currentControlScheme' accepting a first argument of type 'PlayerInput' could be found.
     
  40. kjleo

    kjleo

    Joined:
    May 12, 2022
    Posts:
    3
    Yes, I don't understand much about unity, so is there any way I can do this, thanks.
     
  41. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    445
    darashayda likes this.
  42. darashayda

    darashayda

    Joined:
    Jun 27, 2020
    Posts:
    442
    These links work at even high frame rates (30+ fps) with Unity Character controller.

    I did not find any serious show-stopper bugs in either AI NAV or Unity Character Controller. However AI NAV's performance on Android is inferior to the iOS and inferior to desktops but that is expected.

    Mind you we work exclusively with 2022 this year and mostly new Input System and no show-stoppers in either so far. However earlier versions of the Editor were messy!

    Disclaimer: None of the presented materials by any stretch of imagination were meant to Advertise nor Spam any Unity organization. Nor meant to solicit business from anyone at Unity nor its customer base. Materials are solely meant for non-commercial Work-In-Progress presentation.
     
    Last edited: May 13, 2022
  43. kjleo

    kjleo

    Joined:
    May 12, 2022
    Posts:
    3
  44. bronsonzgeb

    bronsonzgeb

    Unity Technologies

    Joined:
    Aug 10, 2020
    Posts:
    101
    I can't recreate the error, is there any chance you could share the project with me? Or tell me what steps you took? Also what OS are you using?
     
  45. Creiz

    Creiz

    Joined:
    Jun 6, 2017
    Posts:
    130
    Why am I the only one who is having problems with the Camera movement and this?

    No matter what I do, be it via mouse move or the right joystick button, the camera keeps still. How do I fix this? DISREGARD. The solution was to go into your virtual camera
    (PlayerFollowCamera) and make sure both LookAt and Follow are set to PlayerCameraRoot gameobject.


    Also? I'm also having a bunch of "Method 'UnityEngine.EventSystems.EventTrigger.OnMove' not found." but the character actually moves correctly. What gives?

    Thanks in advance, guys.
     
    Last edited: May 21, 2022
  46. Sephirdorf

    Sephirdorf

    Joined:
    Jan 12, 2018
    Posts:
    1
    Hello, in the first person controller I enter the yellow tunnel and jump. This causes the character to be stuck in the ceiling. Only by walking out of the tunnel does the character then continuee the jump, then lands. Have noticed if I raise the height of the tunnel a bit then this no longer occurs.
    Would you happen to know why this is happening here and if a resolution will come about in an update? Thank you.
     
  47. Amentag

    Amentag

    Joined:
    Mar 8, 2020
    Posts:
    3
    Hello.

    Thank you very much to provide us this asset.

    Iam struggling from several days now to correctly configure the starter assets in order to setup a typical camera and character contoller like the one available on games like Call Of Duty Mobile, PUBG Mobile or Free Fire:

    My objective is to setup a:
    - 3rd person mobile controller
    - BUT with a camera that follows the character left and right rotations (the camera must always be behind the player)
    - AND with a camera that can be rotates up and down using the touch zone

    I have the feeling that i have almost succedded with the following configuation:
    unity_forum_1.png unity_forum_2.png

    BUT:
    - i dont understand why when i move the player using the left joystick the camera also rotates up and down (the camera rotates on the X axis)
    - i cant achieve to get the camera being always behind the player. it seems that whit this configuration i cant control the camera rotations through the code on the CameraRotation() method.

    Could you help me please?

    EDIT : I managed to solve some of my problems using the adapation of the FPS view to the TPS one available here:
    https://forum.unity.com/threads/say...er-asset-packages.1123051/page-4#post-7545358

    Thanks.
     
    Last edited: May 27, 2022
  48. criesinpoland

    criesinpoland

    Joined:
    Apr 2, 2022
    Posts:
    1
    Hi people!

    I was working on a project and i needed a third person controller so i downloaded this one.

    When I imported it, Unity showed me this error

    Library\PackageCache\com.unity.cinemachine@2.6.14\Runtime\Helpers\CinemachineInputProvider.cs(88,45): error CS0103: The name 'GetFirstMatch' does not exist in the current context

    Does anyone know how to fix it? :(((
     
  49. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    445
    There are two options you can try:

    1) Tools -> Starter Assets -> Reinstall Dependencies

    If this doesn't do the job, try to install the Cinemachine package manually:

    2) Window -> Package Manager. Set "Packages:" to "Unity Registry" on the top left corner. Scroll down until you find "Cinemachine" and download/install/update Cinemachine (button is on the bottom right corner).


    EDIT: I managed to reproduce the error.
    You actually have to open the Package Manager like described in 2) then you have to expand Cinemachines menu entry, select the newest version from the sublist and install/update to the newest version.

    EDIT 2: Actually this is a critical bug involving incompatibility issues of Cinemachine 2.6.14 and InputSystem 1.3.0.
     
    Last edited: May 26, 2022
    bronsonzgeb likes this.
  50. hongyang041

    hongyang041

    Joined:
    May 27, 2022
    Posts:
    1
    i add the UI overlay, but I still cannot move using the UI.
    I hook up the Player Prefab to the UI Canvas.

    upload_2022-6-2_10-13-1.png