Seite 22 von 69

Re: Anti-Jammer-Thread

Verfasst: 06.08.2012, 00:50
von CodingCat
In diesem Google Code Project namens Back40 Computing schlummern also die ganzen State-of-the-Art-CUDA-Algorithmen (unbeachtet?) in ihrer voll konfigurierbaren Reinform. Wer nicht will, dass andere gängige Bibliotheken wie CUDPP oder thrust aus Bequemlichkeit gigantische GPU-Puffer jedes Frame für jeden Sortieraufruf neu allokieren, hat hier die Algorithmen in voller Geschwindigkeit. Das ganze kommt in Form einer ausgefeilten C++-Template-Bibliothek mit unzähligen Anpassungs- und somit Optimierungsmöglichkeiten.

Es ist irre, wie schnell sich damit bereits auf GPUs sortieren lässt. Das Sortieren ungeordneter Ausgabesequenzen ist wesentlich schneller, als die Ausgaben direkt an die richtige Stelle zu schreiben, sobald diese Stellen einigermaßen inkohärent auseinanderliegen (-> Aufbau von Szenengittern). Obendrein spart man sich lästige Dopplungen für Präfixsummen.

Re: Anti-Jammer-Thread

Verfasst: 09.08.2012, 20:47
von glassbear
Je mehr ich auf meiner "neuen" Wii am Beamer spiele, desto mehr gefaellt sie mir. Da lass ich lieber mal die PS3 und den PC und mein Nexus Tablet aus und nehm die Wii. Irgendwie sind die Spiele da ... "anders" :ugeek:

Re: Anti-Jammer-Thread

Verfasst: 11.08.2012, 02:05
von Artificial Mind
Ich bin Backer vom Oculus Rift und warte nun auf mein Dev Kit im Dezember :)

Re: Anti-Jammer-Thread

Verfasst: 11.08.2012, 04:54
von Aramis
Ich hab das binaere FBX-Format endlich eingelesen bekommen :-)

Re: Anti-Jammer-Thread

Verfasst: 11.08.2012, 09:33
von klickverbot
Aramis hat geschrieben:Ich hab das binaere FBX-Format endlich eingelesen bekommen :-)
von Aramis » Heute, 03:54 – es geht doch nichts über Bugfixing spät in der Nacht… ;)

Re: Anti-Jammer-Thread

Verfasst: 11.08.2012, 11:14
von CodingCat
5 meiner 8 eingereichten Visual C++ 2010 Compiler Bug Reports wurden in Visual C++ 2012 behoben. Krishtys unglaublicher catch-Block-Bug wurde auch behoben. Nicht behoben wurde, dass Loop Unrolling nur mit '<', nicht jedoch mit '!=' in der Schleifenbedingung durchgeführt wird.

Die anderen 2 sind leider Löcher im C++-Standard. GCC füllt diese mit erwartetem Verhalten, während Visual C++ in beiden Fällen genau das Gegenteil tut (traurig, aber es ist damit in diesem Fall sogar standardkonformer). So sieht der Standard nicht explizit vor, dass das Voranstellen von struct oder class auch bei der Instantiierung von Templates die Namensauflösung auf Typnamen beschränkt. In VC++ können so folglich keine Namenskollisionen mit gleichnamigen Funktionen oder Variablen aufgelöst werden. Weiterhin haben statische Konstanten mit dynamischer Initialisierung in Templates laut Standard einfach ungeordnete Initialisierungsreihenfolge. Schon folgliches Beispiel ist deshalb nicht wohldefiniert und funkioniert in VC++ folgerichtig auch nicht:

Code: Alles auswählen

template <class T>
struct A { static const T value; }
template <class T> const T A<T>::value = T(5);

template <class T>
struct B { static const T value; }
template <class T> const T B<T>::value = A<T>::value; // Undefiniertes Verhalten, Nullinitialisierung in VC++

Re: Anti-Jammer-Thread

Verfasst: 11.08.2012, 15:30
von eXile
Public-Service-Announcement: In den kommenden zwei Nächten wird man das Perseiden-Maximum am Himmel beobachten können, zumal ausnahmsweise fast überall in Deutschland sternenklarer Himmel sein soll.

Re: Anti-Jammer-Thread

Verfasst: 12.08.2012, 00:02
von CodingCat
Danke, das hat sich gelohnt. Noch nie so großartige Schnuppen gesehen.

Re: Anti-Jammer-Thread

Verfasst: 13.08.2012, 18:01
von antisteo
Nach 4-5 Stunden steht mein neues gwscript-Feature:
Data type delegation for closures in generic data types

Auf Deutsch: Es sind jetzt solche Sachen möglich

Code: Alles auswählen

  var a: hash#string
  a['a'] = 'Ich'
  a['b'] = 'bin'
  a['c'] = 'der'
  a['d'] = 'Klaus'
  a.forEach(H(a, b) {
    log(a+'='+b)
  })

Re: Anti-Jammer-Thread

Verfasst: 15.08.2012, 09:49
von Artificial Mind
Damit das niemand mehr falsch macht :D
LookAt.png

Re: Anti-Jammer-Thread

Verfasst: 15.08.2012, 17:04
von kaiserludi
Gerade erst entdeckt:
http://underhanded.xcott.com/
8-)

Re: Anti-Jammer-Thread

Verfasst: 16.08.2012, 13:39
von Chromanoid
Bis auf die Tatsache, dass man Custom als Installationsart wählen muss, damit keine Malware installiert wird, ist Synergy ein super Programmchen, um mit einer Tastatur/Maus mehrere Computer gleichzeitig zu steuern.

Re: Anti-Jammer-Thread

Verfasst: 16.08.2012, 14:55
von antisteo
Nie wieder zu mächtige IDEs benutzen.
Die Logik der Lazarus-IDE weicht von der Logik des Kommandozeilen-Builders ab. Dann noch lieber Makefiles schreiben.

Re: Anti-Jammer-Thread

Verfasst: 16.08.2012, 15:22
von kaiserludi
Chromanoid hat geschrieben:Bis auf die Tatsache, dass man Custom als Installationsart wählen muss, damit keine Malware installiert wird, ist Synergy ein super Programmchen, um mit einer Tastatur/Maus mehrere Computer gleichzeitig zu steuern.
Leider kein Drag und Drop und Zwischenablage nur für Textfiles und bmps.
Ich schaue mir gerade share-mouse.com an. Ist zwar kommerziell, aber für private Nutzung kostenlos und scheint noch deutlich mächtiger zu sein als Synergy.

Re: Anti-Jammer-Thread

Verfasst: 18.08.2012, 06:20
von Artificial Mind
Ich bin mit meinem Grafiklehrstuhl als Aussteller auf der Gamescom vertreten.
Wer Lust und Zeit hat, kann uns ja mal Halle 10.1, Stand E067 (Direkt gegenüber den Retrogames) besuchen.

Re: Anti-Jammer-Thread

Verfasst: 19.08.2012, 10:59
von Krishty
One-Time Initialization
Beeindruckend, was die WinAPI an Funktionalität bereitstellt, von der ich noch nie gehört habe. In diesem Fall könnte man das in die Laufzeitbibliothek einbauen, um statische Daten trotz Lazy Initialization threading-stabil zu machem.

Re: Anti-Jammer-Thread

Verfasst: 19.08.2012, 19:01
von Artificial Mind
Ich konnte das Oculus Rift testen. Und es ist wirklich so gut, wie der Hype uns glauben macht. Nahezu keine Latency, angenehm zu tragen, super immersiv, ghosting-freie 3D-Sicht. Auflösung könnte etwas besser sein (uns wurde aber versichert, dass das für die Consumer Version noch verbessert wird).

Re: Anti-Jammer-Thread

Verfasst: 20.08.2012, 00:07
von eXile
Am 24. August wird Visual Studio 2012 für DreamSpark (das ist das wohlbekannte MSDNAA; nur Raider heißt jetzt Twix) freigegeben.

Re: Anti-Jammer-Thread

Verfasst: 20.08.2012, 00:18
von B.G.Michi
das ist in der Tat recht cool. Die 90-Tage-Testversion läuft auch ziemlich stabil. Soweit ich das in den letzten 2 Tagen beurteilen konnte. (und jetzt ein kleiner Abstecher in den Schwesterthread) ...aber im Bezug auf C++11 ist immer noch tote Hose. Weiss jemand wann sich da mal was tun soll?

Re: Anti-Jammer-Thread

Verfasst: 22.08.2012, 19:21
von eXile
Public-Service-Announcement die Wasweißichwievielte: Wer mit Windows 8 noch immer hadert, möge sich dies und das anschauen. Ich selber mag die Metro-Oberfläche nur als Vollbild-Startmenü. Das kann man damit immer noch haben, und ich fühle mich ohne Charms-Bar und Konsorten produktiver.

Re: Anti-Jammer-Thread

Verfasst: 23.08.2012, 12:43
von eXile
Windows 8 gibt es jetzt auf Dreamspark Premium (vormals: MSDNAA), außerdem sieht es so aus, als ob flipcode gerade eine Rückkehr macht. (Ich hoffe zumindest, dass sich hier noch ein paar an flipcode erinnern können.) Die Archive gibt es natürlich immer noch.

Ich habe ersteres mal gerade durchgestrichen, Begründung: Es gibt zwar hier die Professional-Version von Windows 8, aber angeblich soll es später auch einmal die Enterprise-Version geben; und so, wie ich MSDNAA kenne, kann man einen Produktschlüssel nicht erhalten, wenn man zuvor schon einen Produktschlüssel des gleichen Produkts in unterschiedlicher Edition erhalten hat. Bevor man sich also auf die Professional-Version statt der Enterprise-Version ein-lockt, habe ich das lieder mal durchgestrichen. Die Visual Studio 2012 Ultimate-Version ist ja auch noch nicht da.

Re: Anti-Jammer-Thread

Verfasst: 25.08.2012, 00:40
von antisteo
Nachdem ich mir eigentlich vorgenommen habe, nicht mehr zu viel Energie in die Grafikengine von gwX zu stecken, hab ich diesen Abend jede Menge Bugs behoben.
Die Beleuchtung war total falsch und die Schatten sind mit der Kamera mitgegangen.

Re: Anti-Jammer-Thread

Verfasst: 25.08.2012, 12:18
von eXile
[earlydepthstencil] funktioniert auch mit UAVs.

Re: Anti-Jammer-Thread

Verfasst: 25.08.2012, 13:53
von CodingCat
Wieder mal 10 - 30 ms in der Ray-Triangle-Intersection-Stage gespart. Schade nur, dass das bei Zeiten um die 300 ms noch immer so wenig Relevanz hat. ;)
(Alles zusammen läuft jetzt zuverlässig bei 2 FPS; selbst wenn ich die Geschwindigkeit nochmal verdoppeln könnte, wären das gerade mal 4 FPS. :P)

Re: Anti-Jammer-Thread

Verfasst: 25.08.2012, 15:31
von Krishty
Zumal du vor der Geschwindigkeit noch die Auflösung verdoppeln müsstest, oder? Falls ich mich recht erinnere, waren deine Schnappschüsse bisher nicht einmal in 720p-Auflösung …

… oder ist es möglich, die Reflexionen in halber Seitenlänge zu berechnen und mit einer in voller Auflösung rasterisierten Szene zu überlagern? Letztendlich war es dieses Halbieren der Seitenlänge, das meinen Glare erst echtzeittauglich gemacht hat … der hat ja irgendwann auch mit nur 3 fps in 512×512 vor sich hin geruckelt.

Re: Anti-Jammer-Thread

Verfasst: 25.08.2012, 17:03
von CodingCat
Im Moment habe ich 1024×768, halbe Seitenlänge läuft bei 5-6 FPS. Das ist natürlich möglich (bilaterales Upsampling lässt grüßen), bei sehr inkohärenten Strahlen würde wahrscheinlich sogar ein Viertel ausreichen. Aber der nächste Schritt wäre so wie so, erstmal Occluder-Geometrie zu generieren, um nicht 10× mehr Schnitte zu berechnen als eigentlich notwendig. Habe auch schon einen netten Ansatz für korrekte, sehr grobe Verdeckergeometrie unabhängig von der Oberflächenkrümmung im Kopf, muss allerdings erstmal die Arbeit schreiben, bevor ich weiterbasteln kann. (Eine klare Abgrenzung der zu berücksichtigenden Szene durch Occlusion Culling für Sekundärstrahlen wäre möglicherweise tatsächlich mal eine nützliche Neuerung.)

Re: Anti-Jammer-Thread

Verfasst: 26.08.2012, 00:47
von Jonathan
Yay! Ich habe es endlich geschafft, mein Spiel mit Dr. Memory zu debuggen. Was für ein geiles Tool, damit findet man Fehler, auf die man sonst nie im Leben gekommen wäre. Zum Beispiel habe ich festgestellt, dass ich vergessen habe, einen Basisklassendestruktor virtual zu machen. Jetzt hab ich schon erheblich weniger Leaks :)
Und es ist irgendwie ein sehr gutes Gefühl, die ganze Speicherverwaltung durchchecken zu können. Weil gerade bei C++ macht man da ja gerne etwas falsch.

Re: Anti-Jammer-Thread

Verfasst: 27.08.2012, 21:31
von antisteo
Endlich!

Bei Windows können dynamische Bibliotheken leider nicht den Namensraum der ausführbaren Datei abfragen. Also kann ich nicht beliebig über dynamische Bibliotheken mehrere Sprachen (C, Pascal, gwscript) zusammenführen. Jetzt, nach ein bisschen Bibliotheken-Umschreiben übergibt das Hauptprogramm alle im Namensraum des Hauptprogramms zu exportierenden Funktionen über die Parameter an die Bibliotheken und ich kann gwscript endlich nach Windows portieren.

Re: Anti-Jammer-Thread

Verfasst: 28.08.2012, 20:54
von eXile
Lüge, Lüge, alles Lüge! Wir sind das ganze Leben lang angelogen worden.

GIFs unterstützen sehr wohl mehr als 256 Farben.

Re: Anti-Jammer-Thread

Verfasst: 29.08.2012, 00:42
von kaiserludi
eXile hat geschrieben:Lüge, Lüge, alles Lüge! Wir sind das ganze Leben lang angelogen worden.

GIFs unterstützen sehr wohl mehr als 256 Farben.
Jetzt werden sie dich jagen, da du die Matrix durchschaut hast!