1
00:00:00,000 --> 00:00:03,140
Bienvenue, mes collègues développeurs de jeux. 

2
00:00:03,135 --> 00:00:05,075
Dans cette vidéo, lorsque nous lançons le jeu,

3
00:00:05,070 --> 00:00:07,040
vous verrez que nous avons beaucoup d'erreurs. 

4
00:00:07,035 --> 00:00:08,285
Nous ne les réparons pas tous,

5
00:00:08,280 --> 00:00:09,860
mais nous avons réparé la plupart d'entre eux. 

6
00:00:09,855 --> 00:00:12,545
Je vais donc aller chercher le fusil de chasse,

7
00:00:12,540 --> 00:00:13,700
ramasser des pièces de monnaie,

8
00:00:13,695 --> 00:00:15,225
me faire frapper par les pointes,

9
00:00:15,225 --> 00:00:16,655
passer par la porte,

10
00:00:16,650 --> 00:00:18,800
passer par ce portail. 

11
00:00:18,795 --> 00:00:20,015
Et voilà. 

12
00:00:20,010 --> 00:00:22,620
Vous pouvez voir que je suis de l'autre côté,
 c'était mon pistolet

13
00:00:22,620 --> 00:00:24,570
avec ma santé,

14
00:00:24,570 --> 00:00:25,590
mais il n'est pas visible

15
00:00:25,590 --> 00:00:27,360
parce que nous n'avons pas modifié ces choses. 

16
00:00:27,360 --> 00:00:29,400
Mais si nous allons faire défiler le joueur vers le bas,

17
00:00:29,400 --> 00:00:30,740
vous remarquerez que nous en avions 500. 

18
00:00:30,735 --> 00:00:33,555
Nous l'avons coupé par les pointes et il est 490,

19
00:00:33,555 --> 00:00:35,255
même si nous n'avons rien fait. 

20
00:00:35,250 --> 00:00:38,310
Donc, ne perdons plus de temps et commençons. 

21
00:00:38,310 --> 00:00:41,070
Les choses que nous apprenons dans cette vidéo sont très importantes,

22
00:00:41,070 --> 00:00:43,190
un peu encombrantes, mais très importantes. 

23
00:00:43,190 --> 00:00:45,040
Alors, soyons piétinés. 

24
00:00:45,035 --> 00:00:46,915
O k.

25
00:00:46,910 --> 00:00:50,540
Actuellement
, nous pouvons passer d'un niveau à l'autre. 

26
00:00:50,540 --> 00:00:52,670
Nous avons des options où nous
 choisissons

27
00:00:52,670 --> 00:00:56,240
l'un des niveaux aléatoires que nous avons. 

28
00:00:56,240 --> 00:00:57,620
Évidemment, il y a quelques

29
00:00:57,620 --> 00:00:58,790
choses que nous devrons
 modifier

30
00:00:58,790 --> 00:01:00,080
avec l'apparence de

31
00:01:00,080 --> 00:01:02,080
la porte et la disparition, etc. 

32
00:01:02,075 --> 00:01:04,825
Je pense qu'il reste encore un peu de réglages,

33
00:01:04,820 --> 00:01:07,510
mais il y a un problème encore plus important. 

34
00:01:07,505 --> 00:01:10,295
Et c'est une fois que nous avons ramassé les pièces,

35
00:01:10,295 --> 00:01:14,035
l'arme, et nous sommes frappés par ces vélos ou quelque chose comme ça. 

36
00:01:14,030 --> 00:01:15,100
Laissez-moi vous montrer. 

37
00:01:15,095 --> 00:01:16,645
Quand on prend le fusil de chasse,

38
00:01:16,640 --> 00:01:17,840
ramasse de l'argent,

39
00:01:17,840 --> 00:01:19,910
on se fait frapper par les pointes. 

40
00:01:19,910 --> 00:01:23,530
On y va. Nous pouvons donc voir que notre vie est de 9500,

41
00:01:23,525 --> 00:01:25,835
nous passons à un niveau de nombre. 

42
00:01:25,835 --> 00:01:29,555
Peut-être que ce sera le cas, et vous pouvez voir en ce moment,

43
00:01:29,555 --> 00:01:32,065
alors que le joueur, si je

44
00:01:32,060 --> 00:01:35,780
regarde le joueur de D1, il est détaché. 

45
00:01:35,780 --> 00:01:37,490
Il n'est pas là. Vous pouvez donc voir

46
00:01:37,490 --> 00:01:39,470
que sa vie remonte à 50 ans. 

47
00:01:39,470 --> 00:01:41,710
Si j'ai essayé de choisir le fusil de chasse,

48
00:01:41,705 --> 00:01:43,525
je ne peux pas. Et voilà. 

49
00:01:43,520 --> 00:01:45,590
Vous pouvez voir que les pièces sont

50
00:01:45,590 --> 00:01:48,530
0 et c'est quelque chose que nous voudrons
 changer pour

51
00:01:48,530 --> 00:01:51,380
nous assurer que notre joueur
 garde réellement

52
00:01:51,380 --> 00:01:54,380
tout avec lui au fur et à mesure qu'il franchit le niveau. 

53
00:01:54,380 --> 00:01:56,600
Allons de l'avant et faisons-le simplement. 

54
00:01:56,600 --> 00:01:58,010
Je vais donc ouvrir

55
00:01:58,010 --> 00:02:00,020
mes scripts ici et je vais
 aller à

56
00:02:00,020 --> 00:02:04,210
la manette du lecteur, faire défiler vers le haut. 

57
00:02:04,205 --> 00:02:07,415
Et ce que nous voulons, c'est évidemment que nous voulons garder

58
00:02:07,415 --> 00:02:08,995
nos armes d'un
 niveau à

59
00:02:08,990 --> 00:02:11,570
l'autre et de maintenir la santé du joueur. 

60
00:02:11,570 --> 00:02:13,070
Donc, pour garder cela,

61
00:02:13,070 --> 00:02:16,430
nous devons nous assurer de ne pas détruire le joueur. 

62
00:02:16,430 --> 00:02:18,770
Nous pouvons l'enregistrer sur un autre objet

63
00:02:18,770 --> 00:02:21,530
ou quelque part dans le projet. 

64
00:02:21,530 --> 00:02:23,600
Mais évidemment,

65
00:02:23,600 --> 00:02:25,180
le problème était de charger

66
00:02:25,175 --> 00:02:27,725
une nouvelle scène qui réinitialise tout. 

67
00:02:27,725 --> 00:02:31,205
Donc ce que je vais faire, c'est ici que je vais créer

68
00:02:31,205 --> 00:02:35,335
une manette de lecteur statique publique. 

69
00:02:35,330 --> 00:02:38,060
Et ce sera le cas. 

70
00:02:38,060 --> 00:02:40,510
Et dans le cas où je vais
 créer

71
00:02:40,505 --> 00:02:42,595
un privé ou savoir quoi,

72
00:02:42,590 --> 00:02:44,920
écrivons éveillé. 

73
00:02:44,915 --> 00:02:46,855
Et ici, je vais dire que

74
00:02:46,850 --> 00:02:50,620
l'instance est égale à cela. 

75
00:02:50,615 --> 00:02:55,175
Et puis ici, je ne vais pas détruire à charge. 

76
00:02:55,175 --> 00:02:57,725
Et ce sera ça. 

77
00:02:57,725 --> 00:03:01,105
Donc, si je sauvegarde cela et que je survole sur ne pas détruire la charge,

78
00:03:01,100 --> 00:03:02,630
vous pouvez voir que pour ne pas détruire

79
00:03:02,630 --> 00:03:05,440
l'objet cible lors du chargement d'une nouvelle scène. 

80
00:03:05,435 --> 00:03:07,445
Et c'est exactement ce que nous voulons. 

81
00:03:07,445 --> 00:03:09,025
Que va-t-il se passer maintenant ? 

82
00:03:09,020 --> 00:03:12,590
L'objet ou le joueur et notre cas,

83
00:03:12,590 --> 00:03:14,360
nous garderons tout ce qu'il

84
00:03:14,360 --> 00:03:16,310
avait avec lui de scène en scène. 

85
00:03:16,310 --> 00:03:17,530
Il ne sera pas détruit,

86
00:03:17,525 --> 00:03:19,505
il ne sera pas réstancié. 

87
00:03:19,505 --> 00:03:21,655
Mais il y a le problème que

88
00:03:21,650 --> 00:03:23,770
le départ ne s'appellera pas le Gap. 

89
00:03:23,765 --> 00:03:26,135
Nous n'allons donc pas régler la caméra principale. 

90
00:03:26,135 --> 00:03:27,865
Nous garderons l'animateur du joueur,

91
00:03:27,860 --> 00:03:29,660
mais la caméra principale changera. 

92
00:03:29,660 --> 00:03:31,730
Et vous verrez que cela produira beaucoup d'

93
00:03:31,730 --> 00:03:34,630
erreurs que nous corrigerons au fur et à mesure que nous avancerons. 

94
00:03:34,625 --> 00:03:36,445
Mais pour l'instant, comprenez le ne pas

95
00:03:36,440 --> 00:03:39,260
détruire la charge et ce qu'elle fait. 

96
00:03:39,260 --> 00:03:41,650
Maintenant, je vais y retourner. 

97
00:03:41,645 --> 00:03:44,435
Et si vous regardez le,

98
00:03:44,435 --> 00:03:45,655
où se trouve la pièce,

99
00:03:45,650 --> 00:03:48,230
le portail, j'ai changé le portail,

100
00:03:48,230 --> 00:03:50,950
qui est celui-ci, pour passer au niveau quatre. 

101
00:03:50,945 --> 00:03:53,015
Nous pouvons donc aller vers les lâches. 

102
00:03:53,015 --> 00:03:58,105
Et laissez-moi juste aller sur les scènes parce que j'
essayais

103
00:03:58,100 --> 00:03:59,860
quelque chose et j'ai
 éteint

104
00:03:59,855 --> 00:04:03,175
le lecteur de dôme ici. On y va donc. 

105
00:04:03,170 --> 00:04:04,420
Il l'a allumé. 

106
00:04:04,415 --> 00:04:05,825
Sauvons ça. 

107
00:04:05,825 --> 00:04:14,585
Revenons attendre que ça se charge d'un jour à l'autre,

108
00:04:14,585 --> 00:04:17,275
gardons ça là où nous servons. 

109
00:04:17,270 --> 00:04:19,490
Le crâne est là où nous avons celui de Kelly. 

110
00:04:19,490 --> 00:04:20,890
Oui, nous étions un squelette. 

111
00:04:20,890 --> 00:04:22,030
Alors, sauvegardez ça. 

112
00:04:22,025 --> 00:04:24,875
Et vous remarquerez dans la hiérarchie en ce moment,

113
00:04:24,875 --> 00:04:28,865
et Unity, la nouvelle mise à jour, désolé, c'est terrible. 

114
00:04:28,865 --> 00:04:31,615
Donc, dans la hiérarchie, vous remarquerez que nous ne le
 détruisons pas

115
00:04:31,610 --> 00:04:35,090
et qu'il a le jeu de malheur ou en dessous. 

116
00:04:35,090 --> 00:04:37,150
Je vais donc prendre le fusil de chasse,

117
00:04:37,145 --> 00:04:40,235
devenir les Bitcoins se faire frapper par les pointes,

118
00:04:40,235 --> 00:04:43,205
ouvrir la porte, passer au niveau 4. 

119
00:04:43,205 --> 00:04:44,915
Et on y va. 

120
00:04:44,915 --> 00:04:46,735
Et vous pouvez voir que maintenant je suis ici,

121
00:04:46,730 --> 00:04:48,100
mais le problème, c'est

122
00:04:48,095 --> 00:04:51,325
que vous pouvez voir un joueur vers le bas et je joue ici. 

123
00:04:51,320 --> 00:04:53,350
Nous avons donc maintenant deux joueurs. 

