„Index Compression“ – wie effizient?

Design Patterns, Erklärungen zu Algorithmen, Optimierung, Softwarearchitektur
Forumsregeln
Wenn das Problem mit einer Programmiersprache direkt zusammenhängt, bitte HIER posten.
Benutzeravatar
Krishty
Establishment
Beiträge: 8316
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: „Index Compression“ – wie effizient?

Beitrag von Krishty »

Aramis hat geschrieben:Ihr könnt die Cachegröße auf die Assimp hin optimiert auch manuell setzen. Defaultwert ist 16.
Das erklärt, warum meine Referenzen bei vier Bits am effizientesten arbeiten und löst das Problem, diesen Wert experimentell bestimmen zu müssen – danke!
Schrompf hat geschrieben:Triangle Strips sind […] *immer* langsamer als freie Dreieckshäufchen, die genauso sortiert sind. Die Sortierung ist das Entscheidende.
Das ist irgendwie ein Widerspruch in sich :? In meinem Link stand jedenfalls, mit welcher Primitive-Topology die Dreiecke ankommen ist wurscht – einzig und allein wieviele im Cache liegen, entscheidet.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Schrompf
Moderator
Beiträge: 5054
Registriert: 25.02.2009, 23:44
Benutzertext: Lernt nur selten dazu
Echter Name: Thomas
Wohnort: Dresden
Kontaktdaten:

Re: „Index Compression“ – wie effizient?

Beitrag von Schrompf »

Krishty hat geschrieben:
Schrompf hat geschrieben:Triangle Strips sind […] *immer* langsamer als freie Dreieckshäufchen, die genauso sortiert sind. Die Sortierung ist das Entscheidende.
Das ist irgendwie ein Widerspruch in sich :? In meinem Link stand jedenfalls, mit welcher Primitive-Topology die Dreiecke ankommen ist wurscht – einzig und allein wieviele im Cache liegen, entscheidet.
Nicht nach meinem Verständnis. Beispiel:

Code: Alles auswählen

0, 1, 2
2, 1, 3
4, 5, 6
Die Anzahl der VertexShader-Ausführungen ist jedesmal die selbe. Aber bei Triangle Strips bräuchte man zusätzlich noch ein degeneriertes Dreieck dazwischen. Oder hier sogar mehrere. Weil man bei Triangle Strips nur einen neuen Index pro Dreieck einführen kann. Das war meine Aussage: Triangle Strips sparen gegenüber genauso sortierten Dreiecken keine VertexShader-Läufe ein, erhöhen aber den Polycount.
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
Benutzeravatar
Krishty
Establishment
Beiträge: 8316
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: „Index Compression“ – wie effizient?

Beitrag von Krishty »

Achso – klar, dann habe ich nichts gesagt :)
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Dirk Schulz
Establishment
Beiträge: 130
Registriert: 01.03.2009, 14:21
Alter Benutzername: frittentuete

Re: „Index Compression“ – wie effizient?

Beitrag von Dirk Schulz »

Hi,

mit der Kompression nur über Offsets (also nur Differenzen zwischen zwei Indizes) bin ich jetzt bei einer Kompression von 1 : 2,20 mit 7,27 Bits pro Index.

Wenn man das jetzt noch mit den letzten drei Dreiecken arbeitet lässt sich da bestimmt ne ganz gute Kompression rausholen. Allerdings müsste man da vorher die Indexliste von Krishty sortieren. Nach welchen Kriterien sollte man die denn am besten sortieren?

Dirk Schulz
Benutzeravatar
Krishty
Establishment
Beiträge: 8316
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: „Index Compression“ – wie effizient?

Beitrag von Krishty »

