Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
Also, if the app really uses all available sampler/texture units, don't just
die. Just use the last sampler for the pstipple or aaline texture.
|
|
added missing _ to a _debug_printf() call.
|
|
Also, fix another texture refcounting bug.
|
|
This solves problems when the state tracker frees the token array when the
draw module still needs it.
|
|
|
|
token array.
Maybe move to a different file someday.
|
|
Uses getenv on Linux, and a memory mapped text file on Windows.
It supports boolean options, flags, and plain strings.
|
|
Now debug_printf is disabled on release builds. Use debug_error or
_debug_printf to output messages on release versions.
|
|
|
|
|
|
|
|
|
|
Remove util_gen_mipmap_filter() when no longer used.
|
|
|
|
|
|
This reverts commit a6d17bf671d6bfbb187a62ba14b9ad08fb5dafe1.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
We need a way to specify the type of minification filter
used to downsample mipmap levels.
The old util_gen_mipmap() retains its behaviour and uses
LINEAR filter.
|
|
pipe cso's were being destroyed, but the hash elements themselves not.
proper fix is IMHO add a destructor callback to cso_hash.
|
|
Overcomplex and not much different from using a global variable...
|
|
|
|
There are no known tools for windows kernel memory debugging, so this is a
simple set of malloc etc wrappers.
Enabled by default on win32 debug builds
|
|
|
|
Middle-end elements are ushort, but prior to that have to treat all
elements as unsigned to avoid wrapping and/or overruns.
|
|
Trying to put a structure in place that we can actually optimize.
Initially just implementing a passthrough mode, this will fairly soon
replace all the vertex_cache/prim_queue/shader_queue stuff that's so
hard to understand...
Split the vertex processing into a couple of distinct stages:
- Frontend
- Prepares two lists of elements (fetch and draw) to be processed
by the next stage. This stage doesn't fetch or draw vertices, but
makes the decision which to draw. Multiple implementations of this
will implement different strategies, currently just a vcache
implementation.
- MiddleEnd
- Takes the list of fetch elements, fetches them, runs the vertex
shader, cliptest, viewport transform on them to produce a
linear array of vertex_header vertices.
- Passes that list of vertices, plus the draw_elements (which index
into that list) onto the backend
- Backend
- Either the existing primitive/clipping pipeline, or the vbuf_render
hardware backend provided by the driver.
Currently, the middle-end is the old passthrough code, and it build hardware
vertices, not vertex_header vertices as above. It may be that passthrough
is a special case in this respect.
|
|
|
|
|
|
|
|
Move these to a higher level instead.
|
|
Code generation should be performed when the device-specific state
atom is created, not when it is bound.
|
|
Previously the constant color blend factor was compiled into the
generated code. This meant that the code had to be regenerated each
time the constant color was changed. This doesn't fit with the model
used in Gallium.
As-is, the code could be better. The constant color is loaded for
every quad processed, even if it is not used. Also, if a lot of (1-x)
blend factors are used, 1.0 will be loaded and reloaded into registers
many times.
|
|
|
|
I suspect that there was some other bug in the blend code-gen that
made this work-around necessary.
|
|
min/mag filter selection
|
|
|
|
|
|
|
|
|
|
|
|
- Alpha factor set to a _COLOR mode was mishandled
- Cases when either dst factor or src factor was ZERO were mishandled
- MIN and MAX cases were backwards
- Case when blend was disabled was mishandled
- Incorrect comments about number of instructions generated
The tests blendminmax and blendsquare run correctly.
|
|
Cut-and-paste for the lose. :(
|