Uma ajuda em uma formula para criar um "Scroll Map"

Estou usando Slick 2D

O metodo é este:

[quote]render(int x, int y, int sx, int sy, int width, int height, boolean lineByLine)
//Render a section of the tile map[/quote]

Descrição dos Parametros na sua documentação

[quote]
Parameters:
x - The x location to render at
y - The y location to render at
sx - The x tile location to start rendering
sy - The y tile location to start rendering
width - The width of the section to render (in tiles)
height - The height of the secton to render (in tiles)
l - The index of the layer to render
lineByLine - True if we should render line by line, i.e. giving us a chance to render something else between lines (@see renderedLine(int, int, int)[/quote]

Link com um exemplo (Rodei aqui e até funcionou):
https://bob.newdawnsoftware.com/repos/slick/trunk/Slick/examples/org/newdawn/slick/examples/scroller/Scroller.java

Mas quando apliquei em meu codigo, consegui fazer a tela se redesenhar a cada atualização (Render), por algum motivo o mapa fica torto completamente fora do lugar to querendo que independente do tamanho que eu coloque o mapa ele nade corretamente( Ex: 800x640 ; 1024x768; etc…)

Estou trabalhando com Tile Map, Slick 2D.

Movido para o fórum de Interface Gráfica (poderia ser também, “Frameworks, Ferramentas e Utilitários”, mas definitivamente, não o Java Básico).
Por favor, leia com atenção a descrição dos fóruns antes de postar.

Estava feliz achando que alguem responderia a duvida. (rsrsr…)

  • Já resolvi o problema, na verdade acabei aprendendo como fazer, scroll map, view map, cam map. Se quiser podem fechar o topico.

Não existe “fechamento de tópico” no GUJ.

Mas seria legal você postar a solução aqui. Outros podem vir com a mesma dúvida.

Na verdade fui experimentando valor, carreguei o projeto em modo de depuração e via em tempo real o que ocorria com os valores que adicionava nos parametros, ai sim entendi e consegui por umaformula que funciona-se.

Inclusive ficou perfeito, só não gostei de mapear colisões baseado na posição X.Y e não com polignos como considero mais indicado. Ai mudei a forma como trabalhei com o mapa.

Na hora o sistem ficou indentico a um scroll map (Só que desenhando a continuidade do mapa).

Mas depois mantive o carregamento do mapa inteiro na tela e usei o metodo Graphic.translate(Tela X, Tela Y), para manter o “heroi” sempre no centro.