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

[RELEASED] Easy Touch

Discussion in 'Assets and Asset Store' started by Hedgehog-Team, May 8, 2012.

  1. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Hi,

    EasyTouch 2.5 Allows you to quickly and easily develop actions based on a touchscreen. A jump is always the same thing in 2D or 3D, Action increases the value of the Y axis, and parallel position on the Y axis is decreasing.

    This is more general programming with Unity that linked with EasyTouch
     
  2. kmgilbert100

    kmgilbert100

    Joined:
    Sep 6, 2011
    Posts:
    255
    but im not a programmer at all
     
  3. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Hi dev,

    As I said this is more general programming with Unity to do match surface. EasyJoystick sends information related to the joystick, after that is up to you to do the rest.Direct mode allows for a rapid prototype, but doesn't replace conventional programming based on the interception of joystick events , for more complex action

    Can you send me your your example, I'd integration script (and your invoice number to the following address: the.hedgehog.team @ gmail.com)
     
  4. kmgilbert100

    kmgilbert100

    Joined:
    Sep 6, 2011
    Posts:
    255
    So I could pay you to customize it? msg me ur skype so we can talk about it please
     
  5. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    I sended to you my skype, if you want to talk
     
  6. huxley

    huxley

    Joined:
    Apr 27, 2009
    Posts:
    334
    Where is the documentation for this product? I only get sent a dead 404 when clicking your link.
     
  7. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Hi,

    I'm sorry, I must change my link. You can find the documentation HERE
     
  8. dev01

    dev01

    Joined:
    May 3, 2010
    Posts:
    21
    I dont know how to send an example. steps please.
     
  9. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Hi,

    Select all your files in the project view, and right click => Export Package.
     
  10. simone007

    simone007

    Joined:
    Oct 30, 2008
    Posts:
    221
    Can you please provide a new link to the documentation file?

    The link you provided in a previous post is broken

    Thanks
    Simone
     
  11. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    You can download it : HERE
     
  12. Grondhammar

    Grondhammar

    Joined:
    Jun 14, 2010
    Posts:
    19
    I've been eyeing this package for a while, just got it and it's very easy to use. Great work, thanks for making life easier for so many developers.

    One question: is there any way to handle mouse wheel events inside the EasyTouch framework? I've got On_Pinch* (SO much easier than doing that myself) working. But I'd really like to map the mouse wheel to the same actions.
     
  13. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Hi Grandhammar

    Currently this is not possible, perhaps in a future update, is a good idea !

    Sorry but * you must manage it with unity framework
     
  14. berney

    berney

    Joined:
    Sep 11, 2012
    Posts:
    10
    Hi Nicolas,

    Quick question about the accuracy of Swipe and GetCurrentPickedObject. In my game, I have a series of coins aligned to some vector. I would like the user to collect the coins by swiping, however, when the user swipes quite fast along the coins vector, some coins are not affected. I assume the ray casting is not fast enough on fast swipes. Is it? What do you think?

    Eyal
     
  15. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Hi,

    Do you try this :

    - Create a script that subscribe to On_TouchDown
    - In On_TouchDown test if Gesture.pickedObject == gameObject
    - Attached this script to each coins
    - On each coin add a collider on a specific layer
    - Add this layer to EasyTouch setting

    Nicolas
     
  16. berney

    berney

    Joined:
    Sep 11, 2012
    Posts:
    10
    Thanks Nicolas. I will try that.
     
  17. berney

    berney

    Joined:
    Sep 11, 2012
    Posts:
    10
    Tried that, not working well. If the user is touching down on the coin, it would work, but I need the user to perform real screen swipe so that the gesture may start outside of the coin and pass the coin collider along the swipe. With the OnSwipe it works, but not with speedy swipes.
     
  18. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Hi,

    Indeed if the swipe is too fast, it is Unity that doesn't follow the rhythm. We must find a trick for your need...

    You can tell me your frame rate ?

    Nicolas
     
  19. berney

    berney

    Joined:
    Sep 11, 2012
    Posts:
    10
    It is around 80FPS on the editor. I thought maybe I will move an empty gameobject with a collider along the swipe coordinates (translated to world coordinates) and then check collisons with my coins. I assume it may work but looking for a simpler solution.

    Eyal
     
  20. mechaghost

    mechaghost

    Joined:
    Feb 1, 2013
    Posts:
    2
    hi, awesome API and library.

    I am having trouble with the swipe being detected on my Nexus 7. I have it working on the Editor, Web Player, and the windows exe. Have you had this problem before?
     
  21. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Hi,

    I haven't trouble swipe (I have nexus 7 too), can you tell me more ?

    Nicolas
     
  22. Player2D

    Player2D

    Joined:
    Feb 2, 2013
    Posts:
    50
    Hello Hedgehog Team
    tell me you can add control Gravity EasyTouch
    in EasyJoystick script
    or somehow disable Gravity when I need it

    sorry my english is bad
     
  23. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Hi,

    Currently gravity is available only when there is the presence of a CharacterController. You can access with the inspector , or byscript with variables xAxisGravity or yAxisGravity of EasyJoystick component.

    Nicolas
     
  24. Player2D

    Player2D

    Joined:
    Feb 2, 2013
    Posts:
    50
    Example "GameController.unity" object is "demon"
    possible to disable / enable the gravity?
     
  25. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Yes, but it isn"t an EasyTouch or EasyJoystick feature. It's just a general case of unity programming.

    It's this line that do the gravity :
    moveDirection.y -= 5 * Time.deltaTime;

    Nicolas
     
  26. nightstalker420

    nightstalker420

    Joined:
    Jan 2, 2013
    Posts:
    3
    Easy Touch isn't easy at all. The only thing out of the box is full screen tapping for mouse 0. All the included scripts are just examples that need to be hand coded to work. It was my assumption that Easy Touch was a editor with the variables written into the scripts. I can't even add a fire button without writing the scripts for it.
    I finally gave up and used the Free Unity mobile controller.
     
  27. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Hi,

    I understand your point of view, as stated in the description in the asset store EasyTouch notifies you of actions that occur to the touch screen with events.

    EasyTouch is not a library of games controller, it can manage the touch in its entirety, as shown EasyJoystick is written with EasyTouch.

    I am sincerely sorry that Easytouch does not match your expectations

    Nicolas
     
  28. seedoubleyoiuy

    seedoubleyoiuy

    Joined:
    Aug 12, 2012
    Posts:
    6
    Hi Hedgehog people,

    Your package works great when adding multiple buttons that work one at a time. But I have been pulling my hair out trying to add a joystick that doesn't stop working as soon as I press a button.


    Could you please post an example of how to add a working button AND joystick that work together simultaneously?


    Thanks!
     
  29. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Hi seedoubleyoiuy,

    Before I 'm starting, can you send me your example ?

    Nicolas
     
  30. seedoubleyoiuy

    seedoubleyoiuy

    Joined:
    Aug 12, 2012
    Posts:
    6
    (I'm not sure how I can send you my example? Do you want me to email you the scene? If I post the scene, as a package so you can open it, won't that post your software as well?)

    My scene is very simple. I've created a very basic joystick to control a object's movement. And to that I've added a very basic button to fire the object's weapon.

    Here's the script controlling the button:


    using UnityEngine;
    using System.Collections;

    public class cwcShooter_button : MonoBehaviour {

    void OnEnable(){
    EasyTouch.On_TouchDown += On_TouchDown;
    }

    void OnDisable(){
    EasyTouch.On_TouchDown -= On_TouchDown;
    }

    // ===================================================================================



    // ===================================================================================
    // Easytouch functions called by OnEnable:
    // ===================================================================================


    void On_TouchDown( Gesture gesture){

    GameObject pickedObject = EasyTouch.GetCurrentPickedObject( gesture.fingerIndex);

    print(pickedObject.name);

    // if something is picked
    if (pickedObject!=null){
    // test the object name
    if (pickedObject.name == "ShooterButton"){
    GameObject.Find("ShipRetroA/BasicWeaponShooter").SendMessage("IShootYou");
    }
    }

    }
    }


    (Sorry about the script formatting, I don't know how to add the script style)

    As you can see, it's a very simple rewrite of one of your scripts. The button works fine when I press it without touching the joystick, but as soon as I touch the joystick, the button stops working.

    I've tried restricting the joystick's "free area" to just the left side of the screen, but this has had no effect.

    How do I get the joystick and the button to work together (at the same time: moving the joystick AND firing the button)?
     
    Last edited: Feb 9, 2013
  31. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Hi,

    It's very simple. You don't have to do :

    Code (csharp):
    1. GameObject pickedObject = EasyTouch.GetCurrentPickedObject( gesture.fingerIndex);
    If you want to know if a touch hit something, just do like this :

    Code (csharp):
    1. if (pickedObject.name !=null){
    2.     if (pickedObject.name == "ShooterButton"){
    3.          do action
    4.     }
    5. }
    You must know , when you subscribe to an event, you receive the event for each finger.

    You can send your scene at this email : the.hedgehog.team@gmail.com
    Don't forget to give your invoice number to...



    INicolas
     
    Last edited: Feb 9, 2013
  32. seedoubleyoiuy

    seedoubleyoiuy

    Joined:
    Aug 12, 2012
    Posts:
    6
    Thanks Nicholas,

    But how do I get the script to recognize any touches without defining the game object "pickedObject"? (Sorry if this is a dumb question; I'm consider myself only an "advanced beginner" who still gets stumped by some scripting problems.)

    I've emailed you my scene, but wouldn't it be easier if you showed how you yourself would set up a basic scene with a joystick and button (or buttons) working together? I'm sure I'm not the only person who would benefit from a quick tutorial on how to do this.

    Thanks for your help!
     
  33. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Hi,

    I just made a little modification on your script, and it's working for me, can you try this :


    Code (csharp):
    1.     void On_TouchDown( Gesture gesture){   
    2.        
    3.         // if something is picked
    4.         if (gesture.pickObject!=null){
    5.             // test the object name
    6.             if (gesture.pickObject.name == "ShooterButton"){
    7.                 GameObject.Find("ShipRetroA/BasicWeaponShooter").SendMessage("IShootYou");
    8.             }
    9.         }
    10.        
    11.     }
    Nicolas
     
  34. seedoubleyoiuy

    seedoubleyoiuy

    Joined:
    Aug 12, 2012
    Posts:
    6
    Thanks Nicholas, I got your reply in email and now it works perfectly!

    For the sake of others who might be having the same problem, here's Nicholas's answer that worked:

    Instead of:

    void On_TouchDown( Gesture gesture){

    GameObject pickedObject = EasyTouch.GetCurrentPickedObject( gesture.fingerIndex);

    // if something is picked
    if (pickedObject!=null){
    // test the object name
    if (pickedObject.name == "ShooterButton"){
    // do something
    }
    }

    }


    Use this:

    void On_TouchDown( Gesture gesture){

    // if something is picked
    if (gesture.pickObject!=null){

    // test the object name
    if (gesture.pickObject.name == "ShooterButton"){
    // do something
    }
    }
    }


    Thanks again, Nicholas!
     
  35. dragonstun

    dragonstun

    Joined:
    Jan 28, 2013
    Posts:
    6
    Hello, I'm just trying to get going with this library and was going step by step through the quickstart tutorial. After importing the package from the asset store, I copied the Plugins folder into the root of the project as indicated in the tutorial. I created the game object and attached the EasyTouch.cs script to it, then set brodacast messages to true. Finally, I created a new Javascript and added the On_Touch (gesture : Gesture){} function. The compiler gives me the following error:

    The name 'Gesture' does not denote a valid type ('not found').

    Doing the C# quickstart worked fine, but I would like to use the library with javascript if possible.
     
    Last edited: Feb 11, 2013
  36. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Hi dragonstun,

    Look at my 3 screenshots, do you have that ?

    * Project :


    * Inspector


    *Javascript


    Nicolas
     
  37. dragonstun

    dragonstun

    Joined:
    Jan 28, 2013
    Posts:
    6
    Hi Nicolas, even though I placed the Plugins folder into the root of the project, it is not displaying inside unity. Take a look at the attached screenshot and you will notice the Plugins folder through the finder window is in the right location. However, Unity only displays the Assets folder.

     
  38. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Hi Dragonstun,

    When I say in the root of your project, it's on the root into unity project view, not on you hard disk (look at my screen in the previous post) To do this :

    1 - Import EasyTouch package in your project
    2 - Drag and drop plugins and gizmos folder out of EasyTouch folder into the project view in unity
     
  39. dragonstun

    dragonstun

    Joined:
    Jan 28, 2013
    Posts:
    6
    Hi and thanks for replying. From within Unity, I cannot drag the Gizmos and Plugins folder from EasyTouch into the main Project panel. I can drag them anywhere within the Assets folder but not outside of it. BTW, just want to let you know I'm using Unity 4 in case that makes any difference...
     
  40. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Hi dragonstun,

    Do you have a skype ?

    My skype : Nicolas Poursin
     
  41. dragonstun

    dragonstun

    Joined:
    Jan 28, 2013
    Posts:
    6
    Hello, I just wanted to give an update on this problem which Nicolas was able to assist me with. Basically, it seems like you must make sure you are viewing the Project tab as a single column instead of 2 columns. With that, I was able to drag the folder into the Root directory within Unity.

    I want to thank Nicolas once again for getting on a quick call with me through SKYPE so that I could share my screen. If the library is half as good as the support he provides, then it was worth every penny!

    Cheers!
     
    Last edited: Feb 11, 2013
  42. Tripwire

    Tripwire

    Joined:
    Oct 12, 2010
    Posts:
    442
    Hi,

    I have a question, does EasyTouch support Flash?
     
  43. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Yes and no, EasyTouch works on Flash player, but the simulation of the second finger don't work for pinch and twist. I must fixe this bug. It's difficult for me because I haven't yet the pro version. It's a customer that raise me this issue

    Nicolas
     
    Last edited: Feb 12, 2013
  44. nightstalker420

    nightstalker420

    Joined:
    Jan 2, 2013
    Posts:
    3
    I see you cry and whine to Unity when someone leaves a bad review to have it removed on the asset store. What are you hiding?
    I looked through the code, and it's no better than the free controller that comes with Unity.
    I know that guy you were being an ass to. Telling him he's not a developer and had his review removed.
    He developed the original Tron game for Disney using pure code when developers actually knew how to program, unlike you who just steal other code and make minor changes with yet another devs front end and say "Look mommy, I'm a programmer".

    It's people like you that cause good devs to have their work pirated. I know I would now, knowing what a piece of crap your junk is.
     
  45. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Hi

    Indeed, we have put together the actions of this person to unity, not on scoring but his behavior. This person removed his review to write new with new acquisition unfounded. He wrote three different reviews

    He Indicated that we use drugs and that we ourselves wrote different review, this is the appeal of defamation.

    "unlike you who just steal other code and make minor changes with yet another devs front end and say "Look* mommy, I'm a programmer".
    More we talk about stealing code, which is do we steal code?


    I am correct in my polite exchanges, I ask you to do the same.
     
    Last edited: Feb 13, 2013
  46. Brainkiller

    Brainkiller

    Joined:
    Aug 7, 2012
    Posts:
    2
    nightstalker420 : 3 posts ? very productive under unity world (more than me) :) what else... Easytouch is a good library (i bought...). I just registered to write this... Don't polemic.Criticism is easy, productivity less.
     
    Last edited: Feb 13, 2013
  47. orokborokhulu

    orokborokhulu

    Joined:
    Sep 20, 2012
    Posts:
    9
    Hi, Hedgy
    Can I use the easy touch with another script easily?
    example: I want to integrated the easy joystick wit the 3rdPersonController that provided by unity default. how to do that?

    thanks
     
  48. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Hi orokborokhulu,

    Yes you can.

    Easy Joystick has 4 user interaction :

    1 - Direct
    For quick prototype, or final result. In this case , it's EasyJoystick that move your object. (Look at this video : http://www.youtube.com/watch?v=Ib6Hx9VpKBM)

    2 - Event
    Your 're notify by event of action on joystick (event are sending by delegate or internal Unity sendmessage method)

    3 - Direct and Event
    It's a mixe of mode 2 3.

    4 - Include
    it's mode that you need to do what you want.
    In this mode EasyJoystick don't send event and don't control anything.
    Just add a public variable of type EasyJoystick in your script and assign your joystick. So you can access the value of the joystick, as you would with the class Input

    Look at my screen shot

    Joystick Setup


    Your controller Setup


    The result


    And the script :

    Code (csharp):
    1. using UnityEngine;
    2. using System.Collections;
    3.  
    4. public class JoystickIncludeModeDemo : MonoBehaviour {
    5.    
    6.     public EasyJoystick myJoystick;
    7.    
    8.     // Use this for initialization
    9.     void Start () {
    10.    
    11.     }
    12.    
    13.     // Update is called once per frame
    14.     void Update () {
    15.         Debug.Log("X axis : "+   myJoystick.JoystickAxis.x + " / Y axis : " + myJoystick.JoystickAxis.y);
    16.     }
    17. }
    Nicolas
     
  49. orokborokhulu

    orokborokhulu

    Joined:
    Sep 20, 2012
    Posts:
    9
    Hi Nicholas

    I'm not really a coder, i designer (3d artist). but try to learning and understanding the script.

    I have implement the way exactly like you said,





    but still the 3rd person character won't move with the easyjoystick, but with the keyboard and the real USB joystick it still can moves.
    why?
     
  50. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    hi orokborokhulu ,

    I just give you an example of how to use include.

    You need to modify character Controller script with this technic. I can create a complet example but I need one or 3 day to do this because I'm not fully avaible

    Nicolas