Autor |
Mensagem |
welgomes
Usuário
Registrado: 10/07/11 Mensagens: 827 Localização: São Paulo - Capital |
|
|
Sex Fev 24, 2017 9:01 pm |
|
|
ManoPlayForum
Usuário
Registrado: 30/10/15 Mensagens: 344
|
|
|
|
Parabéns, gostei bastante e o cenário, apesar de não ter a ver com a câmera, estava muito bom.
|
|
Sex Fev 24, 2017 9:54 pm |
|
|
ellyo-two
Usuário
Registrado: 21/02/09 Mensagens: 669
|
|
|
|
Muito bom, vou da uma olhada
_________________ Ravy.studios
Ravy.artes
A Nossa Imaginação é sua diversão |
|
Sáb Fev 25, 2017 3:46 pm |
|
|
welgomes
Usuário
Registrado: 10/07/11 Mensagens: 827 Localização: São Paulo - Capital |
|
|
|
Observem que o projeto é "Dynamic Shooter Game" e não "Third Person Static".
Este exemplo e seu código irão dar mais liberdade ao desenvolvimento permitindo um melhor controle da câmera ou tipo de jogo.
|
|
Sáb Fev 25, 2017 6:33 pm |
|
|
Matheus Dantas
Usuário
Registrado: 23/04/13 Mensagens: 249 Localização: São Paulo, Mogi das Cruzes |
|
|
Sáb Fev 25, 2017 7:57 pm |
|
|
welgomes
Usuário
Registrado: 10/07/11 Mensagens: 827 Localização: São Paulo - Capital |
|
|
|
Não sei do seu código ou limitações.
Mas esse que fiz, dá para fazer muitas adaptações, como filmar o personagem de frente, ou então filmar ele bem de longe no ângulo que você quiser sem precisar espalhar muitas câmeras pelo cenário, ou então você quer fazer algo e acha que não dá porque escolheu um determinado tipo de projeto e pensa: "Poxa vou ter que criar tudo de novo." ou "Vou deixar sem fazer essa parte porque não dá para fazer, só o tipo de projeto X suporta isso."
|
|
Seg Fev 27, 2017 12:42 am |
|
|
Matheus Dantas
Usuário
Registrado: 23/04/13 Mensagens: 249 Localização: São Paulo, Mogi das Cruzes |
|
|
Seg Fev 27, 2017 6:18 am |
|
|
welgomes
Usuário
Registrado: 10/07/11 Mensagens: 827 Localização: São Paulo - Capital |
|
|
|
Segue o código em três linhas
No evento OnCreate
| | SetCameraTarget('Cam0','MainActor');
SetCamera('Cam0');
|
No evento MainLoop
Aqui mostra 2 linhas mas é quebra de linha do site, no 3D Game Builder fica 1 só.
| | SetObjectPosition('Cam0', Sin(DegToRad(GetMainActorRotation(true))) * 2 + GetObjectPositionX('Player'), GetObjectPositionY('Cam0'), Cos(DegToRad(GetMainActorRotation(true))) * 2 + GetObjectPositionZ('Player'));
|
O código de exemplo ficou grande porque devemos escolher entre código enxuto e código legível.
Outro motivo é que gastei bastante código somente para mostrar informações na tela e para piorar são informações numéricas e elas devem ser convertidas para string antes.
Eu sou do tipo que gosta de código legível, então gosto de pegar cada informação e comentar, mas como podemos ver é possível pegar a informação e jogar diretamente na função, ou seja, fazer uma cascata de funções dentro de funções.
Sem problemas, se já conseguiu parabéns, mas está aí mais uma maneira de se fazer as coisas.
Muitos caminhos levam ao mesmo lugar, agora cabe aos colegas escolherem o que acharem melhor.
Abraço.
|
|
Seg Fev 27, 2017 11:27 am |
|
|
|