Conectar-se
Quem está conectado
14 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 14 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 18/08/2010
Número de Mensagens : 414
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Como fazer com que o background fique em 3D?

em Qui 06 Dez 2012, 11:08
Estou fazendo meu jogo que contem dimensão em 3D!
Mas como fas para o background se adaptar em 3º dimensão? Ele fica de ponta cabeça! '-'
avatar
Ranking : Nota A
Notas recebidas : A+A
Data de inscrição : 20/03/2010
Número de Mensagens : 1134
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 108

Prêmios
   : 1
   : 0
   : 1
Ver perfil do usuáriohttps://www.facebook.com/seito.washiro.7

Re: Como fazer com que o background fique em 3D?

em Qui 06 Dez 2012, 13:06
se o problema for só isso...
vai la no editor de imagens e vira o background de ponta cabeça, seguindo essa lógica o jogo vai vira-lo automaticamente...
avatar
Data de inscrição : 18/08/2010
Número de Mensagens : 414
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: Como fazer com que o background fique em 3D?

em Qui 06 Dez 2012, 13:21
Jiraya escreveu:se o problema for só isso...
vai la no editor de imagens e vira o background de ponta cabeça, seguindo essa lógica o jogo vai vira-lo automaticamente...
Eu bateria na minha cara se não soubesse que isso resolveria!
Mas achei que tinha como fazer com que o background se ajustasse!
Mas tem outro problema! Por exemplo, coloque um background desenhado na room, ta normal né? Agora crie um objeto que ative a função d3d_start(), agora repare que o background esta de ponta cabeça e parece que ele esta muitissimo longe, e tem um enorme espaço em volta dele!
Bem, esse e meu problema é isso. Tem como consertar?
avatar
Ranking : Nota B
Notas recebidas : C + C + B
Data de inscrição : 28/07/2012
Número de Mensagens : 1281
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 73

Prêmios
   : 3
   : 1
   : 3
Ver perfil do usuário

Re: Como fazer com que o background fique em 3D?

em Qui 06 Dez 2012, 13:50
esse e um dilema.
Mesmo que vc use um objeto para desenhar com camera ortho o background ficaria por cima, mesmo com depth super positivo.

se voce for criar um jogo 3D que use a camera(perspectiva) tera que fazer de outra forma:

desabilite culling e light
desenhe um elipsoid com 1000 de tamanho(maior ou menor, depende do jogo) e dai coloque uma presisao de 10 no maximo.
este elipsoid deve ter o centro no mesmo lugar que a camera ex:
camfromx-500,camfromy-500...camfromx+500,canfromy+500...
(com ztambem)
reabilite culling e light(se vc for usar)
a e é claro, a textura da esfera deve ser o background desejado.

espero que tenha ajudado.

edit

camfrom e uma variavel q voce deve criar para deixar acesivel a posicao da cemra. o valor dela deve ser os mesmos usados em projection
avatar
Data de inscrição : 18/08/2010
Número de Mensagens : 414
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: Como fazer com que o background fique em 3D?

em Qui 06 Dez 2012, 14:02
seria melhor se você tivesse colocado as funções dentro dos parenteses!
Você pode fazer esse favor?
avatar
Ranking : Nota B
Notas recebidas : C + C + B
Data de inscrição : 28/07/2012
Número de Mensagens : 1281
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 73

Prêmios
   : 3
   : 1
   : 3
Ver perfil do usuário

Re: Como fazer com que o background fique em 3D?

em Qui 06 Dez 2012, 15:44
[objeto câmera]
[creat]
Código:

//É apenas para iniciar
global.cam_fromx=0
global.cam_fromy=0
global.cam_fromz=0
global.cam_tox=0
global.cam_toy=0
global.cam_toz=0
[draw]
Código:

d3d_set_projection(global.cam_fromx,global.cam_fromy,global.cam_fromz,global.cam_tox,global.cam_toy,global.cam_toz,0,0,1)

[objeto background]
[draw]
Código:

d3d_set_culling(-1);
//d3d_set_lighting(-1) se for usar luz
d3d_draw_ellipsoid(global.cam_fromx-500 ,global.cam_fromy-500, global.cam_fromz-500, global.cam_freomx+500 ,global.cam_fromy+500 ,global.cam_fromz+500,bac,1,1,10)
d3d_set_culling(1);
//d3d_set_lighting(1) se for usar luz

onde global.camfrom e camto são aquelas posições da câmera: from é de onde ela olha e to é para onde ela olha.(use isto e mude totalmente a dinâmica do seu jogo)
por exemplo

[objeto Play]
[step]
Código:

global.cam_fromx=x-lengthdir_x(75,direction)
global.cam_fromy=y-lengthdir_y(75,direction)
global.cam_fromz=25
global.cam_tox=x
global.cam_toy=y
global.cam_toz=0
avatar
Data de inscrição : 18/08/2010
Número de Mensagens : 414
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: Como fazer com que o background fique em 3D?

em Qui 06 Dez 2012, 16:21
Poxa, deve ter dado trabalho, e ter gasto muito tempo o.o! Obrigado pela atenção! Maasss... To vendo que sou pessimo em 3D! `.´
Código:

___________________________________________
ERROR in
action number 1
of Draw Event
for object obj_background:

Error in code at line 3:
  d3d_draw_ellipsoid(global.cam_fromx-500 ,global.cam_fromy-500, global.cam_fromz-500, global.cam_freomx+500 ,global.cam_fromy+500 ,global.cam_fromz+500,bac,1,1,10)
                                                                                              ^
at position 94: Unknown variable cam_freomx
So isso que deu problema mas já consertei!
E tambem ficou estranho, parece ate o background do Super mario 64! Fico torto!
Seria melhor usa o d3d_draw_wall ou d3d_draw_block, não acha?
Caso não funcione, eu volto tudo para 2D mesmo! =/
Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum