Fusion Makers
Faça login para usufruir de todos nossos recursos. Ainda não tem uma conta? Inscreva-se já!

Participe do fórum, é rápido e fácil

Fusion Makers
Faça login para usufruir de todos nossos recursos. Ainda não tem uma conta? Inscreva-se já!
Fusion Makers
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Procurar
 
 

Resultados por:
 


Rechercher Pesquisa avançada

Últimos assuntos
» Ideia: MMFMakers, do zero
por mediamaker Qua 26 maio 2021, 12:28

» [Flash] Haunt the house
por mediamaker Sáb 19 Set 2020, 16:47

» Como a criar passo a passo engine de Movimento Grid com colisão (tipo Bomberman) completo usadno extensão Array?
por mediamaker Sex 15 Set 2017, 14:19

» CF2.5 -> 26 reais na steam
por Matheus290 Ter 22 Dez 2015, 17:52

» Aplicação com Editbox não tá rodando online
por Matheus290 Sáb 19 Set 2015, 01:38

» A Guilda continua!!!! "Âncora Team" (novo nome)
por weliowl7 Qua 16 Set 2015, 01:52

» Sub-application e Inventario
por majorcorps Dom 23 Ago 2015, 13:11

» Efeito de string
por majorcorps Sáb 22 Ago 2015, 19:55

» [PC] Pitiri 1997
por Matheus290 Sáb 20 Jun 2015, 17:10

» Teclado virtual com Edit Box
por mediamaker Sáb 20 Jun 2015, 14:10

Quem está conectado?
24 usuários online :: 0 registrados, 0 invisíveis e 24 visitantes

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 251 em Ter 26 Out 2021, 22:21
Estatísticas
Temos 256 usuários registrados
O último membro registrado é Sitydistta

Os nossos membros postaram um total de 5268 mensagens em 575 assuntos

Noções matemáticas - Plano Cartesiano

4 participantes

Ir para baixo

Noções matemáticas - Plano Cartesiano Empty Noções matemáticas - Plano Cartesiano

Mensagem por Eskyz Dom 29 Jul 2012, 17:56

Noções matemáticas
Plano Cartesiano

Introdução:
Quem já conhece esta área de desenvolvimento de Indie Games a algum tempo sabe muito bem que ela exige um bom conhecimento de matemática e física, seja qual for a ferramenta utilizada para isso. E o Multimedia Fusion 2 não é exceção. A ideia dessa série é reforçar certos conceitos matemáticos utilizados corriqueiramente na criação de jogos, a fim de poupar o aluno do trabalho de pesquisar na internet aquilo que ele precisará usar. Até porque, geralmente o conteúdo que encontramos na internet serve apenas para revisar, não aprender.

Nesta aula, falaremos de um conceito matemático básico: Plano Cartesiano. Não há dificuldade alguma em compreendê-lo, mas é simplesmente fundamental para o desenvolvimento de jogos. É a base de tudo que diz respeito à movimentação, tanto no Multimedia Fusion 2, quanto em outras ferramentas: movimentos personalizados (plataforma, oito direções, retilíneo, TileBased, 360º, entre outros), Inteligência Artificial, criação de objetos, mudanças de posição etc.

O Plano Cartesiano:
É um conceito é tão simples quanto importante. Você com certeza já o viu na escola. Mas se não lembra, não se preocupe, pois irá lembrar agora. E se realmente não aprendeu ainda, aprenderá agora. Eis um plano cartesiano:
Noções matemáticas - Plano Cartesiano Plano

Um plano cartesiano nada mais é do que duas retas perpendiculares entre si, cada uma representando um eixo. Perceba, são duas retas, não segmentos de reta; ambas são infinitas (basta observar as setas nas pontas das retas), mas nos limitamos a representar o essencial pois é impossível representar algo infinito. Chamamos a reta horizontal de eixo X ou eixo das abscissas, e nela os valores crescem da esquerda para direita. Já a reta vertical, chamamos de eixo Y ou eixo das coordenadas, e os valores crescem de baixo para cima. Cada ponto no eixo X é chamado de abscissa, e cada ponto no eixo Y é uma coordenada.

Localizando pontos em um Plano Cartesiano:
Um ponto qualquer em um plano cartesiano é representado na forma (X;Y) ou (X,Y), sendo X a abscissa e Y a coordenada. Isso significa que um ponto P representado por (8;2) se encontra no local em que ao mesmo tempo estão localizadas a abscissa 8 e a coordenada 2. Veja na figura abaixo alguns pontos destacados e suas respectivas representações:
Noções matemáticas - Plano Cartesiano Planopontos

Ponto A: (2;8)
Ponto B: (-7;-6)
Ponto C: (-4;4)
Ponto D: (0;0)

E isso é o básico sobre Plano Cartesiano. Agora, vamos ver como aplicá-lo no desenvolvimento de jogos.

Aplicando os conceitos ao desenvolvimento de jogos:
Antes de mais nada, uma informação importante: o "Plano Computacional", que utilizaremos daqui para frente, é invertido no eixo Y. Isto significa dizer que, em relação ao eixo das coordenadas, onde os valores são positivos no Plano Cartesiano, são negativos no Computacional, ou seja, eles crescem de cima para baixo; e vice-versa. Apesar disso, os princípios são exatamente os mesmos. O motivo de eu ter explicado até agora tendo como base um Plano padrão é para não causar problemas futuros para quem estiver vendo isto pela primeira vez. É importante não confundir o Plano Cartesiano com o Computacional. Informação dada, vamos prosseguir.

O seu jogo é um Plano Computacional gigante. Cada pixel da tela é um ponto nesse Plano Computacional gigante. A origem (posição em que tanto X quanto Y são 0), nada mais é do que o ponto (0;0). Um frame de tamanho 640x480 nada mais é do que um plano computacional com 640 abscissas e 480 coordenadas. No Multimedia Fusion 2 é possível saber em que ponto do Frame o mouse está localizado através de um indicador na parte inferior direita do programa. É possível também saber a posição atual de um objeto no jogo (ponto em que ele se encontra) pelo Debugger, ou a de um objeto no Frame Editor pelas suas propriedades. Ou seja, a posição de todos os objetos é dada através de pontos, exatamente como em um Plano Cartesiano ou Computacional (que o MMF2 tem como referência para posicionamento o HotSpot daquele objeto).
Noções matemáticas - Plano Cartesiano Framein

Vamos ver isso na prática. Criaremos agora uma espécie de "teletransporte". Crie um Active Object e posicione-o no ponto (0;0), através de suas propriedades (lembrando que a referência para o posicionamento de um objeto é o HotSpot, tanto no Multimedia Fusion 2 como em várias outras ferramentas). O que queremos é que ele se teletransporte para o ponto (320;240). Então, vá ao Event Editor e crie o seguinte evento:

Upon pressing "Enter"
(Active) Set X position to 320
(Active) Set Y position to 240


Ou seja, definimos para que ele vá até a abscissa 320 e até a coordenada 240. Teste o jogo e veja você mesmo...

Noções matemáticas - Plano Cartesiano Localizando

Tá, legal, mas teletransporte é bobagem. Você não vai usar isso com frequência (ou vai?). Então agora, faremos um movimento de oito direções simples. O objetivo é apenas mostrar o uso dos conceitos de Plano Cartesiano, então ele não terá aceleração, desaceleração ou colisões. Será somente a movimentação. Embora o resto seja fácil de fazer tendo alguns conhecimentos de MMF2 e usando a cabeça...

Adicione este evento:

Repeat while ("Player 1") Moved right
(Active) Set X position to X("Active")+2


O evento acima faz com que, ao manter pressionada a tecla direita, o Active vá para duas abscissas após a que ele se encontra no momento. Ou seja, se mova em 2px. Agora é só repetir o evento para o outro sentido.

