GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» 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

» Como ajustar velocidade de cada frame da animação no game maker
por Ralphed Qui 18 Abr 2024, 18:28

» 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

» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49

» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21

» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21

» Asteroid Core - Early Acesse Update [0.2.0.0]
por JOZ. Seg 08 Jan 2024, 14:39


Background parar sem tremer

5 participantes

Ir para baixo

Background parar sem tremer Empty Background parar sem tremer

Mensagem por Doritos555 Qui 16 Fev 2012, 21:04

Bom pessoal. Eu quero que meu background[0] siga o view[0] (que por sua vez, segue o jogador). Até aí, é fácil demais, o problema, que quando o jogador para de andar, o background dá uma tremida no final antes de parar junto com o view.

Eu estou usando o código no step event do objeto x da room:

background_x[0] =view_xview
background_y[0] =view_yview

Ele até chega a seguir, mas quando é pra parar, ele da um tremida. Tem outro código para fazer isso?

- A velocidade do jogador é 2 e o do view é -1.
- Top-down.


Última edição por Doritos555 em Qui 16 Fev 2012, 21:20, editado 3 vez(es)
Doritos555
Doritos555

Games Ranking : Nota A

Data de inscrição : 19/01/2012
Reputação : 2
Número de Mensagens : 78
Prêmios : Background parar sem tremer Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Background parar sem tremer Empty Re: Background parar sem tremer

Mensagem por TRFN Qui 16 Fev 2012, 21:07

Vamos aos fatos,o background fica tremendo o tempo todo ou só um tempo ?

Seria bom se criasses um sistema de camera da view.
O padrão tem alguns legs mesmo.
TRFN
TRFN

Games Ranking : Nota C

Notas recebidas : C + C + C
Data de inscrição : 16/01/2012
Reputação : 70
Número de Mensagens : 1192
Prêmios : Background parar sem tremer Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 2

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Web Tecnology
  • Javascript
  • Outros


https://site13.com.br/

Ir para o topo Ir para baixo

Background parar sem tremer Empty Re: Background parar sem tremer

Mensagem por Doritos555 Qui 16 Fev 2012, 21:10

Não, quando o jogador para de andar, ele meio que "teleporta" pro view, como se estivesse meio segundo atrasado ou adiantado, sabe?

Queria impedir que isso acontecesse, caso tenha algum outro código mais eficiente.
Doritos555
Doritos555

Games Ranking : Nota A

Data de inscrição : 19/01/2012
Reputação : 2
Número de Mensagens : 78
Prêmios : Background parar sem tremer Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Background parar sem tremer Empty Re: Background parar sem tremer

Mensagem por TRFN Qui 16 Fev 2012, 21:13

Olha,você mesmo já tem o armamento para isso,só falta saber usa-lo.
Ao invés de usar uma view fixa,use uma view variável .
Faça os códigos da view por GML,é faça com que ele tenha um End Step .
Tente fazer com que ela seja alterável e adaptável segundo sua necessidade.



Última edição por TRFN em Qui 16 Fev 2012, 21:15, editado 1 vez(es)
TRFN
TRFN

Games Ranking : Nota C

Notas recebidas : C + C + C
Data de inscrição : 16/01/2012
Reputação : 70
Número de Mensagens : 1192
Prêmios : Background parar sem tremer Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 2

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Web Tecnology
  • Javascript
  • Outros


https://site13.com.br/

Ir para o topo Ir para baixo

Background parar sem tremer Empty Re: Background parar sem tremer

Mensagem por Thyago Qui 16 Fev 2012, 21:14

.Tente colocar o código em draw ao invés de step,em draw ele atualiza três vezes por step e em step apenas uma vez.
Thyago
Thyago

Games Ranking : Nota B

Notas recebidas : D+B+B+C+A
Data de inscrição : 24/08/2009
Reputação : 31
Número de Mensagens : 1101
Prêmios : Background parar sem tremer Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 1 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Background parar sem tremer Empty Re: Background parar sem tremer

