Commit graph

1705 commits

Author SHA1 Message Date
Brian Paul
07aaf3a7a7 gallium: remove obsolete PIPE_CAP_BITMAP_TEXCOORD_BIAS 2008-05-02 14:00:08 -06:00
Keith Whitwell
b2021e7c06 gallium: identify depth-stencil textures
And don't use the display-target path to allocate them.
2008-05-02 17:56:01 +01:00
Keith Whitwell
a73ae3d5eb gallium: Add texture usage flags, special-case allocation of display targets
For many envirionments it's necessary to allocate display targets
in a window-system friendly manner.  Add facilities so that a driver
can tell if a texture is likely to be used to generate a display surface
and if use special allocation paths if necessary.

Hook up softpipe to call into the winsys->surface_alloc_storage()
routine in this case, though we probably want to change that interface
slightly also.
2008-05-02 16:46:31 +01:00
Keith Whitwell
4a15913208 gallium: remove usage of winsys->surface_alloc_storage from state tracker
Allocate a texture containing storage instead.

Also clean up ACCUM buffer allocation slightly -- drivers will need
some changes to texture allocation logic to accomodate the concept of
a texture that will only as image storage by the CPU, but it's cleaner
than it was.
2008-05-02 14:27:10 +01:00
Keith Whitwell
731e7b961c re-add pipe_surface map/unmap inlines 2008-05-02 11:11:27 +01:00
Keith Whitwell
b59f9c95c1 gallium: add information to surface to identify which texture image it is pointing at 2008-05-01 12:28:59 +01:00
Keith Whitwell
c9ed86a964 gallium: tex surface checkpoint 2008-05-01 12:00:45 +01:00
Brian Paul
8d45576ec5 gallium: rename old PIPE_FORMAT_U_I8 with PIPE_FORMAT_I8_UNORM, etc.
Now all the packed color types are consistantly named.
Added temporary #defines for the old names until all drivers are updated.
2008-04-30 16:51:52 -06:00
Brian Paul
bd5b99d389 gallium: fix typo: s/custam/custom/ 2008-04-30 15:29:32 -06:00
José Fonseca
cafb545721 d3d: Windows miniport driver portability fixes. 2008-05-01 02:25:23 +09:00
Brian Paul
15318c8d8e gallium: new pipe_buffer alloc/map/unmap/ref wrappers 2008-04-30 10:43:09 -06:00
Zack Rusin
0d80f407f1 silence p_debug.h:63: warning: ISO C forbids forward references to ‘enum’ types 2008-04-29 17:21:10 -04:00
Brian Paul
fce5951b56 gallium: declare pipe_format enum to silence warnings 2008-04-29 14:39:42 -06:00
Keith Whitwell
9bfe1a3d50 gallium: add debug_print_format() make it easier to print format error messages 2008-04-29 20:48:14 +01:00
Brian Paul
aad9dd14d8 gallium: tweak comments, minor var renaming 2008-04-25 16:27:52 -06:00
Brian Paul
5e3b0d227c gallium: tweak comments, minor var renaming 2008-04-25 16:27:52 -06:00
José Fonseca
b06cd4debf gallium: Windows user mode portability fixes. 2008-04-25 18:19:51 +09:00
José Fonseca
dacfef1589 gallium: New configuration header.
To abstract all those weird #ifdef (__???__) checks.

It should typically be the first included header.
2008-04-25 18:18:48 +09:00
Michel Dänzer
35dc003c6a gallium: Make sure the size of non-existent storage components is set to 0.
Before adding support for formats with unused storage components, the size of
components swizzled to 0 or 1 was ignored, so this didn't matter.
2008-04-24 18:42:35 +01:00
Michel Dänzer
7333578d2a gallium: Initial support for pixel formats with unused storage components.
Also clarify that RGB formats with no (used) alpha component are treated as
having alpha = 1.0.
2008-04-24 10:18:34 +01:00
Keith Whitwell
76a3590046 util: work around freaky win32 math.h 2008-04-21 14:19:15 +01:00
Keith Whitwell
f30f320612 util: add wrappers for float math functions on windows 2008-04-21 13:14:30 +01:00
José Fonseca
5b8fa51847 gallium: Don't assume snprintf are always available. 2008-04-15 10:13:52 +09:00
José Fonseca
03a3373bdf gallium: Thread condition variables. 2008-04-11 12:18:06 +09:00
Brian Paul
87b0b8e7bc gallium: flags param to surface_alloc_storage() is unused and deprecated 2008-04-10 18:33:53 -06:00
Brian
da8934034b gallium: re-order, clean-up PIPE_MAX_* definitions 2008-04-08 21:43:36 -06:00
Brian
be37e8350f gallium: remove obsolete/unused PIPE_ATTRIB_MAX 2008-04-08 21:38:44 -06:00
José Fonseca
4e2127b0e5 gallium: Allow to debug memory leaks in nested scopes. 2008-04-08 12:04:03 +09:00
Jakob Bornecrantz
24fc93ebdc gallium: Stop warnings 2008-04-07 19:39:28 +02:00
José Fonseca
c1d26d3dcc gallium: Use the custom snprintf implementation everywhere (for Win32).
Because winddk's implemenation does not handle floats.
2008-04-05 13:45:40 +09:00
Keith Whitwell
84501e68f6 gallium: Handle client-supplied edgeflags.
Also, implement support in the draw module.  We were hardwiring these
to one for quite a long time...

Currently using a draw_set_edgeflags() function, may be better to push
the argument into the draw_arrays() function.  TBD.
2008-04-04 17:05:27 +01:00
Roland Scheidegger
cf9b07ea34 gallium: fix two-side stencil handling
Previously all drivers were in twosided mode since they checked for
stencil.enable[1] flag which was a copy of stencil.enable[0]. Note that drivers
should not reference stencil[1] state (other than the enable) if twosided
stenciling is disabled (for now the stencil state is still copied but for
instance clear_with_quads won't provide useful values in there).
Also, use _TestTwoSide instead of TestTwoSide since results would be
bogus otherwise if using APIs with implicit two side stencil enable
(i.e. core ogl 2.0).
2008-04-04 12:44:13 +02:00
Keith Whitwell
8e33194837 gallium: add a flag to turn on gl rasterization rules
Use this to set up hardware rasterization (if your hardware can
do it) or otherwise turn on various tweaks in the draw module.

Currently only hooked up to point biasing code.
2008-04-02 11:38:33 +01:00
Keith Whitwell
bc739440c2 gallium: add temporary facility for rasterization-time clamping of point sizes 2008-04-02 10:44:04 +01:00
José Fonseca
8a81429fa8 gallium: Compute YCBCR bit depth. 2008-04-01 07:22:10 +09:00
Brian
23b03c536d gallium: updated comment for bypass_vs 2008-03-31 15:12:01 -06:00
José Fonseca
baab98a637 gallium: Eliminate p_winsys::printf
Not convenient and almost not used at all. Better replacements in p_debug.h
2008-03-31 17:28:33 +09:00
Brian Paul
a52c0416d1 gallium: Set vertex state/buffers en-mass. 2008-03-29 14:41:03 +01:00
Roland Scheidegger
5615ab78b0 gallium: remove redundant compare bit in sampler state 2008-03-28 15:43:00 +01:00
Michal Krol
4e7bcaa4c2 gallium: Bump PIPE_MAX_SAMPLERS to 16.
We need it to fulfil D3D minimum requirements.
2008-03-28 12:31:35 +01:00
Brian
39038c1169 gallium: replace PIPE_ATTRIB_MAX with PIPE_MAX_ATTRIBS
The later follows the naming scheme of other limits.
Keep the old definition until all possible usage is updated.
2008-03-27 17:41:55 -06:00
Brian Paul
37da2d6851 gallium: updated/improved comments, minor re-formatting 2008-03-27 17:18:25 -06:00
Brian
d355eee5ca gallium: silence unused var warning 2008-03-27 15:27:31 -06:00
Michel Dänzer
4abe1eb980 gallium: Change pipe->flush() interface to optionally return a fence.
The cell driver still uses an internal CELL_FLUSH_WAIT flag, in the long run
proper fencing should be implemented for it.
2008-03-26 09:36:40 +00:00
Michal Krol
dc9757e1a8 gallium: Introduce flatshade_first field to rasterizer_state.
This bit tells us which vertex of the primitive is used to
propagate color for the remaining vertices if flatshade mode.
2008-03-25 23:51:51 +01:00
José Fonseca
331a56136e Fix typo 2008-03-25 17:47:39 +00:00
José Fonseca
aacfc326cc gallium: Use debug_get_option for GETENV 2008-03-25 11:37:54 +00:00
Brian
4654803e25 gallium: fix a few bugs, warnings in the p_debug code
added missing _ to a _debug_printf() call.
2008-03-24 18:49:56 -06:00
José Fonseca
e8c6ea4f60 gallium: Simple cross platform get-opt system.
Uses getenv on Linux, and a memory mapped text file on Windows.

It supports boolean options, flags, and plain strings.
2008-03-24 22:31:36 +00:00
José Fonseca
dd51365acd gallium: cleanup p_debug
Now debug_printf is disabled on release builds. Use debug_error or
_debug_printf to output messages on release versions.
2008-03-24 22:31:36 +00:00