tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
3
ZUGRIFFE
1026
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von takidoso
    takidoso takidoso ist offline Mitglied Brillant
    Registriert seit
    Aug 2004
    Ort
    Kömigstein
    Beiträge
    911
    Hallo und Halli,
    Ich habe da eine Art von Problem bzw Idee, die ich in meinem aktuellen privaten Projekt vielleicht lösen möchte bzw verwenden möchte.
    Es geht hierbei um das Scrollen eines Spielfeldes/Spielweltkarte, (janz normales 2D Graphik in Swing).
    Nun wäre es doch genial, wenn man da in der Lage wäre endlos zu scrollen d.H die Welt wäre entweder eine Kugel oder, was vermutlich viel einfacher wäre, ein Tubus.
    Klassenmäßig könnte ich mir das so vorstellen, dass man eine Art Umrechnungsklasse hat, die dann zwischen dem Spielplan Model und dem Fenster zum Anzeigen käme(Viewport ).
    Hat jemand so etwas schon mal gemacht oder hat jemand dazu eine Idee wie man das machen könnte?
    Die Scollbalken würden vermutlich dann verschwinden müssen, da es für Endlos scollen vielelicht weniger Sinn macht das der Baleken von einem zum anderen Ende verschiebt, nur weil man dann wieder am anderen "Anfang" der Welt (beobarchtend) angelangt ist.

    Mit neugiriegen Grüßen

    Takidoso
    Geändert von takidoso (25.04.08 um 18:26 Uhr)
     

  2. #2
    Registriert seit
    Jun 2002
    Ort
    Saarbrücken (Saarland)
    Beiträge
    9.885
    Blog-Einträge
    29
    Hallo,

    beschreib doch mal etwas genauer was du Scrollen möchtest und wie es genau aussehen soll. Scrollst du das Spielfeld (mit Sicht von oben oder pseudo 3D isometrisch?) oder soll wie bei einem 2D Sidescroller der Hintergrund mitlaufen?
    Wie ist dein Spielfeld / Hintergrund beschaffen? Ein einzelnes zusammenhängendes Bild oder eher kleine losgelöste Einzelbildchen (Tiles) ?

    Gruß Tom
     
    Java rocks!
    How to become a good Java Programmer?
    Does IT in Java and .Net
    The only valid measurement of code quality: WTFs / minute
    Blog
    Xing
    Twitter

  3. #3
    Avatar von takidoso
    takidoso takidoso ist offline Mitglied Brillant
    Registriert seit
    Aug 2004
    Ort
    Kömigstein
    Beiträge
    911
    Das ist im Grunde eine Draufsicht auf eine Landkarte, also erst mal simple 2 dimensionales Scrollen.
    Die Landkarte besteht im Wesentlichen aus Vielecken (mehr oder weniger aneinandergrenzenden Ländern und Inseln) Soll aber später noch Linien bekommen, die Seewege darstellen zwischen Ländern die nicht direkt verbunden sind.
    Weiterhin ist es möglich ein Bild im Hintergrund zu haben, welches dann sinnvollerweise auch mit den Polygonen und Linien identisch zu scrollen ist.

    Nebenbei kann das ganze auch skaliert werden, d.h. Es gibt nur dann ein Scrollen wenn die "Weltkarte" nicht ins Fenster passt.

    Also das normale Scrollen geht hervorragend mit sammt der Skalierung inklusive Hintergrundbild, so man eines hat. Ich male halt den Kram in ein Graphic-Objekt innerhalb der paintComponent() Routiene.

    Normalerweise würde ich bei Endlosscrollen eine Modulo-Funktion einsetzen, so dass in der Vertikalen und auch Horizontalen die anderen Enden der Welt sich quasi berühren (ich nenne das mal Tubus-Ring-Efekt)
    Also logische Karte hat Breite 0 bis X-max Höhe 0 - Y-Max
    logischer Beobachtungsraum würde bleibig in der Kooridnate steigen oder sinken (auch über maximale und unter minimale Koordinatenwerte, der logischen Karte).
    Das ganze durch Modulo gejagt mit den Max-Werten, dann den Betrag davon genommen und schon habe ich die Koordinaten des logischen Beobachtungsraumes auf die meiner logischen Karte passend gemacht.

    Aber wie sag ich es meinem Scrollfenster
    Oder muss ich da ganz anders vorgehen?
    Geändert von takidoso (02.05.08 um 16:25 Uhr)
     

  4. #4
    Avatar von takidoso
    takidoso takidoso ist offline Mitglied Brillant
    Registriert seit
    Aug 2004
    Ort
    Kömigstein
    Beiträge
    911
    Zitat Zitat von Thomas Darimont Beitrag anzeigen
    Hallo,
    Wie ist dein Spielfeld / Hintergrund beschaffen? Ein einzelnes zusammenhängendes Bild oder eher kleine losgelöste Einzelbildchen (Tiles) ?
    Gruß Tom
    Ich denke es wird vermutlich eher Einzelbildchen sein wenn man die Polygone und Linien so nennen mag...
    hast Du da zufällig Hinweise auf weiterführende Links? Ich habe mich schon totgesucht, aber unter java scrollen endless oder inifinite finde ich nicht wirklich was in dieser Richtung
    Bisher nehme ich an, dass es irgendwie mit dem JViewport in irgendeiner Form zu tun hat.
    Geändert von takidoso (02.05.08 um 16:25 Uhr)
     

Ähnliche Themen

  1. Endlos While() Schleife
    Von F0rris im Forum PHP
    Antworten: 5
    Letzter Beitrag: 06.09.09, 23:57
  2. Endlos schleife?
    Von Skini im Forum C/C++
    Antworten: 9
    Letzter Beitrag: 10.09.08, 17:33
  3. Endlos Szene
    Von moorpheus3000 im Forum Cinema 4D
    Antworten: 2
    Letzter Beitrag: 30.05.08, 11:24
  4. endlos
    Von Master92 im Forum Cinema 4D
    Antworten: 3
    Letzter Beitrag: 27.08.07, 22:44
  5. Endlos Script
    Von campari im Forum Linux & Unix
    Antworten: 2
    Letzter Beitrag: 06.06.06, 12:23