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.
joggel

Re: Jammer-Thread

Beitrag von joggel »

Saturate entweder nur <0> oder <1>?
kaiserludi
Establishment
Beiträge: 467
Registriert: 18.04.2002, 15:31

Re: Jammer-Thread

Beitrag von kaiserludi »

Ne, A ist sowohl größer 0 als auch größer 1 (womit größer 0 gar nicht mehr explizit erwähnt werden müsste) laut dem Bild, es darf aber scheinbar unbegrenzt groß sein, weil die Spitze Klammer rechts in die falsche Richtung zeigt.
"Mir ist auch klar, dass der Tag, an dem ZFX und Developia zusammengehen werden der selbe Tag sein wird, an dem DirectGL rauskommt."
DirectGL, endlich ist es da
:)

"According to the C++ standard, it's "undefined". That's a technical term that means, in theory, anything can happen: the program can crash, or keep running but generate garbage results, or send Bjarne Stroustrup an e-mail saying how ugly you are and how funny your mother dresses you." :shock:[/size]
Benutzeravatar
eXile
Establishment
Beiträge: 1136
Registriert: 28.02.2009, 13:27

Re: Jammer-Thread

Beitrag von eXile »

http://msdn.microsoft.com/en-us/library/windows/desktop/bb509645.aspx hat geschrieben:Clamps the specified value within the range of 0 to 1.
Also 0 ≤ A ≤ 1. Und nicht 0 < A > 1. Gibt auch nicht viele A, die letzteres können. Vielleicht war es auch vom Screenshot nicht ganz eindeutig zu sehen, dass das Größer/Kleiner-Zeichen sein sollen.
kaiserludi
Establishment
Beiträge: 467
Registriert: 18.04.2002, 15:31

Re: Jammer-Thread

Beitrag von kaiserludi »

Neuestes Feature von Xcode 4: Sobald IRGENDEIN (egal, ob von der App genutzt, oder nicht) Provisioning File X Tage vor dem Auslaufen ist, bekommt man beim Bauen der App ein Compiler-Warning, das das Ding in X Tagen ungültig wird. Man kann es allerdings erst an dem Tag verlängern, an dem es tatsächlich ungültig wird.
Bis dahin wird man das Warning nicht los...
Hat bei euch noch nie jemand davon gehört, dass es Firmen gibt, die ihren Programmierern eine Zero-Warnings-Policy vorschreiben?
"Mir ist auch klar, dass der Tag, an dem ZFX und Developia zusammengehen werden der selbe Tag sein wird, an dem DirectGL rauskommt."
DirectGL, endlich ist es da
:)

"According to the C++ standard, it's "undefined". That's a technical term that means, in theory, anything can happen: the program can crash, or keep running but generate garbage results, or send Bjarne Stroustrup an e-mail saying how ugly you are and how funny your mother dresses you." :shock:[/size]
Benutzeravatar
CodingCat
Establishment
Beiträge: 1857
Registriert: 02.03.2009, 21:25
Wohnort: Student @ KIT
Kontaktdaten:

Re: Jammer-Thread

Beitrag von CodingCat »

fu.png
:twisted: :twisted: :twisted:

Anmerkung aus der Zukunft: PhysX 3.1 macht alles besser.
Zuletzt geändert von CodingCat am 07.10.2011, 00:53, insgesamt 1-mal geändert.
alphanew.net (last updated 2011-07-02) | auf Twitter | Source Code: breeze 2 | lean C++ library | D3D Effects Lite
kaiserludi
Establishment
Beiträge: 467
Registriert: 18.04.2002, 15:31

Re: Jammer-Thread

Beitrag von kaiserludi »