Repeat while ("Player 1") Moved left
(Active) Set X position to X("Active")-2


E agora, faremos os movimentos verticais. O princípio é exatamente o mesmo dos horizontais, mas agora alterando as coordenadas do objeto. E lembre-se que usamos o Plano Computacional, não o Cartesiano (os valores crescem de cima para baixo no eixo Y).

Repeat while ("Player 1") Moved top
(Active) Set Y position to Y("Active")-2


Repeat while ("Player 1") Moved down
(Active) Set Y position to Y("Active")+2


E com isso, temos um movimento de oito direções simples.

Finalizando:
Ok, talvez alguns de vocês estejam me perguntando pra que tanta explicação sobre o conceito em si, se na prática é tão simples. A resposta é que mostrei só a ponta do Iceberg. Embora não seja necessário ter conhecimento real de Plano Cartesiano para fazer um movimento de oito direções simples, ele é pré-requisito para a compreensão de outros conceitos mais avançados, como cálculos de Seno e Cosseno em uma circunferência. Você não vai conseguir fazer esses cálculos se não tiver aprendido pelo menos o básico de Plano Cartesiano. Tais cálculos serão fundamentais para a programação de movimentos circulares e 360º.

Bom galera, é isso aí. Espero que tenham gostado da aula. Que os esquecidos tenham lembrado, e os que não aprenderam tenham aprendido.

Até mais.


Última edição por Eskyz em Dom 05 Ago 2012, 19:03, editado 1 vez(es)
Eskyz
Eskyz
Administrador
Administrador

Mensagens : 360
Data de inscrição : 28/02/2010
Idade : 27
Localização : Brasil

http://www.mmfmakers.rg3.net/

Ir para o topo Ir para baixo

Noções matemáticas - Plano Cartesiano Empty Re: Noções matemáticas - Plano Cartesiano

Mensagem por Matheus290 Seg 30 Jul 2012, 13:16

Nossa cara, muito bom! Mas eu to com um pressentimento que só aqueles que não tem preguiça e que tem vontade de crescer é que irão ler. Infelizmente.

Mas ficou muito bom! Você poderia ter dado exemplos "Localizando pontos em um Plano Cartesiano" usando a tela do MMF.

--------------

Pessoal, lembrando que isso se aplica à toda computação. Mas normalmente, se usa números Hexadecimais (na programação). No MMF usa números decimais.

Por exemplo:

PosX = 5C
PosY = 1A

Seria:

PosX = 92
PosY = 26

--------

Mas é isso! Ótimo tutorial, Eskyz! +1
Matheus290
Matheus290
Administrador
Administrador

Mensagens : 710
Data de inscrição : 18/02/2010
Idade : 30
Localização : Bauru SP

Ir para o topo Ir para baixo

Noções matemáticas - Plano Cartesiano Empty Re: Noções matemáticas - Plano Cartesiano

Mensagem por Ricardo Seg 30 Jul 2012, 14:25

Ficou ótimo, muito bem explicado. Com certeza ajudara os iniciantes em programação. +1
Ricardo
Ricardo
Usuário

Mensagens : 248
Data de inscrição : 02/10/2011
Idade : 25
Localização : Guarulhos - São Paulo

http://ricardoluis0.deviantart.com/

Ir para o topo Ir para baixo

Noções matemáticas - Plano Cartesiano Empty Re: Noções matemáticas - Plano Cartesiano

Mensagem por Sonic_BR Ter 31 Jul 2012, 22:56

Muito bom!
Na minha opinião,prefiro chamar logo de X e Y xD

Mesmo assim,bom tutorial nada!

ÓTIMO!

+1 Tio Ex.

Sonic_BR
Usuário

Mensagens : 477
Data de inscrição : 25/04/2010
Idade : 25
Localização : Vitória da Conquista-BA

Ir para o topo Ir para baixo

Noções matemáticas - Plano Cartesiano Empty Re: Noções matemáticas - Plano Cartesiano

