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
» player não consegue andar
por lovn7 Qui 21 Nov 2024, 13:33

» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22

» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31

» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23

» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49

» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58

» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36

» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36

» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33

» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51

» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28

» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18

» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08

» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10

» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16

» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40

» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01

» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45

» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34

» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28

» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48

» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54

» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14

» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50


[abs e sign] como funcional?

5 participantes

Ir para baixo

[abs e sign]  como funcional? Empty [abs e sign] como funcional?

Mensagem por charlles.rafael Ter 07 Jan 2014, 09:18

ola gente do forum, eu gostaria de saber se alguem poderia me esplicar como funciona esse 2 comandos: abs e sign

tipo acho que eles podem me ajudar bastante, so nao sei como eles funcional, se alguem puder me ajudar eu agradeço Very Happy
charlles.rafael
charlles.rafael

Data de inscrição : 30/09/2012
Reputação : 0
Número de Mensagens : 82
Prêmios : [abs e sign]  como funcional? 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

http://charllesrafael.blogspot.com

Ir para o topo Ir para baixo

[abs e sign]  como funcional? Empty Re: [abs e sign] como funcional?

Mensagem por Pit Bull Ter 07 Jan 2014, 09:25

abs(x) Returns the absolute value of x.
sign(x) Returns the sign of x (-1, 0 or 1).

O abs serve para tirar o sinal de um numero, por exemplo:

abs(-40) vai retornar 40.

abs(40) vai retornar também 40.

Sign vai retornar o sinal do numero, por exemplo:

sign(-40) vai retornar -1(pra você saber que esse numero é negativo)

sign(0) vai retornar 0.

sign(40) vai retornar 1.

Pit Bull
Pit Bull

Data de inscrição : 31/08/2010
Reputação : 16
Número de Mensagens : 646
Prêmios : [abs e sign]  como funcional? 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
Plataformas :
  • Unity
  • C#
  • Outros


https://discord.gg/ZPM2d6q

Ir para o topo Ir para baixo

[abs e sign]  como funcional? Empty Re: [abs e sign] como funcional?

Mensagem por charlles.rafael Ter 07 Jan 2014, 10:19

vlw Very Happy, mas como uso pra fazer movimentos tipo é pra um jogo de puzzle que estou fazendo, e a verificacao tem que ser exata, e me parece que da pra fazer caom essas funcoes so nao sei usar, tem como me ajudar?
charlles.rafael
charlles.rafael

Data de inscrição : 30/09/2012
Reputação : 0
Número de Mensagens : 82
Prêmios : [abs e sign]  como funcional? 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

http://charllesrafael.blogspot.com

Ir para o topo Ir para baixo

[abs e sign]  como funcional? Empty Re: [abs e sign] como funcional?

Mensagem por Pit Bull Ter 07 Jan 2014, 21:05

Cara o legal da programação é que você pode fazer algo com N maneiras diferentes, se você disse que essas duas funções vai te ajudar, você tem que pensar em um jeito que elas vão se encaixar.

Infelizmente não posso te ajudar a criar seu jogo todo, mas se você me falar como ele vai ser eu posso te dar dicas.
Pit Bull
Pit Bull

Data de inscrição : 31/08/2010
Reputação : 16
Número de Mensagens : 646
Prêmios : [abs e sign]  como funcional? 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
Plataformas :
  • Unity
  • C#
  • Outros


https://discord.gg/ZPM2d6q

Ir para o topo Ir para baixo

[abs e sign]  como funcional? Empty Re: [abs e sign] como funcional?

Mensagem por saim Qua 08 Jan 2014, 09:30

eu uso muito "sign" pra saber a direção de uma coisa, por exemplo, a velocidade.
Então se quero que um objeto verifique se tem uma colisão dois passos adiante, eu faço algo como
Código:
pos_x_da_colisao := x + sign(velocidade) * 2 * tamanho_do_passo
Nesse exemplo, a velocidade pode ser positiva ou negativa. Talvez eu tivesse que prever o caso da velocidade ser zero.

