﻿1
00:00:04,400 --> 00:00:05,390
‫Olá e bem-vindo.

2
00:00:05,390 --> 00:00:11,930
‫Nesta palestra, vamos aprender como criar classes que nos permitem compartilhar configuração

3
00:00:11,930 --> 00:00:16,430
‫e funcionalidade entre vários objetos em nossa cena.

4
00:00:16,460 --> 00:00:18,110
‫Vamos mergulhar e ver como funciona.

5
00:00:19,070 --> 00:00:27,200
‫Agora, o verdadeiro poder da programação com objetos vem quando começamos a usar classes e instâncias.

6
00:00:27,590 --> 00:00:27,920
‫Nós vamos.

7
00:00:27,920 --> 00:00:29,110
‫Bem é uma aula.

8
00:00:29,120 --> 00:00:36,410
‫Bem, efetivamente, é como um modelo ou um projeto no sentido regular da palavra para objetos?

9
00:00:36,830 --> 00:00:43,610
‫Então essa aventura aqui, nós chamamos de classe aventureiro e ela tem alguns dados padrão e algumas

10
00:00:43,610 --> 00:00:49,970
‫funcionalidades, mas podemos ir e criar uma instância dessa classe, como o aventureiro número um.

11
00:00:50,360 --> 00:00:57,800
‫Eu poderia chamar Bob, por exemplo, e ele tem sua própria cópia desses dados da classe Aventureiro.

12
00:00:57,810 --> 00:01:03,140
‫Este é o objeto real e a classe é algo de que fazemos os objetos.

13
00:01:03,920 --> 00:01:10,520
‫Você também pode ter uma aventura para uma segunda instância da mesma classe e eles compartilham a funcionalidade, observe

14
00:01:10,530 --> 00:01:15,440
‫que eles compartilham a mesma funcionalidade e podem ter sua própria versão dos dados.

15
00:01:15,440 --> 00:01:18,980
‫Então você pode ver que a aventura dois mudou seus pontos de experiência.

16
00:01:19,520 --> 00:01:21,710
‫Agora, o benefício disso é duplo.

17
00:01:21,710 --> 00:01:25,430
‫Uma é que estamos compartilhando toda essa funcionalidade entre esses diferentes objetos.

18
00:01:25,850 --> 00:01:32,810
‫E segundo é que algum desses dados que não mudamos, como a experiência 500 ou o nível um?

19
00:01:33,170 --> 00:01:39,320
‫Se eu mudasse o nível um para o nível dois, isso mudaria em todas as instâncias da classe também.

20
00:01:39,920 --> 00:01:44,750
‫Então, como vamos criar algo assim no Unreal?

21
00:01:45,410 --> 00:01:50,270
‫Bem, a primeira coisa que quero fazer é trazer algo que vai atuar como nosso projétil

22
00:01:50,270 --> 00:01:54,380
‫para que o projétil possa ser nosso primeiro objeto e classe que criamos.

23
00:01:54,980 --> 00:02:00,840
‫Então eu vou para o botão de resposta rápida do projeto na barra de ferramentas, vou até as formas e selecione uma

24
00:02:00,840 --> 00:02:03,620
‫esfera e arraste uma esfera para a minha cena.

25
00:02:03,620 --> 00:02:08,690
‫Também vou arrastá-lo um pouco para cima e tentar dimensioná-lo, torná-lo um pouco menor usando a

26
00:02:08,690 --> 00:02:09,950
‫ferramenta de dimensionamento.

27
00:02:10,250 --> 00:02:16,550
‫E se eu clicar aqui no centro do White Bit, posso dimensionar tudo uniformemente até obter

28
00:02:16,550 --> 00:02:19,760
‫algo do tamanho certo para o meu projétil.

29
00:02:20,420 --> 00:02:27,530
‫Agora, o que eu quero fazer com este projétil é que eu quero transformá-lo de um único

30
00:02:27,530 --> 00:02:31,730
‫objeto em uma classe de projeto para vários objetos.

31
00:02:32,330 --> 00:02:34,010
‫Há uma maneira fácil de fazer isso.

32
00:02:34,280 --> 00:02:38,230
‫No painel de detalhes, há um pequeno botão de plantas.

33
00:02:38,240 --> 00:02:43,340
‫Se você clicar nele, verá que ele diz que converte esse ator em uma classe de blueprint reutilizável que pode

34
00:02:43,340 --> 00:02:44,500
‫ter comportamento de script.

