Commit Graph

5912 Commits

Author SHA1 Message Date
Felix Kuehling 5bdf2bc6c7 - Fixed scissor rectangle not moving with the window (Xorg bug #1731).
- Flush buffered primitives before changing scissors.
- Require Savage DRM version 2.1.0, so that the broken single-cliprect
  code can finally rest in peace.
- Removed some more dead code.
2005-02-05 21:21:02 +00:00
Brian Paul d9d972a944 added fbobject.c to sources 2005-02-05 20:00:15 +00:00
Brian Paul ddc82eefca Some initial work on GL_EXT_framebuffer_object. 2005-02-05 19:56:45 +00:00
Jerome Glisse 2886579324 Added PCI id (0x4152). 2005-02-05 19:52:26 +00:00
Brian Paul bb7d5f8837 Remove the Shared->TexObjectList pointer and Next field from gl_texture_object.
Was only used by two drivers to walk over all texture objects.  Can do that
via the hash table instead.
Cleaned up some comments for struct gl_texture_object.
2005-02-05 18:12:59 +00:00
Brian Paul 8c3ddf4270 add a few comments 2005-02-05 18:11:05 +00:00
Jerome Glisse f955218bf1 Modified hw state for big endian computers. 2005-02-05 18:01:21 +00:00
Brian Paul 7aafcc86c7 remove dependency on Shared->TexObjectList 2005-02-05 17:43:33 +00:00
Brian Paul ce657cf752 remove unneeded code 2005-02-05 17:38:13 +00:00
Brian Paul cf899d400d removed need for Shared->TexObjectList, walk over texture hash table entries instead 2005-02-05 17:37:00 +00:00
Felix Kuehling 557dce9bc2 Fixed a typo in an assertion. (Don't understand how this ever compiled.)
Found by Andreas Stenglein.
2005-02-05 13:17:34 +00:00
Vladimir Dergachev b64d4a27cb Warn of unknown texture formats. 2005-02-05 03:13:34 +00:00
Ian Romanick a02b83115a Fix some mixed spaces / tabs issues in generated code. Commit generated
files that have been trivially changed by other recent commits.
2005-02-05 00:59:57 +00:00
Ian Romanick 0a755ade51 Enable client-side GLX support for texture compression extensions. 2005-02-04 19:29:30 +00:00
Felix Kuehling 19064f818a Added an option texture_heaps that allows selecting which texture heaps
will be used. Implemented this option in the Savage driver. On my
ProSavageDDR uploads to AGP memory are about 1.5 times as fast as
uploads to card memory. On non-IGP hardware the difference may be even
bigger. Now mplayer -gl is getting really usable.
2005-02-04 00:25:41 +00:00
Felix Kuehling cbff5db516 Made subtile upload a template. This speeds up tiled texture uploads by
about a factor 1.3.
2005-02-04 00:17:21 +00:00
Felix Kuehling 64b85b4563 Use all texture heaps in a fair way when textures need to be kicked in
order to make room for new textures. In particular this fixes texture
trashing on the first heap when the second heap is occupied by
currently unused textures (observed with Torcs and the Savage driver).

Heaps are weighted by their sizes by default but drivers can override
these and apply their own weights based on relative texture upload
speeds to the respective heaps.
2005-02-03 21:40:21 +00:00
Aapo Tahkola 9ea600ff3f Removing some trash and disabling fog fallback as it seem its causing more harm than good. Tuxracer should now work at least with vbs. Fix for vb colorbuffer clear bug is underway... 2005-02-03 19:51:57 +00:00
Aapo Tahkola fe58074dea Changing vb code to handle inputs correctly. 2005-02-03 19:43:27 +00:00
Vladimir Dergachev c326f9ffae Start beginning of pixel shader generator.. 2005-02-03 17:48:32 +00:00
Vladimir Dergachev 54b03eefda Forgot to increase the length. 2005-02-03 16:05:21 +00:00
Vladimir Dergachev d26e464b6a Looks like we need at least one instruction for pixel shader. 2005-02-03 16:01:46 +00:00
Vladimir Dergachev 4c56261075 Get vertex programs supplied by the user work properly with immediate mode - vertex buffer mode worked by accident.
Fix alu_offset in SINGLE_TEXTURE_PIPELINE.
2005-02-03 15:44:06 +00:00
Vladimir Dergachev 19b260119a Since high bits can be used for flags, mask them out.
This stops arbvpwarpmesh from segfaulting and it actually works - with immediate mode rendering.
2005-02-03 06:33:44 +00:00
Vladimir Dergachev 3f0926b612 Remove redundant instructions from fixed pipelines, looks like they do not do anything, at least on my hardware. 2005-02-03 04:16:59 +00:00
Vladimir Dergachev cb085044c9 Mark ZBIAS definitions. 2005-02-03 03:48:22 +00:00
Vladimir Dergachev f350617c24 This was too optimistic sorry - all that register does is something weird with polygon culling. 2005-02-03 03:47:12 +00:00
Vladimir Dergachev f46de6f23b Get Polygon offset fill to work.
Make WARN_ONCE message more informative.
2005-02-03 03:43:01 +00:00
Ian Romanick 94a20cbadf Added a bunch of extensions that were previously supported but weren't
in the gl_API.xml database.  Add "official" support for SGI_color_matrix
and SGI_texture_color_table.  These were previously supported only by
way of ARB_imaging.
2005-02-03 00:38:40 +00:00
Felix Kuehling eba5b610b9 Check for heap == NULL before driSetTextureSwapCounterLocation. 2005-02-02 15:57:25 +00:00
Felix Kuehling 2eb9e67a5a Don't try to kick textures from a NULL tex heap. 2005-02-02 15:52:29 +00:00
Felix Kuehling 8b21166c14 Fixed flushing of client-side vertex buffers. 2005-02-02 14:43:03 +00:00
Felix Kuehling 1a141b9161 Fixed some debug output that was unconditionally enabled. 2005-02-02 14:42:00 +00:00
Brian Paul 6286dda286 clamp viewport against ctx->Const.MaxViewportWidth/Height instead of MAX_WIDTH/HEIGHT 2005-02-02 14:12:59 +00:00
Aapo Tahkola 1a1c49f8a6 Changed parts of r300_setup_routing to use WARN_ONCE. 2005-02-02 13:29:11 +00:00
Ian Romanick 3fec8c24ec Small refactor. Add glXFunctionIterator, which derrives from
glFunctionIterator and is used by GlxProto.  The difference between the two
iterator classes is that glXFunctionIterator skips functions that the GLX
protocol code does not care about.

Replace all the remaining occurances of glParameter::p_count_parameters and
glFunction::count_parameters with the count_parameter_list.

Add GlxProto::size_call to generate the C code to calculate 'compsize'.

These trivially modify the generated code.
2005-02-02 00:54:45 +00:00
Aapo Tahkola 6b158a7d23 Add a missing break and a reminder. 2005-02-01 23:12:36 +00:00
Aapo Tahkola b5c90ca7d9 Implement appropriate src checks for attribs/params. 2005-02-01 22:45:11 +00:00
Aapo Tahkola b5128c6e82 Implemented bunch of ops. 2005-02-01 19:56:52 +00:00
Aapo Tahkola 7bccfa1026 Vertex programs work now with some restrictions. I expect arbvptorus to work
correctly when normals are delivered. Please note that some programs only
start in vb mode as there is something wrong in immediate mode vb code.
2005-02-01 16:56:52 +00:00
Vladimir Dergachev 5dd4030e76 Make WARN_ONCE messages more informative. 2005-02-01 15:51:54 +00:00
Vladimir Dergachev 6d419feec7 Reduce noiseness of the driver. 2005-02-01 15:46:23 +00:00
Vladimir Dergachev 88e155e353 Get alpha in textures to work properly. 2005-02-01 15:27:36 +00:00
Vladimir Dergachev d4697b0997 Properly set ABLEND and CBLEND registers. The older code worked, but by accident. 2005-02-01 06:55:58 +00:00
Vladimir Dergachev 4a3c6095fc Looks like we can define FIRE_VERTICES correctly. 2005-02-01 05:59:00 +00:00
Vladimir Dergachev 0ab7fb56f5 It helps to print actual values instead of random ones. 2005-02-01 05:58:27 +00:00
Ian Romanick c2803587b6 Small refactor. Move several utility functions from glX_XML.py to
FilterGLAPISpecBase (in gl_XML.py).  When these functions are used to emit
common #define lines, the will automatically be undefined in
FilterGLAPISpecBase::printFooter if header_tag is set (i.e., the file is a
header file).

These changes do not modify the generated code.
2005-02-01 00:28:47 +00:00
Ian Romanick ba09c19ed6 Add GlxProto::createEnumFunction and add a 'context' parameter to the
glXEnumFunction constructor.  The allows sub-classes of GlxProto to
over-ride the concrete class used for glXEnumFunction.

In addition to tracking p_count_parameters in glParameter, break the comma
separated list of parameter names into a Python list called
count_parameter_list.  It is now possible to query if a name is the name of
one of the count parameters just by comparing
param.count_parameter_list.count(n) to zero.  Eventually the remaining uses
of p_count_parameters will be replaced with uses of count_parameter_list.

Make sure that 'void *' parameters are handled correctly in
glParameter::size_string.

Add PrintGlxReqSize_h and PrintGlxReqSize_c.  These classes emit prototypes
and functions used on the server-side to determine the expected size of an
incoming GL command.
2005-02-01 00:13:04 +00:00
Adam Jackson 886280763c Bug #2428: #ifdef GLX_DIRECT_RENDERING in DRI drivers is pointless. 2005-01-31 23:40:05 +00:00
Daniel Borca fc4cabbfa8 makefile update (readtex, showbuffer) 2005-01-31 13:23:55 +00:00