Já abs, eu uso pra muita coisa... tem situações que você quer saber o módulo do valor, não interessa se é positivo ou negativo. Por exemplo, a distância horizontal entre dois objetos é "ob1 . x - ob2 . x". Isso pode te dar um valor negativo. "abs" transformaria ele em positivo e você poderia colocar a intensidade de um sinal baseado no resultado, pro jogador usar um radar pra procurar algum objeto.
saim
saim

Games Ranking : Nota B

Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios : [abs e sign]  como funcional? Empty

Medalhas x 1 Tutoriais x 6 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 3

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

Ir para o topo Ir para baixo

[abs e sign]  como funcional? Empty Re: [abs e sign] como funcional?

Mensagem por charlles.rafael Qua 08 Jan 2014, 23:29

mas tipo ainda nao entendi como isso pode ser usado pra colisao, tem como fazer um tutorial ou uma engina pra eu intender melhor? tipo pq to fazendo um jogo que tem que ter colisao perfeita, tem alguma dica??
charlles.rafael
charlles.rafael

Data de inscrição : 30/09/2012
Reputação : 0
Número de Mensagens : 82
Prêmios : [abs e sign]  como funcional? 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

http://charllesrafael.blogspot.com

Ir para o topo Ir para baixo

[abs e sign]  como funcional? Empty Re: [abs e sign] como funcional?

Mensagem por TRFN Qui 09 Jan 2014, 01:07

Mas no caso depende da sua necessidade. O que você quer ao certo? Porque se você quer usar esses dois comandos não é atoa. Descreva como seria essa colisão. ABS, na movimentação, serve como função para ajudar nos calculos de distancia ou soma de valores geralmente e sign para condições. Ex:
Código:
if( abs( sign( hspeed ) ) )then movimento = true;
Neste código, independente da velocidade e da direção (seja negativa ou normal [positiva] ) ele vai detectar se a velocidade horizontal e diferente de zero.
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 : [abs e sign]  como funcional? 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

[abs e sign]  como funcional? Empty Re: [abs e sign] como funcional?

Mensagem por charlles.rafael Qui 09 Jan 2014, 01:44

quero um movimento limpo, top down quando o player encosta na "parede" ele para exatamente do lado da parede, nem antes nem depois (é isso que preciso)

colisao verificando pixil por pixel

obrigado desde ja
charlles.rafael
charlles.rafael

Data de inscrição : 30/09/2012
Reputação : 0
Número de Mensagens : 82
Prêmios : [abs e sign]  como funcional? 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

http://charllesrafael.blogspot.com

Ir para o topo Ir para baixo

[abs e sign]  como funcional? Empty Re: [abs e sign] como funcional?

Mensagem por saim Qui 09 Jan 2014, 08:52

Tem a engine do willy, deixa eu procurar aqui...
Olha, está na versão 2.0!

Acho que não tem nada a ver nem com abs nem com sign - achei legal ver funcionando, mas nunca cheguei a esmiuçar os scripts - mas te dá o que você quer, de um jeito muito didático e divertido.
A apresentação da engine não começa, de cara, com movimento em plataforma, mas vai acompanhando que chega lá.
saim
saim

Games Ranking : Nota B

Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios : [abs e sign]  como funcional? Empty

Medalhas x 1 Tutoriais x 6 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 3

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

Ir para o topo Ir para baixo

[abs e sign]  como funcional? Empty Re: [abs e sign] como funcional?

Mensagem por Willy Qui 09 Jan 2014, 19:09

saim escreveu:Tem a engine do willy, deixa eu procurar aqui...
Olha, está na versão 2.0!