35
00:02:44,840 --> 00:02:49,940
‫Então, podemos clicar sobre isso e só queremos ter essa nova subclasse.

36
00:02:49,940 --> 00:02:54,260
‫Nós apenas deixamos os padrões, pois é a única coisa que queremos uma vez que a mudança seja o nome.

37
00:02:54,620 --> 00:03:01,100
‫Agora, o que chamamos de projétil, mas há um pouco de convenção de nomenclatura que tendemos a usar.

38
00:03:01,100 --> 00:03:02,120
‫Não é obrigatório.

39
00:03:02,120 --> 00:03:09,260
‫Não tem nenhum tipo de impacto funcional neste projeto, mas nos ajuda a entender um pouco melhor as

40
00:03:09,260 --> 00:03:09,920
‫coisas.

41
00:03:10,250 --> 00:03:17,480
‫Quando criamos uma classe de blueprint, tendemos a prefixá-la com BP e sublinhado de cápsula, e isso apenas nos permite ver

42
00:03:17,480 --> 00:03:19,970
‫instantaneamente quais são os objetos aqui.

43
00:03:20,000 --> 00:03:21,020
‫Aulas de planta.

44
00:03:21,530 --> 00:03:27,020
‫Podemos ir em frente e clicar em selecionar, que por algum motivo é efetivamente criar.

45
00:03:27,440 --> 00:03:33,860
‫E o que ele faz é ir em frente e abrir um novo editor aqui, o editor da própria

46
00:03:33,860 --> 00:03:34,580
‫classe Blueprint.

47
00:03:35,060 --> 00:03:39,950
‫Agora podemos, como os outros editores, encaixar isso na janela principal.

48
00:03:41,000 --> 00:03:43,010
‫E você pode ver de novo, nós temos um monte de coisas.

49
00:03:43,010 --> 00:03:49,280
‫É muito semelhante aos blueprints de nível, mas temos algumas outras coisas, como uma janela

50
00:03:49,280 --> 00:03:56,990
‫de visualização aqui, que nos permite visualizar como essa classe de blueprint ficaria quando criamos uma instância de objeto

51
00:03:56,990 --> 00:03:57,470
‫dela.

52
00:03:58,220 --> 00:04:05,510
‫Agora que temos essa classe principal, devemos ser capazes de trazer mais instâncias e mais objetos dessa classe

53
00:04:05,510 --> 00:04:06,800
‫para o nível.

54
00:04:07,400 --> 00:04:13,760
‫E, de fato, podemos duplicar o objeto que já temos aqui ou abrir o desenho de conteúdo

55
00:04:13,760 --> 00:04:17,150
‫e bem na raiz da sua dobra de conteúdo.

56
00:04:17,150 --> 00:04:22,430
‫Se você selecionar seu conteúdo, dobre no painel esquerdo, temos um projeto de projétil.

57
00:04:22,760 --> 00:04:29,450
‫Então, o que podemos fazer é arrastar isso para nossa cena e ele terá criado uma nova instância

58
00:04:29,450 --> 00:04:31,610
‫e você copiará esses projetos.

59
00:04:31,610 --> 00:04:34,400
‫Mas como eu disse, estas são cópias vinculadas.

60
00:04:34,400 --> 00:04:42,760
‫Fazer uma alteração em uma propriedade no editor de projéteis BP deve alterá-la para todas as instâncias.

61
00:04:43,130 --> 00:04:47,060
‫Portanto, a diferença aqui é que temos um painel de detalhes à direita.

62
00:04:47,060 --> 00:04:49,910
‫Isso é muito parecido com o painel de detalhes que temos em nosso nível.

63
00:04:49,910 --> 00:04:56,540
‫Editor Com a exceção de que você realmente precisa clicar nos componentes no painel esquerdo para

64
00:04:56,540 --> 00:04:58,250
‫ver suas propriedades.

65
00:04:58,490 --> 00:05:03,590
‫Então você pode ter que clicar em um componente de malha estática para ver algumas das propriedades que

66
00:05:03,590 --> 00:05:06,590
‫estamos acostumados a ver diretamente no nível de acesso root.

67
00:05:06,590 --> 00:05:11,900
‫Então, uma coisa para tomar nota de como fazer aqui é mudar o material.

68
00:05:11,900 --> 00:05:16,340
‫Então, no momento, esse material na bola é muito branco.

69
00:05:16,580 --> 00:05:18,380
‫Podemos querer mudar isso para algo.

70
00:05:18,490 --> 00:05:18,790
‫Senão.

