Commit Graph

33237 Commits

Author SHA1 Message Date
Marek Olšák
a955f86b31 r300g: add fallback for back stencil reference value and masks for r3xx-r4xx
This splits rendering into two passes when front and back stencil
reference value, value mask, or write mask don't match.

The advantages of doing it in the driver instead of in st are:
* SWTCL is executed just once and the resulting vertex buffer is reused
  in the second pass.
* Lower driver overhead due to the fallback being very close to
  the actual draw emission with minimum state change.
2010-04-05 07:09:46 +02:00
Marek Olšák
b71bfc4400 r300g: simplify accessing screen from context 2010-04-05 07:09:46 +02:00
Marek Olšák
32327196f7 r300g: remove some XXXs
We can't have more than 8 texcoord outputs in VS.
2010-04-05 07:09:45 +02:00
Marek Olšák
d2686cdb23 r300g: raise the number of texture units to 16 for all supported chipsets
As per Radeon 9700 Opengl Programming and Optimization Guide [1], there are
16 texture units even on the first r300 chipsets. If you think I am wrong,
feel free to propose a patch.

[1] Here's PDF: http://people.freedesktop.org/~mareko/
2010-04-05 07:09:45 +02:00
Marek Olšák
e41a64591b r300/compiler: make the max number of fragment shader temporaries adjustable 2010-04-05 07:09:45 +02:00
Marek Olšák
4e949271c2 r300g: is_npot -> uses_pitch 2010-04-05 07:09:45 +02:00
Marek Olšák
0179c5a95b r300g: enable conditional rendering also for SWTCL 2010-04-05 07:09:45 +02:00
Vinson Lee
5399c6dfa1 progs: Include X11 headers and libraries in SCons build.
Fixes Mac OS X SCons build.
2010-04-04 19:15:01 -07:00
Vinson Lee
940098e925 glut: Include X11 headers and libraries in SCons build.
Fixes Mac OS X SCons build.
2010-04-04 18:28:03 -07:00
Vinson Lee
efdd33985c glew: Include X11 headers and libraries in SCons build.
Fixes Mac OS X SCons build.
2010-04-04 18:10:20 -07:00
Brian Paul
a437601bee docs: update status of transform feedback and instanced drawing 2010-04-04 19:08:21 -06:00
Brian Paul
bf4c4479dd mesa: don't turn on GL_EXT_transform_feedback yet 2010-04-04 19:05:39 -06:00
Brian Paul
528d100b80 st/mesa: call pipe_context::draw_arrays/elements_instanced() 2010-04-04 19:05:39 -06:00
Brian Paul
3b7ac45162 mesa: implement core Mesa support for GL_ARB_draw_instanced 2010-04-04 19:05:38 -06:00
Brian Paul
cf3193ad1c mesa: new validation functions for GL_ARB_draw_instanced 2010-04-04 19:05:38 -06:00
Brian Paul
3258dfbbbd mesa: new extension flag for GL_EXT/ARB_draw_instanced 2010-04-04 19:05:38 -06:00
Brian Paul
61b21f0c83 glapi: regenerated files for GL_ARB_draw_instanced 2010-04-04 19:05:38 -06:00
Brian Paul
736846b22f glapi: plug in ARB_draw_instanced.xml 2010-04-04 19:05:37 -06:00
Brian Paul
a4e1abd487 glapi: ARB_draw_instanced.xml file 2010-04-04 19:05:37 -06:00
Ian Romanick
4fb2daf42c Merge branch '7.8' 2010-04-04 16:54:00 -07:00
Ian Romanick
f66733e077 gl: updated glxext.h to version 27 2010-04-04 16:53:41 -07:00
Chia-I Wu
ad3575e2dd progs/egl: Add an OpenGL ES demo for EGL_OES_image_pixmap.
The demo uses a Pixmap as its drawing area, and whatever is drawn on the
pixmap will be used as a texture to draw a cube.
2010-04-04 22:07:20 +08:00
Chia-I Wu
a1aa53b2a9 st/mesa: Implement GL_OES_EGL_image driver hooks.
Use st_manager::get_egl_image to look up GLeglImageOES and implement
EGLImageTargetTexture2D and EGLImageTargetRenderbufferStorage.
2010-04-04 21:58:32 +08:00
Chia-I Wu
776dc53f62 st/egl: Implement get_egl_image hook.
This hook may be used by rendering state trackers to implement EGLImage
extensions.
2010-04-04 21:49:24 +08:00
Dave Airlie
d605b0db4d r300g: fix TFP stride override.
We should use pitch for the overriden state, fixes one half of the tfp test.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-04-04 20:31:42 +10:00
Marek Olšák
655fe28155 r300g: add conditional rendering 2010-04-04 08:59:09 +02:00
Marek Olšák
116c99768e r300g: add r4xx fragment shader registers
In case anyone needs it, it's here.
2010-04-04 05:27:12 +02:00
Marek Olšák
6eb892cc12 r300g: do not use the c++ template keyword
It makes life for some code browsing utilites easier.
2010-04-04 03:54:09 +02:00
Marek Olšák
e0848bd903 r300g: properly setup textures from X server
The setup needs be done after querying tiling flags.
2010-04-04 02:46:12 +02:00
Vinson Lee
930838efcd util: Use GCC atomic bultins on GCC 4.1 and higher only. 2010-04-03 12:14:21 -07:00
Jeremy Huddleston
71b2f1d8e6 xdemos: Build object files first
This helps debugging on darwin.

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2010-04-03 11:23:09 -07:00
Dave Airlie
4c26cdbe01 r300g: fix color tiling for buffer from X server.
The tiling setup needs a bit of work, but this should be good enough for now,
when we get buffers from the kernel we need to store their tiling properties.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-04-03 21:54:49 +10:00
Brian Paul
f618867645 mesa: display list support for GL_EXT_transform_feedback 2010-04-02 22:40:19 -06:00
Brian Paul
808c424b67 mesa: plug in GL_EXT_transform_feedback functions into dispatch 2010-04-02 22:40:19 -06:00
Brian Paul
d2f5d056d8 glapi: regenerated files for EXT_transform_feedback 2010-04-02 22:40:18 -06:00
Brian Paul
0101507ff0 glapi: include/build EXT_transform_feedback.xml 2010-04-02 22:40:18 -06:00
Brian Paul
9bfdd88ac2 glapi: new EXT_transform_feedback.xml file 2010-04-02 22:40:18 -06:00
Brian Paul
d661931fbc glapi: fix error message 2010-04-02 22:40:18 -06:00
Dave Airlie
073bae1ce4 r300 compiler: add target output debugging.
print the output target in the FP debug.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-04-03 12:19:13 +10:00
José Fonseca
47e6142658 util: Revert unsolicited, untested, unreviewed, and broken changes to format support.
Not all is bad, but I'm afraid I'll have to throw the baby with the water
given they are all tied to together.
2010-04-03 00:51:19 +01:00
José Fonseca
dd194b6932 python/tests: Output test results in a format that Hudson CI can understand. 2010-04-03 00:20:58 +01:00
Zack Rusin
cb31d3b5fe draw llvm: fix storing of outputs for the rest of the pipeline
there's no good way of aligning the output's, and since the vertex_header
is variable sized in the first place we need to extract elements from a vector
and store them individually into an array. this gets the basic examples working
again
2010-04-02 18:52:32 -04:00
Corbin Simpson
73cd1cf7c1 gallium/docs: Dithering might not actually do anything. 2010-04-02 14:25:38 -07:00
Corbin Simpson
21961f6e96 r300g: Expound on dithering comment. 2010-04-02 14:21:50 -07:00
Dave Airlie
f6c7b91165 r300g: make dithering work like fglrx.
From fglrx traces the dithering is never enabled.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-04-03 07:03:01 +10:00
Yann Droneaud
1d11ba0ba3 gallium: fix dri_destroy_option_cache() when optionCache.info is NULL
With an Intel 855GM handled by intel_drv, there's a crash with Gallium3D
enabled DRI driver for Intel i915 (--enable-gallium-intel).
The Gallium3D driver doesn't support the 855GM as expected by
intel_drv, it failed to open the screen and give an half
initialized screen structure to dri_destroy_option_cache():
optionCache.info is NULL, so it's crashing while trying
to free array content. This patch at least fix the crash in the function.

