﻿1
00:00:04,400 --> 00:00:05,390
‫Ciao e Benvenuto.

2
00:00:05,390 --> 00:00:11,930
‫In questa lezione impareremo come creare classi che ci consentano di condividere configurazione

3
00:00:11,930 --> 00:00:16,430
‫e funzionalità tra più oggetti nella nostra scena.

4
00:00:16,460 --> 00:00:18,110
‫Entriamo e vediamo come funziona.

5
00:00:19,070 --> 00:00:27,200
‫Ora il vero potere della programmazione con oggetti arriva quando iniziamo a usare classi e istanze.

6
00:00:27,590 --> 00:00:27,920
‫Bene.

7
00:00:27,920 --> 00:00:29,110
‫Bene è una classe.

8
00:00:29,120 --> 00:00:36,410
‫Bene, in effetti, è come un modello o un progetto nel senso regolare di quella parola per oggetti?

9
00:00:36,830 --> 00:00:43,610
‫Quindi questa avventura qui la chiamiamo classe avventuriero e ha alcuni dati predefiniti e

10
00:00:43,610 --> 00:00:49,970
‫alcune funzionalità, ma possiamo creare un'istanza di questa classe, come l'avventuriero numero uno.

11
00:00:50,360 --> 00:00:57,800
‫Potrei chiamare Bob, per esempio, e lui ha la sua copia di quei dati dalla classe Adventurer.

12
00:00:57,810 --> 00:01:03,140
‫Questo è l'oggetto reale e la classe è qualcosa da cui creiamo gli oggetti.

13
00:01:03,920 --> 00:01:10,520
‫Puoi anche vivere un'avventura in una seconda istanza della stessa classe e loro condividono la funzionalità, notano che

14
00:01:10,530 --> 00:01:15,440
‫condividono tutte le stesse funzionalità e possono avere la propria versione dei dati.

15
00:01:15,440 --> 00:01:18,980
‫Quindi puoi vedere che Adventure due ha cambiato i suoi punti esperienza.

16
00:01:19,520 --> 00:01:21,710
‫Ora, il vantaggio di questo è duplice.

17
00:01:21,710 --> 00:01:25,430
‫Uno è che condividiamo tutta quella funzionalità tra questi diversi oggetti.

18
00:01:25,850 --> 00:01:32,450
‫E il secondo è che qualcuno di quei dati che non abbiamo cambiato, come l'esperienza 500 o il livello

19
00:01:32,450 --> 00:01:32,810
‫uno?

20
00:01:33,170 --> 00:01:39,320
‫Se cambiassi il livello uno al livello due, cambierebbe anche in tutte le istanze della classe.

21
00:01:39,920 --> 00:01:44,750
‫Quindi, come possiamo creare qualcosa del genere in Unreal?

22
00:01:45,410 --> 00:01:50,270
‫Bene, la prima cosa che voglio fare è inserire qualcosa che agirà come il nostro proiettile in

23
00:01:50,270 --> 00:01:54,380
‫modo che il proiettile possa essere il nostro primo oggetto e classe che creiamo.

24
00:01:54,980 --> 00:02:00,840
‫Quindi andrò al pulsante del progetto di risposta rapida nella barra degli strumenti, andrò alle forme e selezionerò una

25
00:02:00,840 --> 00:02:03,620
‫sfera e trascinerò una sfera nella mia scena.

26
00:02:03,620 --> 00:02:08,690
‫Lo trascinerò anche un po' verso l'alto e proverò a ridimensionarlo, a renderlo un po' più piccolo usando

27
00:02:08,690 --> 00:02:09,950
‫lo strumento di ridimensionamento.

28
00:02:10,250 --> 00:02:16,550
‫E se clicco qui al centro del bit bianco, posso ridimensionare il tutto in modo uniforme finché non

29
00:02:16,550 --> 00:02:19,760
‫ho qualcosa della dimensione giusta per il mio proiettile.

30
00:02:20,420 --> 00:02:27,530
‫Ora, quello che voglio fare con questo proiettile è che voglio trasformarlo dall'essere un singolo oggetto

31
00:02:27,530 --> 00:02:31,730
‫in una classe di progetto per più oggetti.

32
00:02:32,330 --> 00:02:34,010
‫C'è un modo semplice per farlo.

33
00:02:34,280 --> 00:02:38,230
‫Sopra nel pannello dei dettagli, c'è un piccolo pulsante dei progetti.

34
00:02:38,240 --> 00:02:43,340
‫Se fai clic su quello, puoi vedere che dice che converte questo attore in una classe blueprint riutilizzabile che può avere

35
00:02:43,340 --> 00:02:44,500
‫un comportamento di script.