124
00:04:53,345 --> 00:04:56,245
L'un d'eux a un fusil de chasse, l'autre non. 

125
00:04:56,240 --> 00:05:00,140
Et vous pouvez voir que nous avons une tonne d'erreurs et d'inconvénients. 

126
00:05:00,140 --> 00:05:02,120
Je vais donc ouvrir la console. 

127
00:05:02,120 --> 00:05:03,970
Je vais mettre le jeu en pause. 

128
00:05:03,965 --> 00:05:06,295
Et tout d'abord, nous avons le doom player. 

129
00:05:06,290 --> 00:05:09,160
Et voici un débogage que je montrais. 

130
00:05:09,155 --> 00:05:10,435
Permettez-moi de supprimer cela. 

131
00:05:10,430 --> 00:05:12,440
Vous verrez ce que je veux dire en un instant. 

132
00:05:12,440 --> 00:05:14,090
Je vais supprimer ça. 

133
00:05:14,090 --> 00:05:14,600
Prochaine. 

134
00:05:14,600 --> 00:05:16,090
Nous aurons la flèche ici,

135
00:05:16,085 --> 00:05:17,785
ce

136
00:05:17,780 --> 00:05:21,020
qui est correct, donc c'est le problème. 

137
00:05:21,020 --> 00:05:23,500
Nous allons résoudre ce problème dans la vidéo suivante. 

138
00:05:23,495 --> 00:05:25,135
Ensuite, nous avons enfin

139
00:05:25,130 --> 00:05:27,620
l'objet de type caméra a été détruit. 

140
00:05:27,620 --> 00:05:29,840
Vous essayez toujours d'y accéder. 

141
00:05:29,840 --> 00:05:31,310
Je vais donc double-cliquer

142
00:05:31,310 --> 00:05:33,200
ici et c'est la caméra principale,

143
00:05:33,200 --> 00:05:35,530
et c'est exactement ce dont je vous ai parlé. 

144
00:05:35,525 --> 00:05:39,425
Maintenant que nous savons que notre joueur est en transition,

145
00:05:39,425 --> 00:05:41,305
et nous pouvons voir ici même dans la scène,

146
00:05:41,300 --> 00:05:43,130
si je clique sur le joueur de la mort,

147
00:05:43,130 --> 00:05:44,690
qui est le « Ne pas détruire »,

148
00:05:44,690 --> 00:05:46,070
nous devons le faire,

149
00:05:46,070 --> 00:05:47,570
donc nous devrons le faire. corrige ça. 

150
00:05:47,570 --> 00:05:49,850
Mais l'un d'eux a toujours le fusil de chasse. 

151
00:05:49,850 --> 00:05:51,460
Donc techniquement, il
 pourra

152
00:05:51,455 --> 00:05:53,705
bouger avec ce fusil de chasse. 

153
00:05:53,705 --> 00:05:55,795
Et je regarde le joueur de tombeau,

154
00:05:55,790 --> 00:05:58,790
faites défiler jusqu'à sa santé et vous pouvez voir que le,

155
00:05:58,790 --> 00:06:01,140
sa santé actuelle a aussi une transition. 

156
00:06:01,144 --> 00:06:02,724
Malheureusement, il y a toujours

157
00:06:02,720 --> 00:06:04,640
le problème des bitcoins,

158
00:06:04,640 --> 00:06:06,650
mais nous allons résoudre ce problème étape par étape. 

159
00:06:06,649 --> 00:06:08,569
Commençons tout d'abord par
 gérer

160
00:06:08,570 --> 00:06:11,480
les standards à double couche. 

161
00:06:11,480 --> 00:06:13,810
C'est donc une question que nous devrons aborder. 

162
00:06:13,805 --> 00:06:16,235
Et comment allons-nous ajuster cela ? 

163
00:06:16,235 --> 00:06:19,555
Eh bien, il y a une astuce très astuce que l'on peut utiliser,

164
00:06:19,550 --> 00:06:21,670
qu'on appelle un motif singleton. 

165
00:06:21,665 --> 00:06:23,425
Permettez-moi de vous montrer à l'aide

166
00:06:23,420 --> 00:06:25,940
code ce que c'est, puis nous vous expliquerons. 

167
00:06:25,940 --> 00:06:28,000
Donc tout d'abord, ici éveillé,

168
00:06:27,995 --> 00:06:30,415
au lieu de définir immédiatement l'instance,

169
00:06:30,410 --> 00:06:34,670
je vais dire que si nous n'avons pas d'instance,

170
00:06:34,670 --> 00:06:37,310
donc l'instance est

171
00:06:37,310 --> 00:06:39,620
amine si nous avons déjà une instance,

172
00:06:39,620 --> 00:06:41,390
c'est donc différent de null,

173
00:06:41,390 --> 00:06:47,980
et l'instance est différente de celle-ci. 

174
00:06:47,975 --> 00:06:50,725
Ce que je vais faire, c'est que je vais
 détruire

175
00:06:50,720 --> 00:06:55,620
cet objet de jeu. 

176
00:06:55,870 --> 00:06:59,420
Qu'est-ce que je fais exactement ici ? 

177
00:06:59,420 --> 00:07:02,060
Je vais vérifier dès que nous attendons. 

178
00:07:02,060 --> 00:07:05,120
L'instance est-elle différente de null ? 

179
00:07:05,120 --> 00:07:08,230
Cela signifie que si l'instance n'est pas nulle,

180
00:07:08,225 --> 00:07:10,355
je vais détruire l'objet du jeu. 

181
00:07:10,355 --> 00:07:12,535
Mais il y a une autre chose

182
00:07:12,530 --> 00:07:15,460
si l'instance est différente de celle-ci. 

183
00:07:15,455 --> 00:07:17,135
Donc ce que je fais ici,

184
00:07:17,135 --> 00:07:19,045
alors que je commence le jeu,

185
00:07:19,040 --> 00:07:22,240
je vérifie si nous avons déjà une instance

186
00:07:22,235 --> 00:07:25,265
ou si l'instance est égale à cet objet de jeu,

