[Resolvido]Como fazer camera de terceira pessoa?

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Resolvido Como fazer camera de terceira pessoa?

Mensagem por God_of_war425 em Qui 16 Ago 2012, 11:00

Eu to estudando o 3D no GM,mais até agora não achei nenhum tutoria explicando como fazer uma camera de vizão de terceira pessoa,so consigo fazer de primeira pessoa mais de terceira não alguem pode me ajudar a fazer uma,á eu não quero o codigo de mão beijada quero que me explique o oque o codigo está fazendo,um explicação é muito melhor doque dar o codigo de mão beija,se você explicar posso aprender a logica que você uzou assim posso criar meus proprios codigos de vizão de terceira pessoa,então que for responder porfavor explique o codigo,já tentei de varias formas fazer uma vizão terceira pessoa mais não tive sucesso então resolvir perguntar aqui.flw

God_of_war425

Número de Mensagens : 510
Idade : 18
Data de inscrição : 29/10/2011
Reputação : 4
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Como fazer camera de terceira pessoa?

Mensagem por Thiago_o_programador em Qui 16 Ago 2012, 11:12

basta vc criar um objeto e chama-lo de obj_cam, depois você adiciona no CREATE os comandos necessários de um jogo 3d, no draw_vc pode colocar algo como:
Código:
player=obj_player
draw_set_projection(xfrom,yfrom,zfrom,xto,yto,zto,xup,yup,zup)
xfrom,yfrom,zfrom //são o que determina de onde a camera ta olhando (apague)
xto,yto,zto //são o que determina para onde a camera ta olhando (apague)
draw_set_projection(player.x-100,player.y,player.z+100,
      player.x,player.y,player.z,0,0,1)
Você pode alterar os valores quando quiser, mas se quiser um tuto completinho veja na minha assinatura: Start 3D!, boa sorte amigo!

Thiago_o_programador

Ranking : Nota D
Número de Mensagens : 709
Idade : 19
Data de inscrição : 14/05/2009
Notas recebidas : D - C - D - C
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 1

http://www.jogosdahora.maisblog.net

Voltar ao Topo Ir em baixo

Resolvido ?

Mensagem por God_of_war425 em Sex 17 Ago 2012, 10:45

não seria,d3d_set_projection en ves de draw_set_projection?o seu codigo funciona mais ele não rotaciona a camera,você simplismente foi fazer a camera olhar para o objto player certo?então porque elá deve olhar do player para o player?elá não deveria olhar dela para o player en ves do player para o player?iso está confuzo.aguardando respostar,serv engine pois pretendo estudar a engine e n copi-ala se alguem quizer passar para mim tambem aceito.

God_of_war425

Número de Mensagens : 510
Idade : 18
Data de inscrição : 29/10/2011
Reputação : 4
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Como fazer camera de terceira pessoa?

Mensagem por Thiago_o_programador em Sex 17 Ago 2012, 13:23

não seria,d3d_set_projection en ves de draw_set_projection?
Realmente, d3d_set_projection é a função correta.

então porque elá deve olhar do player para o player?elá não deveria olhar dela para o player en ves do player para o player?
Não, veja bem com
Código:
player.x-100,player.y,player.z+100
ele define que as posições de projeção (Ou de onde a câmera ta olhando será 100 pixels atras do players, então a câmera estara olhando para ele.

a engine: Câmera em 3ª Pessoa

Thiago_o_programador

Ranking : Nota D
Número de Mensagens : 709
Idade : 19
Data de inscrição : 14/05/2009
Notas recebidas : D - C - D - C
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 1

http://www.jogosdahora.maisblog.net

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Como fazer camera de terceira pessoa?

Mensagem por Mr.Brum em Sex 17 Ago 2012, 14:28

Bom, eu acho que vc quer que o player possa ser controlado de forma a girar em torno de si, e a câmera fazer o mesmo movimento.
Nesse caso, você pode usar um pouco de trigonometria:

No Create:
Código:

xup=0 //padrao
yup=0 //padrao
zup=1 //padrao

no Draw:
Código:

xfrom=oplayer.x-lenghtdir_x(200,direction) //200px antes de x,no sentido da direction atual.
yfrom=oplayer.y-lenghtdir_y(200,direction) //200px antes de y,no sentido da direction atual.
zfrom=32 //altura da camera
xto=oplayer.x //x do alvo da camera
ytp=oplaer.y //y do alvo da camera
zto=oplayer.z //z do alvo da camera
d3d_set_projection(xfrom,yfrom,zfrom,xto,yto,zto,xup,yup,zup)

A partir daí quando quiser virar a câmera para a esquerda, aumente a direction, e quando quiser virar para a direita, diminua.

Flw


Última edição por mrbrum22 em Qui 23 Ago 2012, 12:13, editado 2 vez(es) (Razão : crrigindo a direction na função: (200,direction) , estava invertido.)

Mr.Brum

Ranking : Nota C
Número de Mensagens : 913
Idade : 25
Data de inscrição : 28/04/2011
Notas recebidas : D + D + C + C + D + B
Reputação : 41
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

http://mrbrumgames.blogspot.com/

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Como fazer camera de terceira pessoa?

Mensagem por gabrielsch em Sex 17 Ago 2012, 15:53

Eu ia postar essa engine mais cedo, mas acabei esquecendo de postar a mensagem, aqui está:

Engine - 3D - Terceira Pessoa Basico

Flw! sorrindo2

___________


Acesse: http://foxen.com.br/



gabrielsch

Ranking : Nota A
Número de Mensagens : 1229
Idade : 21
Data de inscrição : 06/12/2009
Notas recebidas : D + A + A
Reputação : 28
Insignia 1 x 1 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 2
   : 0

Voltar ao Topo Ir em baixo

Resolvido Obrigado

Mensagem por God_of_war425 em Qua 22 Ago 2012, 22:12

Obrigado a ajuda de todos vocês,agora vou estudar todas as engines para saber ezatamente como funcionam,a parte da camera 3D ainda não comprendi bem...mais a parte de modelar em 3D estou conseguindo muito bem,sem problemas!mais já com a camera 3D,obrigado pela ajuda de todos vocês.

OFF:vlw mrbrumm22 suas aulas de 3D são otimas,quem quer aprender 3D recomendo as aulas deles são muito boas e bem explicadas.

God_of_war425

Número de Mensagens : 510
Idade : 18
Data de inscrição : 29/10/2011
Reputação : 4
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Como fazer camera de terceira pessoa?

Mensagem por Conteúdo patrocinado Hoje à(s) 18:23


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum