AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Ebenen eines Bildes (TGA etc.) auslesen?
Thema durchsuchen
Ansicht
Themen-Optionen

Ebenen eines Bildes (TGA etc.) auslesen?

Ein Thema von Rickiwarhammer · begonnen am 10. Aug 2009 · letzter Beitrag vom 12. Aug 2009
Antwort Antwort
Rickiwarhammer

Registriert seit: 15. Mär 2007
Ort: Frankfurt
14 Beiträge
 
Delphi 2010 Professional
 
#1

Ebenen eines Bildes (TGA etc.) auslesen?

  Alt 10. Aug 2009, 16:58
Ich habe lange zeit meine Spiele etc. programmiert mit einzelnen Bildern. Alleine die Bilder einzeln zu speichern und anders zu zeichnen hatte Teils sehr viel Zeit beansprucht und einiges an Speicher auf dem PC ... Nun habe ich mir eigentlich gedacht, dass es doch um einiges leichter wäre die Ebenen aus der File direkt auszulesen und dann im Programm anzeigen zu lassen so würden manchmal 100+ Bilder (verschiedene Kombinationen vom Bild) wegfallen.

Habe erstmal jedes bescheuerte Buch durchgeblättert und das halbe Internet durchwühlt ... leider ohne Erfolg^^ Nun wollte ich fragen wie man dies am besten erreichen kann. Wäre wirklich super wenn ihr mir helfen könntet =D
  Mit Zitat antworten Zitat
Benutzerbild von wicht
wicht

Registriert seit: 15. Jan 2006
Ort: Das schöne Enger nahe Bielefeld
809 Beiträge
 
Delphi XE Professional
 
#2

Re: Ebenen eines Bildes (TGA etc.) auslesen?

  Alt 10. Aug 2009, 17:06
Ich hoffe, ich verstehe dich richtig, aber so wie ich das immer beobachtet habe, wird dann einfach eine Bilddatei benutzt, die die Einzelbilder in einem Gitter enthält... Inwiefern das für dich praktikabel ist, weiß ich leider nicht.
http://streamwriter.org

"I make hits. Not the public. I tell the DJ’s what to play. Understand?"
  Mit Zitat antworten Zitat
Rickiwarhammer

Registriert seit: 15. Mär 2007
Ort: Frankfurt
14 Beiträge
 
Delphi 2010 Professional
 
#3

Re: Ebenen eines Bildes (TGA etc.) auslesen?

  Alt 10. Aug 2009, 17:41
Also meinst du, dass die Bilddateien wie Archive genutzt werden? Hab ich mir auch schon gedacht, dass z.B. in einer PSD kein "komplettes" Bild enthalten ist sondern nur die Ebenen mit den verschiedenen Bruchstücken. Jedoch hab ich auch dazu keine genaueren Infos gefunden.

Habe gemerkt, dass mein Anliegen teils etwas unverständlich war

Also^^ ich würde gerne die Bild Dateien wie TGA und PSD so öffnen wie in Photoshop. Dort ist es ja möglich manche Bildtypen mit Ebenen zu speichern. Z.B. Ebene 1: Kopf, Ebene 2: Oberkörper. Wenn man beide Ebenen "an" hat werden die beiden Ebenen zusammen angezeigt und man sieht den Kopf und den Oberkörper zugleich. Jedoch wenn man die Ebene 1 ausblendet dann sieht man nur noch den Oberkörper. Dies könnte man auch mit 2 Dateien machen und diese Laden/Schliessen. Jedoch um Platz zu sparen^^ und arbeit xP habe ich mich gefragt ob man in Delphi die Dateien mit den Ebenen wie in Photoshop laden könnte sodass man auch auf die verschiedenen Ebenen zugriff hat und diese beliebig an- und ausschalten kann ohne 2 oder mehr dateien zu benötigen. =)
  Mit Zitat antworten Zitat
Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Ebenen eines Bildes (TGA etc.) auslesen?

  Alt 10. Aug 2009, 20:05
Spricht irgendetwas gegen Sprites?
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG
  Mit Zitat antworten Zitat
Rickiwarhammer

Registriert seit: 15. Mär 2007
Ort: Frankfurt
14 Beiträge
 
Delphi 2010 Professional
 
#5

Re: Ebenen eines Bildes (TGA etc.) auslesen?

  Alt 10. Aug 2009, 21:21
Nene^^ geht mir ja nicht drum wie mans anzeigen lassen kann =D sondern wie mans aus der Datei lesen kann. Da Ebenen in Grafikdateien nicht die Regel ist gibt es wohl keine Funktion in Delphi die das auslesen der verschiedenen Ebenen übernimmt =)
  Mit Zitat antworten Zitat
Prototypjack

Registriert seit: 2. Feb 2003
611 Beiträge
 
Delphi 2009 Professional
 
#6

Re: Ebenen eines Bildes (TGA etc.) auslesen?

  Alt 10. Aug 2009, 22:04
Zitat von Rickiwarhammer:
Nene^^ geht mir ja nicht drum wie mans anzeigen lassen kann =D sondern wie mans aus der Datei lesen kann. Da Ebenen in Grafikdateien nicht die Regel ist gibt es wohl keine Funktion in Delphi die das auslesen der verschiedenen Ebenen übernimmt =)
Obwohl ich deinen Ansatz in diesem Falle eher als fragwürdig einschätze, möchte ich trotzdem meinen Senf dazugeben (das Quellmaterial scheint ja schon vorhanden zu sein, sonst scheint mir der Ansatz mit einzelnen Bildern in einzelnen Dateien für die Sprites eines Spiels merkwürdig zu sein.)

Auslesen kannst du die Dateien auf jeden Fall, denn das machen andere Programme ja auch. Das Problem ist jetzt, dass natürlich verschiedene Formate die Daten auf verschiedenen Wegen ablegen. Du musst dir also die Datei-Spezifikation von einem Format holen (z.B. PSD), wenn du dann weißt, wie die Datei intern aufgebaut ist, kannst du auch die Ebenen auslesen (aber nur die des Formates, hier PSD, natürlich).

Grüße,
Max
Max
„If you have any great suggestions, feel free to mail me, and I'll probably feel free to ignore you.“ . Linus Torvalds
  Mit Zitat antworten Zitat
hadschi92

Registriert seit: 25. Okt 2006
83 Beiträge
 
Delphi XE3 Professional
 
#7

Re: Ebenen eines Bildes (TGA etc.) auslesen?

  Alt 11. Aug 2009, 11:44
Wikipedia sagt mir, dass das PSD-Format urheberrechtlich geschützt ist (proprietär).

Du könntest jedoch mal bei dem Programmierer von IrfanView anfragen wie er das mit dem PSD Import gelöst hat. Soviel ich weiß ist IrfanView auch in Delphi geschrieben...
  Mit Zitat antworten Zitat
Rickiwarhammer

Registriert seit: 15. Mär 2007
Ort: Frankfurt
14 Beiträge
 
Delphi 2010 Professional
 
#8

Re: Ebenen eines Bildes (TGA etc.) auslesen?

  Alt 12. Aug 2009, 19:13
Super danke =) Werde in nächster Zeit mal versuchen mit den Programmierern von IrfanView in Kontakt zu kommen =D Danke für eure schnelle Hilfe
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:23 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz