Commit Graph

12616 Commits

Author SHA1 Message Date
Brian fbe68bf6b2 Simplify draw module's vertex_info.
No longer store the vertex header and clip pos info in the draw module's
vertex_info.  The vertex_info just describes the data[] elements.
This simplifies the code in several places.
2007-11-21 15:40:20 -07:00
Brian 5a6017d496 add PIPE_FORMAT_Z24_S8 support to softpipe patsh 2007-11-20 08:36:06 -07:00
Brian 0191570f02 initial support for PIPE_FORMAT_Z24_S8 2007-11-20 08:30:10 -07:00
Brian c4f9fbb57f optimize earlyz_quad(), add comments, remove unneeded #includes 2007-11-19 18:16:07 -07:00
Brian 0204cbb4f1 optimize linear_interpolation(), perspective_interpolation() functions 2007-11-19 18:15:21 -07:00
Michal Krol 7f718f0476 Implement early depth test.
Early depth test is enabled when depth test is enabled and
alpha test is disabled and fragment shader does not write
depth.
The early-z is implemented by moving the depth test stage
just before the fragment shader stage and prepending it
with an earlyz stage, introduced with this commit.
The earlyz stage prepares the quad->outputs.depth for
the following depth test stage by interpolating Z position,
just as the fragment shader would do.
2007-11-18 18:20:20 +00:00
José Fonseca ca7f68a7cf Fix typo 2007-11-17 15:39:36 +00:00
José Fonseca dec60d33b2 Proper fence reference counting. 2007-11-17 15:39:36 +00:00
Brian 34a00276c7 more convenient debug code 2007-11-16 17:13:26 -07:00
Brian aa880bdfa0 Reimplement glRasterPos using the private 'draw' module. 2007-11-16 17:13:01 -07:00
Brian 6a1154bab0 adjustments so st_feedback_draw_vbo() can be used for glRasterPos 2007-11-16 17:12:22 -07:00
Brian 95f066fc54 note problem with fragment coord Y orientation 2007-11-16 10:39:08 -07:00
Brian f361edae5d added a clip-bypass flag to rasterizer state 2007-11-16 09:31:25 -07:00
José Fonseca 90dd0cb822 Include fences in the i915simple winsys interface. 2007-11-15 17:07:50 +00:00
Brian 193c85ec7a comments, assertions 2007-11-09 07:55:08 -07:00
Brian 50a56cd755 minor simplifcation in vertex_fetch() 2007-11-09 07:55:08 -07:00
Alan Hourihane 33cf20bb45 remove duplicate init func 2007-11-09 09:21:40 +00:00
Brian 6446986321 Reorganize user-space vertex fields in draw_context into 'user' group.
This sub-struct collects the incoming user-provided data/pointers in one place.
Ex: draw->mapped_vbuffer becomes draw->user.vbuffer, etc.
2007-11-08 17:07:12 -07:00
Brian 990fe4c0bf remove unneeded #includes, added assertion in draw_compute_vertex_size() 2007-11-08 16:55:29 -07:00
Brian ec0c5e59c2 Remove unneeded header, draw_prim.h 2007-11-08 16:37:25 -07:00
Brian 1574611faf Fix minor logic error in get_queued_prim() which caused flushing when there was still room in the prim queue. 2007-11-08 16:36:00 -07:00
Brian 48863cdd0a new comments 2007-11-08 16:32:24 -07:00
Brian 03f4a487dd remove unneeded #includes 2007-11-08 16:26:55 -07:00
Brian 03484d0aae comments, remove unneeded #includes 2007-11-08 16:25:17 -07:00
Brian f66fed57e6 For TGSI_TEXTURE_2D/RECT, need to provide 3 coords (STP) in case shadow compare mode is enabled. 2007-11-08 15:02:42 -07:00
Brian 3d8c05f732 Implement shadow comparisons. 2007-11-08 15:01:13 -07:00
Brian a7be1c5ac2 use pipe_surface_reference() in sp_tile_cache_set_surface() 2007-11-08 15:00:11 -07:00
Brian c0b2714945 simplify depth_value(), return proper value for Z16 format 2007-11-08 14:40:29 -07:00
Brian cee1d1328a fix bad width/height code in softpipe_clear() 2007-11-08 13:17:43 -07:00
Brian ae9fe0f981 Remove TGSI_OPCODE_TXP
Use TGSI_OPCODE_TEX with ExtDivide=TGSI_EXTSWIZZLE_W instead.
2007-11-08 11:44:12 -07:00
Brian fa63d6d32c check for divide by W flag when translating TGSI_OPCODE_TEX (fixes projected textures) 2007-11-08 11:39:42 -07:00
Brian 02f7f46fa1 new init_renderbuffer_bits() helper 2007-11-08 11:38:50 -07:00
Brian 89b7b187dd tweak anisotropic filtering code 2007-11-08 10:10:35 -07:00
Brian 548eddc964 enable PIPE_CAP_TEXTURE_SHADOW_MAP (but not quite working yet) 2007-11-08 10:08:24 -07:00
Brian dca71c40ea remove translate_compare_func(), use i915_translate_compare_func() 2007-11-08 10:07:57 -07:00
Brian 8ce6d6b97e move EXT_shadow_funcs assignment 2007-11-08 09:33:33 -07:00
Brian a736670219 set sampler state for shadow test 2007-11-08 09:33:13 -07:00
Brian b18763141d Replace gl_stencil_func_to_sp() and gl_depth_func_to_sp() with st_compare_func_to_pipe() 2007-11-08 09:31:57 -07:00
Brian 2c11846268 Fix some issues hit when rendering to a depth-only renderbuffer (shadowtex).
Added 16bpp case to translate_depth_format().
Added framebuffer_size() to determine framebuffer size.
2007-11-08 09:16:14 -07:00
Brian 98c539d337 in check_end_texture_render(), test for presence of a renderbuffer and texobj 2007-11-08 09:14:43 -07:00
Brian e2593bb163 remove unneeded #include 2007-11-08 08:52:36 -07:00
Brian 44254b9248 Added pipe->get_paramf() to query float limits.
So far max point size, line width, texture anistopy and lod bias.
2007-11-08 08:48:14 -07:00
Brian 95128c1d4c check for fence==NULL in intel_batchbuffer_finish(), fixes glxinfo crash on exit 2007-11-08 08:48:14 -07:00
Michel Dänzer 3871d2882a Rename struct field 'private' to 'priv'.
This broke the LLVM build because 'private' is a C++ keyword.
2007-11-08 13:10:18 +01:00
Brian 6400658d71 fix warning 2007-11-07 17:29:14 -07:00
Brian 74df1f4adb update flush/fence comments for i915_flush() 2007-11-07 17:17:32 -07:00
Brian 3fe055ec92 Remove winsys->wait_idle(), subsumed by pipe->flush().
Connect intel_i915_batch_finish() into i915_winsys, just like intel_i915_batch_flush().
Call i915_winsys->batch_finish() in response to pipe->flush(PIPE_FLUSH_WAIT).
Now all the batchbuffer/fence code is in one place and a little cleaner.
2007-11-07 17:16:47 -07:00
Brian ae44a81d1b New PIPE_FLUSH_WAIT flag for pipe->flush().
The state tracker doesn't have to directly call winsys->wait_idle() anymore.
glFlush and glFinish both go through pipe->flush() now.
2007-11-07 16:59:37 -07:00
Brian 10c62bf068 Remove context dependencies in winsys layer.
The winsys object is now per-screen and shared by multiple contexts.
The regionPool is now part of the i915 winsys layer.
The winsys wait_idle() and flush_frontbuffer() funcs will get more attention...
2007-11-07 16:08:04 -07:00
Brian 03cfeb31af enable GL_ARB/NV_point_sprite together 2007-11-07 16:08:04 -07:00