0% au considerat acest document util (0 voturi)
15 vizualizări14 pagini

C#&Unity

Încărcat de

Horia Bosoanca
Drepturi de autor
© All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca PDF, TXT sau citiți online pe Scribd
0% au considerat acest document util (0 voturi)
15 vizualizări14 pagini

C#&Unity

Încărcat de

Horia Bosoanca
Drepturi de autor
© All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca PDF, TXT sau citiți online pe Scribd

C# & Unity

Proiect realizat de Bosoanca Horia


Ce sunt C# si Unity?
▪ C# este un limbaj de programare similar cu JavaScript, C, C++, Python si
multe alte limbaje populare.
▪ Asa cum se stie ca, de exemplu, Python este adesea folosit pentru data
science, principala utilitate a acestui limbaj este crearea logicii unei aplicatii,
in general a unui joc, fiind in principal folosit alaturi de un software, precum
Unity.
▪ Unity este un software care vine cu tot ce este necesar in crearea unui
joc/program vizual (2D sau 3D), pentru ca tot ce este necesar creatiei unuia
sa existe (cum ar fi calcularea luminii, umbrelor, culorilor, fizicii, etc. ), astfel
incat tot ce trebuie facut sa fie stabilirea intamplarilor si regulilor jocului, intr-
un mod mult mai usor, prin C#.
Termeni introductivi in Unity.
1) Deschizand interfata editorului, vei gasi 5 window-uri.
2) 1) Scena este locul unde poti vedea si edita jocul si objectele din el
3) 2)Hierarchy este locul unde sunt toate objectele care se afla in scena.
(acestea se numesc GameObjects)
4) 3)"Project" este un explorer care contine toate asset-urile jocului. Acestea pot
if modele 3D, sprite-uri (2D), script-uri (fisiere cu cod) si GameObject-uri care
sa fie apoi reutilizate in joc (Prefab-uri).
5) 4) Inspector arata toate proprietatile unui asset atunci cand dai click pe el.
6) 5)
"Game" este fereastra prin care vezi ce se desfasoara in joc, din
perspectiva camerei, functionand atunci cand proiectul ruleaza.
Termeni introductivi in Unity.

▪ In imaginea anterioara putea fi obesrvat un cub (creat cu click-


dreapta in hierarchy > 3D object > Cube). Acesta este un
GameObject si are niste proprietati standard, pe care le are
orice GameObject. Facand click pe el, in inspector apar date
despre el. In sectiunea "Transform", acesta are pozitie (pe axele X,
Y si Z), Rotatie (In grade de la 0 la 360, in jurul axelor X, Y si Z) si
"Scale", adica marime (pe X, Y si Z).
▪ Schimband cateva numere, se poate observa cum se schimba si
aspectul si locul lui in spatiu.
Termeni introductivi in Unity.

▪ Mai devreme am numit "Transform" o "sectiune" a


Inspectorului. De fapt, acesta este un component al
GameObject-ului.
▪ GameObject-ul poate avea si alte componente, precum un
"collider" (pentru a face coliziuni cu alte obiecte in loc sa
treaca pin ele), un "rigidbody" care aplica legi fizice acestuia,
precum gravitatie, dar si un script (adica un fisier cu cod).
Pentru a continua voi atasa un script acestuia.
Termeni introductivi in C#.
Deschizand scriptul, vom gasi cateva
linii de cod deja scrise.
Cele care ne intereseaza in momentul
de fata (si in 99% din timp) sunt cele
din interiorul parantezelor clasei,
adica cele de la linia 7 la 17.
Start() poate fi privit ca un eveniment.
Orice cod este pus intre paranezele
lui (adica cele de la liniile 9 si 11) va fi
executat la inceputul jocului. Start()
este util pentru a initializa jocul.
Termeni introductivi in C#
In cazul lui Update(), codul este executat o data in fiecare frame. Acest eveniment este
util pentru a scrie reguli valabile pe parcursul intregului joc.
Voi scrie o linie de cod in Start() care are scopul de a misca cubul odata
ce pornesc jocul.
Pentru a face asta, intai trebuie sa specific despre cine vorbesc. Fiindca scriptul este
atasat cubului drept component, codul este scris din perspectiva cubului. Adadar, ma
pot referi la cub prin "gameObject".
Adaugand un punct, trebuie sa specific in ce component al lui "gameObject" doresc sa
fac modificari. Fiindca doresc sa ii alterez pozitia, care se afla in componentul
"Transform", voi asta voi scrie.
In final, trebuie sa mentionez ce "metoda" a componentului alesvoi folosi. Metodele
sunt folosite in executarea unor operatii. In cazul meu, metoda "Translate()" pe care o
voi folosi face astfel in cat datele puse in parantezele sale sa fie utilizate pentru a misca
GameObject-ul. Pentru a termina, va trebui sa introduc acele date.
Termeni introductivi in C#.

In cazul in care nu stie oricine ce este o variabila, aceasta este


folosita pentru a stoca date. Ea poate fi de mai multe tipuri, cele
mai importante fiind prezentate in tabel.
In general, pentru a crea una, vom scrie intai un modifier care
depinde de software, precum private sau public, apoi tipul ei, de
exemplu "int", numele pe care dorim sa il dam, si valoarea ei.
In Unity exista mai multe tipuri de variabile decat cele cunoscute,
unele fiind de tip "Vector3". Data atribuita unui Vector3 este
formata din 3 float-uri, cate unul pentru fiecare axa (X, Y si Z).
Termeni introductivi in C#.

▪ Acum voi crea o variabila de tip Vector3 (numita variable_2) care


are pozitiile pe X, Y si Z de 2.5, 5, 11.
▪ Metoda Translate() cere o data de tip Vector3, asa ca o pot
introduce. Translate() va muta cubul cu 2.5 pe X, 5 pe Y si 11 pe Z,
asadar ii va altera proprietatea "position" din "transform".
▪ Porinind jocul, putem obesrva schimbarile atat in scena, cat si in
proprietatea "position" a cubului.
▪ (am schimbat cateva culori si am adaugat o podea drept punct de
reper)
Before: After:
Bineinteles ca se pot face multe alte lucruri lucruri mai
complexe de atat cu Unity si C#.

Va multumesc!

S-ar putea să vă placă și