mesa.git
17 years agoAdd some FLUSH_CURRENT() calls.
Brian [Wed, 17 Oct 2007 22:18:45 +0000 (16:18 -0600)]
Add some FLUSH_CURRENT() calls.

Without these we can find ourselves in _mesa_load_state_parameters()
computing derived lighting/material values whhen the current material
properties haven't been updated from the VBO.
This may be a somewhat wide-spread problem that needs more attention...

17 years agoAssert that there's no outstanding current state that needs to be flushed from the...
Brian [Wed, 17 Oct 2007 21:59:59 +0000 (15:59 -0600)]
Assert that there's no outstanding current state that needs to be flushed from the vbo in _mesa_load_state_parameters().

Several of the state parameters use current state (such as materials).
Need to make sure those values are not stale.

17 years agoformatting fix
Brian [Wed, 17 Oct 2007 20:57:15 +0000 (14:57 -0600)]
formatting fix

17 years agofix addressing error in read_stencil_pixels()
Brian [Wed, 17 Oct 2007 20:56:55 +0000 (14:56 -0600)]
fix addressing error in read_stencil_pixels()

17 years agoReplace repeat_remainder() with simpler macro that just casts args to unsigned.
Brian [Wed, 17 Oct 2007 20:29:12 +0000 (14:29 -0600)]
Replace repeat_remainder() with simpler macro that just casts args to unsigned.

17 years agoreorder params to get_texel()
Brian [Wed, 17 Oct 2007 20:16:42 +0000 (14:16 -0600)]
reorder params to get_texel()

17 years agoimplement 3D texture sampling
Brian [Wed, 17 Oct 2007 20:13:21 +0000 (14:13 -0600)]
implement 3D texture sampling

17 years agoWhen in GL_FEEDBACK mode, make sure we emit color and texcoord registers.
Brian [Wed, 17 Oct 2007 18:42:29 +0000 (12:42 -0600)]
When in GL_FEEDBACK mode, make sure we emit color and texcoord registers.

17 years agogenerate selection hit if in selection mode and pos is not clipped
Brian [Wed, 17 Oct 2007 18:32:21 +0000 (12:32 -0600)]
generate selection hit if in selection mode and pos is not clipped

17 years agoUpdate framebuffer state in response to _NEW_COLOR (set by glDrawBuffer)
Brian [Wed, 17 Oct 2007 18:27:40 +0000 (12:27 -0600)]
Update framebuffer state in response to _NEW_COLOR (set by glDrawBuffer)

17 years agoFix viewport Z scale/bias to get the right Z values from drawing the quad.
Brian [Wed, 17 Oct 2007 17:24:06 +0000 (11:24 -0600)]
Fix viewport Z scale/bias to get the right Z values from drawing the quad.

17 years agodon't crash if texture border is used (unsupported for now)
Brian [Wed, 17 Oct 2007 16:52:30 +0000 (10:52 -0600)]
don't crash if texture border is used (unsupported for now)

17 years agofix square point rasterization
Brian [Wed, 17 Oct 2007 16:51:55 +0000 (10:51 -0600)]
fix square point rasterization

17 years agolower clamp bound for UNCLAMPED_FLOAT_TO_SHORT() is -1
Brian [Wed, 17 Oct 2007 00:46:14 +0000 (18:46 -0600)]
lower clamp bound for UNCLAMPED_FLOAT_TO_SHORT() is -1

17 years agouse new st_clear_accum_buffer() function
Brian [Wed, 17 Oct 2007 00:45:42 +0000 (18:45 -0600)]
use new st_clear_accum_buffer() function

