Jammer-Thread

Hier kann über allgemeine Themen diskutiert werden, die sonst in kein Forum passen.
Insbesondere über Szene, Games, Kultur, Weltgeschehen, Persönliches, Recht, Hard- und Software.
Benutzeravatar
Schrompf
Moderator
Beiträge: 4884
Registriert: 25.02.2009, 23:44
Benutzertext: Lernt nur selten dazu
Echter Name: Thomas Ziegenhagen
Wohnort: Dresden
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Schrompf »

Ich kann mir vorstellen, dass das frustrierend ist. Aber wenn Du es nicht meldest, wird es nie behoben. Ich glaube, Du musst Dir mehr als ein Problem gleichzeitig zulegen, damit Du solange an was anderem weiterarbeiten kannst.
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
Benutzeravatar
Schrompf
Moderator
Beiträge: 4884
Registriert: 25.02.2009, 23:44
Benutzertext: Lernt nur selten dazu
Echter Name: Thomas Ziegenhagen
Wohnort: Dresden
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Schrompf »

Das kann doch wohl nicht wahr sein! Wenn ich meine ATI Radeon HD 4870 frage, wieviele Vertex-Konstantenregister sie hat, damit ich möglichst große Skelette mit Hardware-Skinning verarbeiten kann, sagt diese mir.... 256! Nicht etwa 64k, wie sie hat, oder wenigstens die 4k, die in einen einzelnen Constant Buffer passen. Nein, 256. Und der Shadercompiler scheitert auch brav, wenn man mehr Register zu benutzen versucht. Wozu wurde da extra ein Feld in den DX9-Caps eingerichtet, wenn da eh nur Scheiß drinsteht? Und wie soll ich jetzt ein vernünftiges Hardware Skinning hinbekommen, dass notfalls auf Software Skinning zurückschaltet, wenn die Graka nicht soviele Bones im Kopf behalten kann, aber auch NUR dann?
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
Jörg
Establishment
Beiträge: 296
Registriert: 03.12.2005, 13:06
Wohnort: Trondheim
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Jörg »

Es gibt doch noch Alternativen zu Konstanten unter DX9 und SM3....und meine mobile ATI der 4000er Generation sagt: 8192.
Benutzeravatar
Schrompf
Moderator
Beiträge: 4884
Registriert: 25.02.2009, 23:44
Benutzertext: Lernt nur selten dazu
Echter Name: Thomas Ziegenhagen
Wohnort: Dresden
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Schrompf »

Was sind denn die Alternativen? Meinst Du StreamOut oder sowas? Oder eine alternative Methode, die Anzahl verfügbarer VertexShader-Konstantenregister zu ermitteln?
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
Jörg
Establishment
Beiträge: 296
Registriert: 03.12.2005, 13:06
Wohnort: Trondheim
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Jörg »

Korrigiere: Wenn man versehentlich auf REF klickt, sind es 8192 :)

Vertex-Texture-Fetch waere eine Alternative.
Benutzeravatar
Krishty
Establishment
Beiträge: 8268
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Das DirectX Texture Tool, das dem SDK beiliegt, konvertiert R32G32B32A32_FLOAT-Texturen zu R8G8B8A8_UNORM und wieder zurück zu R32G32B32A32_FLOAT, wenn man „Open onto this surface“ oder „Open onto alpha channel of this surface“ benutzt. Ohne einen darauf hinzuweisen. Sorgt für viel Unterhaltung, wenn man mutmaßliche Fehler in seinen HDR-Anwendungen sucht.

Ist aber teils auch meine Schuld – ich hätte skeptisch werden sollen, als sich meine 8-MiB-HDR-Textur plötzlich auf 250 KiB statt 4 MiB komprimieren ließ.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Schrompf
Moderator
Beiträge: 4884
Registriert: 25.02.2009, 23:44
Benutzertext: Lernt nur selten dazu
Echter Name: Thomas Ziegenhagen
Wohnort: Dresden
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Schrompf »

Nachtrag zu meinem Gejammer: sehr viele Grafikkarten lügen in den DX9-Caps über ihre Konstantenregister. Ich habe daher jetzt in Assimp einen neuen Meshfilter eingebaut, der Meshes mit zu vielen Bones in mehrere Teilmeshes aufspaltet. Kostet dann zwar zusätzliche DrawCalls, aber ist immernoch Meilen schneller als Software Skinning und funktioniert auch mit Shadermodell 2.
Früher mal Dreamworlds. Früher mal Open Asset Import Library. Heutzutage nur noch so rumwursteln.
Benutzeravatar
Krishty
Establishment
Beiträge: 8268
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Ich habe schon wieder einen catch-Block in meinem Release-Build gefunden, bei dessen Betreten sich die Adressen der Funktionsparameter verschieben. Wieder verschwindet das Problem, wenn man /Og deaktiviert.

Damit sind die globalen Optimierungen in Visual C++ 2010 schlicht und einfach untauglich zur Benutzung mit Exceptions. Die einzige Möglichkeit, die beiden zu kombinieren, ist, jeden catch-Block, den man irgendwo hat, einmal auszulösen und zu gucken, ob sich die Funktionsparameter ändern. Falls ja, müssen #pragma optimize("g", off) und #pragma optimize("", on) um die Funktion. Falls nicht, muss man am nächsten Tag wieder testen, weil die Optimierung eben global ist und sich der Bug mit jeder Änderung irgendwo sonst im Programm ändert. #pragma optimize funktioniert überdies nicht für Templates; wenn man also Templates mit catch-Blöcken hat, kann man gleich alle Optimierungen abschalten und quasi den Debug-Build ausliefern.

Ich werde nochmal versuchen, den Fehler zu reproduzieren … aber da ich schon letztes Mal keinen Erfolg hatte, mache ich mir keine allzu großen Hoffnungen. Hoffentlich kommt bald das Service Pack 1 mit überarbeitetem /Og.

Achja – ihr könntet mir helfen, indem ihr dieses Ticket pusht … danke.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Krishty
Establishment
Beiträge: 8268
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Toll. Wenn ATI mit jedem Catalyst neue Videoeffekte beipackt soll mir das am Popo vorbeigehen, aber sie sollen sie gefälligst abgeschaltet lassen! Die Nachtaufnahmen in allen meinen Videos sahen aus wie auf NTSC 1982, bis ich endlich die Checkbox für dynamischen Kontrast im CCC gefunden hatte … Flesh Tone Correction und den ganzen restlichen Müll habe ich dann auch gleich rausgehauen. Ich gucke mir doch nicht Full-HD auf einem kalibrierten Monitor an, damit der Treiber das Bild nochmal in den Mixer schmeißt bis es aussieht wie die RTL2-Proletenparade auf Ausstellungsstücken in großen Elektronikmärkten …

… und irgendwas hat ATI mit den Lookup-Tables verkackt. Seit dem letzten Catalyst-Update springt das Bild jedes Mal drei cm nach rechts und wieder zurück, wenn an den Farbeinstellungen geschraubt wird – beim stündlichen Update der Kalibrierungseinstellungen ist es vernachlässigbar nervig, aber da das Ein- und Ausblenden beim An- und Abmelden in Windows offenbar auch per LUT statt per Shader-Effekt realisiert ist, kriege ich da immer fast einen Epileptischen …
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Sternmull
Establishment
Beiträge: 264
Registriert: 27.04.2007, 00:30
Echter Name: Til
Wohnort: Dresden

Re: Jammer-Thread

Beitrag von Sternmull »

Du kannst doch nicht erwarten das vor der Auslieferung mal einer den Treiber auf einem Testsystem installiert, sich dort anmeldet und womöglich noch dabei hinguckt! :)
Benutzeravatar
eXile
Establishment
Beiträge: 1136
Registriert: 28.02.2009, 13:27

