PNG's manuell laden
-
Hallo,
Ich will in DX(9) ohne D3DX und GDI+ PNGs laden.
Kennt jemand Tutorials o.Ä. (am besten auf Deutsch), die sich mit dem Laden von PNG's beschäftigen? Die W3C Spezifikation ist mir etwas zu umfangreich.
-
Hi,
nimm die libpng.
-
Possoko schrieb:
Ich will in DX(9) ohne D3DX [..] laden.
Gibt's dazu'n (sinnvollen) Grund?!

-
Gibt's dazu'n (sinnvollen) Grund?!
Intros z.B.
-
wie bereits erwaehnt, libpng kann ich empfehlen, funktioniert einfach und schnell. Beim Package sind auch einige Beispielprogramme incl Code dabei, da kannst fast alles abschreiben.
so far
Phil
-
Ich glaube er wollte es ohne Zusatzlibs bewerkstelligen und nicht mit libpng.
-
Hallo Patrick

Ich machs jetzt anders und nehm die zlib, PNG benutzt ja auch nichts anderes, und komprimier es damit einfach, das gleiche Resultat und schön einfach zu laden.

-
illuminator schrieb:
Gibt's dazu'n (sinnvollen) Grund?!
Intros z.B.
Unsinn.
Bye, TGGC (Wähle deine Helden)
-
TGGC schrieb:
illuminator schrieb:
Gibt's dazu'n (sinnvollen) Grund?!
Intros z.B.
Unsinn.
Bye, TGGC (Wähle deine Helden)
Wenn du unter 64kb bleiben willst sparst du dir sinnvollerweise die ca 70 kb die eine verlinkte d3dx lib mit sich bringt

In Intros sollte man aber zwar sowieso keine (PNG-)Texturen laden, sondern diese generieren, aber das geht ja eventuell nicht immer (bzw. man bekommt es nicht hin
).
-
illuminator schrieb:
Wenn du unter 64kb bleiben willst sparst du dir sinnvollerweise die ca 70 kb die eine verlinkte d3dx lib mit sich bringt

Unsinn.
Bye, TGGC (Wähle deine Helden)
-
Ich musste mir ja selbst ein Menge D3DX-Ersatz schreiben, weil die d3dx8.lib statisch verlinkt wird.
Jeder den ich kenne, auch ein paar weitere Leute aus der Szene, sagt d3dx lässt sich nicht dynamisch linken.
Und ich rede hier nicht von den inline-Funktionen.A few weeks later I thought it would be interesting to see how small (code size) I could get it without rewriting the whole thing in assembler, and after removing dependence on the D3DX library by writing my own transformation and simple mip generation functions, and finally compressing with the excellent free UPX executable packer, it was down from 150Kb (ish) to 6,144 bytes. Nothing special by your average 4Kb / 64Kb intro standards, I know, but better than I was expecting for so little effort. It soon became obvious that there was much more that could be squished as well - see below.
> check that you're keeping your D3DX*-function usage at a minimum since
> d3dx8.lib is linked staticly> uf! i have alot of D3DX calls.
Is there any way to link them
dynamicly?as alot of people pointed out, you can't link D3DX dynamicly, so you'll have
to write the functionality your self.
that's why writing 64k's is fun/hard
Wenn du es besser weißt, dann sag wie es funktioniert. Könnte ich gebrauchen.
Aber diese "Unsinn" alleine kannst du dir sparen.
-
Äh, seit DX9 Dezember Edition kann man die aber dynamisch linken.
Also die 9ér D3DX Lib, mein ich.
-
a) siehe SeppSchrott
b) Intros laden keine pngsBye, TGGC (Wähle deine Helden)
-
@SeppSchrot: Danke!
Das hätte Microsoft ruhig früher mal machen sollen.
Muss ich gleich mal ausprobieren.
@TGGC
1. Was war so schwer daran diesen Sachverhalt einfach mal kurz zu posten so wie SeppSchrot es getan hat?TGGC schrieb:
Intros laden keine pngs
2. Ich mach dir eins, dass das tut :p Revidierst du dann deine Aussage?

-
illuminator schrieb:
2. Ich mach dir eins, dass das tut :p Revidierst du dann deine Aussage?

Nein.
Bye, TGGC (Wähle deine Helden)