36
00:02:44,840 --> 00:02:49,940
‫Quindi possiamo fare clic su quello e vogliamo solo avere questa nuova sottoclasse.

37
00:02:49,940 --> 00:02:54,260
‫Lasciamo semplicemente le impostazioni predefinite in quanto è l'unica cosa che vogliamo una volta cambiato è il nome.

38
00:02:54,620 --> 00:03:01,100
‫Ora quello che una volta lo chiamiamo proiettile, ma c'è un po' di convenzione di denominazione che tendiamo a usare.

39
00:03:01,100 --> 00:03:02,120
‫Non è obbligatorio.

40
00:03:02,120 --> 00:03:09,260
‫Non ha alcun tipo di impatto funzionale su questo progetto, ma ci aiuta a capire un po' meglio le

41
00:03:09,260 --> 00:03:09,920
‫cose.

42
00:03:10,250 --> 00:03:17,480
‫Quando creiamo una classe di progetto, tendiamo a prefissarla con BP e sottolineatura della capsula, e questo ci consente semplicemente di

43
00:03:17,480 --> 00:03:19,970
‫vedere immediatamente quali sono gli oggetti qui.

44
00:03:20,000 --> 00:03:21,020
‫Classi di progetto.

45
00:03:21,530 --> 00:03:27,020
‫Possiamo andare avanti e fare clic su Seleziona, che per qualche motivo è effettivamente creato.

46
00:03:27,440 --> 00:03:33,860
‫E quello che fa è andare avanti e aprire un nuovo editor qui, l'editor per la stessa classe

47
00:03:33,860 --> 00:03:34,580
‫Blueprint.

48
00:03:35,060 --> 00:03:39,950
‫Ora possiamo, come gli altri editor, agganciarlo alla finestra principale.

49
00:03:41,000 --> 00:03:43,010
‫E puoi vedere di nuovo, abbiamo un sacco di cose.

50
00:03:43,010 --> 00:03:49,280
‫È molto simile ai progetti di livello, ma abbiamo alcune altre cose come un

51
00:03:49,280 --> 00:03:56,990
‫viewport qui che ci consente di visualizzare in anteprima l'aspetto di questa classe di progetti quando ne creiamo un'istanza

52
00:03:56,990 --> 00:03:57,470
‫oggetto.

53
00:03:58,220 --> 00:04:05,510
‫Quindi ora che abbiamo questa classe principale, dovremmo essere in grado di portare più istanze e più oggetti di questa

54
00:04:05,510 --> 00:04:06,800
‫classe nel livello.

55
00:04:07,400 --> 00:04:13,760
‫E in effetti, possiamo duplicare l'oggetto che abbiamo già qui o aprire il disegno del contenuto

56
00:04:13,760 --> 00:04:17,150
‫e proprio alla radice della piega del contenuto.

57
00:04:17,150 --> 00:04:22,430
‫Se selezioni il tuo contenuto, piega nel riquadro di sinistra, abbiamo un progetto di proiettile.

58
00:04:22,760 --> 00:04:29,450
‫Quindi quello che possiamo fare è trascinarlo nella nostra scena e avrà creato una nuova istanza

59
00:04:29,450 --> 00:04:31,610
‫e tu copierai i progetti.

60
00:04:31,610 --> 00:04:34,400
‫Ma come ho detto, queste sono copie collegate.

61
00:04:34,400 --> 00:04:42,760
‫Apportare una modifica a una proprietà nell'editor proiettile BP dovrebbe cambiarla per tutte le istanze.

62
00:04:43,130 --> 00:04:47,060
‫Quindi la differenza qui è che abbiamo un riquadro dei dettagli sulla destra.

63
00:04:47,060 --> 00:04:49,910
‫È molto simile al riquadro dei dettagli che abbiamo nel nostro livello.

64
00:04:49,910 --> 00:04:56,540
‫Editor Con l'eccezione che devi effettivamente fare clic sui componenti nel riquadro di sinistra per

65
00:04:56,540 --> 00:04:58,250
‫vederne le proprietà.

66
00:04:58,490 --> 00:05:03,590
‫Quindi potrebbe essere necessario fare clic su un componente mesh statico per vedere alcune delle proprietà che

67
00:05:03,590 --> 00:05:06,590
‫siamo abituati a vedere direttamente a livello di accesso root.

68
00:05:06,590 --> 00:05:11,900
‫Quindi una cosa da prendere nota di come fare qui è cambiare il materiale.

69
00:05:11,900 --> 00:05:16,340
‫Quindi al momento, questo materiale sulla palla è molto bianco.

70
00:05:16,580 --> 00:05:18,380
‫Potremmo voler cambiare questo in qualcosa.

71
00:05:18,490 --> 00:05:18,790
‫Altro.

