- Home /
Using a Gui slider to rotate the character
I'm trying to figure out how to have a slider (GUI) manipulate the rotation of my character and the fpscamera. I only want it to go 180 degrees (left - right) because I don't want the player to look backwards. How would I go about this?
(I'm writing in JS)
Answer by robertbu · Jan 16, 2014 at 08:25 PM
This script attached to an object will display a horizontal slider and allow you to rotate that object -90 to 90 degrees. My guess is there is more to your problem which you have not detailed in your question.
#pragma strict
var hSliderValue : float = 0.0;
function Update() {
transform.eulerAngles = Vector3(0.0, hSliderValue, 0.0);
}
function OnGUI () {
hSliderValue = GUI.HorizontalSlider (Rect (25, 25, 200, 30), hSliderValue, -90, 90.0);
}
Yea you are right, I forgot to mention that this is for Android, so I need the slider to have "GetTouch". When i attached this script to the character it didn't display on the camera... Is there a way I can position it on the bottom middle of the camera of my selection, so the slider wont be in the way?
You need to read about GUI and understand their coordinate system and how you place things:
http://docs.unity3d.com/Documentation/Components/gui-Basics.html
For bottom middle, you might use:
hSliderValue = GUI.HorizontalSlider (Rect(Screen.width/2.0 - 100, Screen.height - 35, 200 30), hSliderValue, -90, 90.0);
Awesome thanks did some research and found out how to position and size.
Your answer
Follow this Question
Related Questions
how to set the slider to rotate an object between two degrees on the y axis 1 Answer
move object with slider 1 Answer
ammo count help 1 Answer
How can I clamp the object up and down rotation from 0 to -90? 1 Answer
How to add the option to change field of view through using a slider in a game option menu? 1 Answer