Touch event on a 2d image
-
I'm trying another approach now to basically get the position of the touch and compare with the position of my image to see if the touch was on it.
The problem is that the touch event position is in screen space but the image position is in the world coordinate system. How could I go about detecting if the touch was on the image?
//@input Component.Image image
var event = script.createEvent("TouchEndEvent");
event.bind(function(eventData)
{
print("touch ended");
print(event.getTouchPosition())
print(script.image.getTransform().getInvertedWorldTransform())
});
thank you
Comment actions -
I was finally able to make my 2d image receive touches by adding the touch component to it and selecting itself as the mesh.
Comment actions -
Hello Marco,
As far as I can see you’ve already solved your problem but I’m just going to give you a quick tip!
There is a pretty useful script integrated in the software called “Behaviour Script”!
You can add it to your project at any given time by going to your Project Resources > Add a helper script > Behaviour Script.
After you add the script to your resources you can add it to as many objects as you want with different functions set on it!
First select how to activate the function, after that check “always, after interval or once” if you want to do the function multiple times and even enter a delay if you want to!
Below these options in the script you’ll also have an output “function”.There you can select if you want to disable/enable/toggle/play animation/play sound/change texture (basically tell the script what to do) on the object .
You can check the Behavior Script guide over here!https://lensstudio.snapchat.com/guides/scripting/helper-scripts/behavior/
Regards,
Nick.Comment actions
Please sign in to leave a comment.
Have a comment?