Re: Jammer-Thread

Beitrag von eXile »

Krishty hat geschrieben:bis ich endlich die Checkbox für dynamischen Kontrast im CCC gefunden hatte … Flesh Tone Correction und den ganzen restlichen Müll habe ich dann auch gleich rausgehauen. Ich gucke mir doch nicht Full-HD auf einem kalibrierten Monitor an, damit der Treiber das Bild nochmal in den Mixer schmeißt bis es aussieht wie die RTL2-Proletenparade auf Ausstellungsstücken in großen Elektronikmärkten …
Hätte ich dir vor nem halben Jahr sagen können, da stand ich genau vor dem gleichen Problem ("Warum zum Teufel ist das Schwarz nicht schwarz?!"). Notiz an selbst: Häufiger solche Dinge im Jammer-Thread posten ;)
Krishty hat geschrieben:beim stündlichen Update der Kalibrierungseinstellungen ist es vernachlässigbar nervig
Magst du uns mal deine Hardware beschreiben? Hast du so ein Teil, was man sich auf den Bildschirm klebt, damit der sich anhand der Umgebungsbeleuchtung kalibrieren kann?
Benutzeravatar
Krishty
Establishment
Beiträge: 8268
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

eXile hat geschrieben:Hätte ich dir vor nem halben Jahr sagen können, da stand ich genau vor dem gleichen Problem ("Warum zum Teufel ist das Schwarz nicht schwarz?!").
Schlimmer! Bei mir war nicht nur das Schwarz nicht mehr schwarz, sondern alle Farben waren grau, sobald eine bestimmte Maximalhelligkeit unterschritten wurde … Zombieland, ohne Dynamic Contrast:
wo.png
… und mit:
w.png
Toll gemacht, AMD.
eXile hat geschrieben:Magst du uns mal deine Hardware beschreiben? Hast du so ein Teil, was man sich auf den Bildschirm klebt, damit der sich anhand der Umgebungsbeleuchtung kalibrieren kann?
Ja, so in etwa. Ich klebe es alle paar Wochen mal auf den Bildschirm um zu kalibrieren, sonst ist es ab weil sich das Umgebungslicht eh nie ändert. Einmal pro Stunde wird die LUT aktualisiert. (Werkseinstellung war alle zwei Minuten, aber das ist einfach nicht erträglich.)
GPU ist eine HD 5770. Bis zum November-Catalyst waren LUT-Updates nicht bemerkbar, jetzt sind es Bildsprünge um drei cm nach rechts und eine Zehntelsekunde später wieder zurück nach links.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
The_Real_Black
Establishment
Beiträge: 110
Registriert: 19.01.2008, 19:57
Benutzertext: Happy Coding
Kontaktdaten:

Re: Jammer-Thread

Beitrag von The_Real_Black »

"Notiz an selbst: Häufiger solche Dinge im Jammer-Thread posten"
ist eine Idee...

Immer noch habe ich in keinen Forum eine Antwort bekommen wieso man in der neuen EmguCV Version nicht mehr die Kameras kalibieren kann ohne, dass es zu Exceptions kommt. Tya jetzt kann ich mich zwischen Pest und Cholera entscheiden, entweder ich nehme die alte Version mit Speicherzugriffsverletzungsexceptions oder die neue in denen ich mir über Tage erst alles zusammenklauben muss bis ich selbst die Kameras kalibieren kann.
Oder ich mache einen "Hack" und verwende fürs Kalibieren die alte Version der DLL und für den Rest die neue Version...

Wie mans macht ist es immer nicht sauber...
Happy Coding.
Benutzeravatar
Krishty
Establishment
Beiträge: 8268
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Allmählich dämmert mir, was da geschieht: Dynamic Contrast ist nichts anderes als ein triviales Histogramm, das die Helligkeitsverteilung aller Farbkanäle auf den Mittelwert anhebt. Dass dabei alle Farbwirkung verloren geht, ist klar … Lost in Translation, ohne und mit:
wo.png
w.png
Sind die Farbunterschiede geringer, ist auch die Änderung ein bisschen weniger hässlich … Die Ermordung des Jesse James durch den Feigling Robert Ford, ohne und mit:
jjwo.png
jjw.png
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
eXile
Establishment
Beiträge: 1136
Registriert: 28.02.2009, 13:27

Re: Jammer-Thread

Beitrag von eXile »

Dynamic Contrast ist nichts anderes als ein triviales Histogramm, das die Helligkeitsverteilung aller Farbkanäle auf den Mittelwert anhebt.
m(. Meinem geschulten Computergraphikerauge ist eher sofort das hier aufgefallen:

Bild

Bug? Fehler in der Matrix? Relexion des Sternenlichtes der Plejaden am Metallbügel der Kopfstütze? Oder ergibt das sogar Sinn im Film?
Zuletzt geändert von eXile am 11.04.2012, 17:30, insgesamt 1-mal geändert.
Benutzeravatar
Krishty
Establishment
Beiträge: 8268
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Reflexion der Blue Box am Metallbügel der Kopfstütze :) Ist lustig – wenn man genau hinschaut, sieht man in einigen Szenen die Nähte vom Einfügen der CGI.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Krishty
Establishment
Beiträge: 8268
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Schade, dass D3D11_SUBRESOURCE_DATA::SysMemPitch eine UINT ist, und keine size_t – ich habe nämlich bei meinen Texturen den Koordinatenursprung nach links unten verlegt und muss sie beim GPU-Download immer spiegeln … auf 32-Bit-Systemen klappt das indem ich SysMemPitch negiere und als Basisadresse die letzte Zeile übergebe; auf 64-Bit-Systemen sorgt das unelegant für einen Absturz, weil nur die unteren 32 Bits überlaufen.

Ich glaube aber eh nicht, dass der Parameter für so etwas ausgelegt wurde …
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Krishty
Establishment
Beiträge: 8268
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Warum sind in DXGI nur RGBA-Formate sRGB, und nicht R-Formate? Darf ich nun tatsächlich jedes Mal, wenn ich eine einkanalige Textur lade, die Gammakorrektur im Shader vornehmen? Toll
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
klickverbot
Establishment
Beiträge: 191
Registriert: 01.03.2009, 19:22
Echter Name: David N.

Re: Jammer-Thread

Beitrag von klickverbot »

SDL-Surfaces unter Mac OS X – je nach dem, ob man im Fullscreen- oder Windowed-Mode arbeitet, eine anderes Layout der Farbkanäle im Speicher? WTF?
Benutzeravatar
Krishty
Establishment
Beiträge: 8268
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Welcher Vollpfosten hat sich ausgedacht, dass signed / unsigned wieder unsigned ergibt?! -12345678 / 65536u == 46697, klar, und ich suche die ganze Zeit den Fehler in meinem Random Number Generator …
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
eXile
Establishment
Beiträge: 1136
Registriert: 28.02.2009, 13:27

Re: Jammer-Thread

Beitrag von eXile »

Krishty hat geschrieben:Random Number Generator …
Schnelle Frage: Kryptographische Anforderungen vorhanden oder nicht? In ersteren Falle blüht dir ein ganzer Strauß von neuen Problemen …
Benutzeravatar
Krishty
Establishment
Beiträge: 8268
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Nee, das zum Glück nicht. Für den 1÷f²-Noise in meiner Augenflüssigkeit sollte die TT800-Version des Mersenne-Twisters, die ich auf Wikipedia ergattert habe, genügen.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
BeRsErKeR
Establishment
Beiträge: 689
Registriert: 27.04.2002, 22:01

Re: Jammer-Thread

Beitrag von BeRsErKeR »

