• 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 SlapnutsGT · Apr 08, 2011 at 12:09 AM · rotationphysicsprojectilez-axisspin

Rotating projectile

I have a simple game where a gorilla throws a banana ... here is the overall script thus far:

var force:int; var angle:int; //var prefabBanana:Transform; var temp:int; var temptwo:int; var prefabBanana : GameObject; //var gorilla : GameObject; var elevationAngle : Vector3; var throwForce : int;

function OnGUI () {

     if(GUI.Button(Rect(10, 50, 80, 20), "Launch!!")) {
     Launch();
     }

     var text = GUI.TextField(Rect(10, 10, 50, 20), angle.ToString());
     var texttwo = GUI.TextField(Rect(10, 30, 50, 20), force.ToString());

     if (int.TryParse(text, temp)){
     angle = Mathf.Clamp(0, temp, 360);
     }

     else if (text == "") angle = 0;

     if (int.TryParse(texttwo, temptwo)){
     force = Mathf.Clamp(0, temptwo, 360);
     }

     else if (texttwo == "") force = 0;

}

function Launch() {

 elevationAngle = Vector3(0,0,angle);
 throwForce = force *100;

 var banana : GameObject; 

 banana = Instantiate(prefabBanana, transform.position, Quaternion.identity);

 var elevation : Vector3 = Quaternion.Euler(elevationAngle) * transform.forward;

 new banana.rigidbody.AddForce(elevation * throwForce);

     }

It all works correctly, except I would like the banana to travel while rotating on I believe is my z-axis in a clockwise rotation. Kinda stumped on what approach to take for this ... thanks!

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 SlapnutsGT · Apr 08, 2011 at 12:11 AM 0
Share

BTW I tried animating and was having some issues with keeping banana on the correct path... I figured there would be a simpler approach with scripting... if animation provides a faster approach I'm all ears.

2 Replies

· Add your reply
  • Sort: 
avatar image
1

Answer by DaveA · Apr 08, 2011 at 12:11 AM

I think you want this: http://unity3d.com/support/documentation/ScriptReference/Rigidbody.AddRelativeTorque.html

Comment
Add comment · 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
-1

Answer by zmar0519 · Apr 08, 2011 at 12:56 AM

try transform.roatate. if you do use this approach, then be sure to make the collider a child, otherwise it won't work.

Comment
Add comment · 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

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

The best place to ask and answer questions about development with Unity.

To help users navigate the site we have posted a site navigation guide.

If you are a new user to Unity Answers, check out our FAQ for more information.

Make sure to check out our Knowledge Base for commonly asked Unity questions.

If you are a moderator, see our Moderator Guidelines page.

We are making improvements to UA, see the list of changes.



Follow this Question

Answers Answers and Comments

No one has followed this question yet.

Related Questions

Finding angle of angular motion 1 Answer

Rotation eulerangles not adjusting correctly... 2 Answers

make object rotate towards its direction after bounce 1 Answer

How can I rotate RigidBody and not violate physics? 2 Answers

How to get Steering Wheel Rotation angle? 1 Answer

  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges