terça-feira, 31 de maio de 2022

Festa no Parque


 Nos dias 4 e 5 de junho, o Clube de Robótica irá representar o Agrupamento de Escolas Venda do Pinheiro na iniciativa Há Festa no Parque. Comemorando o dia da criança, esta iniciativa da Câmara de Mafra abre o parque desportivo a atividades e exposições. Participaremos com projetos de impressão 3D, realidade virtual e robótica.

sexta-feira, 27 de maio de 2022

Workshop Arte e Inteligência Artificial


Ouvir wow! em castelhano é diferente, mas nem por isso menos recompensador. Como parte do programa das atividades do encontro do projeto Erasmus + A Future For All, dinamizámos um workshop dedicado às tecnologias digitais. O tema foi a Inteligência Artificial, explorada como ferramenta de criação utilizando dispositivos móveis. Os alunos de duas turmas de quinto ano do CEIP Gloria Fuertes puderam experimentar a criação de imagens através de prompts de texto e imagens. Um momento necessariamente curto, mas divertido, onde os alunos do clube de robótica do AE Venda do Pinheiro ajudaram os seus colegas espanhóis a experimentar e descobrir esta tecnologia. De forma divertida, esperamos, mas a desafiar a questionar o que é a Inteligência Artificial, e para que serve. Esta foi uma atividade EU Codeweek 2022: Taller Arte con Inteligencia Artificial.



Um agradecimento especial, do coração, às professoras Macarena Parra, coordenadora espanhola e professoras de uma das clases, Maria Luquiño e Gema Pacheco, por aceitarem o desafio, nos abrirem a porta às suas turmas, e todo o apoio prestado. Gracias!



Notas: 

O que é inteligência artificial? O que podemos fazer com ela?

Bem, muito rapidamente, inteligência artificial não são máquinas que pensam como nós. Não sonham, não imaginam. 

Mas são algoritmos complexos que fazem uma coisa muito bem: analisar muitos dados, e gerar resultados. E isso permite fazer muita coisa, desde recomendação de filmes a câmaras que reconhecem quem nós somos. 

Neste desafio, o objetivo é usar Inteligência Artificial para criar arte. O algoritmo é o nosso pincel, e vamos usar como usaríamos um lápis. 

O algoritmo não é artista. Tu é que irás criar arte, usando inteligência artificial. 

Como funciona esta aplicação? Conjuga dois algoritmos. Um é capaz de interpretar as palavras. Outro, conhece estilos artísticos. Com os dois juntos, podemos dar-lhes frases e imagens, e o algoritmo tenta interpretar e gerar desenhos.

O mais importante? Que te divirtas!

quinta-feira, 19 de maio de 2022

Leading/Teaching

 


O ano passado foi cheio de atividades Codeweek, entre desafios aos alunos, ACDs, formação e outros eventos. Este ano, continua-se a caminhada. Não se faz pelos prémios, embora saiba bem a distinção, mas porque dá gosto participar nesta comunidade.

quarta-feira, 18 de maio de 2022

Pocket Code: Criar Jogos

Organizei a sequência de vídeos passo a passo, que mostra como criar um jogo simples usando o Pocket Code, numa playlist. Esta sequência foi pensada para apoio a aulas de TIC, 5º ano, explorando o pensamento computacional através da criação de pequenos algoritmos.


 

domingo, 15 de maio de 2022

O que Faria... Tecnologia, Educação e Artes




Notas de suporte à apresentação na TEDxOeirasEd 2022. Poderia ter seguido um caminho mais confortável, falar de 3D na educação, mas preferi olhar para o que me faz querer ser professor de TIC, e o porquê do levar a tecnologia digital para a sala de aula. Interessa-me o lado mais criativo, e, com alguma piada, inútil, aquele em que as tecnologias podem ser usadas para estimular a criatividade artística. Eu sei que é um contra-ciclo com o utilitarismo da robótica e programação na escola, ou a utilidade de aprender ferramentas TIC, mas é o caminho que me anima. Curiosamente, a relação entre a arte e a educação esteve muito em evidência no evento, muitos dos palestrantes focaram-se nisso, na necessidade da expressão artística, no seu desvalorizar social, na importância intrínseca do design, da música, da expressão dramática. Numa educação que permite a cada um explorar mais a fundo o seu ser. Quase diria que os palestrantes na TEDx tinham em comum o terem sobrevivido ao lado rolo compressor do sistema educativo, e conseguido criar o seu nicho, onde tentam que ensinar e aprender seja mais do que memorizar conteúdos e ter bons resultados em exames.


Slide 1 - O que Faria…


E se… daVinci, ou Picasso, ou qualquer outro dos grandes nomes que admiramos nos museus, fossem vivos hoje em dia? Já se perguntaram que meios e ferramentas utilizariam para se exprimir, para levar mais longe as fronteiras das estéticas, dos modos de representar o que vemos e sentimos?

Se estivessem entre nós, hoje, o que fariam? Contentar-se-iam com os meios clássicos de expressão plástica? Desbravariam novos terrenos estéticos na pintura e escultura? Ou estariam na vanguarda tecnológica, a usar código, robótica, algoritmos de inteligência artificial, ou realidade virtual, para dar corpo às suas visões e intuições? 

Reparem que estes, tal como tantos outros artistas cujo trabalho foi marcante no enorme continuum da história de arte, se caracterizaram pela forma como exploravam as fronteiras da expressão visual. Sempre a tentar ir mais em frente, em busca de novas formas de ver. 

É uma pergunta que coloco muitas vezes, como professor de TIC, para desafiar alunos e outros professores (especialmente de artes). Vou dizer algo de muito banal, porque, apesar de acontecer de forma assimétrica, já se sente nas escolas portuguesas: vivemos em ambientes educativos mediados por tecnologias. Queremos cada vez mais que os nossos estes reflitam o impacto que a tecnologia digital está a ter na sociedade. Algo que se está a traduz no progressivo incentivo ao trabalho com tecnologia no ensino básico. Programação, robótica, 3D, manufactura aditiva, pensamento computacional, e até mesmo inteligência artificial já chegam às escolas, até aos alunos mais novos, de forma progressivamente igualitária. Os programas de algumas disciplinas incorporam diretamente estes temas (caso de TIC) ou ao serem reformulados, incorporam o potencial do pensamento computacional (caso de Matemática). Está se no meio de um ambicioso e complexo projeto de transição digital que está a colocar um computador nas mãos de cada criança, com toda a responsabilidade em termos de mudança pedagógica a que isso nos obriga enquanto professores. 

Mas, e o que se passa nas artes na educação? Esta não é uma das questões vistas como prementes no âmbito da transição digital, há um certo receio da intromissão da tecnologia, de interferência nas manualidades e aprendizagens, com valorização - legítima, de meios mais tradicionais. Enquanto os mais ligados à tecnologia vêem o papel das artes mais como decorativo e acessório.

Mas, será que podemos ir mais longe? Usar a tecnologia como linguagem artística na educação? Fará sentido no âmbito do ensino básico? Antes de falar de possíveis respostas, de vertentes de abordagem, façamos um pequeno desvio.

Slide 2 - 20 things to do with a computer


Gostaria de partilhar convosco um texto que descobri recentemente, recordado pelo investigador inglês nos domínios da programação para crianças e pensamento computacional Miles Berry. 20 things to do with a computer, escrito por Seymour Papert e Cynthia Solomon. Tal como o título indica, são vinte sugestões de atividades para desenvolver com crianças e computadores. 

É um texto com uma visão que mesmo hoje, nos dias da integração de programação e robótica nas escolas, ainda nos parece distante. O foco primário deste texto está no potencial do computador como potenciador cognitivo nas mãos das crianças. Não como meio de ensino de matérias e conteúdos, ou aprendizagem mecânica do seu uso. 

Slide 3 - 20 things to do with a computer


E como é que começa? O que contém? Se esperam sugestões de uso do computador para produzir textos e apresentações, ou realizar pesquisas - o uso esmagador da tecnologia digital que fazemos, hoje, na educação, e que se está a intensificar, irão ter uma enorme surpresa.

Entre as 20 coisas se que podem fazer com computadores encontram-se sugestões de como pode uma criança usar ambientes de programação para desenhar. Criar formas geométricas, padrões visuais. Programar música. E, mais importante, experimentar com as suas variáveis numéricas e com isso desenvolver os seus algoritmos. Ou, porque não incorporar canetas em robots, e programar os seus percursos? Ou seja, desenhar com robots?

Já vos disse que este texto vem de 1971? E aqui eu, a caminho de ancião, me confesso: ainda não era nascido. Não vos parece extraordinário, numa época em que o computador era desconhecido da esmagadora maioria da população, em que a ideia de se usar dispositivos portáteis para consultar informação e comunicar era visto como um sonho impossível da Ficção Científica, um homem se atrever a propor que ensinar uma criança a programar seria algo de fundamental para o potenciar do seu desenvolvimento cognitivo?

Foi essa a grande hipótese de Papert, que com a sua equipa de investigação criou a linguagem Logo no final dos anos 60. Este, nos anos 90, pelas mãos de Mitchell Resnick, tornou-se o ambiente visual de programação Scratch. Está na base da corrente revolução na educação, permitindo às crianças usar estes ambientes para interagir com programação, robótica, drones e outros artefactos. Sempre em perspectivas construtivistas, de mãos na massa.

Slide 4:  A importância de aprender a programar


Qual a importância de aprender a programar já na infância? Há argumentos pedagógicos, na perspectiva de desenvolvimento de capacidades ligadas ao pensamento computacional, e apropriação dos meios digitais pelas crianças para desenvolverem projetos com intencionalidade, ao descobrir de formas não superficiais muitas das tecnologias.

As muitas iniciativas existentes de incentivo à aprendizagem programação - destaco os projetos Ciências da Computação da ANPRI, e o EU Codeweek, como dois exemplos, reconhecem esse objetivo maior. Mas, nesta discussão, o argumento mais usado é utilitarista, apontando-se a necessidade de formar programadores para sustentar o crescimento de uma economia cada vez mais digital.

Em educação, o foco nas STEM tem sido imenso, reconhecendo a importância de estimular a aprendizagem nessas áreas. Recentemente, começou a falar-se nas STEAM, uma tentativa de incorporar componentes ligadas às artes. Mas, será que esta integração é feita partindo de princípios em que a tecnologia é usada como meio de expressão, em que exploram as estéticas possibilitadas pela tecnologia? Ou será algo de acessório, pensando a contribuição artística como elemento decorativo, ou uso mecânico de aplicações que geram resultados gráficos? 

A sensação que tenho, da experiência e partilha com os meus colegas, é a integração das artes com tecnologias no ensino básico faz-se criando decorações para robots, desenhando personagens para ambientes de programação, usando recursos pré-feitos em ferramentas que permitem criar bandas desenhadas, animações e outros produtos gráficos, ou experimentando edição de imagem. Não é de desvalorizar, mas sinto que se poderia ter espaço para ir mais longe.

E os professores ligados às artes, será que se sentem tentados a trazer estas tecnologias para a sua aula? Sente-se resistência, e um foco numa visão tradicional, de aprendizagem de técnicas de desenho, pintura e trabalho com materiais. 

É de sublinhar que não podemos desprezar o foco em medias expressivos tradicionais, não há razão para serem colocados de parte em prol de um deslumbre pelas tecnologias digitais.

Mas, volto a perguntar, será que não poderíamos ir mais longe? Incorporar programação, robótica e outras tecnologias usando-as como meio de expressão?

Slide 5 - Arte Digital e Generativa


Desviando-nos para o mundo das artes, verificamos que o uso do digital já é prática comum em vários níveis, desde os ilustradores de banda desenhada que trabalham em desenho digital às experiências multimédia e transmedia. Os artistas já experimentam o computador enquanto pincel quase desde o momento em que este surgiu. Engenheiros e artistas colaboram em projetos nos lendários Bell Labs. Desenvolveu-se todo um movimento artístico, a partir dos anos 50, discreto e não muito bem visto, no âmbito da arte moderna. Os artistas que se integram nos Algorists focaram as suas práticas no desenvolvimento de algoritmos, pegando no computador como forma de automatizar e procurar novas fronteiras estéticas. Desde os anos 60 que outros artistas a cruzam mecanismos e robótica para criar máquinas de desenho. 

Hoje, em museus, galerias e no espaço online, encontramos criadores que desenvolvem os seus robots, interagem com robots, desenvolvem algoritmos, criam linguagens de programação poéticas, experimentam com algoritmos de inteligência artificial. Talvez esteja aqui a resposta à questão inicial? 

É interessante notar que o corrente interesse por criptofinanças e NFTs está a ter o curioso efeito secundário de dar à arte digital e  algorítmica uma  nova visibilidade.

Em comum, encontramos nestes criadores a vontade de explorar as fronteiras da computação enquanto linguagem estética. É um passo mais avançado do que o usar ferramentas digitais para design 2D e 3D, ou recriar media tradicionais com a simulação digital. É afirmar que a própria essência da computação, do algoritmo, do mecanismo robótico, pode em si mesmo ser uma ferramenta de expressão com uma linguagem própria. Que a computação pode ser uma linguagem.

Slide 6 - Entretanto, na Escola…


Correndo o risco de ser injusto, sente-se que estas dimensões estão ausentes quando se abordam as artes no ensino básico. Nas aulas de artes, os alunos desenham e pintam. Nas de tecnologias, programam e soldam. Quando muito, usam aplicações para desenhar e pintar em meios digitais, ou modelar em 3D, mas sente-se que não vai além disso.

Quando falamos das STEAM, onde a contribuição das artes é muitas vezes vista como algo meramente decorativo. Criar uma decoração para um robot, tornar uma aplicação bonita, desenhar elementos para uso em ambientes de programação visual. Não vem mal ao mundo que isto aconteça. Todas as contribuições são bem vindas, no sentido de uma educação integral. 

Mas, a pergunta que faço, é se se poderia ir mais longe? Perder o medo da tecnologia, e desafiar as crianças e jovens a utilizá-la como meio de expressão, usando as suas possibilidades estéticas intrínsecas, indo mais longe do seu como elemento decorativo?

Na verdade, Papert já respondeu a essa questão em 1971… Podemos integrar melhor tecnologia com artes, se perdermos o medo das fronteiras entre disciplinas e colocarmos os informáticos e tecnológicos a conversar com os artísticos e criativos. 


Slide 7 - E, Como Fazer?


Recordam-se do texto de Papert e Solomon? As pistas para o como fazer estão lá todas, com a vantagem de que hoje, dispomos de uma enorme variedade de aplicações, ambientes visuais de programação, e hardware de baixo custo que permite desenvolver este tipo de projetos.

O ponto mais fácil por onde começar está na criação de algoritmos para programação de desenhos. Algo que soa muito complexo, mas é realmente simples de fazer, usando ambientes de programação visual e turtle graphics. Podemos desafiar os alunos a criar padrões visuais programando em ambientes de programação visual; ou ir mais a fundo e explorar linguagens de programação que foram expressamente desenvolvidas para facilitar a expressão artística, como Processing e P5JS. 

Correndo o risco de parecer injusto, os informáticos mais puros olham para isto como o resultado de meros padrões repetitivos ou funções aleatórias, algo de pouco profundo no desenvolvimento de competências digitais. Mas a minha experiência diz-me que o olhar de fascínio e contentamento de uma criança que vê o resultado do algoritmo que programou é algo de mágico. Despertar aquele brilho no olho que simboliza a faísca da curiosidade um dos objectivos maiores da educação, creio.

Tal como Papert já tinha mostrado, podemos partir daqui para a robótica. Se as crianças programam um robot para descrever percursos ou reagir perante o ambiente, porque não acoplar-lhe uma caneta, e registar o seu rasto? 

Para os educadores mais utilitaristas, uma boa razão para explorar estes campos está no cruzamento de saberes. Podemos explorar em simultâneo conhecimentos de Informática,  Artes, ou Matemática. Até se consegue incorporar expressões físico-motoras, como percebi quando, ao testar um robot desenhador controlado por sensor ultrasónico com um grupo de meninas do 5º ano, dei com elas a saltar e dançar para bloquear o caminho do robot, e obrigá-lo a desviar-se. Inadvertidamente, estavam a criar uma performance de desenho e expressão corporal improvisada, que aconteceu num pedaço de papel de cenário na biblioteca da minha escola. 


Slide 8: E, Como Fazer?


Hoje, dispomos de ferramentas digitais que o próprio Papert não anteviu (embora o seu princípio de uso como ferramenta cognitiva se aplique). Podemos levar algoritmos de Inteligência Artificial, 3D e manufactura aditiva para qualquer sala de aula.

Uma das vertentes interessantes da explosão recente das tecnologias de inteligência artificial está no seu uso para geração de imagens. Desde que o DeepDream nos mostrou as primeiras produções geradas por IA, que nos deixámos fascinar com imagens geradas por IA , e se começou a discutir se os algoritmos são capazes de criar arte. Uma discussão que daria toda uma outra TED, por isso não nos vamos meter nisso. 

A acessibilidade de interfaces que nos permitem utilizar GANs e métodos de geração de imagens por inteligência artificial, hoje, é enorme. Inclui apps para telemóveis que nos permitem gerar imagens a partir de inputs de texto e fotografia, a ambientes de programação online que nos dão acesso a processadores poderosos e à parametrização destes algoritmos. Claro, muitas destas aplicações podem ser criticadas sob a perspectiva de "clicar num botão para gerar imagens não é arte", mas se olharmos para os métodos de o fazer e os usarmos com intencionalidade, estas certezas tornam-se incertas. 

3D, com a sua extensão para as tecnologias de manufactura aditiva, é uma das tecnologias educativas mais interessantes de hoje. Permite-nos colocar nas mãos de crianças os meios de produção dos seus objetos tangíveis. O processo de modelação é um tremendo desafio mental, sendo aí que reside o cerne do potencial pedagógico do 3D

A modelação 3D é uma excelente ferramenta para cruzar artes, criatividade e tecnologia. Os processos de design em modelação 3D integram-se muito bem com o desenvolvimento de capacidades de pensamento computacional. Ao modelar em 3D, trabalhamos com abstração, algoritmos, lógica, decomposição, reconhecimento de padrões e avaliação. Uma abordagem que decorre no próprio processo de criação, com o domínio das técnicas e o seu uso intencional. E, no final do processo, as crianças podem ter a possibilidade de imprimir o resultado em 3D. Há um fascínio muito especial em ver imprimir e segurar nas mãos um objeto que nós próprios modelamos.

Estava a esquecer o hardware de baixo custo. A sua diversidade é enorme, das placas arduino e micro:bit aos inúmeros sensores e actuadores que lhes podemos conectar. Uma proposta divertida passa pelo usar leds programáveis e placas microbit para programar a luz, criando experiências de arte cinética.

Slide 9: Cultura Maker 


A cultura Maker afirmou-se nos últimos anos como um ambiente de criatividade e partilha. Uma rede difusa, onde se cruzam fablabs e criadores, onde o saber técnico se constrói em colaboração. Uma cultura que depende das tecnologias, mas onde o importante, como observam os makers, não são as ferramentas, são as pessoas. Esta cultura está a democratizar a criatividade tecnológica, onde o fazer, o projeto que se constrói, não tem de ser necessariamente útil ou pensado para mercantilizar.

De robots que, literalmente, pintam a experiências arrojadas com impressão 3D, mecanismos artísticos, ambientes multimédia, os makers seguem o impulso essencial da criatividade, que nos obriga a construir.

Este espírito está a chegar à Educação, muitos já perceberam o poder de abordagens multidisciplinares informais, focadas no desenvolvimento de projetos, cruzando diferentes vertentes. Onde o corte laser se integra com o desenho, o tear com a impressão 3D, a eletricidade com a condição física. Ou, no lema dos fablabs, How To Make (almost) Everything.

Slide 10: O Que Faria…


Como diria Cole Porter, se as abelhas o fazem, os pássaros também, até mesmo as pulgas educadas o fazem, porque não trazer a tecnologia para as artes, no ensino básico?

Podemos mostrar que a tecnologia pode ser muito mais do que um meio utilitário, que pode por si só, sem ser acessório de outras áreas, ser um meio de expressão. Porque se é importante explorar programação e robótica pelo seu lado mais útil, porque não também experimentar o lado inútil? Que talvez não seja assim tão inútil quanto isso, ao olhar para o passado, para as culturas que nos precederam, o que primordialmente recordamos são os seus artefactos artísticos, ou seja… o seu lado inútil. 

Confesso que ao preparar esta apresentação, as dúvidas foram mais que muitas. Isto é realmente relevante? Não existirão problemas pedagógicos bem mais prementes e abrangentes do que o lirismo de explorar computação artística com crianças? Claro que sim, mas uma das coisas fascinantes da Educação é que é feita de muitas vertentes, talvez o mais importante que nas escolas podemos oferecer aos nossos alunos é a diversidade de experiências, que alarguem os horizontes e contribuam para o seu desenvolvimento. Essencialmente, dar-lhes o espaço, o tempo e o conhecimento para crescerem enquanto indivíduos.

E se a arte computacional não será certamente uma das vertentes mais abrangentes, não terá por isso pouca importância? Bem, confesso que as minhas dúvidas saíram desfeitas no final de uma muito recente aula de TIC. Uma aluna pede para falar comigo, pega no seu tablet, e diz-me "professor, quero mostrar-lhe um programa que fiz". E saiu aquilo que estão a ver no vídeo. Não é uma meditação profunda sobre o impacto do digital no nosso ser. É um algoritmo simples, criado por uma criança. Mas eu não lhe ensinei isto, chegou lá por si. Imaginem uma pequena que, com os olhos a brilhar, vos diz 'eu fiz isto". Não por ser útil, por ser trabalho de casa, ou projeto de estudo. Mas pelo impulso, tão simples mas ao mesmo tempo tão profundo, de querer expressar-se, de dizer algo ao mundo.

E não é para isso que serve a Educação?

sexta-feira, 13 de maio de 2022

Tutorial Pocket Code: Criar um Jogo

 Neste passo, vamos usar variáveis para contabilizar pontos.

V: Criar um Sistema de Pontuação

Vamos utilizar variáveis para gerir um sistema de pontuação. As variáveis permitem-nos guardar dados que se atualizam num programa, mostrando-os quando necessitamos.

Neste vídeo, aprendes como programar variáveis para contar os pontos do teu jogo.


No início do algoritmo, temos de colocar blocos para definir a variável, bem como mostrar os seus valores.

Somos nós que damos nome às variáveis. Atribuir um nome associado à função que a variável vai desempenhar é uma boa prática, para evitar confusão durante o processo de programação.


Estes blocos controlam a pontuação, sempre que o nosso personagem é tocado pelo seu adversário. Adicionando um bloco alterar variável por -1, retiramos pontos.


Sempre que o nosso personagem apanha o seu objetivo, a variável por um, ou seja, somamos pontos.


Onde estão as variáveis? Nos guiões, categoria Dados, encontras os blocos para definir e trabalhar com variáveis e listas.

segunda-feira, 9 de maio de 2022

Tutorial Pocket Code: Criar um Jogo (IV)

 Neste tutorial, vamos programar um elemento que sirva de objetivo para o jogo.

IV: Definir um Objetivo de Jogo

Neste vídeo, descobres como programar um ator para servir de objetivo de jogo: terá de ser apanhado pelo herói.


No exemplo de código, podes ver que: 

- o ator tem um bloco que determina uma rotação fixa (evita ficar invertido);

- a programação essencial resume-se a uma condição que determina que, sempre que for tocado por um outro ator (o nosso "herói"), muda de posição  para coordenadas aleatórias, rebatendo caso estas ultrapassem os limites do palco. A condição está dentro de um ciclo, para que se repita.

sábado, 7 de maio de 2022

ACD-6: Realidade Aumentada

Momentos da ACD CFAERC sobre realidade aumentada no telemóvel, que após algumas remarcações decorreu no dia 7 de maio. Uma sessão que tinha de ser presencial, para que se compreenda o potencial e o divertido, desta tecnologia. 




Sessão dividida em duas partes, uma de exploração de algumas apps de visualização de conteúdos em realidade aumentada, e outra de criação de conteúdos de realidade aumentada usando o telemóvel.

sexta-feira, 6 de maio de 2022

Tutorial Pocket Code: Criar um Jogo (III)

 Trabalhar com condições.

III: Usar Condições para Definir Ações


Neste vídeo, podes ver como usar uma condição para definir as ações dos teus atores.

Aqui, podes ver um exemplo de código. Com a condição Se touches actor or object é verdadeiro definida, podemos definir que ao ser tocado por outro objeto, este que está a ser programado faz a seguinte rotina: oculta-se, muda de posição, aguarda, e volta a mostrar-se. Para que a condição funcione, está colocada dentro de um ciclo infinito (Forever).


Encontras as condições na categoria Controlo.


Para inserir a função tocar no ator, clica no valor da condição, acede ao editor de fórmulas, e clica em objeto.

Da lista de funções disponível, seleciona touches actor or object.

segunda-feira, 2 de maio de 2022

Tutorial Pocket Code: Criar um Jogo (II)

 No segundo tutorial, iremos aprender a controlar um personagem com movimentos aleatórios, gerando as coordenadas de deslocação utilizando um gerador de números aleatórios.

II - Controlar um Personagem com Movimento Aleatório


Neste vídeo, mostramos como podes controlar um personagem com movimentos aleatórios. Para o fazer, vais necessitar de usar blocos Planar. Para que o personagem se mova de forma imprevisível, o Pocket Code precisa de valores aleatórios para as coordenadas X e Y. Para definir estes valores, podemos usar uma função matemática, a Random (gerador de números aleatórios).

Vê aqui um exemplo de código:


Estes blocos definem um ciclo infinito (Forever), dentro do qual o personagem plana durante o tempo definido para coordenadas aleatórias.

Onde encontramos a função Random?



Tocas no valor de X (ou de Y), e acedes ao editor de fórmulas. Em seguida, toca em Funções.



Na lista de funções, seleciona a Random (1,6). Em seguida, terás de alterar os valores originais (1, o mínimo, e 6, o máximo) para os valores que necessitas, correspondentes ao espaço das coordenadas cartesianas do Pocket Code.


E como é que podemos determinar os valores máximos e mínimos para as coordenadas X e Y? Depende do tamanho do ecrã do dispositivo. Se o telemóvel tiver um ecrã com 1080 x 2400 de resolução, isso significa que o espaço do jogo pode variar entre -540 e 540 no eixo X, e -1200 e 1200 no eixo Y, uma vez que o sistema de coordenadas se inicia no centro do ecrã. Podes experimentar diferentes valores, e verificar até onde é o que o teu personagem se desloca.