Warum glaubt die Menschheit immer noch an so unlogische Konzepte wie Zeit? :)
Ohne Input kein Output.
Benutzeravatar
Krishty
Establishment
Beiträge: 8268
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Warum glaubt sie überhaupt

Achja, ein Core i7 ist auch nicht das Wahre. Kaum optimiert man 8 GiB Daten indem man 30 Kompressionsalgorithmen in sechs Threads brute-force drüberjagt, beginnt das System beim Tippen zu haken …
Zuletzt geändert von Krishty am 28.12.2010, 01:29, insgesamt 1-mal geändert.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
BeRsErKeR
Establishment
Beiträge: 689
Registriert: 27.04.2002, 22:01

Re: Jammer-Thread

Beitrag von BeRsErKeR »

Warum glauben wir dass sie glaubt?
Ohne Input kein Output.
joggel

Re: Jammer-Thread

Beitrag von joggel »

Wir glauben alle, was anderes können wir nicht!
Was am nähesten an die Realität herankommt, ist das Gefühl!

[Edit]
Ups... vergessen zu Jammern....
Mich nervt es, das OpenGL so Anti-OOP ist.
Um damit angenehm zu arbeiten, sollte man sich eigentlich ein schönes Framework drumherum basteln!
Aber ich weiß auch nicht, wie das bei DX ist... von daher ;)
[/Edit]
Zuletzt geändert von joggel am 28.12.2010, 11:14, insgesamt 2-mal geändert.
Benutzeravatar
Krishty
Establishment
Beiträge: 8268
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Ihr jammert nicht
Bild
Verdammt nochmal; bin ich hier die einzige Person, der Regeln noch irgendwas bedeuten?!
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
BeRsErKeR
Establishment
Beiträge: 689
Registriert: 27.04.2002, 22:01

Re: Jammer-Thread

Beitrag von BeRsErKeR »

Manno ich hasse es abgeknallt zu werden! Besser?
Ohne Input kein Output.
Benutzeravatar
eXile
Establishment
Beiträge: 1136
Registriert: 28.02.2009, 13:27

Re: Jammer-Thread

Beitrag von eXile »

Naja, diesmal habe ich etwas zu jammern, und das geht -- zum ersten Mal -- spezifisch an dich, Krishty: Der Vorschlag mit der Ionenkanone (wir wissen, wovon wir reden), ist ja wohl ein Griff ins Klo. Einerseits schießt man damit den Computer irgendeiner Hausfrau ab, die z.B. gerade ihren Internet Explorer seit fünf Jahren nicht gepatcht hat. Andererseits ist das doch eher Ausdruck eines mittelalterlichen Rechtempfindens, zu dem ich hier ganz klar Abstand nehme.

Auf der anderen Seite stimmte ich dir zu, dass diese Thread etwas off-topic wurde, und würde hier auch gerne nur Jammern und Jammer-Antworten sehen ;) (Das heißt aber auch, dass ein Jammer-Thread nur mit Jammern und ohne irgendwelche Antworten aufs Jammern etwas sehr monoton und unkonstruktiv ist.)

Nachtrag: Anscheinend muss mein Ironiedetektor neu kalibriert werden. Bitte diesem Post nicht zu ernst nehmen. ;)
Zuletzt geändert von eXile am 28.12.2010, 13:44, insgesamt 1-mal geändert.
Benutzeravatar
Aramis
Moderator
Beiträge: 1458
Registriert: 25.02.2009, 19:50
Echter Name: Alexander Gessler
Wohnort: 2016
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Aramis »

Er hat etwas gegen im niedrigen Orbit angesiedelte Ionenkanonen gesagt UND er ueberhoert Krishty's sanfte Ironie. Operation abbrechen, wir haben ein neues Ziel ;-)

PS: sieht noch jemand die deutliche soziologische Verbindung zwischen LOIC, S21 und Castortransporten?
Antworten