187
00:07:25,265 --> 00:07:27,665
je vais détruire cet objet de jeu. 

188
00:07:27,665 --> 00:07:29,795
Et cela garantira que nous

189
00:07:29,795 --> 00:07:31,145
créons pas d'
abord

190
00:07:31,145 --> 00:07:33,475
une seconde instance de cet objet de jeu. 

191
00:07:33,470 --> 00:07:34,790
Deuxièmement,
 nous

192
00:07:34,790 --> 00:07:38,330
ne dupliquons pas l'objet qui se trouve déjà ici. 

193
00:07:38,330 --> 00:07:40,310
Donc, si nous allons sur une nouvelle scène

194
00:07:40,310 --> 00:07:42,790
et que nous constatons que nous avons dans un objet de jeu,

195
00:07:42,785 --> 00:07:44,725
il sera immédiatement détruit. 

196
00:07:44,720 --> 00:07:48,290
Mais sinon, au cas où nous n'avons pas d'instance,

197
00:07:48,290 --> 00:07:50,210
donc nous recommençons le jeu,

198
00:07:50,210 --> 00:07:52,310
ou lorsque nous commençons une nouvelle scène et

199
00:07:52,310 --> 00:07:54,850
qu'aucune instance n'
est égale à cela,

200
00:07:54,845 --> 00:08:00,185
alors je vais dire que cette instance est égale à ceci. 

201
00:08:00,185 --> 00:08:02,635
Cela va simplement créer une nouvelle instance. 

202
00:08:02,630 --> 00:08:04,970
Et cela permettra de s'assurer que nous n'avons pas

203
00:08:04,970 --> 00:08:09,130
deux instances ou qu'il y en a déjà une. 

204
00:08:09,125 --> 00:08:10,855
Je vais donc sauver cela et je
 vais

205
00:08:10,850 --> 00:08:12,830
démontrer comment cela va

206
00:08:12,830 --> 00:08:16,720
fonctionner et se boucler car nous aurons beaucoup d'erreurs. 

207
00:08:16,715 --> 00:08:18,325
Et je faisais des tests pour m'
assurer

208
00:08:18,320 --> 00:08:21,230
que je peux tout gérer correctement. 

209
00:08:21,230 --> 00:08:22,520
Alors je ramasse les pièces,

210
00:08:22,520 --> 00:08:24,370
je me fais frapper pendant 90,

211
00:08:24,365 --> 00:08:28,255
ouvre la porte, je vais frapper le portail,

212
00:08:28,250 --> 00:08:30,580
éloigner. Et on y va. 

213
00:08:30,575 --> 00:08:32,015
Vous pouvez donc voir maintenant
 que je

214
00:08:32,015 --> 00:08:33,545
n'ai pas de joueur d'équipe. 

215
00:08:33,545 --> 00:08:36,275
Le deuxième joueur a été détruit. 

216
00:08:36,275 --> 00:08:39,175
C'est parce qu'il a vérifié et qu'il est éveillé. 

217
00:08:39,170 --> 00:08:40,460
Y a-t-il une instance ? 

218
00:08:40,460 --> 00:08:42,920
L'instance est-elle différente de null ? 

219
00:08:42,920 --> 00:08:44,690
Oui, c'était le cas. 

220
00:08:44,690 --> 00:08:47,650
Et l'instance est-elle égale à cela ? 

221
00:08:47,645 --> 00:08:51,565
Oui, c'était le cas. Nous allons donc aller de l'avant et détruire. 

222
00:08:51,560 --> 00:08:54,070
De retour ici, vous verrez que nous
 n'avons

223
00:08:54,065 --> 00:08:56,795
que 12 employeurs dotés d'un fusil de chasse. 

224
00:08:56,795 --> 00:08:57,775
Il peut tirer. 

225
00:08:57,770 --> 00:09:00,980
Il ne peut pas pointer du doigt et il ne peut pas changer d'arme,

226
00:09:00,980 --> 00:09:02,780
mais il a le fusil de chasse. 

227
00:09:02,780 --> 00:09:04,690
Il est animé,

228
00:09:04,685 --> 00:09:07,325
tout fonctionne et vous remarquerez qu'

229
00:09:07,325 --> 00:09:09,565
il est dans la même position que

230
00:09:09,560 --> 00:09:11,870
dans la scène précédente. 

231
00:09:11,870 --> 00:09:13,550
Et c'est parce qu'il
 gardera

232
00:09:13,550 --> 00:09:15,580
ça avec lui au fur et à mesure qu'il bougera. 

233
00:09:15,575 --> 00:09:17,975
Vous remarquerez donc que lorsque je suis entré sur le portail,

234
00:09:17,975 --> 00:09:19,765
j'ai ensuite déménagé parce que je ne
 voulais pas

235
00:09:19,760 --> 00:09:21,940
rester sur ce portail. 

236
00:09:21,935 --> 00:09:23,515
Donc, avec cette information,

237
00:09:23,510 --> 00:09:26,560
après tout le chemin, voyons quelles erreurs nous avons ici. 

238
00:09:26,555 --> 00:09:29,425
Je vais donc faire une pause car il y a beaucoup de choses. 

239
00:09:29,420 --> 00:09:34,330
Tout d'abord, vous verrez le problème avec la caméra,

240
00:09:34,325 --> 00:09:36,215
que nous allons résoudre un peu. 

241
00:09:36,215 --> 00:09:37,885
Vous verrez que nous avons un problème

242
00:09:37,880 --> 00:09:39,320
avec les lâches ennemis. 

243
00:09:39,320 --> 00:09:42,740
Ils essaient de trouver l'objet qui est le joueur,

244
00:09:42,740 --> 00:09:44,330
mais ils ne peuvent tout simplement pas le faire. 

245
00:09:44,330 --> 00:09:46,400
Non seulement cela, il nous indique que

246
00:09:46,400 --> 00:09:48,590
la transformation de l'objet a été détruite,

247
00:09:48,590 --> 00:09:50,720
mais que vous essayez toujours d'y accéder. 