Mensagem por Doritos555 Qui 16 Fev 2012, 21:18

Boa! Colocar no draw funcionou, agora ele não da a tremidinha final xD
Obrigado pela ajuda ai galera

EDIT:

Opa! Não, susto , haha.
Não, me enganei, o código não funciona no draw.

TRFN, não sei exatamente o que colocar no End step se for o caso.
Doritos555
Doritos555

Games Ranking : Nota A

Data de inscrição : 19/01/2012
Reputação : 2
Número de Mensagens : 78
Prêmios : Background parar sem tremer Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Background parar sem tremer Empty Re: Background parar sem tremer

Mensagem por TRFN Qui 16 Fev 2012, 21:27

Na verdade,e recomendado usar o GML pra controle da view porque ele é mais prático e funcional.

Crie um objeto chamado obj_camera e coloque no draw as funções GML de view.
Comece a digitar "view_" e ai você já saberá o que fazer.

Faça com que sejam variáveis,é assim para de tremer !
TRFN
TRFN

Games Ranking : Nota C

Notas recebidas : C + C + C
Data de inscrição : 16/01/2012
Reputação : 70
Número de Mensagens : 1192
Prêmios : Background parar sem tremer Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 2

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Web Tecnology
  • Javascript
  • Outros


https://site13.com.br/

Ir para o topo Ir para baixo

Background parar sem tremer Empty Re: Background parar sem tremer

Mensagem por Doritos555 Qui 16 Fev 2012, 21:31

Ta certo, vou farei a view por GML nesse caso, já edito.

EDIT:


Bom, eu fiz a view por GML, mas o tranco final do background continua existindo, o background parece sempre estar atrasado Background parar sem tremer 414722

Deve ser por que ele segue a view, que segue o player, ou seja, ele não segue diretamente o player, então deve rolar algum lag nisso.
Doritos555
Doritos555

Games Ranking : Nota A

Data de inscrição : 19/01/2012
Reputação : 2
Número de Mensagens : 78
Prêmios : Background parar sem tremer Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Background parar sem tremer Empty Re: Background parar sem tremer

Mensagem por TRFN Sex 17 Fev 2012, 12:17

Tente alterar a propriedade de velocidade da view.
Coloque essa variavel para se adaptar conforme a necessidade.

Outra boa coisa seria alterar as bordas e também colocar o código do background com um leve adiantamento.
Faça com que este fique estático após certa aproximação comforme a view em questão.

Isso tudo por GML ;)
TRFN
TRFN

Games Ranking : Nota C

Notas recebidas : C + C + C
Data de inscrição : 16/01/2012
Reputação : 70
Número de Mensagens : 1192
Prêmios : Background parar sem tremer Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 2

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Web Tecnology
  • Javascript
  • Outros


https://site13.com.br/

Ir para o topo Ir para baixo

Background parar sem tremer Empty Re: Background parar sem tremer

Mensagem por Kabeção Sex 17 Fev 2012, 12:37

Doritos555 escreveu:Deve ser por que ele segue a view, que segue o player, ou seja, ele não segue diretamente o player, então deve rolar algum lag nisso.
É por isso mesmo. O GM tem uma sequencia para executar seus eventos.
O background vai sempre estar atrasado porque quando a view segue automaticamente um objeto ele calcula as posições depois de todos os eventos executarem, ou seja:
Código:
// O player move
x += velocidade;
y += velocidade;
// Você move o back de acordo com a view
background_x[0] = view_xview[0];
background_y[0] = view_yview[0];

// E depois o GM calcula a posição do view de acordo com o objeto
Notou o problema? A posição do background é definida antes da view mudar de posição, por isso ele vai sempre estar atrasado pois os valores de posição da view ainda estão desatualizados.

Um modo de resolver isso seria você prevendo o que o jogador vai fazer um step a frente mas como isso é impossível tem outra solução: é você fazer a view mudar manualmente ou o back seguir o player (mas a última não é muito recomendável).

Então ficaria algo assim:
Código:
// O player move
x += velocidade;
y += velocidade;

// Você mesmo recalcula a view
view_xview = player.x-borda;
view_yview = player.y-borda;

// Você move o back de acordo com a view
background_x[0] = view_xview[0];
background_y[0] = view_yview[0];
Agora sim a posição da view não vai estar desatualizada quando a posição do back for definida.


Última edição por Kabeção em Sex 17 Fev 2012, 12:46, editado 1 vez(es)
Kabeção
Kabeção

Games Ranking : Sem avaliações

Data de inscrição : 08/06/2008
Reputação : 100
Número de Mensagens : 2314
Prêmios : Background parar sem tremer Empty

Medalhas x 0 Tutoriais x 7 Moedas x 0

Ouro x 3 Prata x 0 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://blackcapapps.blogspot.com.br/

Ir para o topo Ir para baixo

Background parar sem tremer Empty Re: Background parar sem tremer

Mensagem por vinians Sex 17 Fev 2012, 12:43

Bem observado Kabeção o não conhecimento detalhado da sequencia de Eventos/Calculos do GM causa muitos problemas, por isso eles colocaram mas 2 tipos de Eventos Step nas novas versões. Antigamente só tinha 1 Evento Step, depois com os 2 ficou mais facil fazer certas coisas mais avançadas que antes dava um nó na cabeça.
Flws
vinians
vinians

Games Ranking : Nota B

Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Reputação : 90
Número de Mensagens : 2715
Prêmios : Background parar sem tremer Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 0 Prata x 2 Bronze x 1

Insignia 1 x 0 Insignia 2 x 1 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Construct 2
  • Java
  • C#
  • Javascript
  • C ou C++
  • Outros


https://vinians.itch.io

Ir para o topo Ir para baixo

Background parar sem tremer Empty Re: Background parar sem tremer

Mensagem por Kabeção Sex 17 Fev 2012, 12:54

vinians escreveu:Bem observado Kabeção o não conhecimento detalhado da sequencia de Eventos/Calculos do GM causa muitos problemas, por isso eles colocaram mas 2 tipos de Eventos Step nas novas versões. Antigamente só tinha 1 Evento Step, depois com os 2 ficou mais facil fazer certas coisas mais avançadas que antes dava um nó na cabeça.
Flws
É, executar códigos na sequência errada pode causar diversos bugs e você dificilmente vai perceber o problema.
Eu também cheguei a quebrar muito a cabeça com essa questão do back seguir a view pois o GM atualiza as posições até mesmo depois do End Step (ou seria depois do Draw antes do Begin Step, ai já mudaria o modo de pensar, seria o player que se move depois da view definir posição), por isso não importa se está do End Step, Step ou Begin Step, se o player pode se mover a qualquer hora, as posições da view vão estar sempre um passo atrás.
Kabeção
Kabeção

Games Ranking : Sem avaliações

Data de inscrição : 08/06/2008
Reputação : 100
Número de Mensagens : 2314
Prêmios : Background parar sem tremer Empty

Medalhas x 0 Tutoriais x 7 Moedas x 0

Ouro x 3 Prata x 0 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://blackcapapps.blogspot.com.br/

Ir para o topo Ir para baixo

Background parar sem tremer Empty Re: Background parar sem tremer

Mensagem por TRFN Sex 17 Fev 2012, 13:20

Era o que havia me esquecido.
Boa kabeção !

Mas de qualquer forma,não se esqueça que se houver algum leg adicional,basta usar um if para cálculos aproximados e ai pronto,resolve também.
TRFN
TRFN

Games Ranking : Nota C

Notas recebidas : C + C + C
Data de inscrição : 16/01/2012
Reputação : 70
Número de Mensagens : 1192
Prêmios : Background parar sem tremer Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 2

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Web Tecnology
  • Javascript
  • Outros


https://site13.com.br/

Ir para o topo Ir para baixo

Background parar sem tremer Empty Re: Background parar sem tremer

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos