Gl.drawbuffers с drawbuffersenum.none cashes openglgC#

Место общения программистов C#
Ответить
Anonymous
 Gl.drawbuffers с drawbuffersenum.none cashes openglg

Сообщение Anonymous »

Я использую один шейдер, который пишет в 5 различных текстурах, связанных с FBO. Иногда я хочу игнорировать выходные значения, то есть в месте = 0 . Я установил это с этим: < /p>
GL.DrawBuffers(5, new[] {
DrawBuffersEnum.None,
DrawBuffersEnum.ColorAttachment5,
DrawBuffersEnum.ColorAttachment1,
DrawBuffersEnum.None,
DrawBuffersEnum.None,
});
< /code>
Согласно спецификации GLSL, это должно игнорировать вывод для местоположения 0, 3 и 4, но у меня есть Silent Opengl Crash: после рендеринга не работает. Журнал отладки OpenGL ничего не дает, как и Geterror. < /P>
Чего мне не хватает? Путь: < /p>
_textureID = new int[count];
GL.GenTextures(count, _textureID);
for (int i = 0; i < count; i++)
{
GL.BindTexture(TextureTarget.Texture2D, _textureID);

if (alpha)
GL.TexImage2D(TextureTarget.Texture2D, 0, PixelInternalFormat.Rgba32f, TextureSize.Width,
TextureSize.Height, 0, PixelFormat.Rgba, PixelType.Float, IntPtr.Zero);
else
GL.TexImage2D(TextureTarget.Texture2D, 0, PixelInternalFormat.Rgb32f,
TextureSize.Width, TextureSize.Height, 0, PixelFormat.Rgb, PixelType.Float, IntPtr.Zero);

GL.TexParameter(TextureTarget.Texture2D, TextureParameterName.TextureMinFilter, (int)Filter);
GL.TexParameter(TextureTarget.Texture2D, TextureParameterName.TextureMagFilter, (int)Filter);
GL.TexParameter(TextureTarget.Texture2D, TextureParameterName.TextureWrapS, (int)TextureWrapMode.ClampToBorder);
GL.TexParameter(TextureTarget.Texture2D, TextureParameterName.TextureWrapT, (int)TextureWrapMode.ClampToBorder);
}
< /code>
и fbo: < /p>
GL.GenFramebuffers(1, out _fboID);

//attach color textures
GL.BindFramebuffer(FramebufferTarget.FramebufferExt, _fboID);
for (int i = 0; i < attachments; i++)
GL.FramebufferTexture2D(FramebufferTarget.FramebufferExt, FramebufferAttachment.ColorAttachment0 + i,
textureTarget, _textureID, 0);


Подробнее здесь: https://stackoverflow.com/questions/796 ... hes-opengl
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»