17 years agoNew st_clear_accum_buffer() function (can't use pipe->clear() since it doesn't handle...
Brian [Wed, 17 Oct 2007 00:45:28 +0000 (18:45 -0600)]
New st_clear_accum_buffer() function (can't use pipe->clear() since it doesn't handle negative color values)

Also, remove unneeded clamping in the accum ops.

17 years agofront/back determination was wrong
Brian [Tue, 16 Oct 2007 23:59:24 +0000 (17:59 -0600)]
front/back determination was wrong

17 years agoremove debug assertion
Brian [Tue, 16 Oct 2007 23:56:13 +0000 (17:56 -0600)]
remove debug assertion

17 years agoUpdate mask calculations for point drawing.
Brian [Tue, 16 Oct 2007 23:43:41 +0000 (17:43 -0600)]
Update mask calculations for point drawing.

17 years agoFix broken polygon stippling (see comments for details).
Brian [Tue, 16 Oct 2007 23:37:46 +0000 (17:37 -0600)]
Fix broken polygon stippling (see comments for details).

17 years agoRedefine QUAD_TOP_LEFT, TOP_RIGHT, etc. to reflect Y=0=TOP raster layout.
Brian [Tue, 16 Oct 2007 23:36:37 +0000 (17:36 -0600)]
Redefine QUAD_TOP_LEFT, TOP_RIGHT, etc. to reflect Y=0=TOP raster layout.

17 years agofix perspective-interpolated attribs for points, liens
Brian [Tue, 16 Oct 2007 18:04:16 +0000 (12:04 -0600)]
fix perspective-interpolated attribs for points, liens

17 years agofix blend term translation bug, rename some funcs
Brian [Tue, 16 Oct 2007 14:53:08 +0000 (08:53 -0600)]
fix blend term translation bug, rename some funcs

17 years agofinish remaining blend modes
Brian [Tue, 16 Oct 2007 01:14:40 +0000 (19:14 -0600)]
finish remaining blend modes

17 years agofix incorrect register in get_eye_normal() for rescale_normals case
Brian [Mon, 15 Oct 2007 23:59:16 +0000 (17:59 -0600)]
fix incorrect register in get_eye_normal() for rescale_normals case

17 years agoGL_UNSIGNED_BYTE indexes
Brian [Mon, 15 Oct 2007 23:27:54 +0000 (17:27 -0600)]
GL_UNSIGNED_BYTE indexes

17 years agoimplement logicop
Brian [Mon, 15 Oct 2007 23:26:01 +0000 (17:26 -0600)]
implement logicop

17 years agoremove commented out #include
Brian [Mon, 15 Oct 2007 21:31:24 +0000 (15:31 -0600)]
remove commented out #include

17 years agocheck for width or height = 0 before calling driver Bitmap func
Brian [Mon, 15 Oct 2007 21:30:45 +0000 (15:30 -0600)]
check for width or height = 0 before calling driver Bitmap func

17 years agoFix useabs logic in build_fog().
Brian [Mon, 15 Oct 2007 21:30:13 +0000 (15:30 -0600)]
Fix useabs logic in build_fog().

We always need to compute the absolute value of the fogcoord if we're
passing it through for per-fragment fog.

17 years agoremove feedback hack
Brian [Mon, 15 Oct 2007 21:05:39 +0000 (15:05 -0600)]
remove feedback hack

17 years agoUndo prev changes.
Brian [Mon, 15 Oct 2007 21:05:08 +0000 (15:05 -0600)]
Undo prev changes.

17 years agosetup vertex format for GL_FEEDBACK mode
Brian [Mon, 15 Oct 2007 19:42:56 +0000 (13:42 -0600)]
setup vertex format for GL_FEEDBACK mode

17 years agoGL_SELECT mode works now
Brian [Mon, 15 Oct 2007 19:25:13 +0000 (13:25 -0600)]
GL_SELECT mode works now

17 years agoformatting
Brian [Mon, 15 Oct 2007 19:06:53 +0000 (13:06 -0600)]
formatting

17 years agocall pipe->set_vertex_buffer() after drawing/unreferencing.
Brian [Mon, 15 Oct 2007 19:05:15 +0000 (13:05 -0600)]
call pipe->set_vertex_buffer() after drawing/unreferencing.

This fixes potential a stale reference to vertex buffers.
Fixes cubemap demo on i915.

17 years agofix logic for printing extended swizzles
Brian [Mon, 15 Oct 2007 17:48:20 +0000 (11:48 -0600)]
fix logic for printing extended swizzles

17 years agoadd 'normalized_coords' field to pipe_sampler_state
Brian [Mon, 15 Oct 2007 17:47:53 +0000 (11:47 -0600)]
add 'normalized_coords' field to pipe_sampler_state

This controls whether texcoords are interpreted as-is or scaled up from [0,1].
Fixes glDrawPixels/glBitmap problems on i915 when image is non power-of-two.
Also, cleans up the CSO sampler state for i915 a bit.

17 years agofeedback/rasterpos fix-ups
Brian [Mon, 15 Oct 2007 17:28:25 +0000 (11:28 -0600)]
feedback/rasterpos fix-ups

17 years agoChange 'drawing' field to boolean.
Brian [Mon, 15 Oct 2007 16:30:38 +0000 (10:30 -0600)]
Change 'drawing' field to boolean.

17 years agoremove unused includes
Brian [Mon, 15 Oct 2007 16:30:09 +0000 (10:30 -0600)]
remove unused includes

17 years agosimplify KIL usage for bitmap fragprog
Brian [Mon, 15 Oct 2007 16:28:18 +0000 (10:28 -0600)]
simplify KIL usage for bitmap fragprog

17 years agocheck for extended swizzles, added TGSI_OPCODE_KILP
Brian [Mon, 15 Oct 2007 16:27:12 +0000 (10:27 -0600)]
check for extended swizzles, added TGSI_OPCODE_KILP

17 years agoadded print_texkil_op()
Brian [Mon, 15 Oct 2007 16:25:42 +0000 (10:25 -0600)]
added print_texkil_op()

17 years agoimplement accum ops
Brian [Sun, 14 Oct 2007 18:34:55 +0000 (12:34 -0600)]
implement accum ops

17 years agoimplement put_tile()
Brian [Sun, 14 Oct 2007 18:32:39 +0000 (12:32 -0600)]
implement put_tile()

17 years agoaccum buffer support
Brian [Sun, 14 Oct 2007 17:55:45 +0000 (11:55 -0600)]
accum buffer support

17 years ago16-bit rgba surface/format for accum
Brian [Sun, 14 Oct 2007 17:55:31 +0000 (11:55 -0600)]
16-bit rgba surface/format for accum

17 years ago16-bit RGBA surface format for accum buffers
Brian [Sun, 14 Oct 2007 17:53:15 +0000 (11:53 -0600)]
16-bit RGBA surface format for accum buffers

17 years agoAdded accum function/files.
Brian [Sun, 14 Oct 2007 17:52:00 +0000 (11:52 -0600)]
Added accum function/files.

17 years agoGL_STENCIL_INDEX support
Brian [Sat, 13 Oct 2007 18:29:11 +0000 (12:29 -0600)]
GL_STENCIL_INDEX support

17 years agoGL_STENCIL_INDEX support
Brian [Sat, 13 Oct 2007 18:28:53 +0000 (12:28 -0600)]
GL_STENCIL_INDEX support

17 years agoformat info for Z16/Z32
Brian [Sat, 13 Oct 2007 18:28:34 +0000 (12:28 -0600)]
format info for Z16/Z32

17 years agoinequality tests were backward
Brian [Sat, 13 Oct 2007 18:27:10 +0000 (12:27 -0600)]
inequality tests were backward

17 years agoglDrawPixels support for GL_DEPTH_COMPONENT
Brian [Sat, 13 Oct 2007 17:11:59 +0000 (11:11 -0600)]
glDrawPixels support for GL_DEPTH_COMPONENT

17 years agoCheck texture format in get_texel() to handle depth textures.
Brian [Sat, 13 Oct 2007 17:11:11 +0000 (11:11 -0600)]
Check texture format in get_texel() to handle depth textures.

17 years agoget_tile() of Z surfaces returns floats now
Brian [Sat, 13 Oct 2007 15:05:20 +0000 (09:05 -0600)]
get_tile() of Z surfaces returns floats now

17 years agoadded z16/z32_git_tile(), change s8z24_get_tile() to return Z as float, ignore stencil
Brian [Sat, 13 Oct 2007 15:04:35 +0000 (09:04 -0600)]
added z16/z32_git_tile(), change s8z24_get_tile() to return Z as float, ignore stencil

17 years agoUse KIL in glBitmap shader to cull the fragments for 0 bits.
Brian [Fri, 12 Oct 2007 22:16:20 +0000 (16:16 -0600)]
Use KIL in glBitmap shader to cull the fragments for 0 bits.

17 years agoadded assertion to be sure we don't exceed bitfield size
Brian [Fri, 12 Oct 2007 22:13:15 +0000 (16:13 -0600)]
added assertion to be sure we don't exceed bitfield size

17 years agoadded code to print extended swizzles
Brian [Fri, 12 Oct 2007 22:12:22 +0000 (16:12 -0600)]
added code to print extended swizzles

17 years agochange exec_kilp() to only touch lowest four bits in kilmask
Brian [Fri, 12 Oct 2007 22:11:58 +0000 (16:11 -0600)]
change exec_kilp() to only touch lowest four bits in kilmask

17 years agoinitial use of KIL for glBitmap rendering
Brian [Fri, 12 Oct 2007 15:42:06 +0000 (09:42 -0600)]
initial use of KIL for glBitmap rendering

17 years agoInit draw->prim = ~0
Brian [Thu, 11 Oct 2007 17:09:36 +0000 (11:09 -0600)]
Init draw->prim = ~0

We weren't rendering correctly if the first thing drawn was a point (PRIM_MODE_POINT=0).

17 years agorename some vars, updated comments
Brian [Thu, 11 Oct 2007 16:03:59 +0000 (10:03 -0600)]
rename some vars, updated comments

17 years agoremove unused tgsi_attrib_to_mesa_attrib()
Brian [Thu, 11 Oct 2007 16:01:17 +0000 (10:01 -0600)]
remove unused tgsi_attrib_to_mesa_attrib()

17 years agoupdate st_feedback_draw_vbo()
Brian [Thu, 11 Oct 2007 16:00:54 +0000 (10:00 -0600)]
update st_feedback_draw_vbo()

17 years agostreamline st_draw_vbo() a bit more, free user-space buffers at end
Brian [Thu, 11 Oct 2007 15:48:06 +0000 (09:48 -0600)]
streamline st_draw_vbo() a bit more, free user-space buffers at end

17 years agoclean-up, streamline st_draw_vbo()
Brian [Thu, 11 Oct 2007 15:11:13 +0000 (09:11 -0600)]
clean-up, streamline st_draw_vbo()

17 years agoimplement intel_user_buffer_create()
Brian [Thu, 11 Oct 2007 15:10:43 +0000 (09:10 -0600)]
implement intel_user_buffer_create()

17 years agoInitial support for user-space buffer objects.
Brian [Thu, 11 Oct 2007 15:10:19 +0000 (09:10 -0600)]
Initial support for user-space buffer objects.

Basically, add userBuffer/Data/Size fields to _DriBufferObject, check those
fields in driBOMap/Unmap().
New driGenUserBuffer() function.

17 years agoUse winsys->user_buffer_create() to wrap user-space vertex arrays and element buffers.
Brian [Thu, 11 Oct 2007 00:00:12 +0000 (18:00 -0600)]
Use winsys->user_buffer_create() to wrap user-space vertex arrays and element buffers.

Now client-side vertex arrays and glDrawElements work.
More testing/debug/clean-up to come...

17 years agoimplement the user_buffer_create() function
Brian [Wed, 10 Oct 2007 23:58:12 +0000 (17:58 -0600)]
implement the user_buffer_create() function

17 years agoAdded user_buffer_create() method
Brian [Wed, 10 Oct 2007 23:57:47 +0000 (17:57 -0600)]
Added user_buffer_create() method

This is used to wrap user-space data in a pipe buffer object to allow more
uniform treatment of various things.  For example, wrapping client-side
vertex arrays so they look like VBOs.

17 years agoadded SSCALED cases in fetch_attrib4()
Brian [Wed, 10 Oct 2007 23:50:31 +0000 (17:50 -0600)]
added SSCALED cases in fetch_attrib4()

17 years agoupdate comments (s/softpipe/gallium/ etc)
Brian [Wed, 10 Oct 2007 22:51:09 +0000 (16:51 -0600)]
update comments (s/softpipe/gallium/ etc)

17 years agominor optimization for color/z results
Brian [Wed, 10 Oct 2007 22:21:28 +0000 (16:21 -0600)]
minor optimization for color/z results

17 years agodisable some assertions which pop up during window resize, but can be ignored for now
Brian [Wed, 10 Oct 2007 22:19:49 +0000 (16:19 -0600)]
disable some assertions which pop up during window resize, but can be ignored for now

17 years agofix get_result_vector() since fp output slots are not fixed anymore
Brian [Wed, 10 Oct 2007 21:45:57 +0000 (15:45 -0600)]
fix get_result_vector() since fp output slots are not fixed anymore

17 years agofix softpipe_clear() to handle ps->offset!=0 (such as when rendering to texture and...
Brian [Wed, 10 Oct 2007 21:09:57 +0000 (15:09 -0600)]
fix softpipe_clear() to handle ps->offset!=0 (such as when rendering to texture and level!=0)

17 years agofree/unreference pipe_surface in get_texel()
Brian [Wed, 10 Oct 2007 21:05:24 +0000 (15:05 -0600)]
free/unreference pipe_surface in get_texel()

17 years agouse correct mipmap level in st_render_texture()
Brian [Wed, 10 Oct 2007 20:13:21 +0000 (14:13 -0600)]
use correct mipmap level in st_render_texture()

17 years agouse pipe_region_reference() in softpipe_get_tex_surface() to fix refcount error
Brian [Wed, 10 Oct 2007 17:40:04 +0000 (11:40 -0600)]
use pipe_region_reference() in softpipe_get_tex_surface() to fix refcount error

17 years agofix width/height padding that caused failed assertion upon window resize
Brian [Wed, 10 Oct 2007 17:04:48 +0000 (11:04 -0600)]
fix width/height padding that caused failed assertion upon window resize

17 years agoSize of input_to_index array should be VERT_ATTRIB_MAX.
Brian [Wed, 10 Oct 2007 16:33:38 +0000 (10:33 -0600)]
Size of input_to_index array should be VERT_ATTRIB_MAX.

This fixes an out of bounds array write that was causing the glsl/bump demo to render incorrectly.

17 years agoMerge tgsi_mesa_compile_fp_program() and tgsi_mesa_compile_vp_program() into tgsi_tra...
Brian [Wed, 10 Oct 2007 15:44:54 +0000 (09:44 -0600)]
Merge tgsi_mesa_compile_fp_program() and tgsi_mesa_compile_vp_program() into tgsi_translate_mesa_program().

17 years agoremove unused var
Brian [Wed, 10 Oct 2007 15:43:37 +0000 (09:43 -0600)]
remove unused var

17 years agostart on a unified vertex/fragment program translation function
Brian [Tue, 9 Oct 2007 22:56:25 +0000 (16:56 -0600)]
start on a unified vertex/fragment program translation function

17 years agoGenerate DCLs for temporaries.
Brian [Tue, 9 Oct 2007 22:28:01 +0000 (16:28 -0600)]
Generate DCLs for temporaries.

17 years agoFinish up decls for packed fragment program outputs.
Brian [Tue, 9 Oct 2007 22:20:00 +0000 (16:20 -0600)]
Finish up decls for packed fragment program outputs.

17 years agoPack fragment program outputs to be consistant with vertex programs.
Brian [Tue, 9 Oct 2007 20:55:22 +0000 (14:55 -0600)]
Pack fragment program outputs to be consistant with vertex programs.

Previously, output[0] was always Z and output[1] was color.  Now output[0]
will be color if Z is not written.
In shade_quad() use the semantic info to determine which quantity is in
which output slot.

17 years agoupdate some comments
Brian [Tue, 9 Oct 2007 20:52:26 +0000 (14:52 -0600)]
update some comments

17 years agoMore work on flow control for CAL/RET.
Brian [Tue, 9 Oct 2007 20:40:11 +0000 (14:40 -0600)]
More work on flow control for CAL/RET.

17 years agoNew ATTRIB interpolation type for vertex program inputs/declarations.
Brian [Tue, 9 Oct 2007 20:36:14 +0000 (14:36 -0600)]
New ATTRIB interpolation type for vertex program inputs/declarations.

17 years agoDon't emit semantic info for vertex program inputs.
Brian [Tue, 9 Oct 2007 20:31:45 +0000 (14:31 -0600)]
Don't emit semantic info for vertex program inputs.

17 years agoUse linked fragment shader inputs (if present) to determine which outputs are needed.
Brian [Tue, 9 Oct 2007 20:12:26 +0000 (14:12 -0600)]
Use linked fragment shader inputs (if present) to determine which outputs are needed.

17 years agouse different temps in exec_tex() for bias
Brian [Wed, 3 Oct 2007 22:34:04 +0000 (16:34 -0600)]
use different temps in exec_tex() for bias

17 years agoupdated comments
Brian [Wed, 3 Oct 2007 22:18:44 +0000 (16:18 -0600)]
updated comments

17 years agoAdd outputs_written bitfield to pipe_shader_state, use it to determine if fragment...
Brian [Wed, 3 Oct 2007 20:43:57 +0000 (14:43 -0600)]
Add outputs_written bitfield to pipe_shader_state, use it to determine if fragment shader writes Z.

17 years agoMove XSTDCALL definition to p_compiler.h
Brian [Wed, 3 Oct 2007 19:49:31 +0000 (13:49 -0600)]
Move XSTDCALL definition to p_compiler.h