Age | Commit message (Collapse) | Author |
|
|
|
|
|
I can't find the register bits for SRGB-aware blending and it's not even
exposed by fglrx so it's most probably not supported by hw.
|
|
|
|
The triangle rasterizer sets this field to indicate front/back-facing.
It gets passed into the generated fragment code as another parameter.
Used now for stencil front/back selection but will also be used for
fragment shaders in general (see TGSI_SEMANTIC_FACE).
With this commit two-sided stenciling mostly works but there's
still a bug or two...
|
|
|
|
Instead of passing an array, just pass two scalar values.
|
|
Fixes occasional bad tiles seen in some demos like progs/demos/reflect.c
|
|
|
|
With this feature, we get OpenGL version 2.0 and the progs/glsl/
demos run as-is.
|
|
This fixes a regression from commit a84575cdc0c8193b2c7858734e2ec6b1ec4511b2
which changed the depth/stencil format we were trying to use.
|
|
Most stencil demos look OK (modulo some unrelated rendering glitches).
Only single-sided stencil test works at this point.
There are probably some bugs to be found...
|
|
|
|
|
|
|
|
|
|
Use the new enum values rather than integers in a few places.
|
|
|
|
|
|
|
|
Fixes corrupted fonts in bzFlag, where we've been silently
failing to copy I8 mipmaps to a new miptree.
Print an error message on unsupported format now, since we
can't return failure.
|
|
This branch already seems to have the nv50_tex.c fix.
Conflicts:
src/gallium/drivers/nv50/nv50_tex.c
|
|
|
|
|
|
|
|
|
|
|
|
The llvm wrapper wasn't really an OS thing.
Use lp_bld.h for now but we eventually should rename/re-prefix all the
files/functions in the gallivm/ directory.
|
|
|
|
|
|
|
|
|
|
Conflicts:
src/gallium/drivers/nv30/nv30_context.h
src/gallium/drivers/nv30/nv30_state.c
src/gallium/drivers/nv40/nv40_context.h
src/gallium/drivers/nv40/nv40_state.c
src/gallium/drivers/r300/r300_emit.c
|
|
This creates a cleaner winsys and drop the simple screen stuff.
It makes r300g use pb_bufmgr structs.
It also tries to avoid overheads from mapping too often.
v5: clean warnings
v6: break out of cache check on first buffer - since most likely
the first busy one implies all after it are busy.
v7: cleanup a bit
v8-merged: drop cman for now to just get all the interface changes in first.
rework to changes that happened upstream
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
|
|
src_native_swz was used to translate 0/1 swizzles back when Gallium
supported them.
That support was later removed from Gallium, and the function currently
always returns true.
Remove it.
|
|
Currently the behavior of shader.h depends on some constants that
are defined differently in vertex and fragment programs.
This patch cleans that up by splitting the relevant symbols in
vertex program and fragment program variants
|
|
It was totally broken: the index buffer was passed as NULL!
|
|
Don't lose precision by converting to u8.
|
|
We must divide everything in the position by w, and emit position as
a 4-component vector.
Not sure why we must divide, but it works (see progs/redbook/checker).
|
|
This avoids duplicating the vertex program generation logic and
makes the same code work for both nv30 and nv40.
|
|
Replace the FORCE_SWTNL macro with a NOUVEAU_SWTNL environment variable.
|
|
It is only used on pre-nv50 and nvfx is the only Gallium pre-nv50 driver.
|
|
The primitive splitting code is totally broken and will be rewritten.
Fix the most important bug now though.
|
|
The adjustment of nv30/nv40 after the removal of bypass incorrectly
removed the hardware viewport bypass code, which we still need for
swtnl and also forgot to remove NVFX_NEW_RAST from pipe.
|
|
This is the last nvfx unification patch.
nv[34]0_fragtex.c are moved to the common directory
nv[34]0_shader.h are renamed to nv[34]0_vertprog.h and moved to
the common directory
The separate nv30 and nv40 directories are removed from the build
system
|
|
Many things, like texture wrap modes and min/mag filters are common.
Some others, like annisotropy and lod settings, are not.
|
|
The bulk files cannot be unified, but the frontend can and allows to
share some code and simplify state_emit.c
|
|
They are now almost identical, except for nv30 vs nv40 fragtex
initialization.
|
|
Move the remaining content to the common header.
|