- Home /
Question by
MelodyKayeX · Feb 15, 2017 at 07:28 AM ·
touchrotatescaletouch controlssprite renderer
How to scale and rotate a sprite renderer using one touch?
Hi,
I have a sprite renderer which I want to scale and rotate using one touch only.
What I want to achieve is like how you can control the stickers in PhotoGrid app.
I am using Easy Touch 5 for the touch gesture and DoTween for the rotation and scaling.
And, I was able to rotate the sprite renderer already. But, it is only rotating counterclockwise and not that smooth.
Here's my code for the rotation:
public void Rotate(Gesture gesture) {
worldPoint = gesture.GetTouchToWorldPoint(new Vector3(gesture.position.x, gesture.position.y, 0f));
deltaX = worldPoint.x - this.transform.position.x;
deltaY = worldPoint.y - this.transform.position.y;
angle = Mathf.Atan2(deltaY, deltaX);
angle += 10;
rotation.z = sticker.transform.rotation.eulerAngles.z + angle;
sticker.transform.DORotate(rotation, 0.00001f);
}
Regarding the scaling, I'm quite lost where to start.
Thanks in advanced for those who will answer my question.
Comment
Your answer
Follow this Question
Related Questions
touch(pinch) to scale a game object 0 Answers
store the user touch input 0 Answers
Unity Touch Help! 0 Answers
GUI Scale and Rotate 1 Answer
OnMouseDown and mobile? 3 Answers