248
00:09:50,720 --> 00:09:52,250
Que veuvent-ils dire par là ? 

249
00:09:52,250 --> 00:09:55,090
Eh bien, dès qu'ils sont arrivés dans ce monde,

250
00:09:55,085 --> 00:09:58,845
ils ont vu le petit joueur de malheur qui était là au départ. 

251
00:09:58,849 --> 00:10:01,039
Et puis quand la scène a commencé,

252
00:10:01,040 --> 00:10:04,220
il a été détruit et ils essayaient toujours d'y accéder. 

253
00:10:04,220 --> 00:10:05,930
Et si nous double-cliquons ici,

254
00:10:05,930 --> 00:10:08,690
vous remarquerez que c'est juste ici lors de la poursuite des joueurs. 

255
00:10:08,690 --> 00:10:11,380
Le problème est donc avec le joueur Chase. 

256
00:10:11,375 --> 00:10:13,625
Évidemment, nous allons régler cela aussi,

257
00:10:13,625 --> 00:10:15,155
la caméra sera réparée. 

258
00:10:15,155 --> 00:10:17,965
Et enfin, ce problème est également ici et

259
00:10:17,960 --> 00:10:21,110
l'objet de jeu du joueur actif et hiérarchie. 

260
00:10:21,110 --> 00:10:24,170
Donc tout cela sera corrigé et juste un peu. 

261
00:10:24,170 --> 00:10:26,210
Je vais donc annuler cette pause et
 régler les

262
00:10:26,210 --> 00:10:28,630
problèmes un à la fois. 

263
00:10:28,625 --> 00:10:33,065
Alors arrêtez ça, ouvrez ça, le jeu commence. 

264
00:10:33,065 --> 00:10:35,035
Alors ouvrez les scripts. 

265
00:10:35,030 --> 00:10:36,200
Et que devons-nous faire ? 

266
00:10:36,200 --> 00:10:38,030
Tout d'abord, je pense que nous allons

267
00:10:38,030 --> 00:10:40,000
résoudre le problème de la caméra principale. 

268
00:10:39,995 --> 00:10:46,195
Donc, si nous allons à la manette du lecteur où nous utilisons la

269
00:10:46,190 --> 00:10:47,990
caméra
 principale. Double-cliquez

270
00:10:47,990 --> 00:10:49,760
sur la caméra principale et faites défiler vers le bas

271
00:10:49,760 --> 00:10:51,730
voir où nous l'utilisons. 

272
00:10:51,725 --> 00:10:52,955
Nous l'utilisons. 

273
00:10:52,955 --> 00:10:55,445
On y va, dans le pointage de l'arme. 

274
00:10:55,445 --> 00:10:58,555
Donc ici, je suis simplement le moment de vérifier si

275
00:10:58,550 --> 00:11:02,650
la caméra principale est égale à null. 

276
00:11:02,645 --> 00:11:04,405
Cela signifie que nous n'avons pas d'appareil photo. 

277
00:11:04,400 --> 00:11:07,190
Je vais dire que la caméra principale est

278
00:11:07,190 --> 00:11:10,450
égale à la caméra principale. 

279
00:11:10,445 --> 00:11:12,295
Et cela ne se produira qu'une fois que nous
 vérifions

280
00:11:12,290 --> 00:11:14,330
que la caméra est nulle. 

281
00:11:14,330 --> 00:11:15,920
Cela signifie que nous n'avons pas de référence. 

282
00:11:15,920 --> 00:11:18,020
Si c'est le cas, nous allons régler la caméra principale. 

283
00:11:18,020 --> 00:11:20,800
Une fois encore. Si ce n'est pas le cas, nous continuerons

284
00:11:20,795 --> 00:11:23,995
régulièrement, avec le pointage d'un pistolet tout au plus. 

285
00:11:23,990 --> 00:11:25,910
Donc, de retour dans notre jeu va courir. 

286
00:11:25,910 --> 00:11:29,600
Le jeu va reprendre celui-ci, s'ouvrant. Quelque chose d'autre ? 

287
00:11:29,600 --> 00:11:31,580
Nous allons passer par là. 

288
00:11:31,580 --> 00:11:33,590
Et de l'autre côté,

289
00:11:33,590 --> 00:11:35,230
nous verrons dans la scène. 

290
00:11:35,225 --> 00:11:38,155
On y va. Vous pouvez voir que je suis capable de le souligner,

291
00:11:38,150 --> 00:11:39,740
mais évidemment,

292
00:11:39,740 --> 00:11:41,650
la caméra dans le monde du jeu

293
00:11:41,645 --> 00:11:43,325
ne se concentre
 pas sur le joueur. 

294
00:11:43,325 --> 00:11:44,785
Et c'est quelque chose que nous devrons

295
00:11:44,780 --> 00:11:46,910
évidemment fléchir. 

296
00:11:46,910 --> 00:11:48,670
Alors, passons à la réparation. 

297
00:11:48,665 --> 00:11:51,175
Je vais entrer dans mes scénarios. 

298
00:11:51,170 --> 00:11:54,500
Et ici, pendant que nous sommes, nous appellerons ça,

299
00:11:54,500 --> 00:11:57,140
où devrions-nous appeler cela ? 

300
00:11:57,140 --> 00:12:00,380
Voyons voir, où avons-nous mis la caméra de forme ? 

301
00:12:00,380 --> 00:12:02,170
Pouvons-nous le savoir ? 

302
00:12:02,165 --> 00:12:04,525
Nous ne savons pas quoi ? 

303
00:12:04,520 --> 00:12:05,540
Allons simplement dans

304
00:12:05,540 --> 00:12:09,360
les scripts et mettons ça à l'intérieur des managers. 

305
00:12:10,090 --> 00:12:13,760
Managers, gestionnaires, gestionnaires. 

306
00:12:13,760 --> 00:12:15,050
n'y a pas de gestionnaires. 

307
00:12:15,050 --> 00:12:15,410
D'accord. 

308
00:12:15,410 --> 00:12:17,720
Donc, les gestionnaires, pour une raison quelconque, nos caméras. 