Acho que não tem nada a ver nem com abs nem com sign - achei legal ver funcionando, mas nunca cheguei a esmiuçar os scripts - mas te dá o que você quer, de um jeito muito didático e divertido.
A apresentação da engine não começa, de cara, com movimento em plataforma, mas vai acompanhando que chega lá.
Obrigado por citar a engine, me poupou o trabalho. Happy

charlles.rafael:
Por coincidência, a engine faz o uso de abs e de sign. Vou explicar como:

Tenhamos como base, o script que simula o hspeed, que no caso da engine, é o scr_hspeed. Para usar o script, precisamos passar a velocidade que queremos.
Observando o script, perceba que uma das primeiras linhas é a seguinte:
Código:
d = sign(argument0);
Neste caso, "d" é a primeira letra de direção e o argumento0 é a velocidade passada para o script. Essa variável temporária será usada posteriormente.
Depois disso, logo abaixo, encontramos:
Código:
repeat(abs(argument0))
A função repeat repete os códigos abaixo de acordo com a quantidade que colocamos a ela, que no nosso caso, é abs(argument0). Como foi dito, abs serve para deixar o número positivo. Sabendo disso, saiba também que o repeat só funciona se o valor dado for positivo. Usando o abs, nós garantimos que o código não vai bugar, pois nem sempre a velocidade do jogador é positiva.
Depois disso, o script começa a calcular se existe espaço livre para poder andar, mas, como saber a direção certa que temos que checar? Já fizemos isso, e a resposta para nosso problema está na variável "d". Em código, é isso:
Código:
place_free(x+1*d,y);
Perceba que "1" está sendo multiplicado por "d" para fazer a checagem para o lado certo. Na matemática, todo numero multiplicado por 1 não se altera, todo numero multiplicado por -1 tem o sinal invertido, e todo numero multiplicado por 0 vira 0.

Resumindo, usamos abs para garantir que o repeat receba um valor positivo e usamos sign para saber em qual direção (-1, 0, 1, ou seja, esquerda, parado, direita) o objeto está se movendo.


Última edição por Willy em Sáb 11 Jan 2014, 15:12, editado 1 vez(es)
Willy
Willy

Games Ranking : Nota A

Notas recebidas : C + B + A + A
Data de inscrição : 08/06/2009
Reputação : 264
Número de Mensagens : 1890
Prêmios : [abs e sign]  como funcional? Empty

Medalhas x 0 Tutoriais x 2 Moedas x 0

Ouro x 2 Prata x 1 Bronze x 1

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

http://willy-gmbr.blogspot.com/

Ir para o topo Ir para baixo

[abs e sign]  como funcional? Empty Re: [abs e sign] como funcional?

Mensagem por saim Sex 10 Jan 2014, 11:08

Willy escreveu:Na matemática, todo numero multiplicado por 1 vira positivo, todo numero multiplicado por -1 vira negativo, e todo numero multiplicado por 0 vira 0.
Correção rápida:
todo numero multiplicado por 1 fica igual estava antes
todo numero multiplicado por -1 inverte o sinal
saim
saim

Games Ranking : Nota B

Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios : [abs e sign]  como funcional? Empty

Medalhas x 1 Tutoriais x 6 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 3

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

Ir para o topo Ir para baixo

[abs e sign]  como funcional? Empty Re: [abs e sign] como funcional?

Mensagem por Willy Sáb 11 Jan 2014, 15:13

Opa, pequeno deslize meu... Obrigado pela correção, nem percebi o erro. Já corrigi o post.
Willy
Willy

Games Ranking : Nota A

Notas recebidas : C + B + A + A
Data de inscrição : 08/06/2009
Reputação : 264
Número de Mensagens : 1890
Prêmios : [abs e sign]  como funcional? Empty

Medalhas x 0 Tutoriais x 2 Moedas x 0

Ouro x 2 Prata x 1 Bronze x 1

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

http://willy-gmbr.blogspot.com/

Ir para o topo Ir para baixo

[abs e sign]  como funcional? Empty Re: [abs e sign] como funcional?

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