Pular para o conteúdo principal

Postagens

Mostrando postagens de setembro, 2018

Trabalho: Parte 1 - Releitura dos Clássicos

História do Jogo: Berzerk é um jogo multi-direcional desenvolvido e l ançado em 1982  pela  Atari , pouco antes do Crash de 83 , evento em que o mercado de jogos ficou bastante enfraquecido, entretanto, Berzerk teve uma boa recepção.O título de ação e tiro muito popular, oriundo do fliperama . Nele, o jogador tem por objetivo atirar e destruir robôs que estão espalhados em diversas galerias compostas de paredes eletrificadas. O objetivo geral do jogo é bastante simples, sobreviver . Os Estados Unidos ,em 1983 , vivia uma época de recessão econômica , com alta inflação e uma taxa de desemprego muito alta, que afetou diversas áreas, inclusive a de jogos eletrônicos. O mercado de jogos começou a decair, com jogos custando muito mais baratos do que deveriam, pois lançaram muitos jogos e produziam mais do que compravam. Por outro lado, a ideia do jogo veio de Allan McNeil , que após sonhar que ele estava dentro de um videogame e lutava contra robôs, decidiu ...

Tarefa Número 10 - Máquina de Estado

Nessa tarefa, tenho que construir, discutir e implementar uma simulação interativa , de algum equipamento eletrônico empregando uma MEF com três ou mais estados. Nesse contexto, eu escolhi fazer uma simulação de um ventilador. Implementando a função  Mef() e  keyPressed() , minha simulação possui 4 estados ( DESLIGADO >> LIGADO >> GIRANDO <<>> PARADO ) nessa sequência que eu mostrei com as setas. O estado girando pode ir para o estado parado, assim como o parado pode voltar para o girando. O gráfico pode explicar isso melhor: Finalmente, mostrando no console, como funcionou a simulação feita no processing:                                                     Link do código aqui!

Tarefa Número 09 - Mapa Isométrico

Iniciando mais uma tarefa, dessa vez preciso fazer um mapa isométrico (que é basicamente um mapa com uma aparência de perspectiva 3D) usando dois tiles à minha escolha. Ademais, eu gosto muito de praia então resolvi fazer meu mapa com esse tema. Para fazer o mapa isométrico precisamos trabalhar no processing como se fosse uma matriz, isto é, cada tile vai ocupar um lugar numa matriz. Os sprites dos tales eu baixei  aqui . Em seguida, precisei manipular os sprites para editar e medir, depois eu fiz um cálculo simples para saber quais partes estavam ocupando pixel e quais partes podiam ser sobrepostas. Enfim, o resultado foi esse:                                                                                                   ...

Tarefa Número 08 - Pong

Dessa vez, tenho que explicar a diferença entre o uso da variável de sistema keyPressed e a função keyPressed() com base no desenvolvimento de uma versão do jogo Pong . Nesse contexto, keyPressed é uma variável do tipo booleana , isto é, ela é binária e só retorna dois valores(verdadeiro ou falso). Já a variável keyPressed() executa e lê um bloco de comandos que está dentro dela, ou seja, enquanto a tecla estiver pressionada ela irá chamar e executar aquele código.  Implementando isso em um código, além de colisão e movimento oscilatório para a bola, consegui construir a base do jogo Pong. Resultado final ficou assim:                                                      Link do código aqui!

Tarefa Número 07 - Distância e Proporção

Bom, na aula 08 , na tarefa 07 foi pedido que nós criarmos e explicarmos, com auxilio das funções dist() e map() , como a posição do mouse, numa janela com proporção 4:3, pode mover um círculo no interior de um retângulo com proporção 16:9 centralizado na tela. Com o auxilio da função map() , que ajuda a controlar o limite mínimo e o máximo através da largura e da altura. Utilizando o mouseX e mouseY para acompanhar o círculo que está dentro do retângulo 16:9. A função dist() funciona como controlador do alcance de distância que quando o círculo sai do retângulo ele desaparece.                                                       Link do código aqui!

Tarefa Número 06 - Marcas Responsivas

Primeiramente, precisamos definir responsividade que é a capacidade de um site/página/marca da internet apresentar diferentes configurações e comportamento, adequando-se automaticamente ao formato do ecrã que está sendo exibida.  A maioria das marcas de hoje são responsivas e tendem a ter vários formatos dependendo da situação em que está inserida. Porém, para se ter essa dinâmica e automatização das marcas e páginas na internet, precisa ter um padrão. Esse padrão é desenvolvido e aprimorado pela programação , fazendo com que exista um algoritmo que identifique qual a melhor opção a se tomar para cada tipo de tela em que está sendo exibida. Além disso, torna o uso dessas marcas mais simples e efetivo, podendo ser usado e visto em todo mundo. Exemplos de marcas responsivas, que seguem o padrão e tornam suas logos em produtos adaptativos, que se ajustam em relação aonde estão sendo exibidas. Apesar de se tornarem menores, as marcas não perdem seu reconhecimento e po...

Tarefa Número 05 - Bandeira do Brasil

A quinta tarefa devíamos criar uma bandeira do Brasil, de acordo com a lei Federal N° 5.700 , no Processing e dizer como as funções rectMode e EllipseMode simplicam o processo. Bom, inicialmente peguei os dados da bandeira no  site do governo(lei N°5.700) , que diz as proporções a serem seguidas para criar a bandeira que são: Art. 5º A feitura da Bandeira Nacional obedecerá às seguintes regras ( Anexo  nº 2): I - Para cálculo das dimensões, tomar-se-á por base a largura desejada, dividindo-se esta em 14 (quatorze) partes iguais. Cada uma das partes será considerada uma medida ou módulo. II - O comprimento será de vinte módulos (20M). III - A distância dos vértices do losango amarelo ao quadro externo será de um módulo e sete décimos (1,7M). IV - O círculo azul no meio do losango amarelo terá o raio de três módulos e meio (3,5M). Depois disso, usei uma função para informar as proporções da bandeira, assim como a função rect() para construir o re...

Tarefa Número 04 - Simulador Balístico (MRUV)

O ângulo que possui maior alcance máximo em um lançamento oblíquo é 45º. Ou seja, esse ângulo terá maior abrangência em uma área num lançamento, o que faz com que ele seja mais relevante. E isso é o que vou demonstrar graficamente hoje. Com os códigos passados em sala, desenvolvemos um lançamento horizontal e vertical. Agregando os dois códigos e inserindo a biblioteca controlP5 no Processing , que faz com que nós tenhamos uma tabela interativa, consegui um código que comprova que o ângulo de 45° é realmente a opção que têm o maior alcance. Abaixo estão os exemplos que reafirmam que o ângulo de 45° tem maior alcance: Ângulo de 30º Ângulo de 45º Ângulo de 60º                                         Link para download do código aqui!