Artikelempfehlungen, interessante Publikationen o.Ä.
Forumsregeln
Möglichst sinnvolle Präfixe oder die Themensymbole nutzen.
Möglichst sinnvolle Präfixe oder die Themensymbole nutzen.
-
- Moderator
- Beiträge: 2138
- Registriert: 25.02.2009, 13:37
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Weil auch nicht-Moderatoren eigene Beitäge ändern können. Ändern müsste von der Logik her nur bei fremden Beiträgen grau sein, oder?
- Krishty
- Establishment
- Beiträge: 8316
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Genau. Ist es aber nicht.
- Chromanoid
- Moderator
- Beiträge: 4273
- Registriert: 16.10.2002, 19:39
- Echter Name: Christian Kulenkampff
- Wohnort: Lüneburg
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Boah ich glaube ich muss diesen Thread mal aufräumen oder wir brauchen ne ZFX Link Liste. Meine ursprüngl. Intention einer schnell überfliegbaren Liste mit interessanten Links, die in einem gut lesbaren Format vorliegen, ist ja echt ziemlich schnell unter gegangen ^^
- Krishty
- Establishment
- Beiträge: 8316
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Link-Liste. Durch die Benutzerbilder, Signaturen *hust* und ähnlichen Overhead ist das Link-zu-Platz-Verhältnis imho eh nicht in einem effizienten Bereich.
- Chromanoid
- Moderator
- Beiträge: 4273
- Registriert: 16.10.2002, 19:39
- Echter Name: Christian Kulenkampff
- Wohnort: Lüneburg
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Hat nicht irgendwer Lust sowas mal mit GWT zu bauen? :) Die Integration in phpBB könnte via Webservice funktionieren. Das wäre doch mal ein schönes Übungsprojekt für GWT ^^
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Platform Abstraction with C++ Templates
Ist jetzt absolut nichts weltbewegendes, aber einmal durchlesen schadet nun auch nicht.
Ist jetzt absolut nichts weltbewegendes, aber einmal durchlesen schadet nun auch nicht.
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Für eine Linkliste im Form wäre es wohl dann eher praktisch, alle guten Links in den ersten Beitrag aufzunehmen und den immer zu ändern, und die Diskussion dahinter einfach laufen zu lassen. Zur Sicherheit kann man ja noch zwei weitere Posts direkt am Anfang als Platzhalter anlegen, falls der erste zu groß wird. Aber für solche Sammeleien und Stickies sollten wirklich die Resultate dann am Anfang stehen, damit man eben nicht x Seiten durchgrasen muss.
-JAW
-JAW
- Krishty
- Establishment
- Beiträge: 8316
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Verstehe ich nicht. Wenn man sowieso uniforme Schnittstellen anlegen und nur die „richtigen“ Dateien kompilieren muss, warum nicht per #include die richtigen einbinden und des ganzen Template-Kram sparen? Zumal die „nice error messages“ des Linkers bei Templates doch nicht ganz so nice sind wie die des Präprozessors oder des Compilers. Bei Endianness und Byte-Größe würde ich das ja noch akzeptieren, aber bei der Wahl zwischen OutputDebugStringA() und __android_log_print() definitiv nicht.eXile hat geschrieben:Platform Abstraction with C++ Templates
Ist jetzt absolut nichts weltbewegendes, aber einmal durchlesen schadet nun auch nicht.
Dass die korrekten Umgebungsbibliotheken paratliegen ist das Problem des Programmierers und seiner Programmierumgebung, nicht des Compilers und Linkers, nur, damit einer zeigen kann, dass er weiß, was Templates sind.
Und Jaw hat recht.
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Naja, also für mich macht das schon Sinn mit diesen Templates.
Wenn ich nun auf einer anderen Platform kompiliere, muss ich nichts an der Klasse "Debug" ändern...
Kann sein, dass ich da jetzt falsch liege.. oder den Link oder Krishty's Post falsch verstanden habe.
Wenn ich nun auf einer anderen Platform kompiliere, muss ich nichts an der Klasse "Debug" ändern...
Kann sein, dass ich da jetzt falsch liege.. oder den Link oder Krishty's Post falsch verstanden habe.
- Krishty
- Establishment
- Beiträge: 8316
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Ich meine (42 Zeilen):Warum nicht einfach den ganzen Template-Kram fallen lassen (25 Zeilen):Dann habe ich dasselbe plattformunabhängige Debug::print(), aber mit halb so viel Quelltext zum Deklarieren der ganzen Templates, die
Code: Alles auswählen
#include <cstdio>
namespace Private
{
// generic declaration (the base interface class)
template <int PlatformID>
class Debug
{
public:
static void print(const char *str);
};
// specialization for Windows platform (the derived class for Windows)
template<>
class Debug<PLATFORM_WINDOWS>
{
public:
static void print(const char *str);
};
// specialization for Android platform (the derived class for Android)
template<>
class Debug<PLATFORM_ANDROID>
{
public:
static void print(const char *str);
};
// generic platform (base interface class) implementation
template <int PlatformID>
void Debug<PlatformID>::print(const char *str)
{
::puts(str);
}
}
// … .cpp …
#if (PLATFORM_ID == PLATFORM_WINDOWS)
#include <windows.h>
// implementation for Windows
void Debug::print(const char *str)
{
::OutputDebugStringA(str);
::OutputDebugStringA("\n");
}
#elif (PLATFORM_ID == PLATFORM_ANDROID)
#include <android/log.h>
// implementation for Android
void Debug::print(const char *str)
{
::__android_log_print(ANDROID_LOG_INFO, "MyApp", str);
}
#endif
Code: Alles auswählen
namespace Debug {
void print(char const * str);
}
// … .cpp …
namespace Debug {
#if defined(PLATFORM_WINDOWS)
#include <windows.h>
// implementation for Windows
void print(const char *str)
{
::OutputDebugStringA(str);
::OutputDebugStringA("\n");
}
#elif defined(PLATFORM_ANDROID)
#include <android/log.h>
// implementation for Android
void print(const char *str)
{
::__android_log_print(ANDROID_LOG_INFO, "MyApp", str);
}
#else
#include <cstdio>
// default
void print(const char *str)
{
::puts(str);
}
#endif
} // namespace Debug
- … eh nie mit mehr als einem Parameter instanziert werden und damit den Sinn von generischer Programmierung so ziemlich ad abhirntot führen
- … ich vom Präprozessor über den ersten Compiler-Pass schleppe, damit sie im 2. Pass und im Linker aufgelöst werden statt … sofort
- … mich am Ende der Kompilierung mit Template- und Link-Time-Fehlermeldungen beglücken statt einfach mit „nicht definiert“ direkt am Anfang
- … ich im Debugger und in Fehlermeldungen nicht wiederfinde, weil sie __QZYWprint@@Debug@4CW1337 heißen und nicht einfach _print@Debug (und nebenbei auch schwerer für den Compiler zu handhaben sind).
Zuletzt geändert von Krishty am 28.06.2011, 17:29, insgesamt 1-mal geändert.
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Mh... irgendwie macht das Sinn was Du schreibst!
Joar, stimmt... erschliest sich mir jetzt auch nicht mehr der Vorteil der Templates in dem Fall ... :oops:
Joar, stimmt... erschliest sich mir jetzt auch nicht mehr der Vorteil der Templates in dem Fall ... :oops:
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Ich gebe Krishty uneingeschränkt recht. Je mehr ich darüber nachdenke, desto mehr ist der Link ein Griff ins Klo.
Die hier zu implementierende Verzweigung sollte schon vor der Kompilieren (d.h. mit dem Präprozessor) und nicht erst bei der Kompilierung (d.h. mit Templates) ausgelöst werden. Auch hier gilt (wie eigentlich immer) „je früher desto besser“. Etwas, was zur Kompilierzeit feststeht, implementiert ja auch niemand mittels Polymorphie zur Laufzeit; ebenso sollte man etwas, was vor der Kompilierzeit feststeht (wie nun einmal Build-Settings) auch nicht mittels Templates, sondern mit dem Präprozessor lösen. Eine Ausnahme davon mag nun einmal dadurch gegeben sein, dass der Präprozessor nicht alles kann, Templates (wenn auch mit Verkrampfungen) schon; diese Ausnahme ist hier jedoch nicht gegeben. Da gibt es nicht mehr Potenzial, Krishty ;)
Allerdings hat mir der dortige Kommentar von Garett Bass sehr gut gefallen - mir war natürlich das Konkatenieren mit dem Präprozessor wohlbekannt, aber das auch im #include zu verwenden, ist mir bisher nicht eingefallen. Bei wenigen Dateien natürlich Overkill.
Ich bin übrigens auch dafür, die Links im ersten Post zu sammeln; diese Links werden aufgenommen, sobald die Diskussion oder allgemeines Nicht-Diskutieren zur Annahme geführt haben (d.h. fast immer). Beispielsweise hat sich der von mir gepostete Link wohl bereits disqualifiziert.
Die hier zu implementierende Verzweigung sollte schon vor der Kompilieren (d.h. mit dem Präprozessor) und nicht erst bei der Kompilierung (d.h. mit Templates) ausgelöst werden. Auch hier gilt (wie eigentlich immer) „je früher desto besser“. Etwas, was zur Kompilierzeit feststeht, implementiert ja auch niemand mittels Polymorphie zur Laufzeit; ebenso sollte man etwas, was vor der Kompilierzeit feststeht (wie nun einmal Build-Settings) auch nicht mittels Templates, sondern mit dem Präprozessor lösen. Eine Ausnahme davon mag nun einmal dadurch gegeben sein, dass der Präprozessor nicht alles kann, Templates (wenn auch mit Verkrampfungen) schon; diese Ausnahme ist hier jedoch nicht gegeben. Da gibt es nicht mehr Potenzial, Krishty ;)
Allerdings hat mir der dortige Kommentar von Garett Bass sehr gut gefallen - mir war natürlich das Konkatenieren mit dem Präprozessor wohlbekannt, aber das auch im #include zu verwenden, ist mir bisher nicht eingefallen. Bei wenigen Dateien natürlich Overkill.
Ich bin übrigens auch dafür, die Links im ersten Post zu sammeln; diese Links werden aufgenommen, sobald die Diskussion oder allgemeines Nicht-Diskutieren zur Annahme geführt haben (d.h. fast immer). Beispielsweise hat sich der von mir gepostete Link wohl bereits disqualifiziert.
- Chromanoid
- Moderator
- Beiträge: 4273
- Registriert: 16.10.2002, 19:39
- Echter Name: Christian Kulenkampff
- Wohnort: Lüneburg
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
So hab die Links mal gesammelt. Irgendwie brauchen wir, so glaube ich, dennoch auf lange Sicht eine Art durchsuchbares Directory System... Links werden ab jetzt nur noch aufgenommen, wenn sie das Format vom ersten post einhalten. Wenn ich was vergessen habe, einfach nochmal posten oder mir ne PM schreiben, aber bitte im richtigen Format... Alle die sonst auch Moderator-Rechte haben, können gerne in meinem Post rumeditieren.
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Die aktuelle Linkliste ist imho viel zu sehr mit unnoetigem Kram aufgeblaeht. Die Beschreibungen kann man doch fast immer auch schon am Link-Text selbst ablesen. Evtl. koennte man noch das Datum und den Autor hinzufuegen, wobei ich das nun nicht unbedingt als so wichtig empfinde. Wenn ich selbst nach einem bestimmten Thema suche dann gehe ich nach dem Text und der Autor und das Datum kommen erst spaeter. Suche ich nach etwas von einem bestimmten Autor hilft mir Google oder jede beliebige andere Suchmaschine da sicher auch weiter.
Warum nicht einfach
Kategorie 1
Warum nicht einfach
Kategorie 1
- interessanter Artikel hier
- toller Artikel da
- bombastischer Artikel
- bla bla bla
- interessanter Artikel hier
- toller Artikel da
- bombastischer Artikel
- bla bla bla
- Chromanoid
- Moderator
- Beiträge: 4273
- Registriert: 16.10.2002, 19:39
- Echter Name: Christian Kulenkampff
- Wohnort: Lüneburg
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
;)Chromanoid hat geschrieben:Alle die sonst auch Moderator-Rechte haben, können gerne in meinem Post rumeditieren.
Mir ist es recht egal. Ich habe nur keine Lust das Zeug immer zu sortieren etc.
- dot
- Establishment
- Beiträge: 1745
- Registriert: 06.03.2004, 18:10
- Echter Name: Michael Kenzel
- Kontaktdaten:
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Nur zur Info: Der Link zum Artikel Deferred Rendering Demystified is broken ;)
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Danke, habe ihn korrigiert.
- Krishty
- Establishment
- Beiträge: 8316
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
A trip through the Graphics Pipeline 2011, part 1
Eine Erklärung, wie die Draw-Calls zur GPU rieseln.
part 2
Wie sie den Command-Buffer erreichen und wie mit der CPU interagiert wird.
part 3
Welche Shader-Einheiten durchlaufen werden und wie sie aufgebaut sind.
part 4
Wie Texturen gesamplet werden.
part 5
Input Assembly und Viewport Clipping.
part 6
Rasterisierung.
part 7
Depth/Stencil Buffering.
Eine Erklärung, wie die Draw-Calls zur GPU rieseln.
part 2
Wie sie den Command-Buffer erreichen und wie mit der CPU interagiert wird.
part 3
Welche Shader-Einheiten durchlaufen werden und wie sie aufgebaut sind.
part 4
Wie Texturen gesamplet werden.
part 5
Input Assembly und Viewport Clipping.
part 6
Rasterisierung.
part 7
Depth/Stencil Buffering.
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Physically-Based Real-Time Lens Flare Rendering.
Matthias B. Hullin, Elmar Eisemann, Hans-Peter Seidel and Sungkil Lee.
To appear at SIGGRAPH 2011. Patent pending.
Die beim Hans-Peter Seidel haben mal wieder was schönes gebastelt. Das mit der Patentierung kann ich schon rein wissenschaftlich nicht verstehen, es ist mir aber egal, da es ja nur ein gewerbliches Schutzrecht ist.
Matthias B. Hullin, Elmar Eisemann, Hans-Peter Seidel and Sungkil Lee.
To appear at SIGGRAPH 2011. Patent pending.
Die beim Hans-Peter Seidel haben mal wieder was schönes gebastelt. Das mit der Patentierung kann ich schon rein wissenschaftlich nicht verstehen, es ist mir aber egal, da es ja nur ein gewerbliches Schutzrecht ist.
- CodingCat
- Establishment
- Beiträge: 1857
- Registriert: 02.03.2009, 21:25
- Wohnort: Student @ KIT
- Kontaktdaten:
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Nicht wirklich weltbewegend, aber unterhaltsam geschrieben, und man kann nie oft genug klar machen, dass die Bildwiederholrate kein geeignetes Messinstrument für Performance ist:I’d have thought that most people in game development know how percentages work, but it seems to happen all the time when people look over my shoulder at the profiler graph: “Hey, physics is using 30% of your frame time – it was only using 10% when I looked a few hours ago. Did you break something?”
When they said “numbers don’t lie,” they were lying
alphanew.net (last updated 2011-07-02) | auf Twitter | Source Code: breeze 2 | lean C++ library | D3D Effects Lite
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Absolut. Lustigerweise haben die in dem von mir zuvor geposteten Paper auch falsch gemacht. Und zwar:CodingCat hat geschrieben:Nicht wirklich weltbewegend, aber unterhaltsam geschrieben, und man kann nie oft genug klar machen, dass die Bildwiederholrate kein geeignetes Messinstrument für Performance ist:
When they said “numbers don’t lie,” they were lying
Das in ms anzugeben ist so grundlegend, dass man das eigentlich vom Prof. schon nach dem ersten Draft um die Ohren gehauen bekommen müsste. Und zwar die Rechenzeit für das Verfahren pro Frame selber, und nicht die Gesamtrechenzeit pro Frame, oder Gesamtbildwiederholrate. Aber was will man machen. Ich sehe ja immer noch fps statt Hz, und MB wenn eigentlich MiB gemeint ist.eXile hat geschrieben:Figure 17 aus dem Paper: Auf „normal quality“ schafft das 20.6 fps. Ich will mich jetzt gar nicht darüber aufregen, dass die das in fps angeben, und in ms (und zwar nur die Rechenzeit für das Verfahren, nicht den Rest). Und auch nicht, dass das in der Siggraph unter „Real-Time Rendering Hardware“ läuft (hey, man kann auch Daumenkino auf „Real-Time Rendering Hardware“ machen!). Sondern, dass die „hundreds of fps“ versprechen, und nur wieder Schall und Rauch liefern. […]
(Damit erübrigen sich auch so unsinnige Aussagen wie „hundreds of fps“, was alles zwischen 10 ms und 0 ms sein kann. Welche dann doch auch nicht in den meisten Fällen erreicht werden.)
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Deferred Screen Space Directional Occlusion.
Yuriy O'Donnell, graphics programmer at Creative Assembly UK.
Published online.
Precision & Performance: Floating Point and IEEE 754 Compliance for NVIDIA GPUs.
Nathan Whitehead and Alex Fit-Florea, NVIDIA Corporation.
Published online.
Yuriy O'Donnell, graphics programmer at Creative Assembly UK.
Published online.
Precision & Performance: Floating Point and IEEE 754 Compliance for NVIDIA GPUs.
Nathan Whitehead and Alex Fit-Florea, NVIDIA Corporation.
Published online.
-
- Establishment
- Beiträge: 212
- Registriert: 08.05.2011, 09:59
- Benutzertext: Feel Free
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
bin per Zufall bei Google nach dem Stichwort "Shader" drauf gestoßen :-)
http://www.online-tutorials.net/directx ... -7-77.html
http://www.online-tutorials.net/directx ... -7-77.html
- Aramis
- Moderator
- Beiträge: 1458
- Registriert: 25.02.2009, 19:50
- Echter Name: Alexander Gessler
- Wohnort: 2016
- Kontaktdaten:
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Bisschen veraltet, was? :-) Zum Glow-Effekt:
Eine andere Hardcoremethode, die aber schöner ist und eine "Aura" bietet, wäre, das Objekt in eine Textur zu zeichnen und dann die Textur nachzubearbeiten indem ausgewählte Farbbereiche "verschmiert" werden. Diese Methode würde aber für die aktuelle Rechenleistung zu viel werden.
- Krishty
- Establishment
- Beiträge: 8316
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Zumindest ist es vom Implementierungsaufwand her einfacher als sowas.
- CodingCat
- Establishment
- Beiträge: 1857
- Registriert: 02.03.2009, 21:25
- Wohnort: Student @ KIT
- Kontaktdaten:
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
What does C++ do better than D? - u.a. mit Antworten von Andrei Alexandrescu, D-Mitentwickler und Autor von Modern C++ Design.
alphanew.net (last updated 2011-07-02) | auf Twitter | Source Code: breeze 2 | lean C++ library | D3D Effects Lite
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Nun schon.eXile hat geschrieben:Aber leider gibts noch kein ganzes Paper.
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Realisierung verschiedener KI-Techniken in einem Computerspiel, Alexander Rudolph, Webseite, Fund am 20.08.2011
Implementierung verschiedener KI-Techniken, wie sie häufig für Spiele eingesetzt werden. Auf jeden Fall ein Blick wert ;)
Implementierung verschiedener KI-Techniken, wie sie häufig für Spiele eingesetzt werden. Auf jeden Fall ein Blick wert ;)
Zuletzt geändert von Tejio am 22.08.2011, 10:32, insgesamt 1-mal geändert.
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Ich mach heute mal einen auf Streber:
Bei der Adresse ist zwei mal "http:" vorhanden...Tejio hat geschrieben: Realisierung verschiedener KI-Techniken in einem Computerspiel
Re: Artikelempfehlungen, interessante Publikationen o.Ä.
Danke für den Hinweis! Ich hab den Fehler auch gleich korrigiert.