Brian
a8590e097e
Cell: make sure state commands aren't split across batches
2008-01-28 11:31:58 -07:00
Brian
3f8a8eada6
Cell: remove unneeded flush(), dead code
2008-01-28 11:31:58 -07:00
Brian
5b5ec94663
Cell: clean-up of render path
...
Finally removed a number of unneeded flush commands. Vertex buffers are
allocated from the general buffer pool, freed by SPUs when done.
Still an occasional failed assertion (invalid batch buffer command)...
2008-01-28 11:31:57 -07:00
Brian
7024019d4e
Cell: checkpoint commit: always inline prim indexes into batch buffer
...
Also, explicit release-vertex-buffer command.
Lots of debug/stale code still in place...
2008-01-28 11:31:57 -07:00
Brian
200dcb4760
Cell: If flushing for swapbuffers, wait for frame completion
2008-01-28 11:31:57 -07:00
Brian
aaea9a121b
Cell: additional debug code, misc clean-up
2008-01-28 11:31:57 -07:00
Brian
2194675196
Cell: generalize the batch buffer code for vertex buffers...
2008-01-28 11:31:57 -07:00
Brian
16ed55c641
gallium: check if surface has defined status in check_clear_depth_with_quad()
...
This was part of Keith's patch from Friday.
2008-01-28 09:23:50 -07:00
Keith Whitwell
82d9063708
gallium: handle flatshading explicitly in clipper stage
...
We can do a better job in the clip stage than just relying on the
brute-force approach of copying colors to all incoming vertices applied
in the flatshade stage.
At very least, it is only necessary to do this in the clipper when a
primitive is actually being clipped.
2008-01-28 15:50:02 +00:00
Keith Whitwell
88858e0468
gallium: add a couple of hardwired vertex fetch functions
2008-01-28 12:40:29 +00:00
Keith Whitwell
99f2976511
gallium: only call vertex/prim queue flush when there is something to flush
2008-01-28 11:12:11 +00:00
Keith Whitwell
a46181044f
gallium: explictly cast double to float in vertex fetch
2008-01-28 10:48:22 +00:00
Keith Whitwell
4141ebdf59
gallium: fill in missing formats for vertex_fetch
2008-01-28 10:46:52 +00:00
Keith Whitwell
5abc8d9e23
gallium: remove dead code from draw_vf*
2008-01-28 10:14:13 +00:00
José Fonseca
09059259be
First stab at hooking draw_vbuf & vf.
...
Emit disabled for now. Tested with softpipe. Only one vertex at a time for now (slow).
2008-01-28 18:46:21 +09:00
José Fonseca
19caf4e4f0
Clone vf module.
2008-01-28 15:48:51 +09:00
José Fonseca
c3f10aef38
Simplify prototypes of draw_vbuf's internal functions.
2008-01-28 15:00:08 +09:00
José Fonseca
3b93c74a8d
Cache the vinfo in vbuf_stage.
2008-01-28 14:51:14 +09:00
José Fonseca
dac124081d
Do refcounting trhoughout all buffer objects, since it is now a base requirement.
2008-01-27 19:22:25 +09:00
José Fonseca
e6c8278c04
Fullfill pipe_winsys->user_buffer_create. Aggregate winsys functions.
2008-01-27 19:20:48 +09:00
Brian
87a8a339d7
Cell: added support for inlined vertex buffers.
...
Small prims are now self-contained in batch buffers when space allows.
2008-01-26 19:38:16 -07:00
Brian
419a5cca34
Cell: added ROUNUP4
2008-01-26 19:31:20 -07:00
Brian
1bab5bd24e
Cell: added support for inlined indexes
...
If there's room in the batch buffer after the rendering command to accomodate
the indexes, put them there rather than in a separate buffer.
2008-01-26 18:30:44 -07:00
Brian
8dc5972908
Cell: added cell_batch_free_space()
2008-01-26 18:27:37 -07:00
Brian
651e8e9a73
gallium: disable unnecessary point/line/tri re-validation in vbuf_flush_indices()
2008-01-26 16:46:52 -07:00
Brian
b717de3238
Cell: remove some old tile code
2008-01-26 16:06:26 -07:00
Brian
ffeae75031
gallium: s/GLuint/unsigned/ to work with gallium when THREADS not defined
2008-01-26 16:05:35 -07:00
Brian
9ef61b9808
gallium: fix a few segfaults/assertions that can happen during context init
2008-01-26 16:04:47 -07:00
Brian
856db7dee6
Cell: fix a recursive flushing bug
2008-01-26 14:15:53 -07:00
Brian
d4bd6ca816
Cell: add check to catch recursive batch flushing
2008-01-26 14:15:53 -07:00
Brian
7f4bec264e
Cell: move ASSERT macro into common.h
2008-01-26 14:15:53 -07:00
José Fonseca
65df024146
gallium: Aggregate all buffer allocation info into a single struct. Obey requested alignment.
2008-01-26 11:46:49 +09:00
José Fonseca
ca01ed45e8
gallium: Make mm buffer manager more portable.
2008-01-26 11:11:08 +09:00
José Fonseca
0afe449bfc
gallium: Remove unneeded headers.
2008-01-26 11:06:23 +09:00
Keith Whitwell
8ee1452e18
gallium: fix linux build
2008-01-26 11:06:01 +09:00
Michal Krol
9387784fbf
gallium: Fix build on Windows.
2008-01-26 11:05:42 +09:00
Michal Krol
0fe428f1df
d3d: Fix build on Windows.
2008-01-26 11:05:24 +09:00
Michal Krol
b8dc2956df
gallium: Fix build on WinXP.
2008-01-26 11:00:49 +09:00
José Fonseca
1d6c98651f
gallium: Use directory name in include.
2008-01-26 10:52:21 +09:00
Michal Krol
6c3d12e374
gallium: Fix build for WinXP.
2008-01-26 10:52:01 +09:00
José Fonseca
7411a84c2b
gallium: Define MALLOC_STRUCT.
2008-01-26 10:35:09 +09:00
Michal Krol
9cbff50cb8
gallium: Fix build on Windows.
2008-01-26 10:33:32 +09:00
Michal Krol
337ebdd8f9
gallium: Fix build on Windows.
2008-01-26 10:33:26 +09:00
Keith Whitwell
027983f585
gallium: restructure vertex fetch code slightly
2008-01-26 10:33:18 +09:00
José Fonseca
c3e4e9260d
gallium: Fix MSVC float/double conversion warning.
2008-01-26 10:33:02 +09:00
José Fonseca
2bca9f6457
gallium: Complete integer types.
2008-01-26 10:32:59 +09:00
Keith Whitwell
f3aa4de034
gallium: minor cleanups to pipe interface
...
- Remove put/get tile, just have users call put_tile_raw, etc directly.
- Remove surface_data call, just map it locally.
2008-01-26 10:32:13 +09:00
Keith Whitwell
1e9e4341e0
gallium: add PIPE_FLUSH_SWAPBUFFERS flag
2008-01-26 10:30:40 +09:00
Keith Whitwell
6d2d41294c
gallium: add notify_swapbuffers_complete, use it to set surfaces to undefined state
2008-01-26 10:30:35 +09:00
Keith Whitwell
596a92ee75
gallium: specialize glFlush vs other flush semantics
2008-01-26 10:30:31 +09:00