search for: clear_with_quad

Displaying 5 results from an estimated 5 matches for "clear_with_quad".

2009 Mar 31
1
(patch) Gallium NV50: honor bypass_vs_clip_and_viewport
When trying out the Gallium3D NV50 driver (curiosity) with a small OpenGL program that renders 2 rotating triangles partially occluding each other I noticed that depth buffer clearing by rendering a quad (st_cb_clear.c/clear_with_quad) didn't work properly. I found this was because the rasterizer state that is set by clear_with_quad has bypass_vs_clip_and_viewport = 1 which would only be commited if the viewport was marked dirty, which it isn't when only binding a new rasterizer state. I let the depth buffer clear befo...
2009 Apr 08
0
[PATCH/Gallium] nv50: update nv50_clear to new interface
...fb.zsbuf != NULL)); + nv50->dirty = 0; + fb.nr_cbufs = 0; - if (ps->format == PIPE_FORMAT_Z24S8_UNORM || - ps->format == PIPE_FORMAT_Z16_UNORM) { - fb.nr_cbufs = 0; - fb.zsbuf = ps; + if (buffers & PIPE_CLEAR_COLOR) { + /* Should we clear all color buffers (nv40 doesn't), clear_with_quad + * from the mesa state tracker seems to ? */ + for (unsigned i = 0; i < s_fb.nr_cbufs; ++i) { + unsigned color; + ps = s_fb.cbufs[i]; + + if (ps->format == PIPE_FORMAT_A8R8G8B8_UNORM) { + fb.cbufs[fb.nr_cbufs++] = ps; + } else { + util_pack_color(rgba, ps->format, &co...
2009 May 11
1
[PATCH] nv50/gallium: small fix for nv50_transfer_rect_m2mf (sy <-> dy)
..._state_validate (but the translation - inconsistenly - remains unchanged). Now one could do so_data (so, fui(-(nv50->viewport.translate[1] - nv50->framebuffer.height)); as well, which would make the viewport transformation correct, but the ST still outputs the wrong vertex coordinates for clear_with_quad. To fix both things, one could just let st_fb_orientation in st_context.h return Y_0_BOTTOM, but then glCopyTexSubImage2D (calling the appropriate function in st_cb_texture.c) flips the image and copies from the wrong offset, since offset 0 in memory is, well, top, as opposed to bottom like it see...
2009 Jul 12
0
[PATCH 2/3] nv50: fix viewport transform
We need to invert the viewport translate/scale parameters when the state tracker thinks we have Y_0_TOP. If these cases, we have do to bypass mode by setting an identity viewport transform for x, z and inversion for y, or p.e. clear_with_quad won't work correctly. Clipping for xy in NDC space needs to be disabled then. --- src/gallium/drivers/nv50/nv50_context.h | 1 + src/gallium/drivers/nv50/nv50_state_validate.c | 55 +++++++++++++++++------- 2 files changed, 40 insertions(+), 16 deletions(-) diff --git a/src/galliu...
2018 Mar 07
3
[Bug 105382] New: segfault in nouveau_scratch_data when using 2 nouveau cards
...e8c340, x0=x0 at entry=-1, y0=y0 at entry=-1, x1=x1 at entry=0.00885415077, y1=y1 at entry=1, z=1, s0=s0 at entry=0, t0=t0 at entry=0, s1=s1 at entry=0, t1=t1 at entry=0, color=color at entry=0x1dc781c, num_instances=num_instances at entry=1) at state_tracker/st_draw.c:489 #9 0x00007f5be03b2087 in clear_with_quad (clear_buffers=<optimized out>, ctx=0x1dc5d60) at state_tracker/st_cb_clear.c:297 #10 0x00007f5be03b2087 in st_Clear (ctx=0x1dc5d60, mask=16) at state_tracker/st_cb_clear.c:475 #11 0x00007f5bf0310811 in _cogl_framebuffer_gl_clear (framebuffer=0x1ee3000, buffers=<optimized out>, red=<...