Jammer-Thread
- Schrompf
- Moderator
- Beiträge: 5050
- Registriert: 25.02.2009, 23:44
- Benutzertext: Lernt nur selten dazu
- Echter Name: Thomas
- Wohnort: Dresden
- Kontaktdaten:
Re: Jammer-Thread
Eine Linux-Distro verschimmelt beim Installieren auf einer Nebenpartition meiner letzten rotierenden Platte und reisst so dermaßen das komplette System nieder, dass ich bei jeder beliebigen Festplatte nur noch die GRUB-Notkonsole kriege. Und keine Rettungs-CD der Welt, keinem Linux-Life-Bootstick und auch nicht die Hilfe des Computerbastlershops gegenüber hat noch was irgendwas retten können. Am Ende war's so weit, dass das Partitionstool der Linux-Install-CD gecrasht ist.
Ich bin jetzt schon weit jenseits der Hasserfälle und paddel auf dem See des Inneren Glühens herum. Hier ist alles so friedlich. Die Vöglein zirpen sanft, der Wind säuselt und leise schwappen die Wellchen. Der Gedanke an tausend schreiende Linuxcoder, die mit vergifteten elektrisch geladenen brennenden Patronen erschossen werden, bringt mir nur noch ein leicht verträumtes Lächeln aufs Gesicht. Zwei Tage kein bootbares System. Und das nur für ein sehr sehr kleines, aber sehr lautes Häufchen Gamer, die zur Hälfte aus Klugscheißern bestehen. Ich lass das mit der Elektronik, das wird sich eh nicht durchsetzen, und werde Alpaca-Züchter.
Ich bin jetzt schon weit jenseits der Hasserfälle und paddel auf dem See des Inneren Glühens herum. Hier ist alles so friedlich. Die Vöglein zirpen sanft, der Wind säuselt und leise schwappen die Wellchen. Der Gedanke an tausend schreiende Linuxcoder, die mit vergifteten elektrisch geladenen brennenden Patronen erschossen werden, bringt mir nur noch ein leicht verträumtes Lächeln aufs Gesicht. Zwei Tage kein bootbares System. Und das nur für ein sehr sehr kleines, aber sehr lautes Häufchen Gamer, die zur Hälfte aus Klugscheißern bestehen. Ich lass das mit der Elektronik, das wird sich eh nicht durchsetzen, und werde Alpaca-Züchter.
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
- Schrompf
- Moderator
- Beiträge: 5050
- Registriert: 25.02.2009, 23:44
- Benutzertext: Lernt nur selten dazu
- Echter Name: Thomas
- Wohnort: Dresden
- Kontaktdaten:
Re: Jammer-Thread
Und dann stellt sich heraus, dass es doch ein Opfer des Systemneubaus gibt. Ein Projekt, was zu neu ist, um schon vom Backup erfasst worden zu sein, und gleichzeitig zu eilig in der Anfertigung, so dass es nicht unter Versionskontrolle aufm Server liegt. Mein ZfxAction-Beitrag.
Rotzdrecksmistverdammter.
Rotzdrecksmistverdammter.
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
- Chromanoid
- Moderator
- Beiträge: 4274
- Registriert: 16.10.2002, 19:39
- Echter Name: Christian Kulenkampff
- Wohnort: Lüneburg
Re: Jammer-Thread
Also mir hat in so einem Fall mal http://www.nucleustechnologies.com/data-recovery.html weiter geholfen, wenn Du für einen Backup-Versuch Geld ausgeben kannst/möchtest. http://www.cgsecurity.org/wiki/PhotoRec hatte nicht geholfen, deren Tool aber schon (vielleicht hab ich PhotoRec auch nur falsch bedient).
- Krishty
- Establishment
- Beiträge: 8316
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: Jammer-Thread
Mir hat Boost mit seinen hunderttausend Dateien auch irgendwie das Dateisystem zerschossen (zumindest gibt es jetzt einen unlöschbaren Ordner, an dem ich keine Besitzrechte kriegen kann). StackOverflow sagt, ich solle einfach mal chkdsk drüberlaufen lassen, dann würde das schon wieder. Paranoid wie ich bin, mache ich vorher erstmal Backups von allem anderen auf der Platte. Dauert jetzt schon drei Tage an, in denen der Computer wegen Thrashing quasi unbedienbar ist. Habe drei Minuten gebraucht, um das Tab hier aufzukriegen.
Da lernt man irgendwie, alles an sich vorüberziehen zu lassen. Ich "schicke" diesen Beitrag nicht "ab". Ich setze meinen Gedanken auf ein kleines Blatt, das dann langsam den Fluss hinuntergleitet, bis es bei euch im ZFX-See ankommt.
Da lernt man irgendwie, alles an sich vorüberziehen zu lassen. Ich "schicke" diesen Beitrag nicht "ab". Ich setze meinen Gedanken auf ein kleines Blatt, das dann langsam den Fluss hinuntergleitet, bis es bei euch im ZFX-See ankommt.
-
- Moderator
- Beiträge: 2138
- Registriert: 25.02.2009, 13:37
Re: Jammer-Thread
Ich verstehe nicht. Das Backup dauert drei Tage an oder das CHKDSK? Und wie kann ein Backup das System stallen?Krishty hat geschrieben:Mir hat Boost mit seinen hunderttausend Dateien auch irgendwie das Dateisystem zerschossen (zumindest gibt es jetzt einen unlöschbaren Ordner, an dem ich keine Besitzrechte kriegen kann). StackOverflow sagt, ich solle einfach mal chkdsk drüberlaufen lassen, dann würde das schon wieder. Paranoid wie ich bin, mache ich vorher erstmal Backups von allem anderen auf der Platte. Dauert jetzt schon drei Tage an, in denen der Computer wegen Thrashing quasi unbedienbar ist. Habe drei Minuten gebraucht, um das Tab hier aufzukriegen.
Da lernt man irgendwie, alles an sich vorüberziehen zu lassen. Ich "schicke" diesen Beitrag nicht "ab". Ich setze meinen Gedanken auf ein kleines Blatt, das dann langsam den Fluss hinuntergleitet, bis es bei euch im ZFX-See ankommt.
Semi-Related: Robocopy kopert standardmäßig die "Attribute" der kopierten Dateien mit. Wenn man naiv versucht ein ganzes logisches Laufwerk in einen Ordner zu kopieren, dann lernt man auf die harte Tour das Laufwerke unter Windows Super-Special Ordner sind, die ein Super-Versteckt Flag haben, das man mit dem normalen User Interface nicht zurücksetzen kann und das nicht von "versteckte und Systemdateien anzeigen" betroffen ist. Sehr sehr lustiges Fehlerbild.
Noch weniger related: Naiv glauben, dass man eine USB 3.0 Platte schon am "abwärtskompatiblen" USB 2.0 Port wird betreiben können und dann wundern wieso so simple Operationen wie "umbenennen" jetzt auf einmal 10 Aufforderungen brauchen, bis sie stattfinden um dann festzustellen, dass USB 2.0 maximal 500mA abgeben muss und USB 3.0 maximal 900mA ziehen darf. Die Lösung ist ein "aktiver" Hub, aber "abwärtskompatibel" ist halt einfach gelogen.
-
- Establishment
- Beiträge: 426
- Registriert: 23.01.2013, 15:55
Re: Jammer-Thread
Ich würde prinzipiell immer ein Image des Datenträgers erstellen und nicht die einzelnen Dateien kopieren.
Einige Dateiattribute, Hardlinks, Junction, ... geht sonst alles vor die Hunde.
Ein Problem mit kaputten Dateirechten konnte ich mal erfolgreich von einer Linux-Live-CD beheben.
Einige Dateiattribute, Hardlinks, Junction, ... geht sonst alles vor die Hunde.
Ein Problem mit kaputten Dateirechten konnte ich mal erfolgreich von einer Linux-Live-CD beheben.
- Krishty
- Establishment
- Beiträge: 8316
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: Jammer-Thread
Das Backup. Und um aus 20 GiB 18 zu machen, fahre ich 7-Zip mit 768 MiB Dictionary. Erfordert 5,2 GiB RAM. Ich habe 8. Windows meint, trotzdem alles durch die Auslagerungsdatei schieben zu müssen. Aber jetzt ist es geschafft :)Alexander Kornrumpf hat geschrieben:Ich verstehe nicht. Das Backup dauert drei Tage an oder das CHKDSK? Und wie kann ein Backup das System stallen?
-
- Moderator
- Beiträge: 2138
- Registriert: 25.02.2009, 13:37
Re: Jammer-Thread
Ich vergaß mit wem ich es zu tun habe :)Krishty hat geschrieben:Und um aus 20 GiB 18 zu machen
Re: Jammer-Thread
Hahahaha :D
- Krishty
- Establishment
- Beiträge: 8316
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: Jammer-Thread
Krasser ist, dass das Neupacken von 50 Word-Dokumenten 30 % spart und zwei Tage dauert. Hui, ich brauche wirklich mal einen neuen Rechner.
Re: Jammer-Thread
Windows Patch Day ahead.
Auch diesmal heisst es Hühnerarsch Pass Obacht!
https://support.microsoft.com/en-us/kb/2952664
Auch diesmal heisst es Hühnerarsch Pass Obacht!
https://support.microsoft.com/en-us/kb/2952664
- Krishty
- Establishment
- Beiträge: 8316
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: Jammer-Thread
Danke! Das einzige nicht-Security-Update dieses Mal. Wie subtil :)
Re: Jammer-Thread
Man kann ihnen jedenfalls ganz sicher nicht vorwerfen dass sie nicht alles tun würden ihre Win 7 User von Windows 10 zu überzeugen ^^
- Krishty
- Establishment
- Beiträge: 8316
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: Jammer-Thread
Krass. Wenn man seine Programme mit MinGW kompiliert, dann binden die als Run-Time Library nicht ihre eigene Runtime ein, oder die Visual-C++-Runtime, oder die libC ... sondern die MSVCRT.DLL, die im WINDOWS\SYSTEM32-Verzeichnis liegt.
Raymond Chen hat mal geschrieben, warum das haarsträubend falsch ist. Hauptgrund: Das ist die Runtime von Visual C++ 4.2 von 1996.
Aber die MinGW-Leute sind doch nicht blöd! Die können halt keine eigene Runtime schreiben, weil dann kein "Min" mehr in "MinGW" wäre. Und sie können auch keine Visual-C++-CRT referenzieren, weil das eine Verletzung der GPL wäre!
Raymond Chen hat mal geschrieben, warum das haarsträubend falsch ist. Hauptgrund: Das ist die Runtime von Visual C++ 4.2 von 1996.
Aber die MinGW-Leute sind doch nicht blöd! Die können halt keine eigene Runtime schreiben, weil dann kein "Min" mehr in "MinGW" wäre. Und sie können auch keine Visual-C++-CRT referenzieren, weil das eine Verletzung der GPL wäre!
Warum ich das jetzt alles weiß? Weil jemand ein Programm mit MinGW kompiliert hat, und das funktioniert auf dem Rechner meiner Mutter nicht. Aber auf allen Systemen in meinem Haushalt schon. Warum? Weil es direkt MSVCRT.DLL referenziert, und die scheinbar sogar zwischen einzelnen Windows 7 x64-Systemen unterschiedlich ist. Fein gemacht!Raymond Chen hat geschrieben:Ah, the "There is no acceptable way for me to do what I want, so I'm FORCED to do it in an unacceptable manner" argument. This is like "I was forced to park in a fire lane because there were no parking spaces left."
Re: Jammer-Thread
WTF WORDPRESS? Die haben es echt geschafft den Image Tag unbrauchbar zu machen. Es gibt keine Möglichkeit mehr ein verlinktes Bild in der Grösse anzupassen. Ausser über html.
Wird wohl Zeit dass ich den Krempel los werde -.-
Wird wohl Zeit dass ich den Krempel los werde -.-
- Krishty
- Establishment
- Beiträge: 8316
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: Jammer-Thread
Ein Jahr später: Firefox ist zu langsam zum Abspielen von YouTube, bis OpenBSD Spin-Locks durch Mutexe ersetzt, weil der Browser wohl die meiste Zeit mit malloc(3) verbringt.CodingCat hat geschrieben:Be careful when using std::string25.000 Allokation für Eingabe eines Buchstabens in Chromes Adresszeile. Unvorstellbar wie die zustandekommen, selbst wenn überall Strings kopiert werden.TL;DR: std::string is responsible for almost half of all allocations in the Chrome browser process; please be careful how you use it!
In the course of optimizing SyzyASan performance, the Syzygy team discovered that nearly 25000 (!!) allocations are made for every keystroke in the Omnibox. We've since built some rudimentary memory profiling tools and have found a few issues: [...]
Damit muss selbst Chrome ein gigantisches Fraktal von miserabelster Software sein. Und die Kommentare im Thread nehmen einem jeden Glauben an Softwareentwicklung. :-/
The locking to make malloc(3) thread-safe is a bit...suboptimal. This diff makes things better by using a mutex instead of spinlock.
I have applied your patch and noticed a big improvement with Youtube videos and if I am not mistaken, content heavy websites like news sites seem to load faster and more smoothly too.
Applied to a Jan 15h snapshot sources. Youtube is not fully 'watchable' on firefox but feels significantly better. I can also now watch full screen youtube videos on chromium 1920x1080 with no stutter
-
- Establishment
- Beiträge: 492
- Registriert: 01.03.2009, 19:09
Re: Jammer-Thread
F**k
Grafikkarte abgeraucht und das komplett ohne Vorwarnung :(
Grafikkarte abgeraucht und das komplett ohne Vorwarnung :(
Bevor man den Kopf schüttelt, sollte man sich vergewissern einen zu haben
- Schrompf
- Moderator
- Beiträge: 5050
- Registriert: 25.02.2009, 23:44
- Benutzertext: Lernt nur selten dazu
- Echter Name: Thomas
- Wohnort: Dresden
- Kontaktdaten:
Re: Jammer-Thread
Aua, das schmerzt.
Mein Jammer-Grund: Ich habe mich soeben wieder festanstellen lassen und werde mein Gewerbe killen bzw. auf Eis legen, um die nachkommenden Kleinigkeiten noch abrechnen zu können. Klingt eigentlich wie Luxusjammern, immerhin machen sicher 99% der Menschheit irgendwas, nur um Geld zu verdienen. Aber für mich fühlt es sich gerade an, als würde ich mein Leben und alle damit verbundenen Träume im Klo herunterspülen. Es ist zum Kotzen.
Klar, ich könnte mir noch in die Tasche lügen, dass ich das irgendwie in der Freizeit weiterbetreibe. Aber ich weiß ja, dass das Quatsch ist. Vor allem dann mit Kind.
Mein Jammer-Grund: Ich habe mich soeben wieder festanstellen lassen und werde mein Gewerbe killen bzw. auf Eis legen, um die nachkommenden Kleinigkeiten noch abrechnen zu können. Klingt eigentlich wie Luxusjammern, immerhin machen sicher 99% der Menschheit irgendwas, nur um Geld zu verdienen. Aber für mich fühlt es sich gerade an, als würde ich mein Leben und alle damit verbundenen Träume im Klo herunterspülen. Es ist zum Kotzen.
Klar, ich könnte mir noch in die Tasche lügen, dass ich das irgendwie in der Freizeit weiterbetreibe. Aber ich weiß ja, dass das Quatsch ist. Vor allem dann mit Kind.
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
- Krishty
- Establishment
- Beiträge: 8316
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: Jammer-Thread
Die ersten 20 Jahre lebt man vom Staat; dann 50 Jahre ackern; die letzten 30 Jahre wieder vom Staat. Das ist normal. Also sieh es positiv:
Wenn du 2060 in Rente bist, kannst du wieder in Ruhe deine Spiele entwickeln. Da du heute noch garnicht ermessen kannst, wie Computerentwicklung dann überhaupt aussehen könnte (oder konnte 1960 jemand Unity vorhersagen?) wird es wieder genau so prickeln und kitzeln wie die ersten Zeilen als Teenager. Und die von uns, die dann noch leben, werden dich wieder für deine Schöpfung preisen.
Bis dahin ist dann auch mein Weltensimulator fertig und eXile hat seine Antialiasing-Arbeiten gepostet und kimmi hat den ZFXCE-Engine-Prototypen laufen :)
Emotional anspruchsvoll ist dann nur der Teil um 2035 herum, wenn dein Sohnemann chillig zu Hause Zombie-Spiele entwickelt während du die Hypothek abstotterst. Flüster dann einfach immer wieder in dich hinein: „Nur noch 25 Jahre; nur noch 25 Jahre; nur noch 25 Jahre; …“ ;)
Wenn du 2060 in Rente bist, kannst du wieder in Ruhe deine Spiele entwickeln. Da du heute noch garnicht ermessen kannst, wie Computerentwicklung dann überhaupt aussehen könnte (oder konnte 1960 jemand Unity vorhersagen?) wird es wieder genau so prickeln und kitzeln wie die ersten Zeilen als Teenager. Und die von uns, die dann noch leben, werden dich wieder für deine Schöpfung preisen.
Bis dahin ist dann auch mein Weltensimulator fertig und eXile hat seine Antialiasing-Arbeiten gepostet und kimmi hat den ZFXCE-Engine-Prototypen laufen :)
Emotional anspruchsvoll ist dann nur der Teil um 2035 herum, wenn dein Sohnemann chillig zu Hause Zombie-Spiele entwickelt während du die Hypothek abstotterst. Flüster dann einfach immer wieder in dich hinein: „Nur noch 25 Jahre; nur noch 25 Jahre; nur noch 25 Jahre; …“ ;)
Re: Jammer-Thread
Du hast StoneQuest vergessen! Oder glaubst du etwa nicht mehr an mich? :oKrishty hat geschrieben:Bis dahin ist dann auch mein Weltensimulator fertig und eXile hat seine Antialiasing-Arbeiten gepostet und kimmi hat den ZFXCE-Engine-Prototypen laufen :)
- Krishty
- Establishment
- Beiträge: 8316
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: Jammer-Thread
Von dir gibt’s zu häufig Neuigkeiten, da stellt sich kein "ACH DAS GAB'S JA AUCH NOCH"-Effekt beim Leser ein :-*
- B.G.Michi
- Establishment
- Beiträge: 163
- Registriert: 07.03.2006, 20:38
- Alter Benutzername: B.G.Michi
- Kontaktdaten:
Re: Jammer-Thread
(vielleicht) letzte Klausur T - 3h: Theoretische Festkörperphysik...
- Schrompf
- Moderator
- Beiträge: 5050
- Registriert: 25.02.2009, 23:44
- Benutzertext: Lernt nur selten dazu
- Echter Name: Thomas
- Wohnort: Dresden
- Kontaktdaten:
Re: Jammer-Thread
So richtig Jammern ist es eigentlich nicht, aber bemerkenswert: da fragte ein Typ im Steam-Forum nach Support, weil Splatter nicht startete. Und als ich wie immer nach dem Log fragte, um dem Problem auf den Grund zu gehen, stellte sich heraus: der hat das Spiel von ner Warez-Seite. Er hat nämlich artig das erwünschte Log geliefert, und darin steht hier und da der absolute Pfad der Exe drin. Der lautete in dem Fall nicht "../Splatter/...", sondern ".../fas-spl4/...". Eine schnelle Google-Suche bestätigte dann den Verdacht.
Nuja, ist ja inzwischen die dritte oder vierte Version, die auf Warez- und Torrent-Seiten kreiselt. Sollen sie machen, solange sie halt meine Zeit nicht verschwenden.
Nuja, ist ja inzwischen die dritte oder vierte Version, die auf Warez- und Torrent-Seiten kreiselt. Sollen sie machen, solange sie halt meine Zeit nicht verschwenden.
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
- Krishty
- Establishment
- Beiträge: 8316
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: Jammer-Thread
Unser Vertriebler nutzt diese Möglichkeit ja immer, die Leute dezent darauf hinzuweisen, dass wir die Sache vergessen wenn sie sofort eine anständige Lizenz kaufen.
So sehr ich auch sonst pro Warez bin – wer dann den Support kontaktiert, muss so blöd sein, dass er dafür bestraft gehört.
So sehr ich auch sonst pro Warez bin – wer dann den Support kontaktiert, muss so blöd sein, dass er dafür bestraft gehört.
- Schrompf
- Moderator
- Beiträge: 5050
- Registriert: 25.02.2009, 23:44
- Benutzertext: Lernt nur selten dazu
- Echter Name: Thomas
- Wohnort: Dresden
- Kontaktdaten:
Re: Jammer-Thread
Naja, die Angelegenheit ist doch komplizierter als gedacht. Der Mensch schwört Stein und Bein, dass er das Spiel gekauft hätte, und produziert auch die Nur-Text-Kopie einer Rechnung, die von Zahlen und Daten her hinkommen könnte. Und da er nicht der Einzige ist, bei dem das Spiel seit dem letzten Patch nicht mehr startet, wuchs in mir ein leiser Verdacht. Evtl. startet das Spiel gar nicht mehr, weil irgendne Dependency reingeraten ist, die es auf manchen System nicht gibt. Das würde dann dazu führen, dass die Exe nie so weit kommt, überhaupt ein Log zu produzieren.
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
- Krishty
- Establishment
- Beiträge: 8316
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: Jammer-Thread
Typisierung der D3D11-Ressourcen.
In D3D11 hat ja jede Ressource ein Format, das als Typ fungiert. Der Gedanke dahinter ist:
Schluck.
Die WPF ist Direct3D 9. Obwohl 11er-Kompatibilität mit 4700 Votes das meistgeforderte Feature ist. Man kann nur interagieren, indem man eine 11er-Textur mit 9 teilt.
Dafür gelten strenge Regeln. U.a. die Typisierungsregel. Und hier berührt der Köttel den Ventilator, denn D3D 9 hat keine sRGB-Formate (man aktiviert stattdessen den sRGB-Render-State, wenn man in den Back Buffer zeichnet). Eine Textur, in die man via D3D 11 schreibt und aus der man via D3D 9 liest, darf also kein sRGB-Format haben.
Nagut. Also legen wir die Dummy-Textur als _UNORM ohne sRGB an. Die ist dann völlig kompatibel zu D3D 9. Jetzt kopieren wir die _UNORM_SRGB-Daten aus dem 11er Render Target da rein (CopySubresourceRegion() kann das, weil die Formate kompatibel sind).
Und das geht genau so lange gut bis … Multisampling ins Spiel kommt. Die Texturen dürfen logischerweise nicht multisamplet sein. Aber das Auflösen kann nur mit genau identischen Formaten geschehen. Also noch eine Indirektion dazwischen. Am Ende sieht das Konstrukt so aus:
Render Target (11 + sRGB + Multisampling) → Puffer (11 + sRGB) → Puffer (11) → WPF-kompatible Textur (9) → WPF-Surface → WDDM (hält eine Kopie des Fensters) → Back Buffer (nach Compositing) → Bildschirm
Die D3D-9-kompatible Textur ist – das muss man lobend erwähnen – nur eine weitere Referenz auf die 11er-Textur. Trotzdem sind jetzt sechs Kopien meines Renderings im VRAM. Falls sich jemand wundert, warum man heutzutage ein Gigabyte davon braucht.
Der Vollständigkeit halber die Alternativen, die ich verworfen habe:
In D3D11 hat ja jede Ressource ein Format, das als Typ fungiert. Der Gedanke dahinter ist:
- Man weiß nicht, wie die Grafikkarte eine Textur speichert. Vielleicht R getrennt von G und B?
- Wenn man das nicht weiß, ist es nicht möglich, eine float-Textur in eine int-Textur zu kopieren. Das braucht man aber manchmal! (Einleuchtend bei DXT-Kompression in Hardware und einigen Compute Shadern; subtil bei sRGB-Herumreicherei.)
- Also führt man _TYPELESS-Formate ein: Dann steht einem frei, ob man die Textur als int oder float oder sonstwas nutzt. Man muss aber zumindest die Anzahl und Größe der Kanäle angeben, damit die GPU die intern immernoch speichern kann, wie sie will.
- Damit man nicht alles _TYPELESS macht, erlaubt D3D11 das Kopieren kompatibler Formate, also Formate mit selben Farbkanälen und Bit-Tiefe, aber unterschiedlichen Typen.
Schluck.
Die WPF ist Direct3D 9. Obwohl 11er-Kompatibilität mit 4700 Votes das meistgeforderte Feature ist. Man kann nur interagieren, indem man eine 11er-Textur mit 9 teilt.
Dafür gelten strenge Regeln. U.a. die Typisierungsregel. Und hier berührt der Köttel den Ventilator, denn D3D 9 hat keine sRGB-Formate (man aktiviert stattdessen den sRGB-Render-State, wenn man in den Back Buffer zeichnet). Eine Textur, in die man via D3D 11 schreibt und aus der man via D3D 9 liest, darf also kein sRGB-Format haben.
Nagut. Also legen wir die Dummy-Textur als _UNORM ohne sRGB an. Die ist dann völlig kompatibel zu D3D 9. Jetzt kopieren wir die _UNORM_SRGB-Daten aus dem 11er Render Target da rein (CopySubresourceRegion() kann das, weil die Formate kompatibel sind).
Und das geht genau so lange gut bis … Multisampling ins Spiel kommt. Die Texturen dürfen logischerweise nicht multisamplet sein. Aber das Auflösen kann nur mit genau identischen Formaten geschehen. Also noch eine Indirektion dazwischen. Am Ende sieht das Konstrukt so aus:
Render Target (11 + sRGB + Multisampling) → Puffer (11 + sRGB) → Puffer (11) → WPF-kompatible Textur (9) → WPF-Surface → WDDM (hält eine Kopie des Fensters) → Back Buffer (nach Compositing) → Bildschirm
Die D3D-9-kompatible Textur ist – das muss man lobend erwähnen – nur eine weitere Referenz auf die 11er-Textur. Trotzdem sind jetzt sechs Kopien meines Renderings im VRAM. Falls sich jemand wundert, warum man heutzutage ein Gigabyte davon braucht.
Der Vollständigkeit halber die Alternativen, die ich verworfen habe:
- Multisampling ohne sRGB auflösen: Bullshit. Multisampling ohne sRGB-Korrektur ist so prägnant wie ein Furz unter der Dusche.
- sRGB selber im Shader machen; Texturen ohne sRGB: Dann ist das Alpha Blending nicht sRGB-Korrekt. Viel Spaß, den Fehler zu finden, wenn die Partikel scheiße aussehen.
- Viele Webseiten und Tutorials erwähnen, dass man UNORM_SRGB mit Direct3D 9 nutzen könnte. Ich weiß nicht, wie die darauf kommen – das kracht bei mir. Überhaupt funktioniert keines dieser Tutorials auf meinem Rechner, weil sie alle die Formate durcheinanderschmeißen. Vielleicht ging das vor dem letzten WDDM-Update.
Re: Jammer-Thread
Es ist wieder Windows Update. Und schon wieder bekomm ich als Win 7 User den Win 10 Mist als wichtiges Update untergeschoben -.-
https://support.microsoft.com/de-de/kb/3123862
Das Update hinzugefügt einige Computer, die Benutzer leicht erfahren Sie mehr über Windows 10 oder starten Sie eine Aktualisierung auf Windows 10 Funktionen. Bevor Sie dieses Update installieren, finden Sie im Abschnitt Voraussetzungen. Weitere Informationen zu Windows 10 finden Sie hier.
https://support.microsoft.com/en-us/kb/2952664
Compatibility update for upgrading Windows 7
Introduction
This update helps Microsoft make improvements to the current operating system in order to ease the upgrade experience to the latest version of Windows.
Und das Ding sieht mir auch nicht ganz koscher aus:
http://support.microsoft.com/kb/3135445
https://support.microsoft.com/de-de/kb/3123862
Das Update hinzugefügt einige Computer, die Benutzer leicht erfahren Sie mehr über Windows 10 oder starten Sie eine Aktualisierung auf Windows 10 Funktionen. Bevor Sie dieses Update installieren, finden Sie im Abschnitt Voraussetzungen. Weitere Informationen zu Windows 10 finden Sie hier.
https://support.microsoft.com/en-us/kb/2952664
Compatibility update for upgrading Windows 7
Introduction
This update helps Microsoft make improvements to the current operating system in order to ease the upgrade experience to the latest version of Windows.
Und das Ding sieht mir auch nicht ganz koscher aus:
http://support.microsoft.com/kb/3135445
- Krishty
- Establishment
- Beiträge: 8316
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: Jammer-Thread
Danke! Hat mir wieder meinen Hintern gerettet … :)
————
vector.push_back({x, y, z});
erzeugt doppelt so viele Befehle wie das eigentlich unsinnige
vector.emplace_back(Vertex{x, y, z});
Alle fünf Jahre krieche ich aus meinen C-Loch, probiere das neueste Visual C++ mit irgendwelchen neuen Features, schaue ins Disassembly, und krieche schnell wieder ins C-Loch zurück.
————
vector.push_back({x, y, z});
erzeugt doppelt so viele Befehle wie das eigentlich unsinnige
vector.emplace_back(Vertex{x, y, z});
Alle fünf Jahre krieche ich aus meinen C-Loch, probiere das neueste Visual C++ mit irgendwelchen neuen Features, schaue ins Disassembly, und krieche schnell wieder ins C-Loch zurück.
Re: Jammer-Thread
Mit Qt5 kann man anscheinend keine OpenGL Function Loader mehr in der selben Datei wie ein QGlWidget benutzen. Nun ist aber mein Framework ein relativ flaches, das OpenGL nicht komplett wegkapselt und halt leider auch in den Header OpenGL Funktionen nach außen exportiert. Sprich ich muss jetzt meine Anwendungen umschreiben und zusätzliche Klassen einfügen damit nicht in einer Datei meine eigenen und die Qt Header von OpenGL eingebunden werden.
C++ ist einfach nur so kaputt. Scheiß Header.
C++ ist einfach nur so kaputt. Scheiß Header.
Lieber dumm fragen, als dumm bleiben!
https://jonathank.de/games/
https://jonathank.de/games/