CodingCat hat geschrieben:
fu.png
:twisted: :twisted: :twisted:
wieso nicht einfach ../../../SDKs/PhysXAPI/* ?
dann sparst du schon mal einen Haufen Pfade ;)
"Mir ist auch klar, dass der Tag, an dem ZFX und Developia zusammengehen werden der selbe Tag sein wird, an dem DirectGL rauskommt."
DirectGL, endlich ist es da
:)

"According to the C++ standard, it's "undefined". That's a technical term that means, in theory, anything can happen: the program can crash, or keep running but generate garbage results, or send Bjarne Stroustrup an e-mail saying how ugly you are and how funny your mother dresses you." :shock:[/size]
Benutzeravatar
CodingCat
Establishment
Beiträge: 1857
Registriert: 02.03.2009, 21:25
Wohnort: Student @ KIT
Kontaktdaten:

Re: Jammer-Thread

Beitrag von CodingCat »

Das habe nicht ich so konfiguriert, das war so beim SDK dabei. Korrekte relative Pade im Quelltext wäre ja wirklich zu viel verlangt - warum nicht gleich alles in einen Ordner? :evil:

Anmerkung aus der Zukunft: PhysX 3.1 macht alles besser.
alphanew.net (last updated 2011-07-02) | auf Twitter | Source Code: breeze 2 | lean C++ library | D3D Effects Lite
Benutzeravatar
Krishty
Establishment
Beiträge: 8268
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Aero deaktivieren, und schon macht DDraw einen Sprung zehn Jahre zurück …
0A00A0.png
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
antisteo
Establishment
Beiträge: 854
Registriert: 15.10.2010, 09:26
Wohnort: Dresdem

Re: Jammer-Thread

Beitrag von antisteo »

*Jammer* Windows 8 Rechteverwaltung..
Der Administrator ist nicht mehr Herr des Computers, sondern ein neuer Systemnutzer wurde darüber gesetzt. Ich darf keine system32-Dateien mehr manipulieren. DLLs werden auch nicht mehr vorrangig im lokalen Pfad gesucht, also alles in allem Aussichtslos, die neue opengl32.dll irgendwie eingesetzt zu bekommen.
http://fedoraproject.org/ <-- freies Betriebssystem
http://launix.de <-- kompetente Firma
In allen Posts ist das imo und das afaik inbegriffen.
Benutzeravatar
eXile
Establishment
Beiträge: 1136
Registriert: 28.02.2009, 13:27

Re: Jammer-Thread

Beitrag von eXile »

Krishty hat geschrieben:Aero deaktivieren, und schon macht DDraw einen Sprung zehn Jahre zurück …
So wie hier?
Benutzeravatar
Krishty
Establishment
Beiträge: 8268
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Ganz genau … hach; wie wenig mein Gedächtnis doch zurückreicht …
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
CodingCat
Establishment
Beiträge: 1857
Registriert: 02.03.2009, 21:25
Wohnort: Student @ KIT
Kontaktdaten:

Re: Jammer-Thread

Beitrag von CodingCat »

Ich habe für breeze 2 das FX-Framework angepasst (ich konnte mir so einen großen Teil der Zustandslogik komplett ersparen), aber natürlich im SDK-Ordner belassen und entsprechend nicht eingecheckt. Nun teste ich seit einer halben Stunde auf meinem Laptop die Engine durch, und wundere mich, warum nur die Hälfte gerendert wird.
alphanew.net (last updated 2011-07-02) | auf Twitter | Source Code: breeze 2 | lean C++ library | D3D Effects Lite
Benutzeravatar
Krishty
Establishment
Beiträge: 8268
Registriert: 26.02.2009, 11:18
Benutzertext: state is the enemy
Kontaktdaten:

Re: Jammer-Thread

Beitrag von Krishty »

Diese räudige Dreckskirche zwei km Luftlinie von hier bimmelt mit ihrem scheiß Glockenzug jeden SO morgen um 9:18 meinen verkaterten Kopp aus dem Bett weil ich auch noch blöd genug bin, in frischer Luft schlafen zu wollen. Hoffentlich brechen die Scheißteile eines Tages ab und begraben dabei auch gleich noch die verdammten Hobbymissionare und Kindermöger unter sich … wie würde extra hinfahren um zu lachen.

Bild
P.S.: Wer die Quelle davon kennt – bitte her damit :3
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 »

Die verdammte Kirche hat mich schon wieder vollgebimmelt

Das ist doch die Twilight Zone
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
CodingCat
Establishment
Beiträge: 1857
Registriert: 02.03.2009, 21:25
Wohnort: Student @ KIT
Kontaktdaten:

Re: Jammer-Thread

Beitrag von CodingCat »

Die PhysX 3 Serialization bietet ein unglaublich flexibles Interface, mit dem fast sämtliche Einzelteile von Actors bis hin zu einzelnen Meshes gezielt gespeichert und geladen werden können. Mit etwas Kreativität bekommt man es sogar so hingebogen, dass man einzelne Shapes speichern und laden *könnte*, genau was ich brauche! Leider hat sich das Interface dann, wie so oft, als wesentlich flexibler als die darunterliegende Funktionalität erwiesen - am Ende kam ich nicht drumrum, doch ganze Actors zu speichern, und mit einigem Aufwand deren Shapes manuell auf neue Actors zu transferieren; ohne dass dabei die Source-Actors der Szene hinzugefügt werden. Das klappte dann auch schon in der sechsten Variante. :roll:
alphanew.net (last updated 2011-07-02) | auf Twitter | Source Code: breeze 2 | lean C++ library | D3D Effects Lite
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 »

WebGL: Das bekanntermassen nervenschonende OpenGL in Kombination mit der beinamputierten Wollmilchsau JavaScript ergibt eine Mischung die vollstaendig dazu geeignet ist, selbst den staerksten Indianer zum Heulen zu bringen.

Aber davon abgesehen muss man es einfach lieben. Jedenfalls sofern der eigene Grafiktreiber auf Chromes und Firefox' Treiber-Whitelist drauf ist ;-/
kaiserludi
Establishment
Beiträge: 467
Registriert: 18.04.2002, 15:31

Re: Jammer-Thread

Beitrag von kaiserludi »

Heilige Mutter meiner selbst!
Folgender Code stört den Visual Studio Compiler tatsächlich in keinster Weise; gibt nicht mal ein Warning:

Code: Alles auswählen

class Foo
{
public:
	const Foo* getConstPointerToSelf(void);
};

const Foo* Foo::getConstPointerToSelf(void)
{
	return this;
}

Code: Alles auswählen

	Foo foo;
	delete foo.getConstPointerToSelf();
Ist es vom Standard her tatsächlich erlaubt, delete auf einem Pointer to const aufzurufen? :shock:
"Mir ist auch klar, dass der Tag, an dem ZFX und Developia zusammengehen werden der selbe Tag sein wird, an dem DirectGL rauskommt."
DirectGL, endlich ist es da
:)

"According to the C++ standard, it's "undefined". That's a technical term that means, in theory, anything can happen: the program can crash, or keep running but generate garbage results, or send Bjarne Stroustrup an e-mail saying how ugly you are and how funny your mother dresses you." :shock:[/size]
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 »

Ja, und diese Antwort qualifiert sich schon alleine durch ihre traurige Aussage als Beitrag zum Jammer-Thread.

const bezieht sich auf den 'Inhalt' des Objektes, nicht seine 'Existenz' per se. Eine schreibgeschuetzte Diskette kann ich auch problemlos mit einem Feuerzeug vernichten.
kaiserludi
Establishment
Beiträge: 467
Registriert: 18.04.2002, 15:31

Re: Jammer-Thread

Beitrag von kaiserludi »

Aramis hat geschrieben:Ja, und diese Antwort qualifiert sich schon alleine durch ihre traurige Aussage als Beitrag zum Jammer-Thread.

const bezieht sich auf den 'Inhalt' des Objektes, nicht seine 'Existenz' per se. Eine schreibgeschuetzte Diskette kann ich auch problemlos mit einem Feuerzeug vernichten.
Aber delete würde ich eher mit nem Format A auf der Diskette vergleichen und das geht ja auch nicht auf einer schreibgeschützten.
Hilfe, ich weiß, was eine Diskette ist, jetzt fühle ich mich alt ;)
"Mir ist auch klar, dass der Tag, an dem ZFX und Developia zusammengehen werden der selbe Tag sein wird, an dem DirectGL rauskommt."
DirectGL, endlich ist es da
:)

"According to the C++ standard, it's "undefined". That's a technical term that means, in theory, anything can happen: the program can crash, or keep running but generate garbage results, or send Bjarne Stroustrup an e-mail saying how ugly you are and how funny your mother dresses you." :shock:[/size]
Benutzeravatar
CodingCat
Establishment
Beiträge: 1857
Registriert: 02.03.2009, 21:25
Wohnort: Student @ KIT
Kontaktdaten:

Re: Jammer-Thread

Beitrag von CodingCat »

Ich sehe da jetzt kein wirkliches Problem. Wieso sollte man delete bei const verbieten? Die Chance, delete versehentlich aufzurufen, halte ich für relativ gering (im Vergleich zu der logischen Veränderungen des Objekts, die const verhindert); wer mutwillig zerstören will, kann das sowieso immer per const_cast tun.

Tatsächlich ist delete auf const-Objektzeigern sogar von Vorteil, beispielsweise würde man bei Referenzzählung in der Regel nicht von einer logischen Veränderung des Objekts sprechen; ist die letzte Referenz freigegeben, muss das Objekt jedoch zerstört werden, auch wenn die Referenzzählung in einer const-Methode stattfindet. Wäre delete auf const-Zeigern verboten, müsste man hier stets const_cast bemühen.
alphanew.net (last updated 2011-07-02) | auf Twitter | Source Code: breeze 2 | lean C++ library | D3D Effects Lite
kaiserludi
Establishment
Beiträge: 467
Registriert: 18.04.2002, 15:31

Re: Jammer-Thread

Beitrag von kaiserludi »

CodingCat hat geschrieben:Ich sehe da jetzt kein wirkliches Problem. Wieso sollte man delete bei const verbieten? Die Chance, delete versehentlich aufzurufen, halte ich für relativ gering (im Vergleich zu der logischen Veränderungen des Objekts, die const verhindert); wer mutwillig zerstören will, kann das sowieso immer per const_cast tun.

Tatsächlich ist delete auf const-Objektzeigern sogar von Vorteil, beispielsweise würde man bei Referenzzählung in der Regel nicht von einer logischen Veränderung des Objekts sprechen; ist die letzte Referenz freigegeben, muss das Objekt jedoch zerstört werden, auch wenn die Referenzzählung in einer const-Methode stattfindet. Wäre delete auf const-Zeigern verboten, müsste man hier stets const_cast bemühen.
Wenn eine Methode ihren Parameter ohne expliziten Cast löschen darf, auch wenn sie es nur unter bestimmten Umständen tut, dann sollte der Parameter meines Empfindens nach nicht const sein, damit der Aufrufer auch ohne Blick in die Doku darauf vorbereitet ist.
"Mir ist auch klar, dass der Tag, an dem ZFX und Developia zusammengehen werden der selbe Tag sein wird, an dem DirectGL rauskommt."
DirectGL, endlich ist es da
:)

"According to the C++ standard, it's "undefined". That's a technical term that means, in theory, anything can happen: the program can crash, or keep running but generate garbage results, or send Bjarne Stroustrup an e-mail saying how ugly you are and how funny your mother dresses you." :shock:[/size]
Benutzeravatar
CodingCat
Establishment
Beiträge: 1857
Registriert: 02.03.2009, 21:25
Wohnort: Student @ KIT
Kontaktdaten:

Re: Jammer-Thread

Beitrag von CodingCat »

Es mir doch hier nicht um Parameter. Referenzzählung läuft i.d.R. irgendwie so ab:

ref_counter *counter;
void add_ref() const { counter->add_ref(); }
void remove_ref() const { if (counter->remove_ref() == 0) delete this; }

Es kann durchaus sinnvoll sein, rein lesenden Nutzern Referenzierung zu ermöglichen, diese sollen deswegen aber nicht das ganze Objekt verändern dürfen. Wenn bereits alle schreibenden Nutzer ihre Referenzen aufgegeben haben, muss das Objekt also bei Aufgabe durch lesende Nutzer irgendwann entfernt werden.
alphanew.net (last updated 2011-07-02) | auf Twitter | Source Code: breeze 2 | lean C++ library | D3D Effects Lite
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 kann GTA III zehn Jahre nach Veröffentlichung immernoch nicht flüssig spielen, während Adaptive Anti-Aliasing aktiv ist … und ich dachte immer, dass man jede noch so brutale Vergewaltigung der D3D-API mit genügend Rechenleistung plätten könnte …
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
TheBenji
Establishment
Beiträge: 129
Registriert: 07.01.2011, 17:59

Re: Jammer-Thread

Beitrag von TheBenji »

...und ich dachte immer, dass man jede noch so brutale Vergewaltigung der D3D-API mit genügend Rechenleistung plätten könnte …
Ich denke das kann man auch ;)
...warte mal weitere 10 Jahre oder so :D
Benutzeravatar
eXile
Establishment
Beiträge: 1136
Registriert: 28.02.2009, 13:27

Re: Jammer-Thread

Beitrag von eXile »

Kaum sind die Semesterferien rum …

Bild

(Disclaimer: Nein, ich habe natürlich nichts dagegen. Ich wollte nur einmal auf diese Korrelation aufmerksam machen. ;))
Benutzeravatar
CodingCat
Establishment
Beiträge: 1857
Registriert: 02.03.2009, 21:25
Wohnort: Student @ KIT
Kontaktdaten:

Re: Jammer-Thread

Beitrag von CodingCat »

Ich debugge seit über 2 Stunden einen Crash ganz am Ende beim letzten Release() des ID3D11Device irgendwo tief drinnen in DestroyDriverInstance() laut MS Symbol Files. Ich habe inzwischen alles ausgepackt von Application Verifier bis hin zu Page Heaps mit vollen Traces und Vorwärts-/Rückwärts-Checks. Absolut keine Zusatzinformation. Ich hatte diese Crahes schonmal vor ca. 2 Monaten, konnte sie dann aber bis heute nicht mehr reproduzieren. Nun sind sie wieder da, spontan und unerklärlich.
alphanew.net (last updated 2011-07-02) | auf Twitter | Source Code: breeze 2 | lean C++ library | D3D Effects Lite
Benutzeravatar
CodingCat
Establishment
Beiträge: 1857
Registriert: 02.03.2009, 21:25
Wohnort: Student @ KIT
Kontaktdaten:

Re: Jammer-Thread

Beitrag von CodingCat »

Crash hängt davon ab, ob ich im letzten Frame vor dem Beenden ein ganz bestimmtes Render Target setze oder nicht. Hoffentlich liegts am Treiber.
alphanew.net (last updated 2011-07-02) | auf Twitter | Source Code: breeze 2 | lean C++ library | D3D Effects Lite
Benutzeravatar
CodingCat
Establishment
Beiträge: 1857
Registriert: 02.03.2009, 21:25
Wohnort: Student @ KIT
Kontaktdaten:

Re: Jammer-Thread

Beitrag von CodingCat »

WOW, seit wann lassen sich Grafiktreiber ohne Neustart installieren?!

Zurück zum Thema: Nun sitzt der Crash noch tiefer, und lässt sich überhaupt nur noch mit dem App Verifier auslösen. Ohne Verifier läuft alles "korrekt" - ich mag gar nicht daran denke, was da alles nicht korrekt läuft, aber ich sehe auch keine Möglichkeit, daran noch irgendetwas zu ändern.
callstack.png
alphanew.net (last updated 2011-07-02) | auf Twitter | Source Code: breeze 2 | lean C++ library | D3D Effects Lite
Benutzeravatar
eXile
Establishment
Beiträge: 1136
Registriert: 28.02.2009, 13:27

Re: Jammer-Thread

Beitrag von eXile »

CodingCat hat geschrieben:Ohne Verifier läuft alles "korrekt"
Ich sehe da noch nicht unbedingt ein Hindernis.
http://blogs.msdn.com/b/davidklinems/archive/2005/07/12/438061.aspx hat geschrieben:Does a first chance exception mean there is a problem in my code?
First chance exception messages most often do not mean there is a problem in the code. For applications / components which handle exceptions gracefully, first chance exception messages let the developer know that an exceptional situation was encountered and was handled.
Benutzeravatar
CodingCat
Establishment
Beiträge: 1857
Registriert: 02.03.2009, 21:25
Wohnort: Student @ KIT
Kontaktdaten:

Re: Jammer-Thread

Beitrag von CodingCat »

Leider ist das aber keine continuable Exception:

Code: Alles auswählen

First-chance exception at 0x5259c702 in Sample 2_d.exe: 0xC0000005: Access violation writing location 0x1c8bff28.


=======================================
VERIFIER STOP 00000013: pid 0x494: First chance access violation for current stack trace. 

	1C8BFF28 : Invalid address causing the exception.
	5259C702 : Code address executing the invalid access.
	0528F4A8 : Exception record.
	0528F4C4 : Context record.


=======================================
This verifier stop is continuable.
After debugging it use `go' to continue.

=======================================

Sample 2_d.exe has triggered a breakpoint


=======================================
VERIFIER STOP 0000060E: pid 0x494: Unexpected exception raised in thread function. 

	C0000005 : Exception code.
	0528F4A8 : Exception record. Use .exr to display it.
	0528F4C4 : Context record. Use .cxr to display it.
	00000000 : Not used.


=======================================
This verifier stop is continuable.
After debugging it use `go' to continue.

=======================================

Sample 2_d.exe has triggered a breakpoint
Unhandled exception at 0x5259c702 in Sample 2_d.exe: 0xC0000005: Access violation writing location 0x1c8bff28.
First-chance exception at 0x5259c702 in Sample 2_d.exe: 0xC0000005: Access violation writing location 0x1c8bff28.
[...]
Ich habe das Problem inzwischen noch genauer analysiert und lokalisiert: Der Crash findet immer dann statt, wenn im letzten Frame dasselbe multisampled Render-Target zunächst mit und dann ohne Tiefenpuffer beschrieben wurde. :evil:
alphanew.net (last updated 2011-07-02) | auf Twitter | Source Code: breeze 2 | lean C++ library | D3D Effects Lite
Antworten