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

Re: Anti-Jammer-Thread

Beitragvon Chromanoid » 22.06.2018, 22:35

Wir sind jetzt zu dritt :D
Benutzeravatar
Chromanoid
Christian Kulenkampff
Moderator
 
Beiträge: 3720
Registriert: 16.10.2002, 19:39
Wohnort: Lüneburg
Alter Benutzername: atr_23

Re: Anti-Jammer-Thread

Beitragvon joggel » 23.06.2018, 07:06

Glückwunsch :)
bald mit neuem Avatar
Benutzeravatar
joggel
Establishment
 
Beiträge: 1351
Registriert: 06.11.2007, 19:06
Wohnort: Dresden

Re: Anti-Jammer-Thread

Beitragvon Krishty » 25.07.2018, 22:13

Chrome 68 für Windows ist raus, und ist als erste Version mit Clang statt Visual C++ kompiliert.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Krishty
Establishment
 
Beiträge: 6591
Registriert: 26.02.2009, 12:18
Benutzertext: state is the enemy

Re: Anti-Jammer-Thread

Beitragvon Krishty » 27.07.2018, 07:30

Ich hatte vor Jahren mal diese beiden Schnappschüsse gepostet:
2013-08-04 alpha testing.png

2013-08-04 alpha to coverage.png

Der untere implementiert Alpha to Coverage durch Transparency Supersampling. Die Idee stammt aus DirectX 11 Rendering in Battlefield 3, Seite 50.

Mir ist nun klar geworden, dass der Code dort große Grütze ist:
Code: Ansicht erweitern :: Alles auswählen
static const float2 msaaOffsets[4] =
{
  float2(-0.125, -0.375), float2(0.375, -0.125),
  float2(-0.375, 0.125), float2(0.125, 0.375)
};

void psMain(
  out float4 color : SV_Target,
  out uint coverage : SV_Coverage)
{
  float2 texCoord_ddx = ddx(texCoord);
  float2 texCoord_ddy = ddy(texCoord);
  coverage = 0;

  [unroll]
  for (int i = 0; i < 4; ++i)
  {
    float2 texelOffset = msaaOffsets[i].x * texCoord_ddx;
    texelOffset += msaaOffsets[i].y * texCoord_ddy;
    float4 temp = tex.SampleLevel(sampler, texCoord + texelOffset);
    if (temp.a >= 0.5)
      coverage |= 1<<i;
    }
}
Er funktioniert nur mit 4×MSAA. Er funktioniert nur mit D3D11_STANDARD_MULTISAMPLE_PATTERN, nicht mit eigenen MSAA-Mustern oder Nvidias inter-Frame Multisampling. Große Kacke.

Jedenfalls gibt es genau dafür die Intrinsics GetRenderTargetSampleCount() und GetRenderTargetSamplePosition():
Code: Ansicht erweitern :: Alles auswählen
for (int i = 0; i < GetRenderTargetSampleCount(); ++i)
{
  float2 texelOffset = GetRenderTargetSamplePosition(i).x * texCoord_ddx;
  texelOffset += GetRenderTargetSamplePosition(i).y * texCoord_ddy;
  float4 temp = tex.SampleLevel(sampler, texCoord + texelOffset);
  if (temp.a >= 0.5)
    coverage |= 1<<i;
}
Das funktioniert auch noch mit 32× MSAA und eigenen MSAA-Mustern.

Einziger Nachteil ist die Leistung: Die Schleife kann nicht abgerollt werden und höchstwahrscheinlich werden die Intrinsics in Texture Loads umgewandelt. Ist aber heutzutage nebensächlich.

Eine sehr gute Übersicht, was man noch mit Custom Sample Patterns erreichen kann (Alpha Upscaling ohne Ränder <3) gibt es hier: Danger Zone – Stairway to (Programmable Sample Point) Heaven.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Krishty
Establishment
 
Beiträge: 6591
Registriert: 26.02.2009, 12:18
Benutzertext: state is the enemy

Re: Anti-Jammer-Thread

Beitragvon Schrompf » 27.07.2018, 08:16

Nuja, seine Performance-Werte sind jedenfalls trotzdem ne deutliche Verbesserung. Interessanter Lesestoff, danke!
Häuptling von Dreamworlds. Baut an was Neuem. Hilft nebenbei nur höchst selten an der Open Asset Import Library mit.
Benutzeravatar
Schrompf
Thomas Ziegenhagen
Moderator
 
Beiträge: 3759
Registriert: 26.02.2009, 00:44
Wohnort: Dresden
Benutzertext: Lernt nur selten dazu

Re: Anti-Jammer-Thread

Beitragvon Krishty » 27.07.2018, 16:05

Jetzt wo du es sagst … das ist der Gamedev.net-Moderator MJP – der mit dem Rocko-Account, der die Antwort auf jede zweite D3D-Frage hat, die ich google.

Und er hat richtig richtig krasses Zeug dort. Direkt abonniert. Allein seine Artikelserie über Lightmapping mit Spherical Harmonics/Specular/Gaussian Approximation ist ein Kracher:
Bild
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Krishty
Establishment
 
Beiträge: 6591
Registriert: 26.02.2009, 12:18
Benutzertext: state is the enemy

Re: Anti-Jammer-Thread

Beitragvon mrz » 27.07.2018, 19:34

Gerade Outcast, The Legend of Kyrandia 1-3, Alone in the Dark Trilogy, UT GOTY, UT 2004 und Unreal 2 bei GOG.com für ~10 EUR gekauft.
Sind gerade alle stark reduziert, -74% und mehr.
Das schlechte Wetter kann kommen ^^
Schade finde ich nur dass man bei GOG nicht nach Rabatt sortieren kann (wie es z. B. bei Amazon möglich ist).
mrz
 
Beiträge: 40
Registriert: 07.08.2008, 14:34

Re: Anti-Jammer-Thread

Beitragvon Krishty » 27.08.2018, 19:23

Ich habe endlich gelernt, wie man in Batch Variablen richtig Pfade zuweist:

  SET "FOO=%~dp0bin\tool.exe"

Dann steht der Pfad nämlich ohne Anführungszeichen in der Variable, und man ihn problemlos verketten / neu zuweisen / usw; zugleich machen Leerzeichen & Co. keine Probleme, weil der ganze Ausdruck in Anführungszeichen steht.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Krishty
Establishment
 
Beiträge: 6591
Registriert: 26.02.2009, 12:18
Benutzertext: state is the enemy

Re: Anti-Jammer-Thread

Beitragvon Krishty » 02.09.2018, 10:37

Neue Beware-Version: https://www.patreon.com/posts/0-0-3-21149291

Habe gerade keine Zeit zum Anspielen, aber den Twitter- und YouTube-Beiträgen nach begegnet man nun anderen Fahrzeugen, kann ihnen bei der Flucht helfen, und rast durch Tunnel.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Krishty
Establishment
 
Beiträge: 6591
Registriert: 26.02.2009, 12:18
Benutzertext: state is the enemy

Re: Anti-Jammer-Thread

Beitragvon Krishty » 06.09.2018, 00:07

Live for Speed bekommt Specular Lighting und Shadow Maps.

Es ist und bleibt für mich ein Beispiel, dass man akzeptable Grafik auch im zwei-Mann-Team ohne Multi-Layer-Parallax-Displacement-Raytracing hinkriegt.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Krishty
Establishment
 
Beiträge: 6591
Registriert: 26.02.2009, 12:18
Benutzertext: state is the enemy

Re: Anti-Jammer-Thread

Beitragvon Krishty » 23.09.2018, 00:49

Ich habe ein 2003er Savegame für GTA Vice City. Wenn ich es lade und mich ins Auto setze, springt direkt Totos Africa an.

Ich werde es niemals löschen.
seziert Ace Combat, Driver, und S.T.A.L.K.E.R.   —   rendert Sterne
Benutzeravatar
Krishty
Establishment
 
Beiträge: 6591
Registriert: 26.02.2009, 12:18
Benutzertext: state is the enemy

Vorherige

Zurück zu Allgemeines Talk-Brett

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste