Search Unity

  1. Unity 6 Preview is now available. To find out what's new, have a look at our Unity 6 Preview blog post.
    Dismiss Notice
  2. Unity is excited to announce that we will be collaborating with TheXPlace for a summer game jam from June 13 - June 19. Learn more.
    Dismiss Notice

iStep - Premium Foot Placement Solution

Discussion in 'Assets and Asset Store' started by Kreshi, Apr 13, 2022.

  1. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448


    Hello everyone!
    My name is Kreshnik Halili and I am the founder of Hoax Games. Hoax Games is an up-and-coming indie game studio that develops tools for game developers in addition to creative games. With iStep we are presenting our first product for game developers - a groundbreaking AAA-quality footstep solution for Unity 3D.









    Check out the new WebGL showcase demo: https://istepunity.web.app/starter/

    Get iStep on the Unity Asset Store: https://assetstore.unity.com/packages/slug/215843


    iStep is the ideal footplacement solution for Unity 3D. Make your characters come to life with iStep!

    Main Features
    • Drag & Drop integration
    • Smooth foot placement
    • Robust body placement
    • 360° Support
    • Realistic leaning behaviour
    • Clear interface for footstep events
    • Integrated effects player
    • Fully extendable
    • Demo scenes for HDRP, URP and Build-In renderpipeline
    • Buffed Starter Assets Third Person Controller included within the demo scenes
    Integration made Simple

    Drag & Drop the corresponding iStep script on your Character and it’s done. That’s all that’s required to get iStep up-and-running. It works for the Player as well as for any Enemy AI. You are an artist and don’t like coding? No problem, iStep includes an effects player with which you can get any footstep effects, be it sound, particles or decals, up-and-running without the need of writing a single line of code. You are a coder and your Game requires specific behaviours where you need direct access to the scripts? No problem, iStep offers fully extendable scripts making full use of polymorphism as well as superb clear interfaces.


    A big step towards AAA quality

    iStep offers one of the easiest and most solid experiences to bring your developed games to triple-A quality standards. Built specifically for Unity 3D, iStep offers exceptional performance with tons of features. Take your characters behavior to the next level and bring them to life with iStep.


    Check out iStep on the Unity Asset Store: https://assetstore.unity.com/packages/slug/215843

    Try the WebGL Demo: https://istepunity.web.app/starter/

    Get more info about iStep on our website: https://hoax-games.web.app/









     
    Last edited: Jun 30, 2022
    PutridEx and Hikiko66 like this.
  2. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
  3. dock

    dock

    Joined:
    Jan 2, 2008
    Posts:
    609
    This seems fantastic!

    I'm grateful for the tutorial videos, and I like I appreciate that the system defaults to a minimal installation.
     
    Last edited: Apr 19, 2022
    Kreshi likes this.
  4. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    Thanks a lot for the positive feedback!
    It makes me happy and boosts my motivation by a ton!
    Simplicity and easy integration were key points in the development of iStep.
    Since iSteps only requirement is the use of a humanoid character with an Animator component attached, it should work out of the box with any custom character controller or AI controller.


    For the ones who are interested and haven't checked out the WebGL demo yet, check it out from here: https://istepunity.web.app/starter/
    Or better yet, get iStep at -50% from the Unity Asset Store while the sales promotion lasts ;): https://assetstore.unity.com/packages/slug/215843
     
    Last edited: Apr 20, 2022
    website_unity likes this.
  5. dock

    dock

    Joined:
    Jan 2, 2008
    Posts:
    609
    I bought iStep and it seems very nice! Great work!

    Is there any way to detect which terrain surface or physics material the feet step on? I want to spawn different sounds, dust and footprints based on surface. I read through the manual and skimmed through the code but it doesn't appear to give rich formation.
     
    Kreshi likes this.
  6. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    At the moment iSteps support for triggering events is handeled by the IKResult and GroundedResult datastructures.
    This datastructures contain information about the hit and hit-target.
    In combination with the EffectsPlayer script you can trigger various effects like footstep decals and footstep sounds depending on the tag of the hit-target. Please check out the demo scene to see how the EffectsPlayer was used and set-up to configure the effects shown in the WebGL demo.

    Regarding the mentioned feature about PhysicsMaterials and in the case that you want to integrate your custom interface:
    From the UnityEvents member variables of the FootIK script there are events which can invoke functions with either IKResult or GroundedResult as parameters. You can register to one of these events with your custom script or extend the EffectsPlayer script and call either:

    - PhysicMaterial physicsMat = groundedResult.groundedTransform.GetComponent<Collider>().material;
    - PhysicMaterial physicsMat = ikResult.primaryHitTransform.GetComponent<Collider>().material;

    (depending on which event you register to)
    This is if you want to code your own features and behaviours using the provided interfaces on top of what is included with iStep.

    However!
    iStep version 1.2 is planned to include more options on top of the currently provided tags-functionality, to set-up event-trigger behaviors using the EffectsPlayer (like the aforementioned PhysicsMaterial and terrain texture functionality).

    Also two more video tutorials are going to be released soon regarding:

    - How-To: Optimizing the default settings for your custom character
    - How-To: Using the EffectsPlayer for playing sounds and instantiating decals


    I hope you are somewhat happy with the answer :).

    Edit: One last thing that should be mentioned: the recommended Unity version to get started with the included demo scene is 2021 (especially for URP and HDRP).

    Best regards,
    Kreshi
     
    Last edited: Apr 22, 2022
  7. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    iStep version 1.1 has been released with the following main changes:
    • Added the posibility to set how iStep should react to Trigger-Collision-Interactions
    • Improved the stability of some settings
    • Fixed two issues regarding Unity 2019
     
  8. RadioactiveBullfrog

    RadioactiveBullfrog

    Joined:
    Jul 8, 2017
    Posts:
    55
    Does this asset work with UMA?
     
  9. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    I haven't used UMA in production yet however in my quick test integrating iStep with UMA was fairly easy and worked pretty well.

    Check out the UMA integration video:


    I didn't go into too much details in the integration test but i guess it shows that it works.

    (UMA version used: UMA 2)
     
    RadioactiveBullfrog likes this.
  10. RadioactiveBullfrog

    RadioactiveBullfrog

    Joined:
    Jul 8, 2017
    Posts:
    55
    Thank you for the fast and helpful response. You just made a sale. Great job on this product!
     
    Kreshi likes this.
  11. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    Thanks a lot for the support and positive feedback! :)


    Because of the Starter Assets Third Person Controller getting an update to version 1.1 and other factors, I made the decision to release iStep version 1.1.5 in-between iStep version 1.1 and 1.2.


    iStep v 1.1.5 will include the following features:

    - slope based spine bending behaviour (this feature was suggested and requested)
    - updated to Starter Assets Third Person Controller version 1.1 (subset)
    - improved sliding down steep-slopes behaviour in comparison to the previous version (this feature is added in addition to the default Starter Assets Third Person Controller feature set)
    - code improvements & small bug fixes


    You can have a look at the next release with the WebGL demo below :):
    WebGL Demo iStep v 1.1.5: https://istepunity.web.app/starter/

    The release is expected to be tomorrow ;).

    Best regards,
    Kreshi
     
    Last edited: May 15, 2022
  12. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    Brief Notification:

    iStep -50% new release discount ends today so if you are still undecided, this may be the last chance to take advantage from the discount.

    Last chance - get iStep from the Unity Asset Store at -50% today!

    Current release state:
    iStep is currently at version 1.1.6 with improved slope-bending functionality.
    The release from the Unity Asset Store point of view is still at 1.1 but you should be able to update to 1.1.6 shortly.

    Meanwhile check out the next iteration of iStep 1.1.6 by trying out the WebGL demo.

    Play iStep 1.1.6 WebGL demo
     
  13. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    iStep version 1.1.7 has been released including the following upgrade:

    Added a crouch-specific behaviour that can be triggered in case your custom character crouches (significant visual and logical improvement for characters that can crouch).

    How-to:

    Add your animation state name to the "Force Activate Crouching Behaviour" list in the FootIK inspector. (optionally the crouching behaviour can also be activated by script)

    @dock now that the basement has been significantly improved, I should be able to move-on for implementing your requested EffectsPlayer features next :).

    Regarding the state of the tutorials: The next video tutorial will show how to set-up and optimize your custom character + explaining all the available settings, what they do and to which results they lead :).

    Best regards,
    Kreshi
     
    dock likes this.
  14. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    PutridEx likes this.
  15. dock

    dock

    Joined:
    Jan 2, 2008
    Posts:
    609
    These improvements look great! Looking forward to the improvements to Effects Player.
     
    Kreshi likes this.
  16. Rastapastor

    Rastapastor

    Joined:
    Jan 12, 2013
    Posts:
    591
    Any plans for IStep asset for 4 legs animals etc ? :).

    Btw this asset is fantastic like virtually one click solution, and it works out of the box super nice. I recommended it to ppl in the discords I am in, so hope u get some influx of that sweet sweet cash :).

    For this price its a steal :)
     
    Gekigengar and Kreshi like this.
  17. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    Hi Rastapastor,
    first of all thank you very much for the positive feedback and recommendation!

    I am concidering to develop a generic, non-humanoid version of iStep for animals and the likes. However this might take a while. Priority number 1 is still to improve iStep even more :).

    I checked the sales stats and you are right your recommendation managed to sell 2 units yesterday, thank you very much! There is no better advertising than word of mouth :).

    If anyone is interested in Asset Store sale statistics, how well iStep did in the first 2 weeks (-50%) and how ordinary it did since after, let me know :).


    NEWS
    Additionally I have some good news regarding the next update of iStep!
    iStep v1.2 is going to be released soon, including a lot of algorithmic improvements and edge-case handling.
    This update is going to improve the precision and visual robustness of iStep for chaoticly created scenes with unflattering mesh-collider displacement big time!
    The update is most likely going to be released tomorrow or the day after tomorrow.
    Because of that, the new Effects Player features aren't going to make it in the release of iStep 1.2.
    Focusing on the core of iStep and adding major algorithmic-improvements had to be preponed :).

    I am also working on a new video tutorial focusing on the integration of a custom character in a custom scene with the included character controller + iStep integration, customization and parameter explainations.
    The video is going to be helpful for anyone who wants to use the included Buffed Starter Assets Third Person Controller, so there will be something for anyone!

    Check out the videos below, showcasing what will be achieved in the next video tutorial using iStep v1.2:

     
  18. Rastapastor

    Rastapastor

    Joined:
    Jan 12, 2013
    Posts:
    591
    Ofc, firstly finalize and mature Your current product. I am happy that You at least consider stuff for animals and custom monsters with legs (spiders would be mental with this applied :) ).
     
    Kreshi likes this.
  19. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    Last edited: May 17, 2022
    yatsu, dock and Rastapastor like this.
  20. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
  21. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    Check out the latest video tutorial on how to set up a custom scenario, custom character and iStep together:

     
  22. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
  23. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    Gekigengar, yatsu and Rastapastor like this.
  24. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    Rastapastor likes this.
  25. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    I also created a new video tutorial explaining iSteps most important settings and how to use them correctly - however it's a very long and maybe even complicated tutorial..
    Anyway, here it is, I will definitely create a better tutorial soon, but until then you will have to get by with this one :D:p:

     
  26. raphaelsanguinete

    raphaelsanguinete

    Joined:
    Feb 3, 2018
    Posts:
    6
    Hi, @Kreshi

    We are developing a 2D physics game with 3D characters.

    So, our character is using a 2D Box collider and the collision with the platforms is made by 2D colliders also.

    iStep would work for us based on the 2D collision or it only works for full 3D collisions?
     
  27. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    Hi raphael,

    iStep at the moment only reacts to 3D collisions, however regarding your use-case with 3D visuals and 2D physics, this is exactly what I did in "Hoax Hunter" as well. In my case I just let the character collide with 2D physics while i let iStep collide with the 3D world. Check out the video below, it's one of my early videos but it explains this use-case :). Due to iSteps body-adaption feature which works upwards as well as downwards, the only thing I had to do was to attach mesh-colliders to the 3D geometry and everything worked as expected :). iStep has also vastly improved since then and gives better results than shown in the video. I hope this information is useful to you and helps you in finding the right decision :).

     
  28. raphaelsanguinete

    raphaelsanguinete

    Joined:
    Feb 3, 2018
    Posts:
    6
    Hi, @Kreshi

    Bought the asset after reading your explanation above and seeing the video tutorial!

    Just installed and it's working great for our use case as you said!

    Have to do some tweaks to make it shine and polished, but from the get going, with the default values in the script, already having a good result.

    Thank you for the response and for the work in this amazing asset!
     
    Kreshi likes this.
  29. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    Thank you for the positive feedback.
    I'm glad i could help :).
     
  30. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    Last edited: Jun 30, 2022
  31. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
  32. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,700
    I haven't worked with high heels before. How would high heels work with this IK?
     
  33. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    Hi hopeful,

    in the video below you can get an idea of how iStep is used with a few different characters, one of which is a high-heeled character :).

     
  34. macicka12

    macicka12

    Joined:
    May 13, 2015
    Posts:
    14
    Hi, I just wanted to ask, is there some kind of stairs/curb climbing implementation built in or do I have to implement that myself?
     
  35. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    Hi appenius,

    I don't know if I understand the question correctly, but I will try to answer it as good as I can in the following points :):

    1) iStep as a foot placement solution corrects both foot as well as body position to adapt to the underlying objects, be it stairs, curbs, terrain, slopes or anything else with a collider.
    2) All features and content from the WebGL demo are included with iStep: https://istepunity.web.app/starter/
    3) The character controller used in the demo can climb stairs/curbs however the selling proposition of iStep is not the character controller but the foot placement solution :). iStep can be used as an add-on for all popular character controllers or AI-solutions from the Asset Store. Compatibility should be no issue here, the only thing iStep requires is your character to be of type humanoid and IK pass enabled.

    I hope this answers your questions :).
     
  36. macicka12

    macicka12

    Joined:
    May 13, 2015
    Posts:
    14
    Thank you for your answer :).
    I was just curious, as I saw your video with UMA characters (I don't use them), and in that video the characters were adjusting their positions as you moved the cube and it looked pretty good and natural.
     
    Kreshi likes this.
  37. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    Ah I see :). What you just described is exactly what iStep is for :).
     
  38. macicka12

    macicka12

    Joined:
    May 13, 2015
    Posts:
    14
    Oh okay, so I must have something wrong in my setup, because when I move the box like you did in the video, my character is just moving with it because of capsule collider, I will look into that :)
     
  39. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    Ah ok this is what you want to do, you want the "moving" box to interact with iStep.
    For that, please set "Minimum Movement Threshold" to "0" for your characters FootIK component.
    This is an optimization and stabilization value to only calculate new IK positions, when the foot moves for the given value. In your case, because the box is moving, you want this value to be 0 to achieve the desired result.

    If the above instruction isn't enough to create the desired result, you can try the following in addition:
    - activate "Is Trigger" for the collider of your box
    - set "Trigger Collision Interaction" to "Collide" for your characters FootIK component

    By the way, one very useful tip for optimizing iSteps parameters is to always set Minimum Movement Threshold to 0 first, then find the values best suited for your character in play mode and copy&paste the settings afterwards.
     
  40. macicka12

    macicka12

    Joined:
    May 13, 2015
    Posts:
    14
    Ooh okay, thank you very much :)
    I will try that as soon as I get home :)
     
  41. MrCarterMan

    MrCarterMan

    Joined:
    Dec 10, 2020
    Posts:
    4
    Hello! I'm trying to get iStep set up on an Emerald AI character. I have the script on the character's root, where the animator component is but I'm not seeing iStep in action. Any advice?
     
  42. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    Hi MrCarterMan

    Have you activated IK pass for your characters Animator Controller and have you imported your character as a humanoid?
     
  43. MrCarterMan

    MrCarterMan

    Joined:
    Dec 10, 2020
    Posts:
    4
    Yes the IK pass is checked on the controller and character is humanoid.
     
  44. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    Hmm interesting. I recorded a quick video tutorial for Emerald AI integration for you, can you check if by following the steps in the tutorial you are able to achieve the same results please? We are going to work out a solution for your issue step by step :).

     
    MrCarterMan likes this.
  45. MrCarterMan

    MrCarterMan

    Joined:
    Dec 10, 2020
    Posts:
    4
    Thank you for this! You are a great developer! I'll work on this later today and get back to you with my progress.
     
    Kreshi likes this.
  46. MrCarterMan

    MrCarterMan

    Joined:
    Dec 10, 2020
    Posts:
    4

    So I was wrong, the character I had it one was a generic. I switched it over and the animations to humanoid. Any advice on how to dial it in better, as you can see in the video his feet aren't always hitting the ground.

    I set it up on another character that was already humanoid and it worked perfectly right out of the box. Makes them look sooo much better, thank you for making this asset.
     
  47. jnbbender

    jnbbender

    Joined:
    May 25, 2017
    Posts:
    488
    Does anyone know why iStep would cause mt TP capsule to float?
     
  48. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    I have recorded a video a couple of weeks ago which explains the main iSteps settings and how to configure a character:



    I guess this could help you out, but I also think that I definitely have to make a new, shorter version that explains the settings a little bit better as well :D.
     
    MrCarterMan and jnbbender like this.
  49. Kreshi

    Kreshi

    Joined:
    Jan 12, 2015
    Posts:
    448
    It's difficult to tell from here but I believe your character controllers capsule is interacting with the ragdoll-colliders or other colliders inside your rigs hierarchy. Disable the ragdoll and the colliders within your rig to test if it resolves your issue. If it does, make sure that you put all colliders within your rig in a layer that doesn't interact/collide with your character controller. I hope this helps. If not, I will need more info to reproduce the issue. iStep doesn't move any colliders whatsoever, but because it operates on animation-IK-level and also corrects the rigs bodyposition, it therefore moves the rigs bones and if you have colliders attached to those bones, they will be moved with the rig as well :).
     
  50. jnbbender

    jnbbender

    Joined:
    May 25, 2017
    Posts:
    488
    Watched your video. Very helpful. My foot colliders were too big and penetrating the floor. Didn't notice that one.
     
    Kreshi likes this.