72
00:05:18,850 --> 00:05:23,800
‫Se hai selezionato questo componente MASH statico nel dolore a sinistra e poi vai al

73
00:05:23,800 --> 00:05:28,930
‫riquadro dei dettagli a destra, puoi vedere che c'è una sezione etichettata Materiali ed Elementi Zero.

74
00:05:29,200 --> 00:05:35,380
‫Puoi fare clic sulla freccia in basso su questo e puoi vedere un elenco di tutti i materiali che abbiamo nel

75
00:05:35,380 --> 00:05:37,930
‫nostro progetto, e puoi selezionarne uno e provarlo.

76
00:05:37,930 --> 00:05:40,780
‫Quindi potrei provare qualcosa come questo materiale di ciottoli.

77
00:05:40,990 --> 00:05:47,470
‫E puoi vedere che sembra un po' ridicolo su quella palla di cannone, quindi non la userò.

78
00:05:47,830 --> 00:05:52,960
‫Quindi vorrei sfidarti a trasformare questo proiettile in una palla di cannone.

79
00:05:53,230 --> 00:05:56,320
‫Ora, il modo in cui lo faremo è, prima di tutto, abilitare la fisica.

80
00:05:56,320 --> 00:06:03,100
‫Dovrai selezionare il componente MASH statico per trovare le proprietà fisiche e quindi abilitare la fisica e

81
00:06:03,460 --> 00:06:10,690
‫scegliere un materiale di tuo gradimento che si adatta a una palla di cannone molto meglio dell'attuale ciottolo che

82
00:06:10,690 --> 00:06:11,860
‫ho selezionato.

83
00:06:12,130 --> 00:06:15,970
‫E poi torna alla tua scena e dai un'occhiata a cosa succede.

84
00:06:15,970 --> 00:06:20,200
‫Cosa hanno cambiato lì o non hanno messo in pausa il video e provano?

85
00:06:23,970 --> 00:06:24,450
‫Bene.

86
00:06:24,450 --> 00:06:25,230
‫Ben tornato.

87
00:06:25,470 --> 00:06:32,580
‫Quindi, prima di tutto, se premo play, noterai che queste due palline stanno lì perché la fisica non è

88
00:06:32,580 --> 00:06:33,310
‫abilitata.

89
00:06:33,340 --> 00:06:34,860
‫Vogliamo che la fisica sia abilitata.

90
00:06:35,190 --> 00:06:40,440
‫Quindi andiamo al nostro riquadro dei dettagli con il componente mesh statico selezionato nel riquadro di sinistra.

91
00:06:40,770 --> 00:06:48,210
‫E andremo a scorrere fino a dove ha la sezione fisica e la casella di controllo per simulare la fisica.

92
00:06:48,690 --> 00:06:53,160
‫L'altra modifica che voglio apportare qui è che voglio cambiare la sezione dei materiali.

93
00:06:53,430 --> 00:06:54,600
‫Questo è l'elemento zero.

94
00:06:54,960 --> 00:07:01,410
‫Se fai clic sul menu a discesa ora, cercherò uno metallico e penso che sceglierò il

95
00:07:01,410 --> 00:07:03,090
‫materiale in metallo cromato.

96
00:07:03,330 --> 00:07:05,030
‫Quindi ora ottengo un po 'di cromo audace.

97
00:07:05,040 --> 00:07:05,760
‫È fantastico.

98
00:07:06,000 --> 00:07:08,850
‫Quindi non è così noioso come prima.

99
00:07:09,660 --> 00:07:12,600
‫Ora possiamo salvare se vogliamo, ma non è assolutamente necessario.

100
00:07:12,600 --> 00:07:14,220
‫Possiamo andare avanti e premere play.

101
00:07:14,580 --> 00:07:18,990
‫E se rimpiccioliamo, puoi vedere quelle palline rotolare sul pavimento con la fisica

102
00:07:18,990 --> 00:07:25,890
‫abilitata e con un nuovo materiale, non solo uno, ma entrambi perché sono collegati a questa classe di progetto

103
00:07:25,890 --> 00:07:28,050
‫e sono istanze di esso.

104
00:07:28,320 --> 00:07:29,340
‫Quindi questo è fantastico.

105
00:07:29,340 --> 00:07:36,870
‫Potremo usarlo per tutti i tipi di cose in cui abbiamo bisogno di più istanze della stessa classe

106
00:07:36,870 --> 00:07:42,090
‫nel nostro gioco e ci impedisce di doverci ripetere troppe volte.

107
00:07:42,360 --> 00:07:43,000
‫Roba fantastica.

108
00:07:43,020 --> 00:07:44,400
‫Ci vediamo alla prossima lezione.

