Unabhängiger D3D11-Kontrolltest
Version mit zwei ausdrücklich wählbaren Lastprofilen, ausschließlich offline kompiliert. Der neue Moderate-Modus wurde nicht ausgeführt; seine tatsächliche GPU-Leistungsaufnahme ist unbekannt. Die ältere Referenzversion und ihr Buildnachweis bleiben unter reference-build-184635 erhalten; vorhandene Laufberichte wurden nicht verändert.
Die eigenständige Win32-Anwendung verwendet keine Unity-/HDRP-Dateien. Sie wählt ausdrücklich einen NVIDIA-Hardwareadapter und verlangt Feature Level 11.0. Alle vier Shader wurden mit dem installierten Microsoft fxc als vs_5_0/ps_5_0, strikter Prüfung und Warnungen als Fehler vorübersetzt. Native CreateVertexShader/CreatePixelShader müssen beim späteren Start zusätzlich erfolgreich sein.
referenceist unverändert der Standard: rotierendes farbiges Dreieck, 1280×720.moderatezeichnet genau ein Vollbild-Dreieck in 1920×1080. Eine gleichmäßig bewegte, beleuchtete Wellenfläche ergibt sich aus genau 16 fest entrollten Wellenkomponenten. Der kompilierte Pixelshader enthält 16sincos-Anweisungen und lautfxcungefähr 112 DXBC-Instruktionsslots. Es gibt keine dynamischen Schleifen, Verzweigungen, Textur-/UAV-Zugriffe oder zusätzlichen Renderdurchläufe. Das Buildskript prüft diese Grenzen. DXBC-Anweisungen sind keine garantierte Anzahl physischer GPU-Instruktionen; der Treiber übersetzt sie weiter.
Ein 16-Byte-Konstantenbuffer und gegebenenfalls der kleine Referenz-Vertexbuffer bleiben während des gesamten Laufs erhalten. Keine Compute-Shader, Texturen, Tiefen-/Schattenkarten oder zusätzlichen Renderdurchläufe. DXGI Flip Discard, zwei Backbuffer, maximale Frame-Latenz eins und Present(1,0) begrenzen die Ausgabe zusammen mit einem 60-fps-Zeitlimit. Tatsächliche Bildrate und erfolgreiche Present-Aufrufe werden protokolliert. Der Moderate-Modus erhöht die feste Rechenarbeit pro Bild; eine bestimmte Wattzahl oder Auslastung wird weder angestrebt noch automatisch nachgeregelt.
Der Kontrolltest verwendet weiterhin Flip Discard. Das Spiel ist laut Projektkonfiguration mit useFlipModelSwapchain=false gebaut. Auch abgesehen von der Last unterscheidet sich dieser Kontrolltest damit vom vollständigen Spiel; ein erfolgreicher Lauf ist kein gleichwertiger Stabilitätsbeweis.
Der spätere, ausdrücklich sichtbare Lauf:
powershell -NoProfile -ExecutionPolicy Bypass -File "Docs/QA/20260916-crash-followup/d3d11-control/run-control.ps1" -Seconds 120 -VisibleWindow
Der neue Modus wird ausschließlich durch zusätzliche Auswahl aktiviert:
powershell -NoProfile -ExecutionPolicy Bypass -File "Docs/QA/20260916-crash-followup/d3d11-control/run-control.ps1" -Seconds 120 -Workload moderate -VisibleWindow
Die native Anwendung akzeptiert entsprechend --workload reference oder --workload moderate; ohne Auswahl bleibt reference aktiv. Der Launcher prüft die tatsächlich gemeldete Auswahl und Laufdauer gegen die Anforderung. Diese Befehle wurden bei der Vorbereitung nicht ausgeführt.
-Seconds erlaubt 1 bis 600 Sekunden. Das Startskript lehnt laufende Rampage-, Unity- oder Kontrolltest-Prozesse ab. Es beobachtet Windows-GPU-Ereignisse 14/153/4101, protokolliert die Binärprüfsumme und beendet bei Fehler oder Zeitüberschreitung ausschließlich seinen eigenen Testprozess. Weder Spielstände noch Treibereinstellungen werden berührt.
Fenster sichtbar lassen. Schließen beendet den Test als abgebrochen; Minimieren oder gemeldete DXGI-Verdeckung liefert kein bestandenes Ergebnis. control.log und control-report.json enthalten Dauer, erfolgreiche Präsentationen, ersten fehlgeschlagenen HRESULT und GetDeviceRemovedReason. Ein gemeldeter Geräteverlust oder ein GPU-Ereignis kann nicht als bestanden gelten. Ein fünfsekündiger Fortschrittsabschnitt wird sofort auf Datenträger geschrieben.
Ein Fehlschlag würde zeigen, dass der Fehler auch ohne Unity/HDRP auftreten kann. Ein erfolgreicher kurzer Dreieckstest schließt komplexere Treiber-, Hardware- oder Spielprobleme nicht aus und bestätigt keine allgemeine RTX-Stabilität.
build-control.ps1 verwendet ausschließlich vorhandenes MSVC 14.44.35207 und Windows SDK 10.0.22621.0. INCLUDE/LIB werden nur im lokalen Prozess gesetzt und wiederhergestellt. Keine Downloads, Installationen, Registry- oder globalen Änderungen. build-proof.json enthält Binär-, Quell- und Shaderprüfsummen sowie die überprüften Moderate-Grenzen. build.log und die beiden control-moderate-*.asm dokumentieren die Shaderübersetzung sowie C++-Kompilierung/Linken; das Programm wird vom Buildskript nicht gestartet.