309
00:12:17,720 --> 00:12:19,580
On y va. Donc, et les caméras,

310
00:12:19,580 --> 00:12:22,520
je vais créer un contrôle de caméra
 ou un

311
00:12:22,520 --> 00:12:26,540
contrôleur de camp de caméra. 

312
00:12:26,540 --> 00:12:29,930
Appuyez sur Entrée, attendez qu'il soit compilé. 

313
00:12:29,930 --> 00:12:32,120
Double-cliquez ici, et

314
00:12:32,120 --> 00:12:33,940
je vais faire quelques choses. 

315
00:12:33,935 --> 00:12:36,715
Alors, quoi ? Je fais toujours quelques choses. 

316
00:12:36,710 --> 00:12:39,010
Alors, quelles sont les choses que nous allons faire ? 

317
00:12:39,005 --> 00:12:41,375
Tout d'abord, ce que nous voulons faire ici, c'est

318
00:12:41,375 --> 00:12:44,035
toujours trouver automatiquement la cible du joueur. 

319
00:12:44,030 --> 00:12:46,970
Auparavant, ce que nous avions l'habitude de faire, c'était si nous allions

320
00:12:46,970 --> 00:12:50,380
à
 la caméra ici et au camp virtuel,

321
00:12:50,375 --> 00:12:52,205
nous avons dit le joueur suivant. 

322
00:12:52,205 --> 00:12:54,935
Et le problème, c'est que lorsque nous allons dans un nouveau monde,

323
00:12:54,935 --> 00:12:56,695
permettez-moi de vous montrer en détail,

324
00:12:56,695 --> 00:12:58,075
aurais
 dû vous le montrer avant. 

325
00:12:58,070 --> 00:12:59,450
Donc si, par exemple,

326
00:12:59,450 --> 00:13:00,650
j'ai
 ici le joueur,

327
00:13:00,650 --> 00:13:02,690
je clique sur lui, il est dans la hiérarchie. 

328
00:13:02,690 --> 00:13:04,100
J'ai ouvert la porte,

329
00:13:04,100 --> 00:13:06,410
j'appelle à un autre niveau. 

330
00:13:06,410 --> 00:13:09,830
Vous remarquerez maintenant que si j'ouvre à nouveau les caméras,

331
00:13:09,830 --> 00:13:12,440
qui sont exactement la même caméra virtuelle,

332
00:13:12,440 --> 00:13:14,390
vous pouvez voir que la suite est manquante,

333
00:13:14,390 --> 00:13:15,590
donc il n'y a pas de lecteur. 

334
00:13:15,590 --> 00:13:18,470
Pourquoi ? Parce que nous avons déjà réglé le joueur,

335
00:13:18,470 --> 00:13:20,290
mais maintenant il a été détruit. 

336
00:13:20,285 --> 00:13:23,485
Il a disparu, il faut donc les retrouver à nouveau. 

337
00:13:23,480 --> 00:13:26,720
Donc ici, je vais ouvrir ça et je vais

338
00:13:26,720 --> 00:13:30,190
créer une variable qui est le joueur à chasser,

339
00:13:30,185 --> 00:13:32,125
qui va évidemment être,
 voyons,

340
00:13:32,120 --> 00:13:36,880
la transformation ou pas d'atlas fait de lui la

341
00:13:36,875 --> 00:13:42,425
couche de contrôleur de couche à regarder. 

342
00:13:42,425 --> 00:13:46,235
Et il va être égal pour trouver un objet de type. 

343
00:13:46,235 --> 00:13:48,175
Le joueur, oh, non,

344
00:13:48,170 --> 00:13:49,910
non, non, pas ici. 

345
00:13:49,910 --> 00:13:52,010
Les coûts diminuent et commencent. 

346
00:13:52,010 --> 00:13:54,500
Nous allons dire que le calque à regarder

347
00:13:54,500 --> 00:13:57,760
est égal
 à trouver des objets de type,

348
00:13:57,755 --> 00:14:00,695
et qu'il s'agira de la manette du joueur. 

349
00:14:00,695 --> 00:14:02,305
Nous avons maintenant une référence à

350
00:14:02,300 --> 00:14:03,860
la manette du lecteur qui

351
00:14:03,860 --> 00:14:06,160
crée
 également une caméra virtuelle. 

352
00:14:06,155 --> 00:14:08,755
Donc, la machine de cinéma,

353
00:14:08,750 --> 00:14:11,590
caméra
 virtuelle hérite également nous devons

354
00:14:11,585 --> 00:14:15,005
doubler et C en utilisant cin, une machine. 

355
00:14:15,005 --> 00:14:16,585
On y va, sauve ça. 

356
00:14:16,580 --> 00:14:18,920
Donc, machine de
 cinéma,

357
00:14:18,920 --> 00:14:24,820
machine de cinéma, caméra virtuelle, merci. 

358
00:14:24,815 --> 00:14:28,565
Ça va être le verbe. 

359
00:14:30,540 --> 00:14:33,090
Caméra virtuelle. 

360
00:14:33,085 --> 00:14:36,345
Et nous allons le mettre ici dès que nous commencerons. 

361
00:14:36,340 --> 00:14:40,080
Il va donc être égal pour obtenir un composant. 

362
00:14:40,075 --> 00:14:42,115
Et où sommes-nous ingénieur ? 

363
00:14:42,115 --> 00:14:44,775
Où doit-on fixer le contrôleur de la caméra ? 

364
00:14:44,770 --> 00:14:47,610
Nous voudrions peut-être le joindre à la conférence. 

365
00:14:47,605 --> 00:14:49,335
Nous nous attacherons aux caméras virtuelles

366
00:14:49,330 --> 00:14:50,350
afin de pouvoir
 accéder immédiatement

367
00:14:50,350 --> 00:14:53,880
à la même caméra virtuelle de machine ici. 

368
00:14:53,875 --> 00:14:57,235
Alors obtenez un composant. 

369
00:14:57,235 --> 00:15:05,215
Et ce sera la caméra virtuelle de la machine de cinéma. 

