• 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
Question by Tigro · Jan 27, 2016 at 01:18 PM · cameraunity5rigidbody2dcamera-movement

Camera stutter when following a RigidBody2D

I'm creating an endless runner and I want the camera to go the same speed as the player (controlled by the PlatformerCharacter2D script from the standard assets) but since the player can sometimes mistime their jump and lose a second if they $$anonymous$$t the side of the platform instead of jumping on top of it, the camera is to ignore it and go forth without waiting for the player to catch up.

To do it, I created a dummy empty object and added a RigidBody2D to it, setting everyt$$anonymous$$ng to 0 and in the script of the dummy, I set it to the player position and give it the velocity I want (the same as the player most often):

 public float speed;

 void Start () {
     transform.position = GameObject.Find("Character").transform.position;
     GetComponent<Rigidbody2D>().velocity = new Vector2(speed, 0);
 }

Then, I just use the camer'a script to take the dummy's position:

 public Transform DummyTransform;

 void Update () {
     transform.position = new Vector3(DummyTransform.position.x + 6, transform.position.y, transform.position.z);        
 }

T$$anonymous$$s works but results in enormous stutter causing everyt$$anonymous$$ng to shake and twitch a visible amount. If, however, I set the dummy to just move a constant number of pixels per frame:

 void Update()
 {
     transform.position = new Vector3(transform.position.x + 0.12f, transform.position.y, transform.position.z);
 }

OR I tell the camera to follow the player and not the dummy:

 void Update () {
     transform.position = new Vector3(player.position.x + 6, transform.position.y, transform.position.z);        
 }

Then everyt$$anonymous$$ng is fine and dandy. Why is that so? How can I repair it so that I can have it follow the dummy object smoothly?

Comment

People who like this

0 Show 0
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

0 Replies

· Add your reply
  • Sort: 

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.

Welcome to Unity Answers

If you’re new to Unity Answers, please check our User Guide to help you navigate through our website and refer to our FAQ for more information.

Before posting, make sure to check out our Knowledge Base for commonly asked Unity questions.

Check our Moderator Guidelines if you’re a new moderator and want to work together in an effort to improve Unity Answers and support our users.

Follow this Question

Answers Answers and Comments

5 People are following this question.

avatar image avatar image avatar image avatar image avatar image

Related Questions

Problems changing camera position 1 Answer

Problem with the camera, 2D. 0 Answers

Mouse movement shakes camera. 2 Answers

How do I get my camera to rotate around the y=0 coordinate it's looking at? 0 Answers

Vuforia camera frustum out of view after image target is lost 0 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