Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

New Standard Assets - a.k.a. Sample Assets, Beta Release

Discussion in 'Assets and Asset Store' started by duck, Jan 17, 2014.

  1. markharkness

    markharkness

    Unity Technologies

    Joined:
    Nov 2, 2010
    Posts:
    176
    Hi, I don't see the null reference exception in the standard Third person character scene, so I would presume that you have some sort of custom scene going on. You can submit this as a bug and using the help -> report a bug menu in the editor and I can take a look. I would however think that it would be caused by the animator being null. The easiest way to test this would be to just add some simple if statements with debug log calls.

    public void OnAnimatorMove()
    {
    // we implement this function to override the default root motion.
    // this allows us to modify the positional speed before it's applied.
    if( animator == null)
    Debug.Log("animator is null");

    if( rigidbody == null)
    Debug.Log("rigidbody is null");

    rigidbody.rotation = animator.rootRotation;
    if (onGround Time.deltaTime > 0)
    {
    Vector3 v = (animator.deltaPosition*moveSpeedMultiplier)/Time.deltaTime;

    // we preserve the existing y part of the current velocity.
    v.y = rigidbody.velocity.y;
    rigidbody.velocity = v;
    }
    }

    This would allow you to quickly pin down which was the offender then check through the setup to make sure that everything was being assigned before OnAnimatorMove is being called.

    Edit: If you do submit a bug can you post back the bug number you will be given here and I can take a look.
     
    Last edited: May 14, 2014
  2. arrast

    arrast

    Joined:
    Mar 18, 2012
    Posts:
    4
    Hello!

    I am having some problems with the Combine Mesh script.
    When I try to use it with the walls of my game, it starts doing weird things with the meshes and the materials...

    This is my original setting.
    $Original.PNG

    When I go into play mode it does this...
    $VertexLit 2.PNG
    The shader goes crazy and everything goes black (Mobile Vertex Lit). And if I check "Generate Triangle Strings", it even breaks the Meshes...
    $VertexLit + TriangleStrip.PNG

    If I do the same with just a simple Bumped Diffuse shader, the Material looks fine, but the Triangles are still all messed up...
    $BumpedDiffuse.PNG
    $BumpedDiffuse + TriangleStrip.PNG

    If you know what happens, it would be of great help... (BTW, I am using just rescaled Unity Cubes)

    Thanks and Regards,
    Victor Manuel Egea Rodriguez
     
  3. adsamcik

    adsamcik

    Joined:
    Jan 13, 2013
    Posts:
    37
    Animator is null. I forgot to mention, that this was caused on custom scene and it started appearing after I implemented function that waits for server response to pass parameters like spawn location, that are processed by server. May I ask what this line is actually doing?
    rigidbody.rotation = animator.rootRotation;
    If I comment in it seems like everything works just the same way, but I might be wrong in some cases of course.
    About the second thing I pointed out, will it be improved or is it up to us, to improve it the way we want?
     
  4. Erian

    Erian

    Joined:
    Dec 10, 2013
    Posts:
    4
    Hi there,
    Thanks heaps for these assets. I was wondering if you guys could keep the old standard assets available either through a legacy folder or a asset store download. All the new assets very nice but some are not as feature filled as the old assets and it would be nice to keep any available old assets that can still work in future releases of Unity. I also personally prefer the character controller to do movement which is one reason I wish to have the current standard assets still available. By the way it is very nice to see private variables! and also that it done in C#.

    In my unity build the car does not display shadows in mine even though it already seems to be set up (was trying to set it up) (I am using the free version if that matters).

    Thanks Erian.
     
  5. Reactorcore

    Reactorcore

    Joined:
    May 19, 2011
    Posts:
    105
    I'd like to suggest another addition to this package: A simple (singleton) game manager entity that can bring up a main menu, which can start a game, edit options (video, controls, audio), view credits and quit the program.

    A main menu is essential to any project, as well as a wrapper that allows the developer to have the game pause/resume at any moment to show/hide the main menu, respectively.
     
  6. Mike-Geig

    Mike-Geig

    Unity Technologies

    Joined:
    Aug 16, 2013
    Posts:
    244
    Howdy, the combine mesh scripts in the sample asset are being deprecated. The functionality is now built directly into the Unity editor. Check out Mesh.CombineMeshes and CombineInstances here:
    https://docs.unity3d.com/Documentation/ScriptReference/Mesh.CombineMeshes.html
    http://docs.unity3d.com/Documentation/ScriptReference/CombineInstance.html

    So, for example, this code will produce a cube out of 6 generated quads:

    Code (csharp):
    1.  
    2. void MakeCubeFromQuads()
    3.     {
    4.         mesh.Clear();
    5.  
    6.         Vector3[] verts = new Vector3[8];
    7.         verts[0] = new Vector3(-.5f, -.5f, -.5f);
    8.         verts[1] = new Vector3(-.5f, .5f, -.5f);
    9.         verts[2] = new Vector3(.5f, .5f, -.5f);
    10.         verts[3] = new Vector3(.5f, -.5f, -.5f);
    11.         verts[4] = new Vector3(-.5f, -.5f, .5f);
    12.         verts[5] = new Vector3(-.5f, .5f, .5f);
    13.         verts[6] = new Vector3(.5f, .5f, .5f);
    14.         verts[7] = new Vector3(.5f, -.5f, .5f);
    15.  
    16.         CombineInstance[] combine = new CombineInstance[6];
    17.         combine[0] = BuildAndReturnQuad(verts[0], verts[1], verts[2], verts[3]);
    18.         combine[1] = BuildAndReturnQuad(verts[3], verts[2], verts[6], verts[7]);
    19.         combine[2] = BuildAndReturnQuad(verts[7], verts[6], verts[5], verts[4]);
    20.         combine[3] = BuildAndReturnQuad(verts[4], verts[5], verts[1], verts[0]);
    21.         combine[4] = BuildAndReturnQuad(verts[1], verts[5], verts[6], verts[2]);
    22.         combine[5] = BuildAndReturnQuad(verts[4], verts[0], verts[3], verts[7]);
    23.  
    24.         mesh.CombineMeshes(combine, true, false);
    25.         mesh.RecalculateNormals();
    26.         mesh.RecalculateBounds();
    27.     }
    28.  
    29.     CombineInstance BuildAndReturnQuad(Vector3 p1, Vector3 p2, Vector3 p3, Vector3 p4)
    30.     {
    31.         Mesh tempMesh = new Mesh();
    32.         CombineInstance combine = new CombineInstance();
    33.  
    34.         Vector3[] verts = new Vector3[4];
    35.         verts[0] = p1;
    36.         verts[1] = p2;
    37.         verts[2] = p3;
    38.         verts[3] = p4;
    39.        
    40.         int[] tris = new int[6];
    41.         tris[0] = 0;
    42.         tris[1] = 1;
    43.         tris[2] = 2;
    44.         tris[3] = 0;
    45.         tris[4] = 2;
    46.         tris[5] = 3;
    47.        
    48.         Vector2[] uvs = new Vector2[4];
    49.         uvs[0] = new Vector2(0, 0);
    50.         uvs[1] = new Vector2(0, 1);
    51.         uvs[2] = new Vector2(1, 1);
    52.         uvs[3] = new Vector2(1, 0);
    53.        
    54.         tempMesh.vertices = verts;
    55.         tempMesh.triangles = tris;
    56.         tempMesh.uv = uvs;
    57.    
    58.         combine.mesh = tempMesh;
    59.         combine.transform = filter.transform.localToWorldMatrix;
    60.  
    61.         return combine;
    62.     }
     
  7. markharkness

    markharkness

    Unity Technologies

    Joined:
    Nov 2, 2010
    Posts:
    176
    Disregard I realised that there were new API calls in there that most of you guys won't have access to so you wouldn't be able to use it.
     
    Last edited: May 16, 2014
  8. markharkness

    markharkness

    Unity Technologies

    Joined:
    Nov 2, 2010
    Posts:
    176
    View attachment $fps.unitypackage View attachment 100276

    Here is an update to the first person controller. It will be added in a future update to the assets.

    You will need to add the first person character prefab and the __CrossPlatformInputManager prefab to the scene for everything to work.

    Any feedback anyone has would be more than welcome.
     
  9. mottoman

    mottoman

    Joined:
    Jul 17, 2013
    Posts:
    3
    so we can use this in a game now or no
     
  10. TheSniperFan

    TheSniperFan

    Joined:
    Jul 18, 2013
    Posts:
    712
    Well then. :)
    Here's what I found so far.

    I did some tests and looked through the code in hope that you fixed this bug. (You didn't :sad:)

    The headbobbing doesn't scale well at all. If you increase the Head Bob Range the sideways movement stays as expected, while the vertical movement starts to become jittery. It's either not smooth, or just way too fast.
    When setting the Head Bob Range to values >=0.47 the camera bugs out completely.

    Jumping is very unreliable. Jumping while standing still or walking sideways is okay. While walking forward, you jump like three times higher. Jumping while walking backwards is completely broken.
    The same things happen when you stood still and started moving after leaving the ground.

    The GravityMultiplier from the advanced settings isn't used at all.

    Walking into a corner causes the camera to shake. Even more so when moving the mouse.

    You slide down slopes when standing still if it exceeds a certain steepness. You even hear the footstep sound being played then.

    If you create a box and rotate it to get a slope, you can get stuck when walking on it from the side. (See screenshot 1)
    Walking down from a slope like in screenshot 2, gets you stuck.

    That's what I found after a few minutes of testing. Hope it helps. ;)

    PS:
    It's just my opinion, but I found the old code way easier to understand. Having everything in one file with methods calling each other all over the place forced me to scroll back and forth all the time.
     

    Attached Files:

    Last edited: May 17, 2014
  11. markharkness

    markharkness

    Unity Technologies

    Joined:
    Nov 2, 2010
    Posts:
    176
    This is exactly what I was looking for thanks.

    I will have a look through these when I get into the office on Monday.
     
  12. markharkness

    markharkness

    Unity Technologies

    Joined:
    Nov 2, 2010
    Posts:
    176
    I can't seem to reproduce that bug at all in my test scene. It was one of the bugs that I am sure I have fixed.

    This is due to the camera refocusing. I will have a look into this as it should not be happening.

    I see no issues with the jumping on my end either. It me be some specific configuration that has caused that problem so I might have to ask you to submit a but report and PM the case number so I can see what you are seeing.

    I was aware of this and though I had removed the variable. I might put the code back in however as some people will likely have use for this.

    Had not noticed that but I see the problem so I can get on fixing that.

    My bad on that one, I thought I had fixed it. The footsteps will always play when the character is grounded and moving at this point in development. This is something I will change when I add support for moving platforms in the future.

    Managed to repro both of these


    [/QUOTE]

    There will be much refactoring happening on this once I have all the bugs worked out. Some of it will be moved out into separate files as it will likely be reused in some other parts of the sample assets.
     
  13. TheSniperFan

    TheSniperFan

    Joined:
    Jul 18, 2013
    Posts:
    712
    I looked into the jumping issue again after I read that you weren't able to reproduce it. Jumping worked. However, being absolutely sure that there was an issue I tried my best to reproduce it.
    I attached the scene I tested it in to this post. It's best when you create a new project and just import this. It contains the Player + CrossPlatformInput and a simple "map".

    Steps to reproduce:
    1. Do not touch the mouse at all!
    2. Jump
    3. Note that you jump just about high enough to see the green plane in front of you
    4. Walk forwards/backwards/sidewas and jump
    5. Again, you'll see the green plane
    6. Now jump and use your mouse while in mid-air
    7. goto 1

    I hope this helps. :)
     

    Attached Files:

  14. markharkness

    markharkness

    Unity Technologies

    Joined:
    Nov 2, 2010
    Posts:
    176
    much appreciated I shall take a look.

    Edit: yeah i see it now thank you

    Double Edit: Just tried the changes I had made today to the script and it seems to have fixed it. I will send an update on the script once I have figured out the camera going wild at extreme head bob settings
     
    Last edited: May 19, 2014
  15. Noisecrime

    Noisecrime

    Joined:
    Apr 7, 2010
    Posts:
    2,050
    Oh, I'd though this thread had been forgotten about. Really glad to see the changes you've listed, its addressed several concerns I outline back in my post here, such as namespaces and c# image effects, both of which have me jumping with joy.

    There are still a few unanswered questions though from my original post such as

    1. Distribution.
    How will the package be distributed? As it was in the beta as a single large package or as it is in the current version of Unity split into smaller packages based on functionality?

    2. Package bloat.
    The beta was something like 150mb download (thats not too bad) but uncompressed in Unity was 900mb.

    3. Samples vs Assets
    Some stuff I considered to be samples/examples, other items are useulf assets (image effects) I felt these probably shouldn't be mixed together as its confusing.


    My post provides much more details about these questions and concerns, so might be worth reading that instead of these bullet points.

    Overall though i'm really impressed with the effort that has gone into this.
     
  16. markharkness

    markharkness

    Unity Technologies

    Joined:
    Nov 2, 2010
    Posts:
    176
    ( typed before my morning requirement of coffee )

    Hey NoiseCrime,

    I'll be more specific about addressing your points from your original post.

    1) The kitchen sink + project bloat + bandwidth

    For beta everything will be lumped together. However the plan is that these will be shipped with 5.x so the old sample assets will be removed and relegated to some dusty archive on the asset store. In 5 there will be an addition of a main scene that will allow you to access the other scenes and will be the new default project. Over and above that there will be the option to import individual packages just like you can with the current sample assets.
    I understand your concerns about the size of the packages this is something I will be looking into with one of our build engineers. It may be that we bring down some texture sizes etc but only time will tell on that. There is also some plans to allow updating of the assets externally to the editor. Think what you get now when a new version of the editor ships. This will be added to the new splash screen which I am sure you have seen as you are on the alpha list. We are also looking at just shipping editor updates without projects as well which will go a long way in reducing the bandwidth that you would need to use and then if you wanted the sample assets you can just grab them from the asset store.

    2) Image effects in JS

    As before I spent a painful two days changing all of this over to CS so bye bye JS. In the future there will be a JS version of the assets made available on the asset store. We have some internal tech that will do the conversion but its not fool proof so it will need looked over and tested.

    3) Best Practice

    Everything is in namespaces now and I am in the middle of tweaking and refactoring everything. I am entirely open to any suggestions on this no matter how trivial, even it is the name of a variable that could be changed that you would think make it more readable.
    Currently I am trying to make things more reusable so for instance the First person character I crammed everything into one script just to fix bugs but also to start pulling out methods and functions to see what parts could be taken from it. So at the moment in my local repository the head bob is once again a seperate class but it is now just called Bob and can be set up to be driven but about anything , even the car.

    4) Minimum Spec

    These were always intended to be part of 5, so 5 was always meant to be the minimum spec. We wanted to get them out there early however to get as much feedback and on them as possible.

    5) Integration

    See my comments in 1. Though be aware we do not have a specific version in the 5.x cycle that this will happen by.

    In the long term I would love to have the sample assets ( at least in terms of scripting ) as more of library of very small discrete functionality that can be combined together to create something original. There is always the concern however that the new user may find this daunting; getting feedback and engaging with the end users is my top priority on this.

    I even have a planto create a defaults library for the assets, I think this ties in with your sample vs assets comments ( implementation and time pending :) ). This would allow the users to share settings with each other, so for the first person character someone could modify the variable in a way that would simulate someone with a limp or a mech. This would really allow us to see just how flexible that assets can be and if they are not flexible enough then we can go back to drawing board and rethink how it is implemented.

    Again any feedback is more than welcome and if you have any more questions shoot a reply on here or PM me.
     
  17. Noisecrime

    Noisecrime

    Joined:
    Apr 7, 2010
    Posts:
    2,050
    Thanks for taking the time to reply.


    Cool as long as its on your radar and wasn't going to be overlooked. I was just a bit worried that waht we got in terms of packaging and sizes was representative of the finals stuff. As long as we don't have to load/unpack 900mb of assets just to get the image effects or a character control i'll be happy ;)


    I can imagine the pain, but so glad this has finally be done. It did make far more sense (to me) that Unity did this instead of hundreds of developers re-inventing the wheel and then of course tha pains to update it if Unity changed anything. Really looking forward to

    As before I spent a painful two days changing all of this over to CS so bye bye JS. In the future there will be a JS version of the assets made available on the asset store. We have some internal tech that will do the conversion but its not fool proof so it will need looked over and tested.

    Again very much appreciated its good to see Unity lead by example.

    Its been a while since I looked at this, but I think my feeling was (at least with the current 4.3.4 builds) that this could easily have a large amount of use for < U5, even if not everything worked. The problem with the asset store is it forces the minimum requirement on you, no U5 then you can't download it. That would be a shame as i'm sure some developers would find the stuff useful even if they did have to refactor it. Of course U5 may well make changes that mean far less is backwards compatible, but since its currently working 4.3.4 why not keep a version around for that?


    Cheers
     
  18. Reanimate_L

    Reanimate_L

    Joined:
    Oct 10, 2009
    Posts:
    2,788
    Maybe i missed somthing but is the TPS modifying Animator.bodyPosition?
     
  19. UnbreakableOne

    UnbreakableOne

    Joined:
    Nov 16, 2013
    Posts:
    168
    Would someone please upload the latest asset for me somewhere like dropbox? I'm trying to download this asset for 2 days and it gets stuck while downloading.

    Much appreciated.
     
  20. tonybar

    tonybar

    Joined:
    Nov 23, 2013
    Posts:
    3
    There does not seem to be a step offset setting to allow the first person character to go up steps without jumping now? There are stairs in the demo scene but one cannot walk up them. Was this broken by the stick to the ground fix?
     
  21. Ryan-Hayle

    Ryan-Hayle

    Joined:
    Feb 16, 2014
    Posts:
    142
    2D Character scene example, mobile input enabled, iOS platform and press play.

    The character is facing the wrong way and the float h = CrossPlatformInput.GetAxis("Horizontal") is returning -7.629394E-08

    Is this a bug and how do I fix this?

    Thanks
     
  22. FargleBargle

    FargleBargle

    Joined:
    Oct 15, 2011
    Posts:
    773
    I usually just use an invisible ramp collider wherever there are stairs, just to avoid problems like this. Stairs look nice, but tend to make characters trip or hesitate, rather than smoothly walking up or down them. Of course foot placement might suffer a bit if you use a ramp with a third person character, but it usually isn't that noticeable, and not a problem at all with a first person character, especially if you use a head-bob script.
     
  23. markharkness

    markharkness

    Unity Technologies

    Joined:
    Nov 2, 2010
    Posts:
    176
    Will be fixed in the future. There is now a step height variable that basically allows you to define a height that will be a step the controller will not care about and just move over.
     
  24. FargleBargle

    FargleBargle

    Joined:
    Oct 15, 2011
    Posts:
    773
    Good to know. I'll check it out when available. Ramps still work though, and can provide a simpler collider solution if resources are at a premium, so shouldn't be ruled out in some cases. Thanks.
     
  25. markharkness

    markharkness

    Unity Technologies

    Joined:
    Nov 2, 2010
    Posts:
    176
    oh yeah without a doubt ramps are the cheapest way to do it but its nice to have as many bases covered as we can.

    So the first person character is taking a long time to get all the kinks out , to the point where it is almost entirely rewritten. Bear with me and hopefully I can get something back to you guys early next week
     
  26. TheSniperFan

    TheSniperFan

    Joined:
    Jul 18, 2013
    Posts:
    712
    As far as the first person character goes, there was one thing that you should probably change.
    The default height.
    If I remember correctly, the player is 2 meters tall which is a bit much if you ask me. You probably should reduce it to 1.8 meters which is a more average height.
    I'm bringing this up because I make my levels in external tools using standard sizes for doors and such, and everything seemed a bit small to me. Turned out that is was the player being a bit too tall.
     
  27. markharkness

    markharkness

    Unity Technologies

    Joined:
    Nov 2, 2010
    Posts:
    176
    that is something that you would be able to tweak yourself but one of our artists assured me that 1.8m is standard so I will ship with that as default
     
  28. shkar-noori

    shkar-noori

    Joined:
    Jun 10, 2013
    Posts:
    833
    the asset store's version is 1.0.3 , is there any newer version around? or will there be any new updates?
     
  29. markharkness

    markharkness

    Unity Technologies

    Joined:
    Nov 2, 2010
    Posts:
    176
    There will be more updates when we release the new gui system, between then and now I will drop packages on here with updates to get some feedback.
     
  30. shkar-noori

    shkar-noori

    Joined:
    Jun 10, 2013
    Posts:
    833
    can i get the link to the most recent version you have?
     
  31. markharkness

    markharkness

    Unity Technologies

    Joined:
    Nov 2, 2010
    Posts:
    176
    What I have at the moment is not useable, too many bizarre physics bugs. I am hoping that it will be ready later this week. Bear in mind this is only an update to the first person controller. I am trying to get things bug free and clean up the code where possible.
     
  32. shkar-noori

    shkar-noori

    Joined:
    Jun 10, 2013
    Posts:
    833
    thank you, and I'm only interested in the First Person Controller, will there be any new features besides the fixes? crouching and prone?
     
  33. markharkness

    markharkness

    Unity Technologies

    Joined:
    Nov 2, 2010
    Posts:
    176
    Here is an update. No new features as of yet. I had to ditch the rigidbody approach due to a lot of physics issues that would present themselves. The code had became very slow due to all the raycasts and spherecasts that were needed. So for now this version will return to the old CharacterController solution. I have implemented a crude physics resolver for now in the void OnControllerColliderHit(ControllerColliderHit hit) function but will work on this more so that the first person character can be pushed around as well. For now though the character will be able to run around and fingers crossed not get stuck on anything or do weird unexpected behaviour.
    You should also see where I have extracted some useful classes as well. For instance the CurveControlledBob that is controlling the head bob simulation could easily be applied to another child object that was a gun arm.
    I will try to get some crouch action in there asap as well but I am not sure if we will go as far as to make the character go prone.
    Anyway for now all you should need to do is drag the FirstPersonCharacterController into the scene.


    Last note: yes I am aware that the code has not been put into a namespace yet.

    Edit: This is intended for 4.5 at the moment

    Another Edit: I should also add that I will try and do some walkthroughs on these assets at some point to show how the variables can be tweaked to attain different effects on the character. A simple example for now would be to adjust the BobCurve to be less on one side than the other. This would be a good way to simulate a limp om the character.
     

    Attached Files:

  34. shkar-noori

    shkar-noori

    Joined:
    Jun 10, 2013
    Posts:
    833
    thank you for the fast reply, gonna test it tomorrow.
     
  35. neatgadgets

    neatgadgets

    Joined:
    May 13, 2014
    Posts:
    73
    Hi, I am relatively new to Unity and our instructor pointed to this asset to try out and I was wondering if there is any documentation?
     
  36. markharkness

    markharkness

    Unity Technologies

    Joined:
    Nov 2, 2010
    Posts:
    176
    Hi, not for now. These assets are intended to be included in 5.0 when it releases. Around that time we will likely put up some short videos of how they work that can be used as documentation.
     
  37. neatgadgets

    neatgadgets

    Joined:
    May 13, 2014
    Posts:
    73
    I am trying the get the character to walk up the stairs, not sure what I should be changing to get him to do that. Also, does the character pick things up or is that something I would have to code in?
     
  38. markharkness

    markharkness

    Unity Technologies

    Joined:
    Nov 2, 2010
    Posts:
    176
    That character does not pick things up, that would be something you would have to code in yourself. What you need is something that will detect when the character collides with the object. So a new monobehviour that overrides the appropriate collision callback function , OnCollisionEnter for example, and then checks if it was the player that has collided with it.

    The step offset parameter will allow you to adjust for the size of the steps in your game.
     
  39. neatgadgets

    neatgadgets

    Joined:
    May 13, 2014
    Posts:
    73
    Awesome thanks for your help. Looks fantastic!
     
  40. Wahooney

    Wahooney

    Joined:
    Mar 8, 2010
    Posts:
    281
    Will it ever go back to a rigid body solution? So we can have characters at angles, on walls, etc.?

    Perhaps a change to CharacterController to facilitate this?
     
  41. markharkness

    markharkness

    Unity Technologies

    Joined:
    Nov 2, 2010
    Posts:
    176
    tl;dr In the future, yes I will revisit the rigidbody solution.


    I will revisit the rigidbody solution at some point. There are two main reasons why I cannot do it at the moment.

    1) There were increasingly huge amounts of raycast, spherecast and capsule cast calls required to get round various problems that would arise. It was becoming slow and at the point where the code was basically needing to be started again from scratch to rethink the approach being used ( think using addforce only and not using moveposition). Time constraints mean that this is just not possible at the moment. I basically need time to reset my thought patterns on the problem and have a go again from a clean slate. On the plus it will mean that there will eventually be two solution for characters.

    2) These are only sample assets they are not really meant to solve every problem for every user. It would be awesome if we could ship something that did but it would be a huge amount of code and it would end being very unfriendly for new users. There comes a point where a compromise has to be made.

    Now don't get me wrong on those statements. These things will be added to. Much in the way that the FOVKicks and BobControls were pulled out into separate classes for the update I put up. I plan on adding more classes like that. So for example I would love to add another class that carries momentum on the player, slides down ramps and so on. Maybe as one of them the ability to have the character at angles could be added.

    In the meantime there are beginnings of a rigidbody based solution here:

    http://wiki.unity3d.com/index.php?title=RigidbodyFPSWalker

    Which could be adapted to work with parts of what I have already done. However you will see when using that solution that the character will maintain speed and momentum when going over the ends of ramps and fly in the air. To resolve that you then need something that makes the character stick to the ground or trigger at the tops of ramps to force the character to stay on the ground. It was these sorts of edges cases that were making the rigidbody solution perhaps a little complex for the first time user to understand. To that end it is likely that the update I just gave you guys on here will be a simple version and the rigidbody solution will be a more advanced solution, both of which we will ship.

    I hope this incredibly long explanation answers your short question :)
     
  42. markharkness

    markharkness

    Unity Technologies

    Joined:
    Nov 2, 2010
    Posts:
    176
    No problem. Someone like yourself that is new to unity and learning the ropes are the sort of users that we really need to know that these assets are simple and approachable to use. Any other feedback you have is always welcome.
     
  43. Wahooney

    Wahooney

    Joined:
    Mar 8, 2010
    Posts:
    281
    Yay!

    CharacterController is really cool only if you do the regular standing-up character thing. But if you want to do something interesting... yeesh!

    And I've gone through the rigors of Rigidbody FPS controllers, so I don't envy your strife, I never got it right. Glad Unity is officially on this :D
     
  44. TheSniperFan

    TheSniperFan

    Joined:
    Jul 18, 2013
    Posts:
    712
    @Wahooney:
    Yeah, it's surprisingly difficult to get them right. Maybe it will get easier when Unity 5 ships with its updated PhysX but I don't know.
    I am using the version that was initially posted in this thread (with the later update) as a base to work with. The approach to move the player is determining where he wants to go from the input and slope, then set the velocity directly. As far as the feedback goes it's fantastic. Movement just kind of feels "right" if you know what I mean.
    It results in problems when walking into other physics objects though. Setting the velocity directly means that when you walk into an object and keep going, you'll produce an absurd amount of force.
    I've been able to work around most of the issues but I think that applying a force instead of setting the velocity would be the best thing.
     
  45. markharkness

    markharkness

    Unity Technologies

    Joined:
    Nov 2, 2010
    Posts:
    176
    Sorry was that feedback about the last update I posted?
     
  46. TheSniperFan

    TheSniperFan

    Joined:
    Jul 18, 2013
    Posts:
    712
    No, it was about one of the earlier versions that were posted in this thread. Quite a bit before the updates that have been posted here more regularly.
     
  47. markharkness

    markharkness

    Unity Technologies

    Joined:
    Nov 2, 2010
    Posts:
    176
    No problem.
     
  48. DrSkarrapter

    DrSkarrapter

    Joined:
    Jun 14, 2014
    Posts:
    2
    I cant seem to open the assets in unity i go on the website and click the button for it but nothing happens i have the latest version of unity and i even reinstalled it (which took forever and a day) and still nothing please help it'd be very, very appreciated
     
  49. DrSkarrapter

    DrSkarrapter

    Joined:
    Jun 14, 2014
    Posts:
    2
    i can get it open now but it cant decompress for some reason
     
  50. Reanimate_L

    Reanimate_L

    Joined:
    Oct 10, 2009
    Posts:
    2,788
    Been a while since the last time i'm here, is there any update about this package?
    i got another question for the third person controller, even the "Look at camera direction" is inactive the character keep rotating try too following the camera direction, is this on purpose?