Ich habe seit Tagen gekämpft, um irgendwelche Ressourcen zu finden, die mir helfen, einen einfachen Glow/Blur Shader mit High Level Shader Language und DirectX 9 Managed Libraries zu schreiben.Einfacher HLSL Glow/Blur Effekt in DirectX9
Alles, was ich tun muss, ist ein Array von CustomVertex.TransformedColored
Vertices als einfache Linien gezeichnet und dann durch den HLSL-Effekt verschwommen/leuchtet.
Ich habe das Internet für etwa drei Tage jetzt mit einigen Ergebnissen gesucht, aber ich kann einfach kein wirklich gutes Tutorial oder Beispiel finden. Ich habe ein grundlegendes Verständnis von HLSL, aber ich verstehe es nicht genug, um herauszufinden, wie man diesen Shader schreibt (ich habe das Kapitel HLLL auch in 3 DirectX-Büchern gelesen).
Hier einig (verkürzt) Code:
CustomVertex.TransformedColored[] glowVertices = new CustomVertex.TransformedColored[4];
glowVertices[0] = new CustomVertex.TransformedColored(random.Next(this.render.Width), random.Next(this.render.Height), 1, 1, Color.Cyan.ToArgb());
glowVertices[1] = new CustomVertex.TransformedColored(random.Next(this.render.Width), random.Next(this.render.Height), 1, 1, Color.Blue.ToArgb());
glowVertices[2] = new CustomVertex.TransformedColored(random.Next(this.render.Width), random.Next(this.render.Height), 1, 1, Color.Cyan.ToArgb());
glowVertices[3] = new CustomVertex.TransformedColored(random.Next(this.render.Width), random.Next(this.render.Height), 1, 1, Color.Blue.ToArgb());
this.device.BeginScene();
int passes = this.glowEffect.Begin(0);
for (int i = 0; i < passes; i++)
{
this.glowEffect.BeginPass(i);
this.device.DrawUserPrimitives(PrimitiveType.LineStrip, glowVertices.Length - 1, glowVertices);
this.glowEffect.EndPass();
}
this.glowEffect.End();
this.device.EndScene();
Ich glaube, ich bin für Hilfe zu einem bestimmten Teil von HLSL nicht so sehr suchen, da die Anzahl der Fragen und die Menge an Code ich hätte Post Ich suche wirklich nur Hilfe bei der Suche nach Ressourcen!
Ja, ich denke ich war nicht zu klar. Ich bin mir dessen bewusst, was Sie gesagt haben, ich rendere die Linien zu einer Textur, verwende sie auf ein Quad und rendere dieses Quad mit meinem HLSL. Ich denke, was ich suche, ist der HLSL-Aspekt, der damit einhergehen würde. Danke für die Bloom-Probe, ich werde es untersuchen :) – tbridge
Das Beispiel erwies sich als sehr nützlich. Endlich ein einfaches/mächtiges HLSL-Beispiel, das keine hundert Zeilen-Shader hatte. – tbridge