HTML код для вашего блога :
как видно из веб демки при приближении шара к "двери" она открывается как-то непонятно(если подъехать к двери задом она открывается, а передом нет)
с фест персон контроллером все нормально
что это такое?
скрипты проиланаю:
Синтаксис:
Используется javascript
var speed = 10.0;
var gravitypull = 0;
function FixedUpdate() {
rigidbody.AddForce (Vector3(0, gravitypull, 0));
var cameraTransform = Camera.main.transform;
// Forward vector relative to the camera along the x-z plane
var forward = cameraTransform.TransformDirection(Vector3.forward);
forward.y = 0;
forward = forward.normalized;
// Right vector relative to the camera
// Always orthogonal to the forward vector
var right = Vector3(forward.z, 0, -forward.x);
if (Input.GetKey ("a")) {
rigidbody.AddTorque(forward * speed * Time.deltaTime);
}
if (Input.GetKey("d")) {
rigidbody.AddTorque(forward * -speed * Time.deltaTime);
}
if (Input.GetKey("w")) {
rigidbody.AddTorque(right * speed * Time.deltaTime);
}
if (Input.GetKey ("s")) {
rigidbody.AddTorque(right * -speed * Time.deltaTime);
}
}
var gravitypull = 0;
function FixedUpdate() {
rigidbody.AddForce (Vector3(0, gravitypull, 0));
var cameraTransform = Camera.main.transform;
// Forward vector relative to the camera along the x-z plane
var forward = cameraTransform.TransformDirection(Vector3.forward);
forward.y = 0;
forward = forward.normalized;
// Right vector relative to the camera
// Always orthogonal to the forward vector
var right = Vector3(forward.z, 0, -forward.x);
if (Input.GetKey ("a")) {
rigidbody.AddTorque(forward * speed * Time.deltaTime);
}
if (Input.GetKey("d")) {
rigidbody.AddTorque(forward * -speed * Time.deltaTime);
}
if (Input.GetKey("w")) {
rigidbody.AddTorque(right * speed * Time.deltaTime);
}
if (Input.GetKey ("s")) {
rigidbody.AddTorque(right * -speed * Time.deltaTime);
}
}
Синтаксис:
Используется javascript
/*
function OnControllerColliderHit(hit : ControllerColliderHit)
{
if(hit.gameObject.tag == "door")
{
hit.gameObject.animation.Play("door_open");
}
}
*/
var rayCastLength = 5;
function Update()
{
var hit : RaycastHit;
if(Physics.Raycast(transform.position, transform.forward, hit, rayCastLength))
{
//with a door
if(hit.collider.gameObject.tag == "door")
{
//open door!
hit.collider.gameObject.animation.Play("door_open");
}
}
}
function OnControllerColliderHit(hit : ControllerColliderHit)
{
if(hit.gameObject.tag == "door")
{
hit.gameObject.animation.Play("door_open");
}
}
*/
var rayCastLength = 5;
function Update()
{
var hit : RaycastHit;
if(Physics.Raycast(transform.position, transform.forward, hit, rayCastLength))
{
//with a door
if(hit.collider.gameObject.tag == "door")
{
//open door!
hit.collider.gameObject.animation.Play("door_open");
}
}
}
Оба скрипта висят на шаре