Entrar
Últimos assuntos
» Problemas com particulaspor RastaMaan Hoje à(s) 17:03
» Problema ao entrar por uma porta e voltar por ela
por aminaro Seg 06 maio 2024, 10:08
» Alguém aqui já ganha dinheiro com seus games?
por theguitarmester Ter 30 Abr 2024, 11:43
» Colisões não funcionando
por theguitarmester Ter 30 Abr 2024, 10:16
» Como ajustar velocidade de cada frame da animação no game maker
por pequetux Sex 26 Abr 2024, 16:45
» Preciso de ajuda
por AftonDuGrau Dom 21 Abr 2024, 20:18
» Como faz o evento drawn GUI, não se repetir?
por aminaro Sex 19 Abr 2024, 20:30
» PROBLEMAS COM FÍSICAS DE ÁGUA
por aminaro Ter 16 Abr 2024, 10:07
» Retorno da GMBR!!!
por Ralphed Sex 12 Abr 2024, 22:45
» JOGADOR PARANDO NO AR QUANDO ATACA
por aminaro Qua 10 Abr 2024, 13:51
» Problemas com texto interativo
por Kaaru72 Dom 07 Abr 2024, 11:31
» Erro escondido e indecifrável
por dev_gabize.azv Qui 04 Abr 2024, 10:11
» Mudar cor de apenas uma palavra
por Ralphed Sáb 30 Mar 2024, 00:39
» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27
» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30
» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17
» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18
» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34
» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13
» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18
» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12
» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02
» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55
» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42
» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56
[Duvida]Altura em 3D
4 participantes
Página 1 de 1
[Duvida]Altura em 3D
Bom, eu estava lendo as apostilas do Rodrigo Santiago e uma duvida, como eu faço um objeto voar e ir para o chão, como mudar a distância do personagem para o chão?
Essa duvida surgiu na engine_medium_all da apostila medio!
Tipo lá o player, fica voando, como eu faço para no meio do jogo escolher se eu quero q voe ou fique no chão e para escolher a altura do vôo?
Essa duvida surgiu na engine_medium_all da apostila medio!
Tipo lá o player, fica voando, como eu faço para no meio do jogo escolher se eu quero q voe ou fique no chão e para escolher a altura do vôo?
Re: [Duvida]Altura em 3D
Você pode fazer isso mudando o eixo Z, para isso o objeto deve ter uma variável que controla esse eixo, na maioria dos casos eu coloco o nome dela apenas como "Z", desse jeito:
Feito isso agora vamos para a gravidade, que é o que eu entendi, no eixo Z não temos variáveis que controlam a gravidade ou a direção da mesma como o próprio gravity e o gravity_direction. Sendo assim você terá que criar suas próprias variáveis para fazer o trabalho como por exemplo:
Nesse código nós verificamos se o eixo Z está maior que 0 (o nível do chão é claro), se estiver maior ele vai aumentar a força da variável z_gravity e logo depois subtrair do próprio eixo Z fazendo que a cada step o objeto caia mais rápido conforme o valor de z_gravity vai aumentando. Caso o objeto esteja no chão não é necessário ter a gravidade para puxa-lo para baixo então nós definimos ela como 0.
Pode ser que esse código esteja errado porque não testei ele realmente mas a base é essa espero que tenha entendido.
Flw!
- Código:
z = 0
Feito isso agora vamos para a gravidade, que é o que eu entendi, no eixo Z não temos variáveis que controlam a gravidade ou a direção da mesma como o próprio gravity e o gravity_direction. Sendo assim você terá que criar suas próprias variáveis para fazer o trabalho como por exemplo:
- Código:
z_gravity = 0
- Código:
if z > 0
{
z_gravity += 0.1
z -= z_gravity
}
else
{z_gravity = 0}
Nesse código nós verificamos se o eixo Z está maior que 0 (o nível do chão é claro), se estiver maior ele vai aumentar a força da variável z_gravity e logo depois subtrair do próprio eixo Z fazendo que a cada step o objeto caia mais rápido conforme o valor de z_gravity vai aumentando. Caso o objeto esteja no chão não é necessário ter a gravidade para puxa-lo para baixo então nós definimos ela como 0.
Pode ser que esse código esteja errado porque não testei ele realmente mas a base é essa espero que tenha entendido.
Flw!
gabrielsch- Games Ranking :
Notas recebidas : D + A + A
Data de inscrição : 06/12/2009
Reputação : 28
Número de Mensagens : 1230
Prêmios :
x 0 x 0 x 0
x 1 x 2 x 0
x 1 x 0 x 0
Re: [Duvida]Altura em 3D
Olha gabrielsch, eu usei a p3dc, então fica um pouco diferente.
Troque a variavel z(no step) por zmin, pronto ai você usa o código do gabrielshc e troque z > 0 por z>zmin, que é o chão, não esqueça de criar zmin no create.
Troque a variavel z(no step) por zmin, pronto ai você usa o código do gabrielshc e troque z > 0 por z>zmin, que é o chão, não esqueça de criar zmin no create.
Rodrigo Santiago- Games Ranking :
Notas recebidas : C + C + B
Data de inscrição : 28/07/2012
Reputação : 73
Número de Mensagens : 1281
Prêmios :
x 0 x 0 x 0
x 3 x 1 x 3
x 0 x 0 x 0
Re: [Duvida]Altura em 3D
Todas as respostas acima estão corretas... Porém, vou mostrar mais uma forma!
no Create do seu objeto use
Mas, para fazer subir em alguma função...
aqui está o code
Espero ter entendido ! Valeu
no Create do seu objeto use
- Código:
z1 = 0 //Base do objeto
z2 = 32 //Altura do objeto
- Código:
d3d_draw_block(x-16,y-16,z1,x+16,y+16,z2,textura,1,1)
- Código:
if z1 <= obj_chao.z1 z1 = obj_chao.z1
if z2 <= obj_chao.z1+32 z2 = obj_chao.z1+32
- Código:
z1 = 0
Mas, para fazer subir em alguma função...
aqui está o code
- Código:
z1 += 5
z2 += 5
- Código:
z1 -= 5
z2 -= 5
Espero ter entendido ! Valeu
Última edição por un00brn em Dom 17 Fev 2013, 22:51, editado 1 vez(es) (Motivo da edição : Corrigir code)
Re: [Duvida]Altura em 3D
Foi bom sua intensao, mas isso atrapalha pois o chao da engine nao e reto! E cheio de subidas e decidas alem de voce esta usando colisao 2d para 3d, que na apostila foi avisado para nunca usar isso no chao.
A colisao e verificada com a p3dc, no modelo e nao com sprites. Alem e claro de nao ser usado no draw variaveis dentro do desenho e sim com transformacoes de translacao e rotacao, o que atrapalharia tambem.
A colisao e verificada com a p3dc, no modelo e nao com sprites. Alem e claro de nao ser usado no draw variaveis dentro do desenho e sim com transformacoes de translacao e rotacao, o que atrapalharia tambem.
Rodrigo Santiago- Games Ranking :
Notas recebidas : C + C + B
Data de inscrição : 28/07/2012
Reputação : 73
Número de Mensagens : 1281
Prêmios :
x 0 x 0 x 0
x 3 x 1 x 3
x 0 x 0 x 0
Re: [Duvida]Altura em 3D
é, se no chao existe subidas e descidas...
Eu mostrei a minha ideia por que pensava que seria algo simples xD
Até eu agora fiquei interessado por essa engine!
Eu mostrei a minha ideia por que pensava que seria algo simples xD
Até eu agora fiquei interessado por essa engine!
Re: [Duvida]Altura em 3D
Ué!? coloca z+=1 ou z-=1 (ou qualquer outro numero) no evento
A , so uma nota, o z do crobat é no chao, o desenho e que e feito alto, vai la no draw e desenha algo com o primeira coordenada xyz com z sendo 0
A , so uma nota, o z do crobat é no chao, o desenho e que e feito alto, vai la no draw e desenha algo com o primeira coordenada xyz com z sendo 0
Rodrigo Santiago- Games Ranking :
Notas recebidas : C + C + B
Data de inscrição : 28/07/2012
Reputação : 73
Número de Mensagens : 1281
Prêmios :
x 0 x 0 x 0
x 3 x 1 x 3
x 0 x 0 x 0
Re: [Duvida]Altura em 3D
Eu ja tentei isso, mas qndo eu solto um dos dois (shift/ctrl), ele volta para o ponto q ele estava! eu to usando:
e essa historia do crobat, onde eu ponho o z como 0?
- Código:
keyboard_check(vk_shift)
e essa historia do crobat, onde eu ponho o z como 0?
Re: [Duvida]Altura em 3D
Ai meu deus... olha, vc por acaso colocou um else z=0 ou if! key... ou usou no_key, qualquer coisa, que levasse z=0 ou z=zmin.
Z=0 e so no draw, nao e tipo, pra vc digitar z=0 , e so la onde tem pra desenhar o biboard(ou billboard) nos argumentos do draw wall, colocar 0 na hora de definir o primeiro z e o segundo subtrai peo valor do primeiro.
ex:
-5,0,5 ,5,0,12 voce colocar -5,0,0, 5,0,7
Mas pelo que me parece, vc nao e muito bom em script, acho melhor vc estudar mais um pouqinho
Z=0 e so no draw, nao e tipo, pra vc digitar z=0 , e so la onde tem pra desenhar o biboard(ou billboard) nos argumentos do draw wall, colocar 0 na hora de definir o primeiro z e o segundo subtrai peo valor do primeiro.
ex:
-5,0,5 ,5,0,12 voce colocar -5,0,0, 5,0,7
Mas pelo que me parece, vc nao e muito bom em script, acho melhor vc estudar mais um pouqinho
Rodrigo Santiago- Games Ranking :
Notas recebidas : C + C + B
Data de inscrição : 28/07/2012
Reputação : 73
Número de Mensagens : 1281
Prêmios :
x 0 x 0 x 0
x 3 x 1 x 3
x 0 x 0 x 0
Re: [Duvida]Altura em 3D
Eu botei no step:
É pra botar isso no Draw?
- Código:
if keyboard_check (vk_shift)
{
z_gravity += 1
z += z_gravity
}
if keyboard_check(vk_control)
{
z_gravity -=1
z += z_gravity
}
É pra botar isso no Draw?
Re: [Duvida]Altura em 3D
Aaaa...agora da pra saber, voce mudou a variavel z no script da p3dc para zmin(no step)?
(esquece o negocio do draw, percebi q ja ta certo)
(esquece o negocio do draw, percebi q ja ta certo)
Rodrigo Santiago- Games Ranking :
Notas recebidas : C + C + B
Data de inscrição : 28/07/2012
Reputação : 73
Número de Mensagens : 1281
Prêmios :
x 0 x 0 x 0
x 3 x 1 x 3
x 0 x 0 x 0
Re: [Duvida]Altura em 3D
iFaé escreveu:Eu botei no step:
- Código:
if keyboard_check (vk_shift)
{
z_gravity += 1
z += z_gravity
}
if keyboard_check(vk_control)
{
z_gravity -=1
z += z_gravity
}
É pra botar isso no Draw?
No seu caso, não é necessário tudo isso. no step caso o Z esteja acima do chão ele aplica a força da gravidade, você não precisa fazer algo que já está sendo feito, o certo seria assim:
- Código:
if keyboard_check (vk_shift)
{z_gravity += 1}
if keyboard_check(vk_control)
{z_gravity -=1}
Flw!
gabrielsch- Games Ranking :
Notas recebidas : D + A + A
Data de inscrição : 06/12/2009
Reputação : 28
Número de Mensagens : 1230
Prêmios :
x 0 x 0 x 0
x 1 x 2 x 0
x 1 x 0 x 0
Re: [Duvida]Altura em 3D
Não está funcionando!
Aqui, fiz upload da engine pra vcs tentarem e verem onde eu estou errando, se puderem:
http://www.4shared.com/rar/zfyOBxLe/Engine_3D.html
Aqui, fiz upload da engine pra vcs tentarem e verem onde eu estou errando, se puderem:
http://www.4shared.com/rar/zfyOBxLe/Engine_3D.html
Re: [Duvida]Altura em 3D
Vai lá no step do crobat, troca a variavel z por zmin no step, e dá um valor pra ela lá no create(so pra declarar). Pronto, o z está livre pra você usar, e lembre-se zmin vai ser o valor do chao.
Rodrigo Santiago- Games Ranking :
Notas recebidas : C + C + B
Data de inscrição : 28/07/2012
Reputação : 73
Número de Mensagens : 1281
Prêmios :
x 0 x 0 x 0
x 3 x 1 x 3
x 0 x 0 x 0
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|