370
00:15:05,215 --> 00:15:08,835
On y va. Et que va-t-on faire ici ? 

371
00:15:08,830 --> 00:15:12,390
Eh bien, nous allons configurer la caméra virtuelle
 en haut

372
00:15:12,385 --> 00:15:14,755
pour qu'elle soit égale à

373
00:15:14,750 --> 00:15:18,520
la couche pour regarder la transformation des points. 

374
00:15:18,515 --> 00:15:20,495
Ce sera donc au début,

375
00:15:20,495 --> 00:15:23,635
mais une mise à jour, nous devrons créer une boucle while. 

376
00:15:23,630 --> 00:15:26,030
Nous avons donc déjà couvert les boucles. 

377
00:15:26,030 --> 00:15:29,330
Et ça va être de vérifier que le joueur

378
00:15:29,330 --> 00:15:32,600
regarder alors qu'il est égal à null. 

379
00:15:32,600 --> 00:15:35,110
Cela signifie que nous n'avons pas encore trouvé de joueur. 

380
00:15:35,105 --> 00:15:39,055
Nous allons continuer à chercher le joueur à regarder. 

381
00:15:39,050 --> 00:15:41,740
Continuez à trouver la manette du joueur

382
00:15:41,735 --> 00:15:43,615
jusqu'à ce qu'on les trouve enfin. 

383
00:15:43,610 --> 00:15:44,810
Une fois que nous les avons
 trouvés,

384
00:15:44,810 --> 00:15:48,490
si nous avons une caméra virtuelle. 

385
00:15:48,485 --> 00:15:52,355
s'agit donc que d'une étape supplémentaire pour éviter toute erreur. 

386
00:15:52,355 --> 00:15:55,815
La caméra virtuelle ne suit pas. 

387
00:15:55,815 --> 00:15:58,935
Il sera égal au joueur. 

388
00:15:58,930 --> 00:16:02,640
Nous allons sauver cela. Et regardons encore une fois ce que nous avons fait. 

389
00:16:02,635 --> 00:16:03,975
Tout d'abord, nous avons créé

390
00:16:03,970 --> 00:16:06,190
la manette du joueur,

391
00:16:06,190 --> 00:16:07,540
qui est une variable que nous allons

392
00:16:07,540 --> 00:16:09,250
regarder les joueurs,

393
00:16:09,250 --> 00:16:10,300
qui est une variable de
 la manette du

394
00:16:10,300 --> 00:16:12,910
joueur, une caméra virtuelle. 

395
00:16:12,910 --> 00:16:14,560
Ils sont tous privés. 

396
00:16:14,560 --> 00:16:15,690
On peut nommer le privé. 

397
00:16:15,685 --> 00:16:17,385
Je n'ai juste pas eu le temps. 

398
00:16:17,380 --> 00:16:19,260
Vous savez quoi, veillons simplement

399
00:16:19,255 --> 00:16:22,005
que nous n'ayons pas de confusions ici. 

400
00:16:22,000 --> 00:16:23,380
Si privé, privé parce que nous

401
00:16:23,380 --> 00:16:24,940
n'en aurons pas besoin chez l'inspecteur. 

402
00:16:24,940 --> 00:16:26,110
Nous pouvons définir M si nous le voulons. 

403
00:16:26,110 --> 00:16:28,060
Nous n'avons pas à le faire. Commencez ensuite. 

404
00:16:28,055 --> 00:16:30,405
Nous allons trouver la manette du joueur. 

405
00:16:30,400 --> 00:16:31,470
C'est juste au cas où. 

406
00:16:31,465 --> 00:16:33,795
Nous commençons et nous avons le joueur dans la scène,

407
00:16:33,790 --> 00:16:35,310
puis nous trouvons la caméra,

408
00:16:35,305 --> 00:16:38,525
puis nous avons configuré la caméra de suivi pour qu'elle soit le joueur à regarder. 

409
00:16:38,520 --> 00:16:41,090
N'ayez qu'un seul joueur dans n'importe quelle scène,

410
00:16:41,090 --> 00:16:44,660
car nous nous en sommes déjà assurés ici. 

411
00:16:44,660 --> 00:16:46,510
Et le motif Singleton. 

412
00:16:46,505 --> 00:16:47,305
On y va. 

413
00:16:47,300 --> 00:16:50,050
C'est ce qu'on appelle le motif singleton, en gardant à l'esprit

414
00:16:50,045 --> 00:16:51,655
que chaque fois que vous le dites à quelqu'un,
 il

415
00:16:51,650 --> 00:16:53,470
pensera que vous êtes très intelligent. 

416
00:16:53,465 --> 00:16:55,285
Croyez-moi, même si c'est

417
00:16:55,280 --> 00:16:57,680
singleton signifie un seul objet. 

418
00:16:57,680 --> 00:17:00,920
Alors, juste au cas où ils vous demanderaient ce qu'est un motif singleton ? 

419
00:17:00,920 --> 00:17:03,020
Quoi qu'il en soit, le point de la caméra virtuelle suit,

420
00:17:03,020 --> 00:17:05,570
nous suivons le seul joueur que nous trouvons,
 puis

421
00:17:05,570 --> 00:17:08,540
une mise à jour juste au cas où c'est pour,

422
00:17:08,540 --> 00:17:11,540
disons que le joueur qui ne se

423
00:17:11,540 --> 00:17:15,110
détruit pas charge généralement avant tous les autres. objets. 

424
00:17:15,110 --> 00:17:17,690
Donc juste au cas où nous commencerons le match,

425
00:17:17,690 --> 00:17:20,870
nous ne trouvons pas le joueur immédiatement qu'il a disparu. 

426
00:17:20,870 --> 00:17:22,730
Nous ne pouvons pas le résoudre comme suit. 

427
00:17:22,730 --> 00:17:25,640
Suivez ensuite une mise à jour que nous continuerons à parcourir

428
00:17:25,640 --> 00:17:27,140
jusqu'à ce que nous trouvions que le joueur vérifie

429
00:17:27,140 --> 00:17:28,880
si nous avons une caméra virtuelle. 

430
00:17:28,880 --> 00:17:30,380
Ce n'est qu'une étape supplémentaire. 

431
00:17:30,380 --> 00:17:32,150
Je ne pense pas que nous en aurons besoin, même

432
00:17:32,150 --> 00:17:33,950
pas une seule fois parce que nous allons

433
00:17:33,950 --> 00:17:36,680
attacher le script à la caméra virtuelle,

434
00:17:36,680 --> 00:17:40,510
mais au cas où il n'y a pas de caméra virtuelle,

435
00:17:40,505 --> 00:17:42,475
nous vérifierons la condition et ensuite nous

436
00:17:42,470 --> 00:17:44,590
va définir le point de suivi de la caméra virtuelle,

437
00:17:44,585 --> 00:17:46,435
sauvegardez-le ici. 

438
00:17:46,430 --> 00:17:47,620
Allons-y. 

439
00:17:47,615 --> 00:17:51,805
Et donc les caméras,
 voyons,

440
00:17:51,800 --> 00:17:53,510
secouons et
 secouons

441
00:17:53,510 --> 00:17:57,250
le contrôleur de la caméra à travers la caméra virtuelle. 

442
00:17:57,245 --> 00:18:00,705
Et pour une raison quelconque, je vois que ce n'est pas un préfabriqué. 

443
00:18:00,709 --> 00:18:03,049
Est-ce que c'est sur préfabriqué ça. 

444
00:18:03,050 --> 00:18:07,010
Alors quand l'université préfabriquée,

445
00:18:07,010 --> 00:18:11,510
alors que les armes vous êtes un pauvre pour niveler les objets ici. 

446
00:18:11,510 --> 00:18:12,290
Non. 

447
00:18:12,290 --> 00:18:14,960
D'accord. Je vois donc que je ne préférais pas

448
00:18:14,960 --> 00:18:17,750
les caméras pour une raison quelconque que je pensais le faire. 

449
00:18:17,750 --> 00:18:21,490
Mais de toute façon, c'est juste préférer les camps et ici. 

450
00:18:21,485 --> 00:18:23,215
Et vous pouvez voir que

451
00:18:23,210 --> 00:18:25,980
la caméra virtuelle aura le contrôleur de camp. 

452
00:18:25,984 --> 00:18:27,114
Alors, sauvegardez ça. 

453
00:18:27,110 --> 00:18:28,870
Laissez-moi passer à l'autre niveau. 

454
00:18:28,865 --> 00:18:30,835
Je ne vais pas faire ça à tous les niveaux. 

455
00:18:30,830 --> 00:18:33,640
Je vais juste le faire avec ceux que nous testons,

456
00:18:33,635 --> 00:18:36,775
tout
 réparé et ce sera probablement la même chose. 

457
00:18:36,770 --> 00:18:39,770
Donc, les caméras et ici je vais le supprimer. 

458
00:18:39,770 --> 00:18:43,400
Et je vais revenir aux préfabriqués et m'
assurer

459
00:18:43,400 --> 00:18:47,270
d'ajouter les caméras ici dans la hiérarchie. 

460
00:18:47,270 --> 00:18:48,430
Sauvez tout ça. 

461
00:18:48,425 --> 00:18:50,005
Ouvre ça, ok, on dirait

462
00:18:50,000 --> 00:18:53,000
que
 tout semble bien. De retour dans les scènes. 

463
00:18:53,000 --> 00:18:58,450
De retour dans le crâne, c'est sauver ça, lancer le jeu. 

464
00:18:58,445 --> 00:19:01,375
Allez à la porte, ouvrez-la,

465
00:19:01,370 --> 00:19:03,050
passez au niveau suivant. 

466
00:19:03,050 --> 00:19:05,650
Et nous devrions voir, nous y allons. 

467
00:19:05,645 --> 00:19:07,555
Nous avons donc de nouveau trouvé le lecteur et maintenant

468
00:19:07,550 --> 00:19:10,540
les caméras fonctionnent parfaitement bien. 

469
00:19:10,535 --> 00:19:12,655
Super. Donc maintenant,

470
00:19:12,650 --> 00:19:14,030
si nous regardons en arrière dans la console,

471
00:19:14,030 --> 00:19:16,220
nous avons toujours le problème du

472
00:19:16,220 --> 00:19:18,950
fait que
 le joueur soit pourchassé, pas amusant. 

473
00:19:18,950 --> 00:19:20,660
Et parce que je vois que

474
00:19:20,660 --> 00:19:23,410
cette vidéo dure déjà assez longtemps,

475
00:19:23,405 --> 00:19:25,765
je vais me positionner ici et ensuite nous
 allons

476
00:19:25,760 --> 00:19:28,180
continuer dans la vidéo suivante. 

477
00:19:28,175 --> 00:19:29,385
J'espère que vous avez apprécié. 

478
00:19:29,380 --> 00:19:31,970
C'est un sujet un peu ennuyeux, je sais,

479
00:19:31,970 --> 00:19:34,790
mais au moins vous avez appris ce qu'est un modèle singleton. 

480
00:19:34,790 --> 00:19:36,920
Vous avez compris pourquoi la caméra n'était pas en marche. 

481
00:19:36,920 --> 00:19:38,630
J'essaie d'expliquer autant que
 possible

482
00:19:38,630 --> 00:19:40,790
même si c'est très ennuyeux. 

483
00:19:40,790 --> 00:19:44,180
Mais je veux que vous compreniez ce que tout se sent. 

484
00:19:44,180 --> 00:19:45,920
Au début, j'étais aussi confus,

485
00:19:45,920 --> 00:19:47,900
mais au fur et à mesure que
 j'ai tout traversé,

486
00:19:47,900 --> 00:19:49,670
j'ai compris les choses et je

487
00:19:49,670 --> 00:19:51,320
voulais vous les transmettre. 

488
00:19:51,320 --> 00:19:52,940
Alors, avec ça,
 merci d'

489
00:19:52,940 --> 00:19:56,610
avoir regardé et je vous verrai dans le prochain. 

