Handful of random things bugging me.

1) Team Fortress 2 (and probably other Source games, haven't really
checked) request some fairly large VBOs and indexbufs, beyond what I
can provide. Is there any good example code on how to use
translate/indices to slice up buffers for multiple render runs?

2) progs/tests/drawbuffers and progs/tests/drawbuffers2, and possibly
others, segfault with both softpipe and the HW driver at
sl_pp_version.c:45. I think there's some codegen going on there? At
any rate, if anybody has any hints on how to solve it, that'd be nice.

3) Is there still interest in the translate helper I proposed a couple
weeks ago? It would take a list of "safe" formats, a list of VBO
elements, and a list of VBOs (corresponding), and return a list of VBO
elements and VBOs that only contain those "safe" formats. State
trackers would call a pipe_screen (or pipe_context?) method with just
the VBOs and elements, and it would fix them up without exposing the
list of safe formats.

4) user_buffer_create doesn't appear to see an incredible amount of
usage. Would it be too horrible to make *all* buffer allocations
delayed, transparently? I ask because apparently the PIPE_BUFFER_USAGE
flags (PIXEL, CONSTANT, etc.) are "optimization hints" and not
guarantees, which is very annoying since I need to prevent
constantbufs from ever becoming BO-backed...

5) How const is const for CSO? e.g. r300_state.c:498, we're not
copying pipe_framebuffer_state but just the pointer. It appears to
work, but is it actually safe? Also, on the topic of framebuffers, is
it okay to refuse to render if no MRTs or Z buffer are present?

6) GL_ARB_shadow_ambient and texture compare-fail values. A comment in
the fragment constants reads, "Since Gallium doesn't support
GL_ARB_shadow_ambient, this is always (0,0,0,0), right?" Another
comment reads, "Gallium doesn't provide us with any information
regarding this mode, so we are screwed. I'm setting 0 = LUMINANCE,"
above the texture compare modes. I don't really like that section of
code, but it probably can't get cleaner, right?

7) Is there more information on the dual-source blend modes? I'm not
sure if I can do them; might have to bug AMD for the register values.

I think that's it for now. Sorry for all the questions, but I'm really
starting to get a good handle on the hardware and interface, and I'm
ready to start beating the classic driver in serious benchmarks; I
think that r300's probably the most mature driver alongside nv50 and
maybe nv40.

~ C.

-- 
Only fools are easily impressed by what is only
barely beyond their reach. ~ Unknown

Corbin Simpson
<mostawesomed...@gmail.com>

------------------------------------------------------------------------------
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
_______________________________________________
Mesa3d-dev mailing list
Mesa3d-dev@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev

Reply via email to