Age | Commit message (Collapse) | Author |
|
The point size min/max registers (unused by mesa state tracker) were removed
since most hardware couldn't do much with them. However, we don't want to have
to rely on hw to do point size clamping correctly to implementation
dependent limits, hence have to do that in the vertex shader. This should also
solve a potential problem with (non-AA) points smaller than 1.0 which according
to OGL still have size 1.0.
Note that OGL point rendering is odd, in particular point sprites are rasterized
differently to points. Some hardware might support those different modes, but in
any case the different clamping values used for smooth/multisampled/sprite
enabled points might help a bit for hw which rasterizes points the same as point
sprites.
Also tweak mesa's ff to vertex shader translation so don't have to clamp twice in
case of point attenuation.
|
|
there was some confusion between point size state and point size output.
|
|
|
|
Don't need sprite coord origin per coord.
Also, don't need separate sprite enable bit - if all coords have it diabled,
then there are no point sprites (technically, there's a distinction in pre-GL3,
but it only differs in having more leniency in clamping to max size, something
the state tracker would need to handle and the hardware won't bother anyway).
Also, use packed field for the per-coord enables.
All in all, should save 3 dwords in rasterizer state (from 10 down to 7).
|
|
The state tracker is responsible for clamping to any graphics API enforced
size min/max limits for both the static point_size setting as well as per
vertex point size (in the vertex shader).
Note that mesa state tracker didn't actually use these values.
|
|
Mark all functions start with glX as public.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
|
|
These functions are the API of Gallium state tracker, and are used by
EGL.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
|
|
As the default build has -fvisibility=hidden, add a macro to control the
visibility.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
|
|
Mark VG and VGU functions as public.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
|
|
Temporary. We should soon have the ability to integrate with any driver
via glx extensions.
|
|
As displaying surfaces directly isn't supported by the python state
tracker.
|
|
|
|
As the python state tracker is not integrated with window system an
cannot present surfaces directly.
|
|
It was bugging me. +1 FPS on softpipe.
|
|
|
|
|
|
The current glCompressedTexImage support in the state tracker assumes
that compressed textures have minimal pitch.
However, in some cases this is not true, such as for mipmaps of non-POT
compressed textures on nVidia hardware.
This patch adds a check and does a memcpy for each line instead of the
whole image in that case.
Signed-off-by: Keith Whitwell <keithw@vmware.com>
Tweaks for C90 compilation.
|
|
If somebody goes through that much effort, they probably intended it.
So humor them. :3
|
|
copypix works just fine.
|
|
the xorg state tracker really wants the driver to handle overlapping
blits, and r300 uses u_blitter for blits. This patch adds overlapping
blit support via a temporary surface when its required.
|
|
Argfl. Some of this code is so questionable.
|
|
|
|
Goddammit, some of these hax are really annoying.
|
|
According to the docs, this decreases stalls, and indeed we get a tiny
bit more glxgears from it.
|
|
Simplify the code. Added a comment to keep me from doing it again.
|
|
I want to stab things now.
|
|
|
|
On r100 we emit the indices inline so we need to account
for that in the emission size.
|
|
This bug was fixed in libdrm ages ago, port to non-kms
|
|
Fixes gnome-shell on nouveau, as well as window resize with various
other applications.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
|
|
Also do state-change checks. ZTOP's too important to not check.
|
|
Also a bit of ztop.
|
|
Meh.
|
|
|
|
No benefits yet.
|
|
Explain how to build for windows. Both MSVC 9 and cross MinGW supported.
Stop documenting LLVM 2.5 as supported. It still supported at the moment
but it will soon stop being.
|
|
This allows libEGL to be built as a static library and removes libX11
from the dependencies.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
|
|
The call to _eglSwapBuffers is unnecessary, and the function is missing
when -fvisibility=hidden. Also remove the extraneous braces and indent
the block.
|
|
debug builds.
|
|
|
|
|
|
ad-hoc definitions.
Everybody is using the C99's integer types. Everybody except Microsoft,
which in turns means everybody is including their own definitions of C99
integer types for MSVC, causing duplicate definitions when linking two
projects. This is the case of building Gallium and LLVM with MSVC.
Shipping alternative stdint.h and stdbool.h headers for MSVC allows us
to share a single definition. It also removes clutter from the Gallium
headers.
|
|
|
|
Depth buffer accelerated blits aren't implemented yet.
|
|
|
|
|
|
|
|
Conflicts:
src/mesa/drivers/dri/i965/brw_wm_emit.c
|
|
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
|
|
When static libraries are created from other archives, objects are
extracted and then deleted when the static library is done. This can
race when there are multiple static libraries being created from the
same archives as with libmesa.a and libmesagallium.a.
Should fix this issue with parallel jobs:
make[5]: *** No rule to make target
> `../../../../../../src/mesa/libmesagallium.a', needed by
> `radeon_dri.so'. Stop
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Reported-and-Tested-by: Sedat Dilek <sedat.dilek@gmail.com>
|