2014-12-02 2 views
0

У меня проблема с моим кодом, я пытаюсь переместить 3D-окно в переменную положения мыши, мне нужно знать, как изменить поле x, y, z с моим сценарием положения мыши. Все, что я действительно спрашиваю, это как изменить мои поля x, y, z с переменной в другом скрипте. Благодаря!Unity box to Mouse issue

Код:

#pragma strict 

public var distance : float = 4.5; 
var box = Transform; 
private var firstObject : cube; 

function Start() { 
} 

function Update() { 
     CastRayToWorld(); 
} 

function CastRayToWorld() { 
     var ray : Ray = Camera.main.ScreenPointToRay(Input.mousePosition);  
     var point : Vector3 = ray.origin + (ray.direction * distance);  
     Debug.Log("World point " + point); 
     firstObject = GameObject.Find("pos").GetComponent("cube").pos = point; 
     firstObject.pos = point; 
} 
+0

Xyz преобразования в пределах сцены является атрибутом 'position', поэтому' box.position = <... несколько var типа vector3 ...> 'изменит его положение xyz, я думаю, в вашем примере, который будет быть «point», но это немного запутывает, что вы пытаетесь сделать с «firstobject», и не зная, что делает скрипт 'cube'. – Lefty

ответ

0

Убедитесь, что другой объект осведомлен о вашей коробке геймобжекты (позволяет сказать, под названием «регулируемые»), то его просто случай:

adjustable.transform.position = new Vector3(x, y, z) 

Чтобы убедиться, что объект знает о коробках gameObject, вы можете настроить переменную public, а затем вручную перетащить ящик из вашей сцены в поле, которое будет создано в компоненте на рассматриваемом объекте.

+0

box уже является преобразованием в примере кода OPs ... – Lefty

+0

Как «Удостоверьтесь, что другой объект осведомлен о вашем ящике gameObject» – Hudson

+0

Извините, я не очень понял свой первоначальный ответ. Я отредактировал ответ, чтобы дать больше разъяснений, но я все еще могу предположить слишком много с точки зрения ваших знаний. Дайте мне знать, если это так, и я попытаюсь уточнить дальше. –