AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Texturen auf Bild aufteilen

Ein Thema von Codewalker · begonnen am 11. Jun 2008 · letzter Beitrag vom 12. Jun 2008
Antwort Antwort
Benutzerbild von Codewalker
Codewalker

Registriert seit: 18. Nov 2005
Ort: Ratingen
945 Beiträge
 
Delphi XE2 Professional
 
#1

Texturen auf Bild aufteilen

  Alt 11. Jun 2008, 14:03
Hallo zusammen.

Ich habe eine ganze Reihe von Texturen in einzelnen Bildern (alle relativ klein und in unterschiedlichen Größen). Ich möchte diese nun gemeinsam in eine große Datei speichern, da sich eine große Datei schneller laden lässt als viele kleine. Dabei möchte ich nach Möglichkeit den vorhandenen Platz (z.B. als Vorgabe 512x512 Pixel) so gut wie es geht ausnutzen, die Bilder also möglichst intelligent verteilen.

Habt ihr eine Idee, wie man an die Sache am sinnvollsten rangehen könnte (erstmal in der Theorie)?

Danke und Grüße
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von Fussball-Robby
Fussball-Robby

Registriert seit: 22. Okt 2007
Ort: Nähe Köln
1.063 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: Texturen auf Bild aufteilen

  Alt 11. Jun 2008, 15:05
Du könntest die Bilder in eine ImageList laden und dann in eine Datei speichern. Wenn du sie wieder haben willst, kannst du sie einfach wieder laden:
Delphi-Quellcode:
//Speichern:
WriteComponentResFile('D:\Bilder.wuppdi', ImageList1);
//Laden:
ReadComponentResFile('D:\Bilder.wuppdi', ImageList1);
Die ImageList muss aber beim Speichern den selben Namen haben wie beim Laden, ansonsten funktionierts nicht.
Alternativ könntest du einen eigenen Dateityp entwerfen, in dem am Anfang der Datei die Anzahl der Bilder steht und jeweils die Positionen, an denen ein Bild anfängt bzw. aufhört. Dann könntest du die Bilder in diese Datei reinschreiben. Hab damit aber nicht viel Erfahrung..

Mfg
Robert L.
Der folgende Satz ist richtig!
Der vorherige Satz ist falsch!

Paradox
  Mit Zitat antworten Zitat
Benutzerbild von Codewalker
Codewalker

Registriert seit: 18. Nov 2005
Ort: Ratingen
945 Beiträge
 
Delphi XE2 Professional
 
#3

Re: Texturen auf Bild aufteilen

  Alt 11. Jun 2008, 15:10
Danke für die Antwort. Das Problem ist, dass ich das nicht für Delphi brauche, sondern um das Laden in einer Engine zu beschleunigen. Daher hilft mir hier die ImageList und die Res nicht weiter
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von littleDave
littleDave

Registriert seit: 27. Apr 2006
Ort: München
556 Beiträge
 
Delphi 7 Professional
 
#4

Re: Texturen auf Bild aufteilen

  Alt 11. Jun 2008, 19:12
Also wenn du mehrere kleinere Texturen in eine große Texture packen willst, hab ich da nen Link für dich:
klick mich
Nach dem Prinzip hab ich das in meiner Engine auch gemacht

Grüße
Jabber: littleDave@jabber.org
in case of 1 is 0 do external raise while in public class of object array else repeat until 1 is 0
  Mit Zitat antworten Zitat
Benutzerbild von Codewalker
Codewalker

Registriert seit: 18. Nov 2005
Ort: Ratingen
945 Beiträge
 
Delphi XE2 Professional
 
#5

Re: Texturen auf Bild aufteilen

  Alt 12. Jun 2008, 08:24
Sieht schonmal sehr gut aus - auch wenn ich noch nicht alles durchblickt habe. Wärst du vielleicht so nett (damit ich das Rad nicht zweimal erfinden muss), und mir Deine Implementierung zu zeigen?
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von littleDave
littleDave

Registriert seit: 27. Apr 2006
Ort: München
556 Beiträge
 
Delphi 7 Professional
 
#6

Re: Texturen auf Bild aufteilen

  Alt 12. Jun 2008, 13:25
Ich kann dir gerne den Quelltext geben, doch heut schaff ich das nicht mehr - vielleicht morgen. Ich müssten dafür den Quelltext erst aus meiner Engine "extrahieren" bzw. herausarbeiten und das kann etwas dauern.
Jabber: littleDave@jabber.org
in case of 1 is 0 do external raise while in public class of object array else repeat until 1 is 0
  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 12:42 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