Chia-I Wu
23e9a25e1f
st/glx: Fix glXCopySubBufferMESA.
...
Honor the (x, y) and (width, height) pairs.
2010-03-14 14:59:55 +08:00
Chia-I Wu
d6262bdcfb
st/glx: Sync the back buffer to the front buffer.
...
Consider this rendering sequence
* render to the back buffer
* swap buffers
* read from the front buffer
The front buffer is expected to have the contents of the back buffer.
2010-03-14 13:16:24 +08:00
Chia-I Wu
48bc3cca89
st/glx: Add support for GLX_MESA_copy_sub_buffer.
...
Create a per-display pipe_context as needed to copy the contents between
framebuffer attachments. This allows us to support
GLX_MESA_copy_sub_buffer.
2010-03-14 13:16:21 +08:00
Chia-I Wu
6632915e95
st/glx: Add xmesa_display to hold per-display variables.
...
This basically adds a static xmesa_display to collect per-display static
variables in xm_api.c. Multiple display support is still missing, but
this is a step forward.
2010-03-14 11:27:53 +08:00
Chia-I Wu
4a30330b26
st/mesa: Fix handling of FBO.
...
FBOs are created by st_new_framebuffer and cannot be casted to
st_framebuffer.
2010-03-14 10:23:51 +08:00
Chia-I Wu
8c210c1b3b
st/mesa: Validate the state in st_readpixels.
...
The front renderbuffer of a framebuffer is usually added as needed when
glReadBuffer(GL_FRONT) is called. When the call is followed by
glReadPixels, we should validate the state before reading from the
renderbuffer.
2010-03-13 20:34:45 +08:00
Chia-I Wu
66cd38f465
st/glx: Fix framebuffer validation.
...
When xmesa_st_framebuffer_validate was called twice with different sets
of attachments, the second call was ignored. Add a texture_mask to
remember which textures have been requested to make sure the missing
ones get created.
2010-03-13 17:41:45 +08:00
Chia-I Wu
418b9ac299
st/glx: Correctly set buffer_mask of a visual.
...
Stupid typos again..
2010-03-13 17:40:05 +08:00
Chia-I Wu
f91d8c6885
st/mesa: Set revalidate in st_framebuffer_update_attachments.
...
There are two conditions that a validation is required. One is when the
the framebuffer becomes invalid. The other is when we request for
textures that we did not request before.
2010-03-13 17:01:27 +08:00
Chia-I Wu
813c58d77e
st/glx: Make xmesa_create_st_api a callback of xm_driver.
...
Instead of guessing the API in st/glx, let the target decide how to
create st_api.
2010-03-13 16:05:09 +08:00
Chia-I Wu
fecb97aab4
st/egl: Fix eglCopyBuffers.
...
Use a (real) pipe context to copy between pipe surfaces. Fix a NULL
dereference of the temporary native surface created for copying.
2010-03-13 15:14:56 +08:00
Chia-I Wu
495bfb0ad2
st/glx: Fix leaks in xmesa_st_framebuffer.
...
The textures and surface of a framebuffer should be unreferenced when
the framebuffer is destroyed.
2010-03-13 13:06:00 +08:00
Chia-I Wu
9dae0e0ff8
st/glx: Add xm_st.c to SConscript.
2010-03-12 13:26:18 +08:00
Chia-I Wu
543a29f1a1
st/mesa: Check the format before adding depth/stencil buffers.
...
The format might have depth bits, stencil bits, or both. Add the
renderbuffers as needed.
2010-03-12 11:30:46 +08:00
Chia-I Wu
3475e88442
st/glx: Return a better format in choose_depth_stencil_format.
...
Return a better format instead of an exact format in
choose_depth_stencil_format. Also, prefer formats with stencil bits.
2010-03-12 11:20:57 +08:00
Chia-I Wu
72ed7eb15a
st/glx: Fix an infinite recursion in flush_front.
...
It was a stupid typo by me when I refactored the code.
2010-03-12 10:05:39 +08:00
Chia-I Wu
576d9af505
st/glx: Use st_api.h instead of st_public.h.
2010-03-12 09:57:11 +08:00
Chia-I Wu
a924dd18c3
st/egl: Use st_api.h instead of st_public.h.
...
Switch from st_public.h to st_api.h. The latter has intrinsic multiple
APIs support and allows various EGLImage extensions to be supported.
2010-03-12 09:57:07 +08:00
Chia-I Wu
3a3a31bf88
winsys/xlib, st/es: Advertise st_api.h support.
...
This is done by defining one of st_module_OpenGL_ES1,
st_module_OpenGL_ES2, and st_module_OpenGL.
2010-03-12 09:57:07 +08:00
Chia-I Wu
de8a879f5c
st/mesa: Implement st_api.h.
...
There is currently no user of this new interface. As the inteface can
coexist with st_public.h, everthing should work as before.
ST_TEXTURE_2D is both defined by st_public.h and st_api.h. Reorder the
headers in st/dri to avoid conflicts.
2010-03-12 09:57:07 +08:00
Chia-I Wu
8bcd616a3f
st/vega: Implement st_api.h.
...
There is currently no user of this new interface. As the inteface can
coexist with st_public.h, everthing should work as before.
2010-03-12 09:57:03 +08:00
Chia-I Wu
d2083056d5
gallium: Add st_api.h.
...
This is a new interface to be implemented by st/mesa, st/vesa, and the
window system APIs such as EGL or GLX.
2010-03-12 09:49:55 +08:00
Brian Paul
e574b79485
gallivm: checkpoint WIP cubemap code
2010-03-11 16:26:52 -07:00
Brian Paul
0b3bb6318e
gallivm: added lp_build_sum_vector()
2010-03-11 16:26:12 -07:00
Brian Paul
c72a3b4f2f
softpipe: further tighen up sample_cube()
...
The code can fairly easily be translated to llvm...
2010-03-11 16:23:37 -07:00
Brian Paul
9ffdc78d1a
softpipe: tighten up the code in sample_cube()
2010-03-11 15:37:35 -07:00
Brian Paul
26ae4aab6a
gallivm: enable 3D texture sampling
2010-03-11 14:49:01 -07:00
Brian Paul
e9f654d2fb
progs/demos: added 'f' key to toggle filtering mode in stex3d.c
2010-03-11 14:49:01 -07:00
Brian Paul
53efb634a0
gallivm/llvmpipe: replace 'int stride' with 'int row_stride[MAX_LEVELS]'
...
The stride depends on the mipmap level. Rename to row_stride to
distinguish from img_stride for 3D textures.
Fixes incorrect texel addressing in small mipmap levels.
2010-03-11 14:49:01 -07:00
Brian Paul
272f399434
llvmpipe: fix comment typo
2010-03-11 14:49:00 -07:00
Brian Paul
489af2a3ba
gallivm/llvmpipe: include os_llvm.h instead of llvm-c/Core.h
2010-03-11 14:49:00 -07:00
Brian Paul
4833b0f199
gallium/os: wrapper for llvm-c/Core.h and #define HAVE_LLVM if needed
2010-03-11 14:49:00 -07:00
Alex Deucher
644a05c6cb
r200: support additional blit formats
...
swizzle in the pixel shader
2010-03-11 13:49:57 -05:00
Brian Paul
d645119098
gallivm: fix some bugs on the 1D texture paths
2010-03-11 11:17:37 -07:00
Roland Scheidegger
ed1c69710c
st/mesa: don't enable extensions which aren't actually supported
...
don't enable APPLE_client_storage, TDFX_texture_compression_FXT1,
EXT_cull_vertex, NV_vertex_program, NV_vertex_program1_1 -
the latter two might work somewhat with some luck.
Also don't enable ARB_imaging.
2010-03-11 18:54:14 +01:00
Karl Schultz
560d375006
windows: Add new file to project file.
2010-03-11 09:17:30 -07:00
Brian Paul
2410125d07
gallivm: include tgsi_dump.h to silence warning
2010-03-11 08:52:03 -07:00
Brian Paul
7b42379b71
gallivm: move declarations to silence unused var warnings
2010-03-11 08:51:44 -07:00
Brian Paul
0c92dfe7f3
gallium/util: use memset() to initialize vars to avoid warnings
2010-03-11 08:51:18 -07:00
Brian Paul
25ba04c891
svga: use memset() to initialize u to avoid warnings
2010-03-11 08:50:39 -07:00
José Fonseca
e24e5324ed
gallivm: Use bitmasks for scalar masks.
...
We could use single 1 bit conditions for scalar masks, but a lot of code
expects masks. The compiler easily optimzes away masks
extensions/truncations so consistency is preferable.
We can revisit this when LLVM backends have more support for vector
conditions.
2010-03-11 15:42:41 +00:00
José Fonseca
99f11f6530
gallivm: Handle scalar types in lp_build_*_type.
2010-03-11 15:42:41 +00:00
Chia-I Wu
021cdd698b
mesa/es: Validate the state in st_DrawTex.
...
Without the validation, the function might draw with outdated textures.
2010-03-11 23:31:18 +08:00
Chia-I Wu
9f5de23d0a
mesa/es: Fix GL_OES_draw_texture support.
...
st_DrawTex calls util_draw_vertex_buffer. Since
ac4abaecd5 , the caller is expected to set
vertex elements before calling.
2010-03-11 23:31:11 +08:00
José Fonseca
4c5c442f12
softpipe: Dummy fence functions.
2010-03-11 12:24:56 +00:00
Marek Olšák
a0ae2ca033
st/dri: move extension initilization to st/mesa completely
...
Extensions were enabled in both st/mesa and st/dri, with st/dri completely
overriding the decisions of st/mesa and exposing even the extensions claimed
to be unsupported by a pipe driver.
This commit moves the differences between the two to st/mesa and removes
the responsibilty of advertising extensions from st/dri.
2010-03-11 12:28:51 +01:00
Michel Dänzer
fc1dd5ce1d
Merge remote branch 'origin/7.8'
2010-03-11 12:14:05 +01:00
Vinson Lee
aa311ae616
winsys/xlib: Fix memory leak.
...
Memory for xm_dt was allocated twice.
2010-03-11 00:18:09 -08:00
Vinson Lee
8f7e06ddf6
progs/fpglsl: Fix GLSL compilation failures on Mac OS X.
2010-03-11 00:10:26 -08:00
Marek Olšák
40adcd611f
st/mesa: always advertise texture_rectangle
2010-03-11 02:32:08 +01:00