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 Marcosprod · Dec 26, 2013 at 03:36 PM · rotationcamera-lookrotation axisrotatearoundrotating

Rotate objects face to camera

Hi all, I'm new here, and my english is not very good.

I am creating a generator molecules.

When I add a triple molecule want to face the cylinders always stay ahead of the camera.

Attached a picture! alt text

I'm rotating the molecules with ITween, like this:

      switch (number) {
 
          case 1:
              if (count == 0)
              iTween.RotateTo (connection, Vector3 (0.0, 0,2.0);
              break;
          case 2:
              if (count == 0) {
 iTween.RotateTo (connection, Vector3 (0.0, 0,2.0);
              } else if (count == 1) {
 iTween.RotateTo (connection, Vector3 (180.0, 0,2.0);
              }
              break;

And I have a function that updates the rotation of the double and triple molecules.

With 2 molecules already got an interesting result. But with 3 onwards was not good.

Attached project too. PROJECT DOWNLOAD

Thank you very much.

unity_rotate_objects.jpg (196.2 kB)
moleculas_v2.zip (435.1 kB)
Comment
Add comment · Show 1
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 Marcosprod · Dec 28, 2013 at 08:00 PM 0
Share

I try this:

 var targetAngle : float = Vector3.Angle( Camera.main.transform.position, temp.transform.position );
 
 currentAngle = $$anonymous$$athf.$$anonymous$$oveTowards(curAngle, targetAngle, 3 * Time.deltaTime);
 
 temp.transform.RotateAround (moleculaCentral.transform.position, Vector3.forward, curAngle);

But dont work! :(

1 Reply

· Add your reply
  • Sort: 
avatar image
0

Answer by zharik86 · Dec 27, 2013 at 01:17 PM

Why not to use usual transform.Rotate ()? Place everything your object in one main (some kind of container). That to make it, create empty GameObject. Its position (0, 0, 0), rotation (0, 0, 0), scale (1, 1, 1). After it is possible to rotate the created container, at the same time rotating cylinders and spheres.

Comment
Add comment · Show 25 · 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 Marcosprod · Dec 28, 2013 at 06:28 PM 0
Share

I try this alternativa, but don`t get good results.

avatar image Marcosprod · Dec 28, 2013 at 08:02 PM 0
Share

This script is almost run. Only it has some angles that is crazy! rs.rs.rs

 var targetAngle : float = Vector3.Angle( Camera.main.transform.position, temp.transform.position );
 var cross:Vector3 = Vector3.Cross(Camera.main.transform.position, temp.transform.position);
 if (cross.z > 0) targetAngle = -(targetAngle);
 
 curAngle = $$anonymous$$athf.$$anonymous$$oveTowards(curAngle, targetAngle, speed * Time.deltaTime);
 temp.transform.eulerAngles = Vector3(0, 0, curAngle-45);
avatar image Marcosprod · Dec 28, 2013 at 08:05 PM 0
Share

At a specific angle it rotates the opposite angle to reach the destination.

avatar image Marcosprod · Dec 29, 2013 at 12:06 PM 0
Share

In this script the rotation does not respond well in some angles. See the video: http://www.youtube.com/watch?v=Vpp$$anonymous$$BlodLdc

avatar image zharik86 · Dec 29, 2013 at 08:22 PM 0
Share

@$$anonymous$$arcosprod Do you want to rotate the camera round object or object?

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

19 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

Related Questions

need my object to rotate between specific angles on the x axis 2 Answers

Using Camera screen point to ray for look rotation problem... 1 Answer

LookRotation is Returning Weird Values 0 Answers

Rotation that keeps upright 1 Answer

Rotate within range 1 Answer


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