Scripturi în unity3d

Odată cu transformarea, totul este puțin mai simplu - această componentă nu este fundația, dar totuși - este principala și, cel mai important, o parte integrantă a GameObject. Acesta este responsabil pentru localizarea obiectului pe scenă, "rotația" acestuia, dimensiunile acestuia și conține, de asemenea, informații despre obiectele copil și părinte.







Acestea sunt singurele componente care nu pot fi eliminate din GameObject.

Modificați poziția obiectului

Poziția obiectului pe scena se potrivește cu elementele transform.position și transform.localPosition.

Ele sunt ambele variabile de tipul Vector3 și au 3 componente principale x, y și z. care corespund coordonatelor din spațiul tridimensional. Trebuie avut în vedere că x. y și z nu pot fi modificate direct - ele sunt numai pentru citire. Pentru a adăuga un singur la x, trebuie să adăugați un Vector3 nou la transform.position în sine, care este (1,0,0), care adaugă unul la x, și y și z la zerouri.

Care este diferența între transform.position și transform.localPosition?

Principala lor (și singura diferență) este acea poziție - arată și ia coordonatele obiectului, față de coordonatele lumii și localPosition - față de obiectul părinte. Dacă obiectul jocului este "root", adică nu are obiecte părinte, atunci poziția și localPosition vor fi egale.

Să analizăm mai întâi variantele elementare.

Așa cum am spus deja - poziția (voi continua să o folosesc, deoarece diferențele de la localPosition numai în legătură cu ceea ce sunt aceste coordonate) este o variabilă de tip Vector3. Prin urmare, pentru a o schimba, fie trebuie să adăugați un alt vector la el, fie să scadă alt vector sau să îl înlocuiți cu un alt vector.

var obiectBoxCollider = gameObject.GetComponent ();
Încă mai trebuie să explic, Nuba, de ce, unde, și în ce caz, cuvintele sunt scrise cu o mică și o scrisoare de capital.
Tip - funcții cu o variabilă mică, cu o valoare mare.
De ce obiect cu un mic și BoxCollider c mare.
Iată câteva exemple scurte despre modul în care aceste coduri pot fi folosite în cod.
// și cine este "altTransformLink"
var altTransformLink = childGameObject.transform;







Iar comentariile ar fi:
var childTransform = transform.FindChild ( «myChild1»); // găsi myChild1 pus în childTransform
var childGameObject = childTransform.gameObject; // aici ce se întâmplă te-am futut
var altTransformLink = childGameObject.transform; // și de ce atât de multe bușteni

Și așa normul, este ceva de făcut.

Bine ai venit! Mulțumesc pentru sfat, îi voi lua în considerare la scrierea următoarelor articole.
Voi încerca să vă răspund pe scurt la întrebări.
1) Cuvintele din cod se referă la comenzi, clase, interfețe sau nume de variabile. De obicei, în C # cu o literă de capital este scrisă o clasă, o interfață sau o variabilă cu modificatorul de acces "public" (nu uităm de funcții). Unde, cum și în ce cazuri este greu de descris, deoarece acestea sunt fundamentele limbajului de programare C #.
De exemplu:
var myObject = MyObject nou ().
Mai precis, în acest caz - MyObject este o clasă. Și myObject este o instanță specifică a clasei MyObject.

2) De ce este objectBoxCollider cu un mic, și BoxCollider cu un mare? ObjectBoxCollider este numele clasei, iar objectBoxCollider este instanța ei.

Oh, oh, eu sunt foarte bucuros că site-ul este în viață, eu piepteam tag-uri cu etichetele mele din nou și din nou, văd - kododomik))
Cred că - îmi amintesc că a fost ceva util să mă uit din nou) și apoi există o sperietoare, o planetă vie.
numai utilizatorii de rețea pot vedea domeniu foarte puțin favorabil "rf" și este rar,
Vreau să spun că monitorizarea site-ului, dacă este posibil,
ps
C #

poziția de transformare + = Vector3 nou (1,0,0); // adăugați la unitatea de la X (compensată cu una)
transform.position + = Vector3 nou (1,0,2) * Time.deltaTime; // mutați obiectul în timp real cu valorile setate
de-a lungul axelor x și z

int viteza = 5;
void Start ()
transforma pozitia + = Vector3 noi (viteza, 0,0) * Time.deltaTime; // se deplaseaza de-a lungul axei x cu parametrul (viteza) setat prin viteza variabila
transformarea + + = noua Vector3 (1,0,1) * viteza * Time.deltaTime; // deplasarea pe axe specificate cu viteza setata de viteza

Iată tipul de acest lucru, cu explicații și dezvoltarea ulterioară a aplicării lor
Mai mult ar dori mai multe detalii despre modul în care cuaternionii și eylery quaternion de ieșire în vektor3
despre rigidbodi - nu există informații unde să se limiteze unghiul de rotație de-a lungul axelor, matematică
Cum să utilizați o tragere pe axe diferite cu semnificații diferite
gravitatea și energia limitărilor și direcțiilor lor,
de ce obiectul în poziție verticală poate fi supus gravitației și în orizontală nu mai există. + -

45
detaliate despre setarea nu sunt suficiente cu exemple, scriu că există multe lucruri pe care le puteți face, dar nu există exemple, este dificil chiar să introduceți cum să stoarceți din ea avantajul pe care fantezia a dat-o.
învățat cu ++ conform lui Shildt, ed. 3, (în # (unitate) no (link-uri, indicii) pe care nu le-am văzut în scripturi)
așa că nu este suficient - exemple de cel puțin cu pisici și purici
Mai trebuie să introduceți API, cum să lipiți creta școală cu un mouse și tastatură
și așa - așteptăm continuarea, totul este destul de inteligibil prezentat.

Vă mulțumim pentru feedback! E frumos! 🙂
Încerc să mențin relevanța site-ului cât de mult pot.







Trimiteți-le prietenilor: