Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 13 Next capture
2021 2022 2023
1 capture
13 Jun 22 - 13 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by Andycad13 · Dec 30, 2020 at 06:09 PM · 2dmovementcanvasclick

Object moves to bottom left of the canvas?

Hello, Im simply trying to get a click move feature to work, I have followed 2 YouTube videos and both times I have the same result , whilst theirs works perfectly of course.

Here is the script , the script results in the object moving to the same corner of the canvas each time, regardless of the click position, once there clicking again does nothing. Im thinking it has to just be something stupid that I have missed at this point so any help would be very much appreciated !

alt text alt text alt text

 private float speed = 40;
 private Vector3 targetPosition;
 private bool isMoving = false;

 void Update()
 {
     if (Input.GetMouseButton(0))
     {

         SetTargetPosition();
     }


     if (isMoving)
     {
         Move();
     }
 }

 void SetTargetPosition()
 {
     targetPosition = Camera.main.ScreenToWorldPoint(Input.mousePosition);
     targetPosition.z = transform.position.z;

     isMoving = true;
 }

 void Move()
 {
     transform.rotation = Quaternion.LookRotation(Vector3.forward, targetPosition);
     transform.position = Vector3.MoveTowards(transform.position, targetPosition, speed * Time.deltaTime);
     if (transform.position == targetPosition)
     {
         isMoving = false;
     }
 }

}

screenshot-276.png (144.0 kB)
screenshot-278.png (170.6 kB)
Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

1 Reply

· Add your reply
  • Sort: 
avatar image
0

Answer by sacredgeometry · Dec 30, 2020 at 06:37 PM

Try giving the ScreenToWorldPoint a properly formed Vector3. i.e.

 targetPosition = Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, 12));

https://www.youtube.com/watch?v=PjmL4_R0_kw

Comment
Add comment · Show 5 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image Andycad13 · Dec 30, 2020 at 07:26 PM 0
Share

Thanks for the answer, unfortunately the same results !

avatar image Andycad13 Andycad13 · Dec 30, 2020 at 07:37 PM 0
Share

https://youtu.be/bYiybb4eVNs

And A video (can skip the first few seconds)

avatar image Andycad13 Andycad13 · Dec 30, 2020 at 07:45 PM 0
Share

https://youtu.be/RBlLkKikIaY

And the same script inside a blank scene.

avatar image sacredgeometry Andycad13 · Dec 31, 2020 at 05:15 AM 0
Share

I am not sure what you have done because in a new scene, attaching this script to a cube seems to work.


 using UnityEngine;
 
 public class Tester : $$anonymous$$onoBehaviour
 {
     
     private float speed = 40;
     private Vector3 targetPosition;
     private bool is$$anonymous$$oving = false;
     void Update()
     {
         if (Input.Get$$anonymous$$ouseButton(0))
         {
             SetTargetPosition();
         }
         if (is$$anonymous$$oving)
         {
             $$anonymous$$ove();
         }
     }
     void SetTargetPosition()
     {
          targetPosition = Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, 12));
         is$$anonymous$$oving = true;
     }
     void $$anonymous$$ove()
     {
         transform.rotation = Quaternion.LookRotation(Vector3.forward, targetPosition);
         transform.position = Vector3.$$anonymous$$oveTowards(transform.position, targetPosition, speed * Time.deltaTime);
         if (transform.position == targetPosition)
         {
             is$$anonymous$$oving = false;
         }
     }
 }
 

Show more comments

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

302 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

Change sprite when moving(2D) 1 Answer

Question on Sprite and Movement 0 Answers

Simple movement problem. Need units to stop dead on collision. 3 Answers

How to prevent jitter with movement over curved slopes 0 Answers

Player moves to the middle of the room when the level starts (2d point and click) 2 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges