Mit Bilder arbeiten

Objektorientierte Programmiersprache auf Basis einer virtuellen Maschine (https://www.oracle.com/java/)
nufan
Wiki-Moderator
Beiträge: 2558
Registriert: Sa Jul 05, 2008 3:21 pm

Re: Mit Bilder arbeiten

Beitrag von nufan » Di Mai 29, 2012 7:51 pm

Empire hat geschrieben:Ich hatte vor Graphics zu nutzen.
http://docs.oracle.com/javase/6/docs/ap ... bserver%29
Parameters:
img - Dein großes Bild wo alle kleinen enthalten sind. Das ist immer das gleiche.
x - x-Koordinate deines kleinen Bildes innerhalb des großen Bildes. Das musst du in deiner Spielwelt für jedes Quadrat speichern.
y - y-Koordinate deines kleinen Bildes innerhalb des großen Bildes. Das musst du in deiner Spielwelt für jedes Quadrat speichern.
width - Breite eines kleinen Quadrates
height - Höhe eines kleinen Quadrates
observer - Ähm... Google ^^
Empire hat geschrieben:Oder gibt es etwas besser geeignetes?
In Java? Ehrlich gesagt keine Ahnung.

Benutzeravatar
oenone
Beiträge: 223
Registriert: Do Sep 01, 2011 2:42 pm
Wohnort: Bremen
Kontaktdaten:

Re: Mit Bilder arbeiten

Beitrag von oenone » Do Mai 31, 2012 9:24 pm

Du solltest dir im Klaren darüber sein, dass das Original-Tileset nicht dir gehört und du es im Grunde nicht benutzen darfst. Auch allzu ähnliche Grafiken oder Namen solltest du eher nicht benutzen. Solange es nur ein privates Hobbyprojekt ist, das nicht veröffentlicht wird ist es noch in Ordnung, du solltest solche Grafiken aber nicht öffentlich zugänglich machen.

Empire
Beiträge: 272
Registriert: Mo Jan 26, 2009 5:36 pm

Re: Mit Bilder arbeiten

Beitrag von Empire » Sa Jun 02, 2012 7:41 pm

Das ist mir klar.
Es soll auch nicht mehr wie ne Beschäftigung sein. Ich hab nicht vor es zu veröffentlichen.

nufan
Wiki-Moderator
Beiträge: 2558
Registriert: Sa Jul 05, 2008 3:21 pm

Re: Mit Bilder arbeiten

Beitrag von nufan » Sa Jun 02, 2012 8:36 pm

Zufrieden mit meiner Antwort? ^^

Empire
Beiträge: 272
Registriert: Mo Jan 26, 2009 5:36 pm

Re: Mit Bilder arbeiten

Beitrag von Empire » Mo Jun 04, 2012 4:24 pm

Hab zwar eine andere Überladung genommen, aber ja dein Tipp war sehr gut.
Wenn ich jetzt noch lerne x von y und soure von goal zu unterscheiden wird das sogar was.

Empire
Beiträge: 272
Registriert: Mo Jan 26, 2009 5:36 pm

Re: Mit Bilder arbeiten

Beitrag von Empire » Mo Jun 04, 2012 8:36 pm

Zu gefreut. Es klappt zwar an sich alles wie es soll, aber leider ist java viel zulangsam.
Man sieht wie sich die einzelnen Bilder aufbauen.

Ich mach mich jetzt auf die suche nach einer besser geeigneten Sprache.

Benutzeravatar
cloidnerux
Moderator
Beiträge: 3123
Registriert: Fr Sep 26, 2008 4:37 pm
Wohnort: Ram (Gibts wirklich)

Re: Mit Bilder arbeiten

Beitrag von cloidnerux » Mo Jun 04, 2012 8:38 pm

Zu gefreut. Es klappt zwar an sich alles wie es soll, aber leider ist java viel zulangsam.
Man sieht wie sich die einzelnen Bilder aufbauen.
Du arbeitest noch zu ineffizient. Selbst spiele wie Minecraft laufen mit Java, und die haben sicherlich etwas mehr Anspruch als deine Tilesets.

Suchst du eine effizientere Sprache, dann ist C/C++ die richtige Wahl.
Redundanz macht wiederholen unnötig.
quod erat expectandum

Empire
Beiträge: 272
Registriert: Mo Jan 26, 2009 5:36 pm

Re: Mit Bilder arbeiten

Beitrag von Empire » Mo Jun 04, 2012 9:36 pm

MInecraft ist nicht rein in Java geschrieben. (Sonst bräuchte es nicht für jedes OS einen eigenen Download).
Und trotzdem frisst es Rechenleistung ohne Ende.

Und bei C/C++ Scheiter ich schon daran eine passende API einzubinden -.-
(Ist sch ein weilchen her seit ich es das letzte mal versucht hab, versuch es morgen nochmal.)

canlot
Beiträge: 393
Registriert: Di Mär 08, 2011 11:01 pm
Wohnort: NRW

Re: Mit Bilder arbeiten

Beitrag von canlot » Mo Jun 04, 2012 10:00 pm

MInecraft ist in Java geschrieben und es braucht sicherlich keine separaten Downloads für jedes OS.
Unwissenheit ist ein Segen

Giovanni
Beiträge: 1
Registriert: Di Mai 22, 2012 8:44 pm

Re: Mit Bilder arbeiten

Beitrag von Giovanni » Mo Aug 27, 2012 11:09 am

Ich bumpe jetzt einfach mal ein altes Topic.

Du verwendest offensichtlich Java2D falsch. Aber das wurde ja schon früher erwähnt. Es kann für 2D Spiele verwendet werden, sollte es aber nicht. Sobald du relativ viele Tiles renderst wird die Performance schlechter werden.

Um ein Tilesheet (oder wie auch immer du es nennen willst) zu parsen, so wie du es im ersten Post gezeigt hast, empfehle ich dir die getSubImage Methode.


Empire hat geschrieben:MInecraft ist nicht rein in Java geschrieben. (Sonst bräuchte es nicht für jedes OS einen eigenen Download). .....
Das sind lediglich Launcher für die .jar Dateien.

Empire hat geschrieben: Und trotzdem frisst es Rechenleistung ohne Ende.
Das liegt allerdings daran dass Minecraft schlecht gecodet ist und nicht an der Programmiersprache.
Empire hat geschrieben: Ich mach mich jetzt auf die suche nach einer besser geeigneten Sprache.
Welche bessere Sprache willst du suchen? Von den interpretierten Sprachen ist Java eine der schnellsten Sprachen und durch die Hotspot Optimierung kommt es schon sehr nah an C++ ran. Natürlich kannst du C/C++ verwenden aber in meinen Augen kannst du mit Java schneller kleine Spiele schreiben (das ist ja das, was du willst) aufgrund von Java2D.

Wenn du wirklich Spiele schreiben willst mit sehr guter Performance (in Java) musst du entweder LWJGL oder JOGL verwenden. Beide verwenden das JNI um OpenGL nach Java zu porten. Aber Achtung: Dort gibt es keine 'Images' oder was auch immer. Dort gibt es Pixeldata, Shader und den ganzen anderen Spaß. Bevor du mit LWJGL/JOGL startest solltest du dich lieber einmal mit Java2D vertraut machen.

Noch einmal sorry dass ich dieses alte Thema gebumbt habe.

Antworten