Here's some logs of the fixed version:

[ 16274.137] LoaderOpen(/opt/mesa/lib/xorg/modules/drivers/intel_drv.so)
[ 16274.139] (II) Loading /opt/mesa/lib/xorg/modules/drivers/intel_drv.so
[ 16274.183] (II) Module intel: vendor="X.Org Foundation"
[ 16274.183]    compiled for 1.8.0, module version = 2.11.0
[ 16274.183]    Module class: X.Org Video Driver
[ 16274.183]    ABI class: X.Org Video Driver, version 7.0
[ 16274.183] (II) intel: Driver for Intel Integrated Graphics Chipsets: i810,
        i810-dc100, i810e, i815, i830M, 845G, 852GM/855GM, 865G, 915G,
        E7221 (i915), 915GM, 945G, 945GM, 945GME, Pineview GM, Pineview G,
        965G, G35, 965Q, 946GZ, 965GM, 965GME/GLE, G33, Q35, Q33, GM45,
        4 Series, G45/G43, Q45/Q43, G41, B43, Clarkdale, Arrandale
[ 16274.382] (II) intel(0): Integrated Graphics Chipset: Intel(R) 855GME
[ 16274.382] (--) intel(0): Chipset: "852GM/855GM"
[ 16276.675] (II) intel(0): [DRI2] Setup complete
[ 16276.675] (II) intel(0): [DRI2]   DRI driver: i915
debug_get_option: GALLIUM_TRACE = (null)
debug_get_bool_option: GALLIUM_RBUG = FALSE
debug_get_bool_option: INTEL_DUMP_CMD = FALSE
i915_create_screen: unknown pci id 0x3582, cannot create screen
dri_init_screen_helper: failed to create pipe_screen
[ 16276.794] (EE) AIGLX error: Calling driver entry point failed
[ 16276.794] (EE) AIGLX: reverting to software rendering
[ 16276.794] (II) AIGLX: Screen 0 is not DRI capable
[ 16276.796] (II) AIGLX: Loaded and initialized /opt/mesa/lib/dri/swrast_dri.so
[ 16276.796] (II) GLX: Initialized DRISWRAST GL provider for screen 0

Signed-off-by: Yann Droneaud <yann@droneaud.fr>
Reviewed-by: Corbin Simpson <MostAwesomeDude@gmail.com>
2010-04-02 13:44:31 -07:00
Zack Rusin
557b75248a draw llvm: fix translation of formats with variable components 2010-04-02 15:56:34 -04:00
Brian Paul
bc50336b6a llvmpipe: limit max texture size to 2Kx2K for now
MAXWIDTH/HEIGHT were 2048 but the max texture size was 4096.
This caused a crash if a 4Kx4K texture was created and rendered to.
See comment about max framebuffer size in lp_scene.h.

Also added assertions to catch this inconsistancy in the future.
2010-04-02 09:20:05 -06:00
Vinson Lee
82e289d355 gallivm: Add fallthrough comment at end of case statement.
The code is correct. Tell Coverity that the fallthrough case is
intentional.
2010-04-02 01:16:13 -07:00
Vinson Lee
c87e6e50ee progs/gallium/unit: Silence uninitialized variable warnings. 2010-04-02 01:08:31 -07:00