José Fonseca
6f75de06ff
gallium: Allow draw_vf usage to be controlled at runtime.
2008-01-29 18:01:40 +09:00
José Fonseca
3d3f7cf06e
gallium: Add extern keyword to global.
2008-01-29 18:01:40 +09:00
Brian
59e7bfd5ac
Cell: add OPT_FLAGS var
2008-01-28 18:18:46 -07:00
Brian
64935c8751
Cell: move cmd_render() into new spu_render.c file
2008-01-28 18:18:46 -07:00
Brian
4bede9219b
Cell: add a few null texture tests
2008-01-28 18:18:46 -07:00
Brian
e2406b4788
Cell: compute min index referenced in draw command, use it to reduce size of vertex data payload
2008-01-28 18:18:46 -07:00
Brian
25105276b3
Cell: minor optimization for flat shading
2008-01-28 18:18:46 -07:00
Brian
425f270fcb
Cell: basic texture mapping
...
Texture images are tiled in PPU code. SPUs use a texture cache for getting
texels from textures.
This is very rough code, but demos/texcyl.c works.
2008-01-28 18:18:46 -07:00
Brian
c2372cc748
Cell: initial texture cache/sampling code
2008-01-28 18:18:46 -07:00
Brian
41899c70a7
Cell: emit state in cell_clear_surface() if dirty.
...
Without this a program that does nothing but glClear() doesn't work. We need
the framebuffer state.
2008-01-28 18:18:46 -07:00
Brian
043fc00a60
Cell: re-enable bounding boxes
...
The geometry bounding box is used to restrict rasterization to just those
tiles that are relevant.
Note another dummy field had to be added to the cell_command_render struct.
Apparently, every 4th word in a struct is susceptible to corruption in some
circumstances. Might be a compiler bug.
2008-01-28 18:18:46 -07:00
José Fonseca
1cc0b0dda7
gallium: Use GALLIUM_ prefix for env vars.
2008-01-29 09:42:03 +09:00
José Fonseca
93d727eea7
gallium: Use CALLOC for pb_buffer to ensure that all fields of pipe_buffer are initiallized.
2008-01-29 09:41:21 +09:00
José Fonseca
f3d0882c02
gallium: Remove direct dependencies to mesa internals.
...
_mesa_exec_free is still being called. More invasive refactoring is necessary to clean it out.
2008-01-29 09:34:09 +09:00
Keith Whitwell
1e2d6b1b82
gallium: remove dead vars, code
2008-01-28 20:58:26 +00:00
Keith Whitwell
c50ba44095
gallium: fix typos in hardwired fetch path
2008-01-28 20:58:26 +00:00
Brian
bd299093ec
push out far clip plane to 200
2008-01-28 12:42:37 -07:00
Brian
ba083bae69
Added d/D keys to change viewing distance, 'a' to toggle animation
2008-01-28 12:37:35 -07:00
Brian
3d1b0f4c57
Cell: additional assertions
2008-01-28 11:31:58 -07:00
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