Search Unity

[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,

    Can you give me you user name on our forum

    I want to use EasyTouch as my camera view rotation,When i enabled it, my joystick and button didnt work
    I don't really understand what you mean

    How can i set EasyTouch to only detect half-to top area of my screen?
    You can't limit the zone of action EasyTouch, however you can test whether the position is in a zone.

    Do you an example or diagram ?
     
  2. wahyuway

    wahyuway

    Joined:
    Oct 7, 2013
    Posts:
    84
    I am sorry for my bad english.
    Nice, thanks for your suggestion. I can now use my camera script when i swipe on top area of my screen only.

    My username the same as this forum.
     
  3. Vilhelmus

    Vilhelmus

    Joined:
    Dec 18, 2014
    Posts:
    20
    Thanks Nicolas. Great support. I wasn't expecting it to be so simple.
     
  4. Hedgehog-Team

    Hedgehog-Team

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

    EasyTouch 4 RC1 is available with EasyTouch 3.X on Unity AssetStore :http://u3d.as/2Uo
     
  5. wahyuway

    wahyuway

    Joined:
    Oct 7, 2013
    Posts:
    84
    Hi nic, how can i set receiver gameobject programmatically? i am using js.
     
  6. Hedgehog-Team

    Hedgehog-Team

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

    When you use Javascript, the messages are sent to the picked gameObject or on EasyTouch game if there isn't picked GameObject. However you can set an OtherRecevierObject in the inspector or by script with the static method SetOtherReceiverObject

    EasyTouch.SetOtherReceiverObject( yourGameObject);
     
  7. chaneya

    chaneya

    Joined:
    Jan 12, 2010
    Posts:
    416
    I was wondering if EasyTouch 4 will take into account different screen DPI when detecting Swipe. I did not see this mentioned in your list of features. EasyTouch 3.1 does not address this issue as far as I can tell.

    The following link lays out the problems pretty well.
    http://answers.unity3d.com/questions/31012/how-to-account-for-various-screen-dpi.html

    As an example, my current game uses EasyTouch 3.1. The default swipe event works great on an iPad 2. Try that same default on an iPhone 4 or HTC One (M8) and simply touching the screen fires a swipe event. This is because Unity uses Touch.deltaposition which is measured in pixels. You cover the same number of pixels with a one inch swipe on an iPad 2 that you do by just touching a iPhone 4, 5, 6, HTC One etc.

    I used gesture.swipelength as a way to control when my swipe was fired but that's a cheap hack at best since new screen sizes with higher resolutions are constantly introduced.

    Thanks
    Allan
     
  8. Hedgehog-Team

    Hedgehog-Team

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

    For EasyTouch 3.X
    The parameter Stationnary Tolerance is here for that.
    Andthe events event On_SwipeStart / On_Swipe / On_Swipe, that take into account this value.
    So you can calculate yourself your own "tolerance zone" and assign it to launch depending on the platform, with the static method SetStationnaryTolerance

    For EasyTouch 4.X
    Several changes have already been made
    • EasyTouch 4 no longer uses Unity deltaPosition, but it calculates its own delta (because this delta was relative to platform not to the real delta)

    • EasyTouch 4 have two detection modes
      • Tap : For a swipe is detected, the touch must be moving> parameter stationnary Tolerence. (The EasyTouch 3.X mode )
      • Slips : Do not take into account parameter stationnary Tolerence, but TouchPhase.Moved.
    I'm going to look at that , but I think I going to add a parameter to modify in realtime the stationnary Tolerance, not the other datas.

    I invite you to update your EasyTouch, there are now 4 RC1 provided
     
    Last edited: Jan 3, 2015
  9. Hedgehog-Team

    Hedgehog-Team

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

    Check out the first video of EasyTouch Controls

    EasyTouch Controls is 100% Unity UI and uses the new UI event classe. Several control are available: Joystick, DPad, TouchPad, Button

    Each control has 3 methods of integration:
    - Direct : to move your object without a line of code
    - Event : to call existing method
    - By script : to migrate existing scripts

    And much more ...

    Available January 2015, It will be integrated with EasyTouch 4 replacing EasyJoystick and EasyButton and sold separately

     
    wahyuway likes this.
  10. chaneya

    chaneya

    Joined:
    Jan 12, 2010
    Posts:
    416
    Thanks for the feedback on how 4.x handles swipe. Hopefully that will resolve the screen DPI issue.

    I downloaded the new EasyTouch with 4 RC1 but I can't find instructions or even a recommendation regarding upgrading an existing project. The only information you have is a readme that says Create a new project and drop in EasyTouch4RC.

    Can I upgrade my existing 3.1 project to 4 RC1? Should I delete the existing EasyTouch folder before unpackaging 4 RC1? If I unpackage 4 RC1 in the same project that currently uses 3.1, will they function side by side or will 4 RC1 overwrite 3.1?

    Thanks for any guidance.

    Allan
     
  11. Hedgehog-Team

    Hedgehog-Team

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

    EasyTouch 4 RC1 firing the same events as EasyTouch 3.X, so you have just remove you EasyTouch 3.X folder, and import the new one. (make a backup of your project before).

    News events are available to interact with the new UI (look at examples), and gesture class have some news methods

    But EasyTouch 4 no longer support reserved area (no need with the new UI), so you can't use EasyJoystick or EasyButton with it, they will be replace by EasyTouch Controls.
     
  12. JakeTBear

    JakeTBear

    Joined:
    Feb 15, 2014
    Posts:
    123
    Hello, I bought EasyTouch a long time ago directly in your website, it seems that the package there never gets updated, is this the case? I will not be able to get your latest package if I bought it directly from you?

    Edit: The version in the website says "3.0" but it seems the package you download still contains all the new stuff inside, what a relief :)
     
  13. Hedgehog-Team

    Hedgehog-Team

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

    We update the package, so that older buyers can get the updates by accessing their account. But shops being closed we don't update the description
     
  14. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
  15. Aurecon_Unity

    Aurecon_Unity

    Joined:
    Jul 6, 2011
    Posts:
    241
    Hi Hedgehog,

    If I purchase Easytouch 3.x now, am I upgraded to 4.0 free of charge when it is released?

    And can you confirm that the RC1 is bascially the 4.0 release apart from documentation?

    I only want it for the 4.6 (new UI) features, so I'm not sure if I should hold off on 4.0 or just buy now.

    I only want it for some very basic stuff - a joystick and trackpad for mobile. I'm assuming this plugin covers that plus a whole lot more?

    Thanks
     
  16. Hedgehog-Team

    Hedgehog-Team

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

    Yes it is, all updates are free, even major revisions. (EasyTouch 4 RC1 (Release Candidate), and EasyTouch Controls) are already provided with EasyTouch 3.X

    Yes, EasyTouch 4 RC1 is the 4.0 without documentation.

    Yes, the bundle EasyTouch & EasyTouch Controls cover more than you ask. But Easy Touch Controls will also be sold separately

    More detail on Easy Touch Controls here
     
  17. Aurecon_Unity

    Aurecon_Unity

    Joined:
    Jul 6, 2011
    Posts:
    241
    Thanks Hedgehog.

    Pardon my ignorance, but the link you sent doesn't really explain the difference between EasyTouch and EasyTouch Controls - I understand that if you buy EasyTouch it also comes with Controls, or you can buy Controls separately (when released).

    I'm just not sure of the difference? Is Controls 100% geared towards the new UI, whereas EasyTouch is for legacy versions?

    Thanks for your reply though - looks like you've got another customer!
     
  18. Hedgehog-Team

    Hedgehog-Team

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

    EasyTouch is a gesture manager that allow you to do action relative to a gesture (Tap, Double, Swipe, Pinch, Twist etc...), it manages multi-touch, auto selection, layer, multi camera etc ...

    EasyTouch 4 RC1 web player

    EasyTouch Controls is a virutal controller package, to do action relative to a joystick, button, dpad , touchpad.
     
  19. DarkAnvil

    DarkAnvil

    Joined:
    Jun 7, 2014
    Posts:
    102
    Hi,

    EasyTouch 4 gold release will be available in the comings days

    Meanwhile a video of the new component EasyTouchTrigger
     
  20. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Kellyrayj and OnePxl like this.
  21. Goofy420

    Goofy420

    Joined:
    Apr 27, 2013
    Posts:
    248
    Great update. I have a question though.
    With the new even system, there's GetButtonDown but not GetButtonPress. Should I assume that GetButtonDown will handle press and down?
    Thanks in advance.

    Edit; Nevermind, I see now, it's (GetButtonValue > "someTime") for press, correct?
    This is how I believe to handle it:
    if (ETCInput.GetButtonDown(ShootButton.name) || (ETCInput.GetButtonValue(RunButton.name) > 0.5f)) dostuff;
     
  22. gegagome

    gegagome

    Joined:
    Oct 11, 2012
    Posts:
    392
    Hello there

    What is the equivalent for SwipeType in 4.0?

    I have a case of these and I don't know where the API for 4.0 is:
    EasyTouch.SwipeType.Left:

    Thanks
     
  23. Hedgehog-Team

    Hedgehog-Team

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

    Goofy420
    I used the same syntax as Unity to ease the migration of a script using the Input class :

    ETCInput.GetButton = Returns true while the button identified by buttonName is held down.
    ETCInput.GetButtonDown = Returns true during the frame the user pressed down the virtual button identified by buttonName.

    GetButtonValue doesn't return the time presse, but the value of the button relative to his step value over the step.

    Gegagome
    Oups, It's an oversight on my part in the documentation, SwipeType is replaced by SwipeDirection
     
    Last edited: Jan 17, 2015
    RoyalCoder likes this.
  24. wahyuway

    wahyuway

    Joined:
    Oct 7, 2013
    Posts:
    84
    Hi, need some help.
    i updated the package,removed older EasyTouch 3.x folder, and imported the new one. But i still have error messages:

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

    The name 'EasyButton' does not denote a valid type ('not found'). Did you mean 'Boo.Lang.Compiler.Ast.ExceptionHandler'?

    How to fix this? thank you. (i am using JS in my script)
     
  25. Hedgehog-Team

    Hedgehog-Team

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

    EasyTouch 4 no longer support EasyJoystick & EasuButton. The errors you have, come from that.

    The name 'MovingJoystick' does not denote a valid type ('not found').
    From what I see after you use the event mode.

    * Remove your old joystick
    * Create a new joystick with EasyTouchControls
    * Setup your new joystick (if you use direct mode, with the old one)
    * You must change your functions so that they receive as parameter a Vector2. Then call them from the new event system

    The name 'EasyButton' does not denote a valid type ('not found')
    You have to use the new button from EasyTouchControls, and proceed as for the joystick based on the technique you used to use the button
     
    wahyuway likes this.
  26. BTStone

    BTStone

    Joined:
    Mar 10, 2012
    Posts:
    1,422
    Does this package work with Unity 4.3.X? We're developing our game for PS Vita and would like to test this plugin for touch-input.
     
  27. Hedgehog-Team

    Hedgehog-Team

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

    The 4.X requiere Unity 4.6, but I can provide an older version for Unity 4.3 (You will not have all the features of the 4.X course...)
     
  28. imtrobin

    imtrobin

    Joined:
    Nov 30, 2009
    Posts:
    1,548
    I updated to 4.0, it seems the simulation Swipe Key has issues. xample, on RTS Example, when I hold Left Control, the camera moves wildly. Happens on some other demos I tried.
     
  29. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    I'll watch, I can reproduce the case, you must initiate movement and it is not 100%
     
  30. imtrobin

    imtrobin

    Joined:
    Nov 30, 2009
    Posts:
    1,548
    Has the NGUI integration changed? The behavior seems different from previous v3.
     
  31. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Yes, there is a small modifcation, Only On_TouchStart event was considered for Ngui, now it's all events.

    But that's why, I indicates that the migration of an ongoing project that doesn't require integration of the new UI isn't recommended.

    I tried to do my best not to break anything. But sometimes we must also evolve.
     
  32. mog-mog-mog

    mog-mog-mog

    Joined:
    Feb 12, 2014
    Posts:
    266
    Thank you Hedgegog team with their great support. Hedgehog team have helped me over skype call -
    1) Looked into my project
    2) Explained me the issue
    3) Suggested a solution

    Once again, Easy touch is the best touch package and Support from Hedgehog team is more than awesome. Thank you
     
  33. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Thank you, we try to do our best.
     
    Kellyrayj likes this.
  34. Arc_Blight

    Arc_Blight

    Joined:
    Nov 29, 2012
    Posts:
    8
    Hi Hedgehog Team, I had the same problem with NGUI integration in your newer version.
    If I set the Camera for both NGUI Layer and Picked Object Layer, I will have this null reference error:
    "EasyTouch.IsTouchOverNGui (Int32 touchIndex, Boolean isTwoFingers)"
    And if I removed both of the camera from your variable in the Inspector, the NGUI integration doesn't work.
    Meaning, when I clicked/swiped over an NGUI element with collider, it will still register the touch to the object behind in which the Layer is registered as a Picked Object.

    Could you take a look at this issue? I need this to be resolved soon if possible. Thank you very much.
     
  35. f1chris

    f1chris

    Joined:
    Sep 21, 2013
    Posts:
    335
    First, I love your new version 4. So well done.

    I have two issues if someone can help me please.

    1- I have 2 joysticks, Left (Horizontal/Vertical) and Right (Mouse X / Mouse Y). What's the most efficient way if when I move Left/Right from Left Joystick I want to send a Mouse X event as well to the right joystick ??

    2- My game is already working with some keyboard commands.... how do I simulate by example a "R" key pressed from EasyTouch ??

    thx very much in advance
     
  36. angel_m

    angel_m

    Joined:
    Nov 4, 2005
    Posts:
    1,160
    The Dynamic option in Joystick is not working correctly. When enabled, the joystick does not work.
     
  37. Hedgehog-Team

    Hedgehog-Team

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

    Arc_Blight
    On my way, the fixe will available in few hours.

    f1christian
    1- I do not very well understand the meaning of your question, however, why want to send a mouse event to a virtual control?

    2- The best way it's to use the input manager,

    If (Input.GetKey("R")

    by

    if (ETCInput.GetAxisDown("axisName"))

    Angel_m
    I need more explanation, because I don't have issue with dynamic joystick
    - Do you use USER_DEFINED area or preset area?
    - What is the behavior of the joystick ?
     
    Last edited: Jan 26, 2015
  38. Hedgehog-Team

    Hedgehog-Team

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

    EasyTouch 4.0.1 is available

    EasyTouch 4.0.1
    ===============================
    - NGUI compatibility mode works as EasyTouch 3.X
    - New parameter allow you to choose the double tap detection mode :
    By system : Double works as EasyTouch 3.X
    By time : Double tap is relative to a maximum time, On_Simple isn't firing during a double tap, but a delay is required before to send it.
     
  39. imtrobin

    imtrobin

    Joined:
    Nov 30, 2009
    Posts:
    1,548
    Reporting spelling error, GetTouchToWordlPoint
     
  40. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    Thank you imtrobin
     
  41. angel_m

    angel_m

    Joined:
    Nov 4, 2005
    Posts:
    1,160
    This is with the FPS example and with preset area (Fullscreen).
    Simply the joystick set to Dynamic is not visible (as expected) but it does not work (no movement or rotation of camera).
     
  42. Hedgehog-Team

    Hedgehog-Team

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

    Thank you.

    It's come that dynamic joystick isn't allow over a selectable UI Element, and on this example there a full is screen touch pad.
    But I found a bug if the joystick anchor isn't at the center in dynamic mod. I'm going to fixe this bug.

    May be I can add a parameter to allow dynamic joystick on TouchPad
     
  43. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    The bug seems more complicated, I correct it tonight.
     
    Kellyrayj likes this.
  44. Hedgehog-Team

    Hedgehog-Team

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

    Easy Touch Bundle 4.0.2 is in pending review

    EasyTouch 4.0.2
    - fixe spelling error : GetTouchToWordlPoint to GetTouchToWorldPoint

    EasyTouchContols 1.0.1
    - Dynamic joysticks no longer appears above a selectable UI element Ui and no staying sticky
    - Dynamic joysticks are placed at the forefront of canvas.
    - You can authorized a dynamic joystick above touchpad.
    - The button value is correctly reset to 0 after his release on over the time mode.
     
  45. angel_m

    angel_m

    Joined:
    Nov 4, 2005
    Posts:
    1,160
    Thanks, it is fast support!
     
  46. angel_m

    angel_m

    Joined:
    Nov 4, 2005
    Posts:
    1,160
    I have noticed that Input mode is very limited. In the FPS example If you destroy the player and reinstantiate again in game, commands like:
    ETCInput.GetButtonUp("Fire") from the script are not going to work anymore. Simply the button associated (in this example "Fire") is not working when pressed.
    Is it possible to reassign the buttons by script?
     
  47. Hedgehog-Team

    Hedgehog-Team

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

    A another time, I need more information :)

    The API isn't link to the player, so ETCInput.GetButtonUp for exemple always fired even if the player is detroy. But if you link a gameobject to an event, of course the reference will be broke. For me it is two different things Input manager & Events.

    So in your case, ETCInput.GetButtonUp("Fire") always return false after you load a new player ?

    Do you use a load scene to reset the player ?
     
    Last edited: Jan 27, 2015
  48. angel_m

    angel_m

    Joined:
    Nov 4, 2005
    Posts:
    1,160
    For this case I am using Input manager not Events.
    When I instantiate a new player the "Fire" button (and any other button accessed by script with Input manager) is not working anymore so it always return false. It is strange.
    I use Instantiate to create a new player (in the same scene, I destroy the old player and instantiate a new one).

    You can reproduce this in your FPS example.
     
  49. Hedgehog-Team

    Hedgehog-Team

    Joined:
    Feb 27, 2011
    Posts:
    1,155
    I'm sorry, I can't reproduce the case. Can you create a simple example a send me your package ?

    Do you have warning or error like "EVCInput control : New Button already exist" ?
     
  50. angel_m

    angel_m

    Joined:
    Nov 4, 2005
    Posts:
    1,160
    I don't receive any warning or error because the EasyTouchControlsCanvas is also destroyed with the palyer and reinstantiated again with the new player.
    You can reproduce the case if you assign a key press to destroy the player and the EasyTouchControlsCanvas and another key press to instantiate them again. Once reinstantiated the new player and the new EasyTouchControlsCanvas, the buttons using Input manager like "Fire" and "Reload" don't work anymore.