Mensagem por Matheus290 Qua 01 Ago 2012, 17:08

Sonic_BR escreveu:Na minha opinião,prefiro chamar logo de X e Y xD

A que você se refere? Ao nome "Plano Cartesiano"?
Matheus290
Matheus290
Administrador
Administrador

Mensagens : 710
Data de inscrição : 18/02/2010
Idade : 30
Localização : Bauru SP

Ir para o topo Ir para baixo

Noções matemáticas - Plano Cartesiano Empty Re: Noções matemáticas - Plano Cartesiano

Mensagem por Sonic_BR Qua 01 Ago 2012, 20:49

Matheus290 escreveu:
Sonic_BR escreveu:Na minha opinião,prefiro chamar logo de X e Y xD

A que você se refere? Ao nome "Plano Cartesiano"?

Não,tô me referindo a "abscissa" e "coordenadas" '-'
Enfim,vou dar o +1 que eu esqueci de dar...

Sonic_BR
Usuário

Mensagens : 477
Data de inscrição : 25/04/2010
Idade : 25
Localização : Vitória da Conquista-BA

Ir para o topo Ir para baixo

Noções matemáticas - Plano Cartesiano Empty Re: Noções matemáticas - Plano Cartesiano

Mensagem por Eskyz Qui 02 Ago 2012, 19:31

Opa, valeu pessoal!

Matheus, vou dar uma incrementada no tutorial esse fim de semana então. Aulas começaram já, não tô acessando o PC durante a semana... até posso, mas nem dá tempo pra escrever. Agenda tá cheia, sério. A propósito... obrigado pelo +1, mas a matéria tá aprovada? Você disse que ficou boa, mas não que ia aprovar ;T

Sonic, isso é irrelevante. Só comentei porque as vezes o cara pode se deparar com esses nomes alternativos, principalmente quando tá estudando matemática. Meu professor só chama de coordenada e abscissa.

Sobre o Plano Cartesiano, claro, não é necessário conhecimento dele para manipular posições no MMF2. Se o seu objetivo é fazer um movimento simples, o conceito básico de X e Y serve. Mas essa aula foi só pra preparar terreno mesmo pra cálculos de seno e cosseno na circunferência. Tava vendo o tópico de movimento 360º do tio Thetheus e tinha um pessoal com dificuldade nisso aí.
Eskyz
Eskyz
Administrador
Administrador

Mensagens : 360
Data de inscrição : 28/02/2010
Idade : 27
Localização : Brasil

http://www.mmfmakers.rg3.net/

Ir para o topo Ir para baixo

Noções matemáticas - Plano Cartesiano Empty Re: Noções matemáticas - Plano Cartesiano

Mensagem por Sonic_BR Sáb 04 Ago 2012, 19:52

Hm...
Tá ai uma coisa que eu aprendi antes da hora xD

Sonic_BR
Usuário

Mensagens : 477
Data de inscrição : 25/04/2010
Idade : 25
Localização : Vitória da Conquista-BA

Ir para o topo Ir para baixo

Noções matemáticas - Plano Cartesiano Empty Re: Noções matemáticas - Plano Cartesiano

Mensagem por Eskyz Dom 05 Ago 2012, 19:03

Pronto, imagenzinha demonstrando algumas localizações adicionada.

Ah é, e o próximo noções matemáticas vai ser sobre seno e cosseno em um triângulo retângulo (nada de lei dos senos e lei dos cossenos, não vamos usar isso). Mas isso daí só depois de Movimento Personalizado, q prometi escrever lá no blog...
Eskyz
Eskyz
Administrador
Administrador

Mensagens : 360
Data de inscrição : 28/02/2010
Idade : 27
Localização : Brasil

http://www.mmfmakers.rg3.net/

Ir para o topo Ir para baixo

Noções matemáticas - Plano Cartesiano Empty Re: Noções matemáticas - Plano Cartesiano

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo


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