terça-feira, 13 de setembro de 2011

Update do segundo semestre[4]

Outro update tardio.

Mas quis aguardar o término do map maker.

Sim, aquele side project, simples e pequeno.

O problema é que, para ser o mais útil possível, eu tive de modificá-lo, bastante.

Em suma, eu re-fiz o projeto, pois o original carregava o mapa inteiro e isso pesava demais,
causando "OutOfMemoryError" com mapas pequenos (menos de 100 tiles) nos computadores da escola (e mesmo aqui, o meu computador chorava com mapas pouco maiores que 100x100).

Então utilizei a nossa técnica de tiling, permitindo que os mapas cheguem agora até 200x200 na escola (aqui chegou a quase 1000x1000). Como eu não mais carregava o mapa todo, achei desnecessário a utilização de um JPanel gigante, logo o JScrollPanel se tornou inútil e tive de fazer a lógica de scrolling e dragging manualmente (mas não coloquei scrollbar... enche demais minha paciência). Depois, visando facilitar o trabalho de edição, implementei um balde (estilo o balde do paint, sabe?), o que me consumiu quase um fim de semana inteiro (tudo porque recursividade era inútil por causar StackOverflowError com uma facilidade ridícula). E agora, como um "toque final" apenas implementei o bom e velho ctrl+z e seu parceiro ctrl+y (desfazer/refazer), o que foi mais fácil do que eu pensei, e parece funcionar perfeitamente.

Agora já aviso que sábado que está por vir não haverá updates por minha parte (o que provavelmente significa sem updates no geral...) pois me focarei nos projetos e provas para este bimestre (se bem que o de java pode contar como estudo de conexão cliente/servidor, que é imprescindível para nosso jogo).

Sem mais, Victor Lucki.

sábado, 3 de setembro de 2011

Update do segundo semestre[3]

Essa semana passei mexendo em nosso "MapMaker" um projeto paralelo para facilitar a criação do(ou dos?) mapa(s).

A principio era para ser algo BEM simples (como dito pelo prof Ivan) e assim ele começou, simples.

Porem algo apenas "simples" infelizmente não supria as nossas necessidades.

O primeiro problema surgiu na hora de salvar a matriz.
Como necessitamos de duas layers no mapa, uma de background e uma com os detalhes (coisas pelas quais o personagem poderia passar, porem por traz - ex: copa de arvores)
Acabei por criar uma classe própria, pois achei mais fácil de entender do que
utilizando apenas uma matriz bi-dimensional que abrigaria outras matrizes bi-dimensionais.

Depois, surgiu a duvida de como trabalhar com as ditas layers no editor. Deu um certo trabalho, ainda mais para mexer com transparências e afins.

Enfim, este "side-project" tomou mais tempo do que deveria, porem não digo que foi uma perda de tempo simplesmente pelo aprendizado e por ser algo divertido de brincar.

Deixo aqui umas imagens de como esta o editor - ainda tem uns bugs menores e algumas funções não implementadas (que não são essenciais para o objetivo desse programa).

http://i1212.photobucket.com/albums/cc450/LuciusSixPercent/editor1.png

http://i1212.photobucket.com/albums/cc450/LuciusSixPercent/editor2.png

http://i1212.photobucket.com/albums/cc450/LuciusSixPercent/editor3.png

http://i1212.photobucket.com/albums/cc450/LuciusSixPercent/editor4.png

http://i1212.photobucket.com/albums/cc450/LuciusSixPercent/editor5.png


Sem mais, Victor Lucki.