segunda-feira, 30 de abril de 2018

TinkerCad: o primeiro passo no mundo dos CAD.

Quando alguém comenta que criou um objeto em um CAD, muitas vezes pensamos ser uma coisa tão distante, tipo lá de uma engenharia, certo? Grande engano. É possível trazer o contexto das construções em CAD para dentro da aprendizagem escolar, e inclusive com resultados para crianças de 9 anos para cima.
Mas qual seria o primeiro passo para poder utilizar um CAD? Precisa saber de muita matemática?  Esse post tem por missão introduzir você leitor no mundo do TinkerCad (um CAD mais simples e gratuito) que pode ser acessado pelo link: https://www.tinkercad.com/. Precisa fazer uma conta gratuita para poder usa-lo e que serve como pasta on-line dos seus projetos.


Vamos ao desafio, como fazer uma mesa? Uma mesa deve ter uma ou mais estruturas de suporte (os famosos pés). Para tal, arraste um cubo (caixa) para a área de trabalho e modifique ele até obter as medidas 10 x 10 X 30 milímetros. se quiser quatro iguais, use o ctrl+c e em seguida ctrl+v, para criar cópias, assim como a figura abaixo:


Em seguida é hora de criar o tampo. Novamente uso o cubo, e adeque as medidas de modo a englobar as estruturas construídas, e ao mesmo tempo que não seja muito grossa. Para levantar o tampo, basta usar a seta (está destacada em verde no desenho abaixo) e arrastar o tampo até o ponto desejado:


Com isso obtemos algo parecido com o que está compartilhado no seguinte link: https://www.tinkercad.com/things/lIAT48SlnqV. Além disso, se você quiser encontrar outras produções minhas é só procurar pelo meu nome, ou ainda, colocar outras palavras-chaves (maioria dos projetos está em inglês) para encontrar projetos bem diferentes. A melhor parte é que você pode copiar (use a opção copy and tinker/copiar e editar) e modificar os projetos a vontade. Que tal embarcar nessa aventura? Deixe nos comentários abaixo o que você está achando da experiência e o que fez de diferente. Até a próxima.

Hora do Código: O 1º Passo no mundo da programação.

Antes de mais nada, devemos fazer uma pergunta crucial: Por que aprender a programar?
A resposta vai desde que é um preparo para as profissões do futuro até algo mais simples, como usar a lógica-matemática. Mas tem uma resposta que poucos apresentam: é importante para fritar batatas (figura retirada da Positivo educacional):


Pareceu estranho? Nem um pouco. Para fritar batatas ou fazer qualquer ação corriqueira do cotidiano, existe uma série de ações (comandos) e de possibilidades (operadores lógicos) e que ao final concluem algo, assim como a programação. Divertido certo? Que tal fazer mais programações inusitadas? Antes de apresentar o Scratch (ferramenta de programação para jovens que está melhor trabalhada em outros post desse blog) vamos falar de uma porta de entrada da programação: A Hora do Código (www.code.org).
No site Hora do Código existem diversos simuladores de programação com personagens famosos, como o do Minecraft, Star Wars, Frozen e até o game Flappy Bird:


Divertido, certo? E para concluir, já existe uma atividade que amarra a Hora do Código ao uso do Scratch, que é o Faça Voar com Scratch (https://hourofcode.com/scratchfly). Aproveite e desfrute desses games e venha contar nos comentários abaixo a sua experiência. Até a próxima!

quinta-feira, 5 de abril de 2018

Scratch for Games: Propondo desafios com perguntas, respostas e placar

Em um game propor desafios na forma de perguntas é uma forma de interação. Mas na nossa criação em Scratch precisamos de alguns conhecimentos para poder inserir essa opção no nosso game. Para isso foi criado uma sequência de atividades no Scratch usando o tema do Minecraft. Vamos ver essa evolução?


No Minecraft da Matemática-Nível 01 (https://scratch.mit.edu/projects/170264781/) temos uma programação em que o personagem faz uma pergunta e espera uma resposta do usuário. Se errar tem de começar tudo de novo.


O próximo Minecraft da Matemática-Nível 02 (https://scratch.mit.edu/projects/170266043/) foi acrescentado um comando lógico para continuar fazendo a pergunta enquanto o usuário não chegar na resposta correta. 


No Minecraft da Matemática-Nível 03 (https://scratch.mit.edu/projects/170266995/) foi acrescentado na programação outra pergunta nova (permitindo um sequência de perguntas) e um encerramento adequado a atividade. Confira! 


Existem dois focos no Minecraft da Matemática-Nível 04 (https://scratch.mit.edu/projects/170845705/). O primeiro é fazer a organização das perguntas por meio do Mais Blocos (blocos roxos), podendo alterar facilmente a ordem na programação principal. O segundo e mais importante é o uso das variáveis (blocos em laranja), que nesse caso, funcionam como um contador ou placar de pontos. Note que existe sempre a adição de pontos quando é acertada a pergunta e a retirada de 0.1 quando a reposta está equivocada. E fica um placar aparecendo a pontuação do jogador no jogo.


Continuando, no Minecraft da Matemática-Nível 05 (https://scratch.mit.edu/projects/170842534/) é acrescentado a possibilidade de sortear uma dentre as três possibilidades de pergunta. Para isso além do Mais Blocos, é utilizado o acréscimo de uma variável que faz sorteio de um valor que corresponda a pergunta selecionada, conforme a imagem abaixo:


E finalizando, o Minecraft da Matemática-Nível 06 (https://scratch.mit.edu/projects/170845819/) trabalha com a possibilidade de ter dois personagens diferentes para poder aumentar o nível das perguntas. Agora que você passou por todos esses níveis que tal fazer o seu Minecraft da Matemática com perguntas ainda mais desafiadoras ou até mesmo alguma funcionalidade inovadora? Deixe nos comentários o link da sua produção. Até a próxima!

Scratch for Games: Programando o básico.

Construir um game no Scratch é relativamente simples, mas não espere por uma super produção com relação a gráficos, pois a base de produção do Scratch é muito similar a do Paint. Porém o resultado pode ser melhorado, caso importe figuras ou sons a partir de outros softwares.
Hoje vamos aprender a criar os elementos mais básicos no Scratch: um cenário, um personagem, falas e sons. Vamos lá?
Para construir um ou mais cenários no Scratch você deve clicar em Palco (em azul) e para editar, importar ou adicionar novos cenários clicar em Pano de Fundo (em vermelho). A edição funciona como a ferramenta do paint, permitindo importar cenários já prontos, os da biblioteca ou ainda adicionar outras figuras da web. Também ao lado de Pano de fundo se encontra as opções para programar e adicionar sons ao cenário.


Agora vem uma das coisas mais importantes no game, o seu personagem. Por padrão o Scratch vem com um gato (bem lindão e simpático), mas que pode ser substituído por outros personagens já prontos ou ainda importar/desenhar um novo. Basta clicar em um ator (em vermelho), podendo ter mais do que um inclusive. Para fazer toda parte gráfica basta clicar em Fantasia (em azul) e para afzer a programação de ações clique em Scripts (em verde).


A parte de criação (gravação) ou utilização de sons já prontos, fica na terceira aba, seja do cenário ou do personagem e possui a mesma interface, conforme a screen abaixo:



E a última aprendizagem de hoje é fazer com que seu personagem fale. Para isso basta ir na aba de programação do personagem que você quer fale algo, e em seguida em Scripts. Nessa aba você irá utilizar o comando "quando clicar" que pertence a ordem dos eventos e o "diga algo por x tempo" da ordem da aparência. Nesse último comando existe um campo a ser preenchido com a frase que você quer que seu personagem fale por um determinado tempo (em segundos). Ainda é possível repetir esse último comando para que o personagem fale mais frases ou chamar outro ator para compor diálogos. Que tal fazer uma conversação? Faça uns testes e deixe o link da sua história nos comentários.


Finalizando, na lateral direita superior tem um ponto de interrogação que ao clicar nele você obtém acesso a um tutorial do Scratch que pode ajudar você a compreender ainda melhor esse websoftware. Mãos a obra e não deixe de conferir os outros posts sobre criação de games.

quarta-feira, 4 de abril de 2018

Scratch for Games: Sistema de missão

Missão (mais conhecida como quest) é um sistema dentro de games que foca no usuário concluir determinados pedidos de NPC (non-player character). O sistema de missões é amplamente utilizado para criar enredos de histórias em uma game e mesclar com a jogabilidade do personagem. Mas é possível implementar isso no Scratch? A resposta é sim, e é isso o que veremos hoje.
Para isso precisamos de duas funções muito importantes no Scratch: o toque e o clique em um objeto. No post sobre movimentação de personagens (http://vemfazermatematicaegames.blogspot.com.br/2018/04/rpg-scratch-movimentacao-de-personagens.html) temos uma introdução de como funciona o toque em objetos, inclusive com um exemplo. Reveja o exemplo dado antes de prosseguir.
Agora o sistema de clique consiste em adicionar uma programação do tipo Evento, cuja função é iniciar uma determinada atividade a partir de um clique que for realizado pelo usuário no ator especificado, conforme a imagem abaixo:


Essa função é importantíssima pois se nos baseamos apenas no toque entre dois atores, podemos acabar tendo uma programação muito complexa que dê conta de diversas situações, a exemplo, gato encosta no macaco para pegar a missão, em seguida o gato pega uma banana e leva até o macaco e a soma de ambos deve disparar uma nova ação. Note que nesse caso podemos economizar código, pois o primeiro toque do gato com o macaco pode ser substituído por um clique de mouse e a segunda interação entre gato, banana e macaco ficaria como toque. Nos links a seguir você encontra um sistema de missão mesclando toque e clique (https://scratch.mit.edu/projects/214046018/) e um sistema apenas por toque (https://scratch.mit.edu/projects/213894207/). Qual você acha mais interessante?


Além disso, a função clique pode ser usada para mudar de nível e poder trocar os cenários do jogo (palco). Você deve ter percebido que no fim do game ele pede para continuar a história. Que tal tentar construir uma aventura a partir desse template de história? Clique em "Ver Interior" no canto superior direito da tela e mãos a obra. Deixe o link da sua produção nos comentários abaixo.

terça-feira, 3 de abril de 2018

Scratch for Games: Movimentação de personagens.

É imprescindível em um game que o seu personagem possa se mover pelo cenário criado, de modo a poder interagir com os elementos do ambiente. E normalmente num jogo você usa as setas direcionais para fazer essa movimentação. Mas e no Scratch? Como programar de modo a obter esse resultado?
O primeiro passo é entender que a movimentação no Scratch é baseada no plano cartesiano, onde a posição do ator é determinada por valores de X e Y, conforme a figura abaixo:


A partir disso, precisamos conectar a movimentação do ator a tecla de entrada, por exemplo, seta para direita para o ator se mover a direita. Existem diversas formas de realizar isso, mas a proposta aqui, se baseia em apenas somar valores (positivos ou negativos) aos eixos X e Y e relacionar com a tecla que fará a movimentação no sentido adequado:


Além disso, você pode colocar o "próxima fantasia" para alternar a animação do personagem e dar uma sensação de movimento.
Para fechar essa postagem, em um game, um personagem que faz movimentações pode acabar se esbarrando com outro. O que fazer nesse caso? No exemplo Scratch for Games - Movimentação de Personagens (https://scratch.mit.edu/projects/213866025/), foi adicionada uma programação para gerar uma ação quando temos o contato de um personagem com outro.


O que você acredita que vai acontecer quando gato encostar no macaco? Que modificações podemos realizar para ter outros tipos de situações? Deixe nos comentários abaixo suas descobertas. Até a próxima.

Scratch for Games: Como fazer interações entre personagens diferentes.

Em uma história é muito importante haver interações entre personagens. Em uma história de um game não é diferente. Quanto mais personagens, mais complexas são as iterações entre eles e na hora de criar um game no Scratch, isso pode se tornar um verdadeiro desafio, caso não exista uma boa organização.
Como sabemos, no Scratch cada ator possui sua própria janela de programação, por isso o desafio consiste em encontrar um comando que avise quando existe a necessidade de mudar a execução da programação de um ator para outro.
Analise o exemplo, Scratch for Games - Interação entre personagens (https://scratch.mit.edu/projects/213831227/) e perceba que a função ''mensagem'' foi utilizada como ação para ficar alterando entre os diferentes atores.


Como podemos ver, ao final de cada programação, existe uma linha de comando que envia uma mensagem a todos (fala 01, 02, 03), e em cada respectivo personagem existe um comando de recebimento (igual ao da bandeira verde) com a mensagem específica para iniciar uma determinada ação. Viu, como é simples? Que tal sofisticar essa programação recitando "Poesia Matemática" de Millôr Fernandes, com esses personagens do exemplo em Scratch? Deixe nos comentários o link para a sua produção.

Como não perder nenhum compromisso: Meu App Agenda

No nosso dia a dia a agenda é um instrumento de grande importância que as pessoas utilizam para fazer anotações de compromissos ou informaçõ...