D3D11 Font Rendering
-
Jap, ich rendere exakt mit
float vertices []= { 0.f, 0.f, 0.f, 0.f, width, 0.f, 1.f, 0.f, 0.f, height, 0.f, 1.f, width, height, 1.f, 1.f, };
Edit: Aha, wenn ich das hier im Pixel Shader mache
return float4(tex.Sample(samp, input.tc).a, 0.0, 0.0, 1.0);
verschwinden die Artefakte! Es muss also irgendwie am Alpha-Blending liegen.
-
Achja, aber dein BackBuffer hatte ja kein SRGB Format. Mach deine SwapChain mal mit DXGI_FORMAT_R8G8B8A8_UNORM_SRGB...
-
Scheint nichts zu ändern. (Siehe Edit von meinem letzten Beitrag)
-
Ich nehme an, du renderst direkt in den BackBuffer? Hast du es auch an allen relevanten Stellen geändert (CreateSwapChain als auch ResizeBuffers)?
-
Ja, wie gesagt, siehe mein edit. Ich sehe nicht mehr wirklich wie es etwas anderes als das Alpha-Blending sein kann, wenn die Artefakte verschwinden sobald ich den Wert direkt als Farbe nehme.
Edit: Man könnte jetzt auch denken das hier sollte funktionierenfloat4 ps_main(ps_input input) : SV_TARGET { float a = tex.Sample(samp, input.tc).a; return float4(color.r * a, color.g * a, color.b * a, color.a); }
Und ja, die Artefakte verschwinden, aber letztlich ist das leider unbrauchbar, weil die Quads überlappen.
-
blend_desc.AlphaToCoverageEnable = FALSE;
Fixed
-
lol, ok, das hätt mir auch auffallen können, damit ist alles klar
-
Zumindest steht hier jetzt ne halbe Anleitung zu glyph fonts drin, falls mal wieder jemand fragt.
-
quasi alphatest (den teil hast du doch heimlcih dazu editiert :P)
dennoch bleibt das problem was dot sagte, beim richtigen 1:1 mappen muss point und bilinear gleiche resultate liefern.
-
rapso schrieb:
quasi alphatest (den teil hast du doch heimlcih dazu editiert :P)
Das stimmt - allerdings bereits nach meinem 2. Post hier, in dem ich auch darauf hingewiesen hab.
rapso schrieb:
dennoch bleibt das problem was dot sagte, beim richtigen 1:1 mappen muss point und bilinear gleiche resultate liefern.
Das sieht mittlerweile eigentlich auch ziemlich gleich aus. Hm. Vielleicht habe ich mir das beim ersten mal auch nur eingebildet, auch wenn es eigentlich recht deutlich war. Die kleineren Schriftarten (consolas 14) sind allerdings schon am Rand des Lesbaren, das dürfte wohl aber einfach daran liegen, dass ich kein sub-pixel-AA verwende. (Danke dot für den Hinweis btw.)
-
cooky451 schrieb:
rapso schrieb:
quasi alphatest (den teil hast du doch heimlcih dazu editiert :P)
Das stimmt - allerdings bereits nach meinem 2. Post hier, in dem ich auch darauf hingewiesen hab.
lange nach meiner antwort ;), waere zum debuggen von dir nuetzlich gewesen