71
00:05:18,850 --> 00:05:23,800
‫Se você tiver este componente estático MASH selecionado na dor à esquerda e, em seguida, vá para

72
00:05:23,800 --> 00:05:28,930
‫o painel de detalhes à direita, você pode ver que há uma seção chamada Materiais e Elementos Zero.

73
00:05:29,200 --> 00:05:35,380
‫Você pode clicar na seta para baixo e ver uma lista de todos os materiais que temos em nosso projeto, e

74
00:05:35,380 --> 00:05:37,930
‫você pode selecionar qualquer um deles e experimentá-los.

75
00:05:37,930 --> 00:05:40,780
‫Então eu poderia tentar algo como este material de paralelepípedos.

76
00:05:40,990 --> 00:05:47,470
‫E você pode ver que parece um pouco ridículo naquela bala de canhão, então não vou usar essa.

77
00:05:47,830 --> 00:05:52,960
‫Então eu gostaria de desafiá-lo a transformar este projétil em uma bala de canhão.

78
00:05:53,230 --> 00:05:56,320
‫Agora, a maneira como vamos fazer isso é, em primeiro lugar, habilitar a física.

79
00:05:56,320 --> 00:06:03,100
‫Você terá que selecionar o componente estático MASH para encontrar as propriedades físicas e, em seguida, ativar a física

80
00:06:03,460 --> 00:06:10,690
‫e escolher um material de sua preferência que se adapte a uma bala de canhão muito melhor do que a pedrinha

81
00:06:10,690 --> 00:06:11,860
‫atual que selecionei.

82
00:06:12,130 --> 00:06:15,970
‫E então volte para sua cena e dê uma olhada no que acontece.

83
00:06:15,970 --> 00:06:20,200
‫O que eles mudaram lá ou não pausaram o vídeo e tentaram?

84
00:06:23,970 --> 00:06:24,450
‫OK.

85
00:06:24,450 --> 00:06:25,230
‫Bem vindo de volta.

86
00:06:25,470 --> 00:06:32,580
‫Então, em primeiro lugar, se eu apertar play, você notará que essas duas bolas ficam ali porque a física não

87
00:06:32,580 --> 00:06:33,310
‫está habilitada.

88
00:06:33,340 --> 00:06:34,860
‫Vamos querer a física habilitada.

89
00:06:35,190 --> 00:06:40,440
‫Então vamos ao nosso painel de detalhes com o componente de malha estática selecionado no painel esquerdo.

90
00:06:40,770 --> 00:06:48,210
‫E vamos rolar para baixo até onde tem a seção de física e a caixa de seleção para simular física.

91
00:06:48,690 --> 00:06:53,160
‫A outra mudança que quero fazer aqui é mudar a seção de materiais.

92
00:06:53,430 --> 00:06:54,600
‫Este é o elemento zero.

93
00:06:54,960 --> 00:07:01,410
‫Se você clicar no menu suspenso agora, vou procurar um metálico e acho que irei para o

94
00:07:01,410 --> 00:07:03,090
‫material de metal cromado.

95
00:07:03,330 --> 00:07:05,030
‫Então eu fico um pouco cromado em negrito agora.

96
00:07:05,040 --> 00:07:05,760
‫Isso é ótimo.

97
00:07:06,000 --> 00:07:08,850
‫Portanto, não é tão chato como era antes.

98
00:07:09,660 --> 00:07:12,600
‫Agora podemos salvar se quisermos, mas não é absolutamente necessário.

99
00:07:12,600 --> 00:07:14,220
‫Podemos ir em frente e apertar o play.

100
00:07:14,580 --> 00:07:18,990
‫E se diminuirmos o zoom, você pode ver que essas bolas estão rolando no chão

101
00:07:18,990 --> 00:07:25,890
‫com a física habilitada e com um novo material, não apenas um deles, mas os dois porque estão vinculados a essa classe de

102
00:07:25,890 --> 00:07:28,050
‫projeto e são instâncias de isto.

103
00:07:28,320 --> 00:07:29,340
‫Então isso é fantástico.

104
00:07:29,340 --> 00:07:36,870
‫Poderemos usar isso para todos os tipos de coisas em que precisamos de várias instâncias da mesma classe

105
00:07:36,870 --> 00:07:42,090
‫em nosso jogo e evita que tenhamos que nos repetir muitas vezes.

106
00:07:42,360 --> 00:07:43,000
‫Coisas boas.

107
00:07:43,020 --> 00:07:44,400
‫Vejo você na próxima palestra.