Wir sollten uns erstmal auf ein gemeinsames Model einigen … ich wäre für dieses hier:
  • Das ist kein Designwettbewerb, den Indizes sieht man letzten Endes eh keine Form an, darum ist die unästhetische Erscheinung egal.
  • Mit 20.000 Dreiecken aus 10.000 Vertices bietet es uns eine gute Datenmenge zum Experimentieren, ohne sich zuweit von real-life-Szenarien zu entfernen.
  • Aufgrund der vielen Ecken und Kanten stellt es Ansprüche an die Cache-Optimierung und kann nicht mal schnell in einen durchgängigen Triangle-Strip umgewandelt werden.
  • Es scheint keine Texturen zu benutzen und nur aus einem einzigen Objekt zu bestehen, was das Importieren vereinfachen sollte.
Mal eine Drahtgitteransicht
Mal eine Drahtgitteransicht
Andere Vorschläge sind herzlich willkommen. Und kann mir mal jemand erklären, wie genau ich die {list=}-Tags benutze?!?

Achja: Es kann nicht schaden, die gepackten Daten wieder zu extrahieren und auf Konsistenz zu prüfen … sonst neigt man dazu, sich zu früh zu freuen (ich spreche aus Erfahrung – wow, 1 : 5! *entpack* d'oh!) …
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Aramis
Moderator
Beiträge: 1458
Registriert: 25.02.2009, 19:50
Echter Name: Alexander Gessler
Wohnort: 2016
Kontaktdaten:

Re: „Index Compression“ – wie effizient?

Beitrag von Aramis »

3.Aufgrund der vielen Ecken und Kanten stellt es Ansprüche an die Cache-Optimierung und kann nicht mal schnell in einen durchgängigen Triangle-Strip umgewandelt werden.
Naja, ACMR 0.9 ist nicht unbedingt schlecht, zugegebenermaßen allerdings auch nicht das Gelbe vom Ei. Generell ist es relativ schwer einem Modell seine Eignung auf Cache-Optimierungen hin anzusehen. Womit ich allerdings zurückrudern muss ist bezüglich meiner obigen Aussage 'Default==16'. Das hatte ich irgendwie falsch im Kopf, der Defaultwert ist 12, sorry. Das ändert nichts daran dass es mit 4 Bits am effektivsten sein dürfte, lässt aber die Hoffnung dass es mit 15/16 Cache-Slots sogar noch besser werden könnte :-)

Ansonsten frage ich mich, wieso ihr die Cache-Optimierung unbedingt *vor* der Kompression ausführen wollt. Wieso nicht einfach die Indexliste auf bessere Komprimierbarkeit hin umsortieren (z.B. einfach Brute Force), dann nach dem Dekomprimieren den Cache-Optimizer laufen lassen? Viel Zeit braucht das nicht, die meisten brauchbaren Algorithmen sind O(n) oder O(nlogn). Und es war ja sowieso Just for Fun.
… ich als Programmierer sehe hier einen Fall, der bei Bild-, Ton- und Textkompression eher unüblich ist: Dass dieselben Daten drei unterschiedliche binäre Repräsentationen haben. In der Rotation der Indizes ist keine Information enthalten, die ich je auswerten würde. Darum geht bei der Kompression keine Information verloren und sie ist verlustfrei.
Genau genommen nicht, jedenfalls nicht mehr seitdem ihr auch noch diese leidige Cache-Optimierung, die gar nichts mit dem Problem zu tun hat, mit hineinnehmt :-) Im Extremfall macht die Rotation der Indizes die Arbeit des Cache-Optimizers kaputt. Zumindest wenn der Optimizer *exakt* auf eine bestimmte Cache-Größe hin optimiert, wie unserer. Meinem Verständnis des Post-Transform Caches zufolge ist es jedenfalls so, ich lasse mich aber gerne korrigieren :-)

Alex
Benutzeravatar
Krishty
Establishment
Beiträge: 8316
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: „Index Compression“ – wie effizient?

Beitrag von Krishty »

Aramis hat geschrieben:Womit ich allerdings zurückrudern muss ist bezüglich meiner obigen Aussage 'Default==16'. Das hatte ich irgendwie falsch im Kopf, der Defaultwert ist 12, sorry. Das ändert nichts daran dass es mit 4 Bits am effektivsten sein dürfte, lässt aber die Hoffnung dass es mit 15/16 Cache-Slots sogar noch besser werden könnte :-)
Werde ich gleich mal testen :)
Ansonsten frage ich mich, wieso ihr die Cache-Optimierung unbedingt *vor* der Kompression ausführen wollt. Wieso nicht einfach die Indexliste auf bessere Komprimierbarkeit hin umsortieren (z.B. einfach Brute Force), dann nach dem Dekomprimieren den Cache-Optimizer laufen lassen? Viel Zeit braucht das nicht, die meisten brauchbaren Algorithmen sind O(n) oder O(nlogn). Und es war ja sowieso Just for Fun.
Weil es ein space-time-tradeoff ist, bei dem ich schnelle Ausführung bevorzuge – ich muss hier ja dauernd erwähnen, dass ich nur einen einzigen Pass je zum Packen und Entpacken haben will, weil das Ganze am Ende für Echtzeit-Manipulationen gebraucht wird … wenn es nach maximaler Kompression ginge, würde ich alles in einen Triangle-Strip packen, den in Segmente mit eigener Delta-Kompression unterteilen, PAQ8 drüberjagen und die Daten nicht mehr anfassen :) Vertauschen möchte ich eigentlich auch nichts, denn, wie TGGC schon sagte – man weiß nie, ob man nicht hinterher doch Spezialfälle für Alpha-Blending o.ä. einführt …

… was aber nicht heißen soll, dass ich was dagegen hätte, dass Dirk und Julien da anders vorgehen – je mehr Alternativen ausprobiert werden, desto besser.
Im Extremfall macht die Rotation der Indizes die Arbeit des Cache-Optimizers kaputt. Zumindest wenn der Optimizer *exakt* auf eine bestimmte Cache-Größe hin optimiert, wie unserer. Meinem Verständnis des Post-Transform Caches zufolge ist es jedenfalls so, ich lasse mich aber gerne korrigieren :-)
Ich denke, schon … ich sehe es aber so: durch Rotation kann das aktuelle Dreieck höchstens zwei aus dem Cache geflogene Vertices mehr wiedereinführen als das unrotierte Dreieck … bei zwölf Vertices im Cache wird die Performance schlimmstenfalls um ein Sechstel reduziert. Arbeitet der Optimizer mit 16 Vertices, ist es nurnoch ein Achtel usw.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Julien Koenen
Beiträge: 16
Registriert: 22.05.2009, 10:46
Echter Name: Julien Koenen

Re: „Index Compression“ – wie effizient?

Beitrag von Julien Koenen »

OK.. ich habe mal die assimp eingebunden um das 3ds zu laden (nette library btw) und das erste mesh aus der Szene komprimiert: (geladen habe ich das Modell mit aiProcess_ImproveCacheLocality | aiProcess_Triangulate | aiProcess_JoinIdenticalVertices | aiProcess_SortByPType)

input: index count = 57942 acmr=0.903179
output: bits/triangle=17.0376 compression ratio=0.645

Also knapp 65% Reduktion der Eingangsdaten.

Den interessanten Teil des codes kann man sich hier angucken: http://pastebin.com/m158883f1

Gruß
Julien

PS: Ich denke schon, dass man es noch kleiner bekommt. die meisten Indices brauchen nach der deltakompression deutlich weniger als 11 bit die bei diesem model genommen wurden. Evtl. lohnt es sich die nochmal aufzuteilen in "große" und "kleine" deltas. Mal sehen, ob ich morgen nochmal ne Stunde Zeit habe.

PPS: Mit einer Cachegröße von 20 komme ich auf 15.8877 bits/dreieck (oder 1:3.02). Immerhin besser als normale Strips ;)
Zuletzt geändert von Julien Koenen am 29.05.2009, 01:22, insgesamt 1-mal geändert.
Benutzeravatar
Krishty
Establishment
Beiträge: 8316
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: „Index Compression“ – wie effizient?

Beitrag von Krishty »

1 : 2,81 – damit bist du 1,21× so effizient wie ich :)
Ich werde erstmal Triangle-Strips zusammenfügen und schauen, wie sich das auswirkt.


Edit: Haha, Aramis, mit dem Cache-Optimizer ist uns ein kleiner Denkfehler unterlaufen: Ich referenziere die 16 letzten Indizes, nicht die letzten 16 Vertices. In den Indizes können Vertices deshalb auch gerne mal doppelt vorkommen, die Einstellung liefert also nicht bei 15/16 die beste Kompression:
8: 1 : 2.26772 (44.0972%)
9: 1 : 2.30949 (43.2997%)
10: 1 : 2.32463 (43.0176%)
11: 1 : 2.32287 (43.0501%)
12: 1 : 2.32317 (43.0447%)
13: 1 : 2.32141 (43.0773%)
14: 1 : 2.29797 (43.5167%)
16: 1 : 2.27415 (43.9724%)
… sondern beim Default-Wert von 12 :D Andererseits habe ich jetzt wieder eine kleine Idee, um den Platz besser auszunutzen … :P
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Krishty
Establishment
Beiträge: 8316
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: „Index Compression“ – wie effizient?

Beitrag von Krishty »

Okay, dann mal ein Update:

Ich habe ein falsches Bitshift in meinem alten Code gefunden, die Korrektur hat die Kompression von 1 : 2,32 auf 1 : 2,40 verbessert.

Weiter habe ich einen Vertex-Cache eingebaut, so dass jede Referenz auf einen einzigartigen Index verweist. Damit werden die vier Referenzbits optimal ausgenutzt, Assimp kann für 15 statt zwölf Vertices optimieren und die Kompression steigt auf 1 : 2,69.
Julien Koenen hat geschrieben:PPS: Mit einer Cachegröße von 20 komme ich auf 15.8877 bits/dreieck (oder 1:3.02). Immerhin besser als normale Strips ;)
Woah! Ich habe gerade meine Strips eingebaut und liege jetzt bei 16,04 bpt oder einer Kompression von 1 : 2,99 :D Ich bin fest entschlossen, dein eines Prozent zu überholen – aber jetzt wird erstmal geschlafen.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Zudomon
Establishment
Beiträge: 2260
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: „Index Compression“ – wie effizient?

Beitrag von Zudomon »

Ihr geht ja euphorisch an die Sache ran!!
Aber irgendwie ist das nur einen hauch besser, als mit der Zip-Komprimierung.

So ganz verstehe ich das ganze eh nicht, naja, aus Spass ist ja in Ordnung, aber eigentlich könnte man doch die Zeit auch in andere Features investieren.
Arbeitsspeicher hat man eigentlich genug heut zu tage, und wenn nicht, dann kann man die Modelle ja von Platte nachladen. Selbst ein großes Modell ist ja innerhalb von Millisekunden geladen.

Und um wirklich effiziente Kompressionen zu erreichen, sollte man direkt parametrisierte Objekte erstellen!

Aber Spasseshalber würde ich in dem Zusammenhang gerne nochmal auf mein Modell (Fledermaus) hinweisen, weil es ja zum Teil parametrisiert ist.
Das Basismesh lässt sich mit RAR am besten komprimieren.
Resultierende Modelldaten:
Vertexe: 54054
Dreiecke: 108224

Unkomprimiert: 2.190 MB
Basismesh: 69.462 KB
RAR-Komprimiert: 23.762 KB

Verhältnis zum unkomprimierten Modell:
Basismesh: 1:31.533 (3.171%)
RAR-Komprimiert: 1:92.179 (1.085%)

Wobei man hier noch beachten muss, das es sich um Vertex- und Indexdaten handelt.
Benutzeravatar
Krishty
Establishment
Beiträge: 8316
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: „Index Compression“ – wie effizient?

Beitrag von Krishty »

Zudomon hat geschrieben:Ihr geht ja euphorisch an die Sache ran!!
Nur enthusiastisch – euphorisch werde ich, wenn ich 1 : 4 knacke ;)
Zudomon hat geschrieben:Und um wirklich effiziente Kompressionen zu erreichen, sollte man direkt parametrisierte Objekte erstellen!
Was ist das? Ich habe sowohl auf Deutsch als auch auf Englisch gesucht und nur Programmierparadigmen und das Erzeugen von Models aus Handskizzen gefunden.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Aramis
Moderator
Beiträge: 1458
Registriert: 25.02.2009, 19:50
Echter Name: Alexander Gessler
Wohnort: 2016
Kontaktdaten:

Re: „Index Compression“ – wie effizient?

Beitrag von Aramis »

Ich denke, es geht darum Teile der Modellgeometrie prozedural zu generieren. Beispielsweise bei symetrischen Modellen nur eine Hälfte abspeichern, und die Ebene an der gespiegelt wird. Du musst also die gesamte Content-Pipeline in deinen Händen haben und entsprechende Informationen vom Modellierungstool bis hin zum fertigen Programm mitschleppen.

Wobei ich ehrlich gesagt denke, dass sich für PC-Applikationen der Aufwand generell nicht lohnt. 2GB Arbeitsspeicher hat es fast überall, und schon 1 GB vollzukriegen ist nicht sonderlich leicht. Ganz mal davon abgesehen dass die Möglichkeiten für prozedurale Daten gerade bei 'naturalistischen' Szenen eher eingeschränkt sind. Allerdings hatten wir das schon mal, kein Grund sich schon wieder gegenseitig zu versichern dass es Just for Fun ist :-)

Im alten ZFX hatte es noch das da.
Benutzeravatar
Krishty
Establishment
Beiträge: 8316
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: „Index Compression“ – wie effizient?

Beitrag von Krishty »

Achso – dann hast du auch gleich alles dazu gesagt :)

Nochmal ein paar Testergebnisse … bpr sind Bits pro Referenz, l ist Assimps Cache-Locality:
bpr=3, l= 2: 1 : 3.01423 (33.176%)
bpr=3, l= 3: 1 : 3.08227 (32.4436%)
bpr=3, l= 4: 1 : 2.95621 (33.827%)
bpr=3, l= 5: 1 : 2.97338 (33.6317%)
bpr=3, l= 6: 1 : 2.99124 (33.431%)

bpr=4, l=15: 1 : 2.99221 (33.4201%)
bpr=4, l=16: 1 : 2.89948 (34.4889%)
bpr=4, l=17: 1 : 3.06995 (32.5738%)
bpr=4, l=18: 1 : 2.94488 (33.9572%)
bpr=4, l=19: 1 : 2.95101(33.8867%)
bpr=4, l=22: 1 : 2.8679 (34.8687%)

bpr=5, l=31: 1 : 2.55609 (39.1222%)
bpr=5, l=32: 1 : 2.53361 (39.4694%)


Das ist der Maximalbereich für Referenzierung. Jetzt müsste ich auf Deltakompression zurückgreifen, um nochmals höhere Kompressionsraten zu erreichen … ich experimentiere aber noch mit Kantenreferenzierung.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Chromanoid
Moderator
Beiträge: 4274
Registriert: 16.10.2002, 19:39
Echter Name: Christian Kulenkampff
Wohnort: Lüneburg

Re: „Index Compression“ – wie effizient?

Beitrag von Chromanoid »

Also bezüglich prozeduraler Geometrie und Texturen kann man ja einfach bei der Demoscene reinschauen :). Die kleinen Dateigrößen die dort erreicht werden sprechen ja für sich... http://kk.kema.at/files/kkrieger-beta.zip http://www.pouet.net/prod.php?which=9424
Allerdings ist das ja nicht wirklich Kompression sondern eine Form der gezielten Datengenerierung... Und zur Laufzeit nutzt einem diese Kompression ja auch nichts...
Julien Koenen
Beiträge: 16
Registriert: 22.05.2009, 10:46
Echter Name: Julien Koenen

Re: „Index Compression“ – wie effizient?

Beitrag von Julien Koenen »

Neuer Wert:
compressionRatio:0.761235 (1:4.18823) (11.4607bits/Triangle)

Unter 10 bits/triangle wäre doch mal ein Ziel.. Dann sind wir auch garnicht so weit von den Zahlen aus dem Paper entfernt.

Gruß
Julien

PS: Der Vertexcache optimizer ist jetzt der nächste Angriffspunkt. Wenn ich da 24 einstelle komme ich auf 1:4.68862 (10.23 bits/triangle). Evtl. habe ich ja morgen noch Zeit einen anderen optimizer auszuprobieren.
Zuletzt geändert von Julien Koenen am 30.05.2009, 17:24, insgesamt 2-mal geändert.
Benutzeravatar
Zudomon
Establishment
Beiträge: 2260
Registriert: 25.03.2009, 07:20
Kontaktdaten:

Re: „Index Compression“ – wie effizient?

Beitrag von Zudomon »

Stimmt, genau das meinte ich mit prozeduraler Geometrie. Ich würde schon sagen, dass es eine Art Kompression ist, allerdings funktioniert diese nicht auf jede Art von Daten. Aramis hat schon den größten Nachteil genannt (ganze Content-Pipeline mitschleppen).
Wenn es diese Art der Datenhaltung nicht geben würde, dann wären derart hohe Kompressionen nicht möglich.

Ich würde übrigens wetten, dass alle hier diese Art der Kompression schon anwenden. Denn wenn man von einem Modell mehrere Instanzen abbildet, dann hat man genau das gleiche. Man könnte auch jedes Modell einzeln abspeichern, aber da sieht jeder sofort die Speicherverschwendung ein.

Das Testmodell, das Krishty gepostet hat, könnte man auch sehr gut prozedural speichern. Aber wie schon gesagt wurde, dass man eigentlich schon bei der Erstellung geschehen, im nachhinein die prozeduralen Elemente finden, wäre zu aufwendig. Das Modell besteht nur aus Zylinder (mit verschiedenen Start- und Endradius), Röhren, Boxen und Kugelhälften.
Benutzeravatar
TGGC
Establishment
Beiträge: 569
Registriert: 15.05.2009, 18:14
Benutzertext: Ich _bin_ es.
Alter Benutzername: TGGC
Echter Name: Ich _bin_ es.
Wohnort: Mainz
Kontaktdaten:

Re: „Index Compression“ – wie effizient?

Beitrag von TGGC »

Chromanoid hat geschrieben:Also bezüglich prozeduraler Geometrie und Texturen kann man ja einfach bei der Demoscene reinschauen :). Die kleinen Dateigrößen die dort erreicht werden sprechen ja für sich... http://kk.kema.at/files/kkrieger-beta.zip http://www.pouet.net/prod.php?which=9424
Allerdings ist das ja nicht wirklich Kompression sondern eine Form der gezielten Datengenerierung... Und zur Laufzeit nutzt einem diese Kompression ja auch nichts...
Darum habe ich ja auch schon erwaehnt, wer in der Demoszene diese Art Kompression benutzt. f'`8k

[ ] Autocogito


Gruß, TGGC (Was Gamestar sagt...)
Benutzeravatar
Krishty
Establishment
Beiträge: 8316
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: „Index Compression“ – wie effizient?

Beitrag von Krishty »

TGGC hat geschrieben:Darum habe ich ja auch schon erwaehnt, wer in der Demoszene diese Art Kompression benutzt.
„erwähnt“ :D

@Julien: Über 1 : 3,13 komme ich momentan nicht hinaus – aber morgen fange ich mit Deltakompression an. Was du da rausholst ist ja enorm …
Zuletzt geändert von Krishty am 30.05.2009, 19:51, insgesamt 1-mal geändert.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Chromanoid
Moderator
Beiträge: 4274
Registriert: 16.10.2002, 19:39
Echter Name: Christian Kulenkampff
Wohnort: Lüneburg

Re: „Index Compression“ – wie effizient?

Beitrag von Chromanoid »

Stimmt hatte ich ganz vergessen :) Aber .kkrieger dürfte den meisten hier zugänglicher sein :)
Antworten