Cum să devii un programator mai bun în Unity

Odată cu creșterea AI și a învățării automate, este ușor să presupunem că nu va fi nevoie de programatori în viitor. Cu toate acestea, ar putea dura mult timp până când Inteligența Artificială poate interpreta sarcini mai complexe, cum ar fi abstractizarea, optimizarea, interconexiune etc.

Prin urmare, niciodată nu este prea târziu să-ți perfecționezi cunoștințele de programare în Unity, pentru a te face nu doar un programator mai eficient, ci și, când va veni momentul, capabil să supraveghezi codul scris de alții și să-i ghidezi. în direcția corectă.

1. Optimizarea prematură nu este întotdeauna rădăcina tuturor relelor

Este o temă obișnuită să calomnizi optimizarea prematură ca un pas inutil atunci când prototipezi ceva, cu toate acestea, nu ar trebui să fie întotdeauna cazul, mai ales în timpul adăugării de lucruri mici, despre care știi cu siguranță că au un impact mare asupra performanței și când este timpul să faceți optimizarea reală, timpul a fost deja economisit având grijă de lucrurile mai mici. Să folosim gameObject.name ca exemplu:

using UnityEngine;

public class ObjectNameScript : MonoBehaviour
{
    public string objectName;

    void Update()
    {
        objectName = gameObject.name;
		Debug.Log(objectName);
    }
}

În timp ce folosirea gameObject.name ar putea părea inofensivă, așa cum am descoperit în postarea „Unity Optimizați-vă jocul folosind Profiler”, obținerea numelui unui obiect alocă destul de multă memorie, ceea ce înmulțește problema prin apelarea acestuia. fiecare cadru. Deci, imediat, putem muta acea atribuire la funcția Start (cu excepția cazului în care numele obiectului se schimbă frecvent, în acest caz, ar fi mai eficient să săriți peste folosirea numelui și să folosiți o variabilă în schimb).

using UnityEngine;

public class ObjectNameScript : MonoBehaviour
{
    public string objectName;

    void Start()
    {
        objectName = gameObject.name;
    }

    void Update()
    {
        Debug.Log(objectName);
    }
}

2. Scrieți un cod mai scurt

Scrierea unui cod mai scurt economisește întotdeauna timp, făcându-l mai lizibil și mai ușor de întreținut în viitor.

Există multe modalități de a scrie cod mai scurt, iar în cazul Unity, un cod C#. De exemplu, simplificând instrucțiunea if/else folosind simbolul „?”:

int numA = 10;
int numB = 5;
int result;
if (numA > numB) {
    result = numA;
} else {
    result = numB;
}
Debug.Log(result);

Același cod poate fi scurtat la:

int numA = 10;
int numB = 5;
int result = (numA > numB) ? numA : numB;
Debug.Log(result);

O altă modalitate de a scurta codul este introducerea codului repetitiv în propria sa funcție și apoi folosirea acelei funcții.

3. Cod mai întâi, pune întrebări mai târziu

Deși planificarea este o parte esențială a oricărui proiect, dacă este un prototip, sau dacă ideea nu este încă pusă în piatră, este important să începeți codarea cât mai curând posibil, deoarece indiferent de cantitatea de planificare, de îndată ce ajungeți la munca vei descoperi întotdeauna ceva care poate fi făcut mai bine/mai eficient sau că unele idei nu sunt la fel de bune în practică ca altele și invers.

În general, foarte puține lucruri te vor face mai bun la programare, cum ar fi să te apuci de lucru și să începi să scrii codul.

4. Playtest, înainte de a face orice modificări

Când aveți un demo care poate fi jucat, este vital să începeți să îl testați cât mai curând posibil pentru a identifica unde pot fi îmbunătățite lucrurile, deoarece de multe ori, este posibil să nu fie evident doar privind codul.

Odată ce stăpâniți arta testării jocului și a colectării feedback-ului, veți deveni un programator mai eficient, știind exact unde să căutați pentru a îmbunătăți codul.

Unity desigur, oferă multe instrumente utile pe parcurs, cum ar fi Consola (pentru identificarea avertismentelor și erorilor), Profiler pentru performanța de depanare și restul interfeței (Scenă, Ierarhie, Inspector etc. pentru monitorizarea fluxul jocului/proiectului).

5. Optimizarea este un proces gradual

Putem fi cu toții de acord că performanța jocului o poate face sau distruge și este unul dintre pilonii de bază ai unei lansări de succes. Dar performanța jocului poate fi evaluată doar făcând testele de joc în diverse scenarii și condiții, pentru a simula jocul din punctul de vedere al jucătorilor obișnuiți.

Am discutat multe metode pentru cum să depanați, să optimizați și să găsiți blocaje în codul jocului.

Pentru a afla mai multe despre cum să vă optimizați jocul desktop sau mobil, puteți verifica postările de mai jos:

  1. Unity Optimizați-vă jocul folosind Profiler
  2. Îmbunătățirea performanței unui joc mobil în Unity 3D
  3. Unity Sfaturi de optimizare

Dacă aveți propriile sfaturi despre cum să deveniți un programator mai bun în Unity, nu ezitați să le postați în comentarii.

Articole sugerate
Lucrul cu tablouri și liste în Unity Code
Cum să redați fișiere video în Unity
Cum să adăugați efectul Sniper Scope în Unity
Cum să întrerupi jocul în Unity
Cum să declanșați o scenă în Unity
Unity Cum se creează un Shader
Operatorii Unity C# trebuie să cunoască