[Resolvido]Ajuda com Matematica para a HUD

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

[Resolvido]Ajuda com Matematica para a HUD

Mensagem por Black Studio em Qui 15 Mar 2012, 00:03

Bem, o que acontece, é o seguinte, eu tenho uma HUD, e eu quero que ela fique no centro, mas antes de responder, leia direito a minha pergunta por favor.

A HUD tem a dimensão de 488x (A Altura não importa), e seu ponto de origem é em 9x (Para a posição dos Icones), A resolução do jogo, pode ser diferente a toda hora, sendo que a HUD não aumenta de Tamanho com a resolução, então eu quero saber como se faz, para deixa-lá no meio definindo apenas a posição X

eu tentei fazer algo com Window_get_widht, sprite_width, sprite_origin (Eu sei que não existe, mas eu nao lembrei de cor o comando) e por ai vai, mas eu não sou o Melhor matematico do Mundo, Então me ajude por favor.

Até!flw


Última edição por Funkbuster em Sex 16 Mar 2012, 00:29, editado 1 vez(es)

Black Studio

Ranking : Nota C
Número de Mensagens : 337
Idade : 18
Data de inscrição : 19/10/2011
Notas recebidas : C + C
Reputação : 9
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 1
   : 0

Voltar ao Topo Ir em baixo

Re: [Resolvido]Ajuda com Matematica para a HUD

Mensagem por theguitarmester em Qui 15 Mar 2012, 01:01

Tente isto
Código:

// do X
x = room_width/2
//e para o Y
y = room_height/2
isto será a posição que irão ficar, para o tamnho tente +ou-isto:
Código:

sprite_width  = x+128
sprite_height = y+128
espero ter ajudado

theguitarmester

Ranking : Sem avaliações
Número de Mensagens : 1908
Idade : 21
Data de inscrição : 28/02/2012
Notas recebidas : B
Reputação : 80
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 1
Prêmios
   : 2
   : 2
   : 1

http://guitarmester.no.comunidades.net/index.php?pagina=19362978

Voltar ao Topo Ir em baixo

Re: [Resolvido]Ajuda com Matematica para a HUD

Mensagem por Black Studio em Qui 15 Mar 2012, 02:22

Você não leu minha pergunta né?

Isso não daria certo, por causa do Hotspot da sprite.

Black Studio

Ranking : Nota C
Número de Mensagens : 337
Idade : 18
Data de inscrição : 19/10/2011
Notas recebidas : C + C
Reputação : 9
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 1
   : 0

Voltar ao Topo Ir em baixo

Re: [Resolvido]Ajuda com Matematica para a HUD

Mensagem por saim em Qui 15 Mar 2012, 08:42

488 / 2 = 244; //o centro da HUD está a 244x à direita da borda esquerda (e da borda direita também).
244 - 9 = 235; //o centro da HUD está a 235x à direita da origem, ou seja pra coincidir com um ponto qualquer, a origem tem que estar 235 pixels à ESQUERDA desse ponto.
x = centro_da_tela - 235.

Agora, pra encontrar o centro da tela, depende do que você está fazendo pra definir o tamanho da tela. Se estiver usando views, por exemplo,
Código:
centro_da_tela = view_xview[?] + view_wview[?] / 2;

Edit:
Funkbuster escreveu:A resolução do jogo, pode ser diferente a toda hora, sendo que a HUD não aumenta de Tamanho com a resolução
Pelo que entendi, você quer mudar o tamanho da view e alterar a escala da HUD de acordo, pra que ela não mude de tamanho na tela, é isso?
Se for, tem que multiplicar essa distância do centro da tela (235) pelo mesmo valor da escala da HUD. Então, se você multiplica o view_wview[?] por, digamos, "k", a image_xscale e image_yscale de hud também têm que ser multiplicados por "k" e a posição da HUD será "centro_da_tela - (235 * k)".

saim

Ranking : Nota B
Número de Mensagens : 2964
Idade : 38
Data de inscrição : 14/01/2011
Notas recebidas : C-D-A-B
Reputação : 121
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Re: [Resolvido]Ajuda com Matematica para a HUD

Mensagem por Black Studio em Qui 15 Mar 2012, 13:06

Pelo que entendi, você quer mudar o tamanho da view e alterar a escala da HUD de acordo, pra que ela não mude de tamanho na tela, é isso?
Mas isso já foi feito, até tem um tópico, onde o Kabeção me ajudou com isso Very Happy

O que eu preciso agora mesmo, é a posição, eu vou testar o que você disse, se eu conseguir, darei um edit Smile

EDIT : Err... não deu certo não, veja na imagem abaixo onde eu tava usando na resolução, 1024 de Largura.

Como o tamanho já esta resolvido, eu acho que não vai da pra usar Pixels, pois eles não funcionam na mesma maneira com o Image_xscale, eu acho, então eu acho que vai precisar usar as variavels, do Tamanho da Sprite Smile

Black Studio

Ranking : Nota C
Número de Mensagens : 337
Idade : 18
Data de inscrição : 19/10/2011
Notas recebidas : C + C
Reputação : 9
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 1
   : 0

Voltar ao Topo Ir em baixo

Re: [Resolvido]Ajuda com Matematica para a HUD

Mensagem por saim em Qui 15 Mar 2012, 14:10

Funkbuster escreveu:
Pelo que entendi, você quer mudar o tamanho da view e alterar a escala da HUD de acordo, pra que ela não mude de tamanho na tela, é isso?
Mas isso já foi feito, até tem um tópico, onde o Kabeção me ajudou com isso Very Happy
Desculpe, eu não vi o tópico. Mas não estava te ajudando a fazer isso, só queria confirmar se era isso mesmo. É, né? Tipo, você faz isso, o esquema funciona, mas a posição fica errada.
Funkbuster escreveu:Err... não deu certo não, veja na imagem abaixo onde eu tava usando na resolução, 1024 de Largura.

Como o tamanho já esta resolvido, eu acho que não vai da pra usar Pixels, pois eles não funcionam na mesma maneira com o Image_xscale, eu acho, então eu acho que vai precisar usar as variavels, do Tamanho da Sprite Smile
Infelizmente, não tenho como ver a imagem, daqui. Tem como você descrevê-la, por favor?
Verifique se SEM usar escala (escala = 1) o código funciona. Faça também um teste pra ver se você está encontrando corretamente o centro da tela (desenhe uma série de círculos concêntricos no ponto central, de forma que eles fiquem visíveis em qualquer escala).

A teoria é essa mesma: ao se aplicar um fator de escala, pra manter o um ponto do objeto no mesmo ponto da tela, multiplique a distância desse ponto à origem do objeto pela mesma escala. Isso funciona em centímetros, pixels, polegadas, o que for. Deve ter havido algum engano na aplicação da teoria.
...
Mas os pixels diminuíram de tamanho, não é mesmo? A unidade não é constante, então deixa eu adivinhar: a HUD se desloca para a direita à medida que você diminui o zoom, não é isso?
Deu nó na minha cabeça, agora. Você deve multiplicar os 235 pela escala, isso é certo. Mas tem que multiplicar por um outro fator, que não sei se é a escala (de novo) ou por dois. Acho que é pela escala mais uma vez. Teste aí e me conte.


Pensando melhor, experimente multiplicar por 1/escala (ou "1/k", seguindo o raciocínio do post aterior).

Caramba, devo ter esquecido meu cérebro em casa, hoje. Não, é isso mesmo, multiplique os 235 pelo mesmo fator que você usou pra HUD permanecer inalterada. Se teve erro, é porque o centro da tela está sendo encontrado errado.

saim

Ranking : Nota B
Número de Mensagens : 2964
Idade : 38
Data de inscrição : 14/01/2011
Notas recebidas : C-D-A-B
Reputação : 121
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Re: [Resolvido]Ajuda com Matematica para a HUD

Mensagem por Black Studio em Sex 16 Mar 2012, 00:28

Realmente não entendi a sua lógica (desculpe Smile), Mas eu consegui resolver o problema, colocando o Hotspot no Centro da sprite, e posicionando um por um pelo Draw mesmo, o Resultado foi o que eu queria, mesmo sendo algo bem chato de fazer, mas agora já está feito, então está tudo resolvido Happy

Podem trancar o tópico.

Black Studio

Ranking : Nota C
Número de Mensagens : 337
Idade : 18
Data de inscrição : 19/10/2011
Notas recebidas : C + C
Reputação : 9
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 1
   : 0

Voltar ao Topo Ir em baixo

Re: [Resolvido]Ajuda com Matematica para a HUD

Mensagem por Conteúdo patrocinado Hoje à(s) 14:36


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