Age | Commit message (Collapse) | Author |
|
A tri drawn with GL_LINE_LOOP and GL_POLYGON w/ fillmode=GL_LINE should produce
the same results when line stipple is enabled. Results are correct now.
|
|
|
|
|
|
|
|
aaline/point/pstipple stages
Added a void *draw ptr to pipe_context. Probably look for a better solution someday.
|
|
|
|
This fixes a validation/code-path problem. Enabling the stage for the sake
of wide points also inadvertantly caused wide lines to be converted to tris
when we actually want them passed through, such as for the AA line stage.
This is just cleaner now.
Also, replace draw_convert_wide_lines() with draw_wide_line_threshold() as
was done for points. Allows for 1-pixel lines to be converted too if needed.
|
|
vertex attribs
|
|
Use tgsi_scan_shader() to populate a tgsi_shader_info struct and use that instead.
|
|
These functions are now per-screen, not per-context.
|
|
|
|
Specifying a threshold size is a bit more flexible, and allows the option
of converting even 1-pixel points to triangles (set threshold=0).
Also, remove 0.25 pixel bias in wide_point().
|
|
|
|
of IF/ELSE/ENDIF
Allows the shader to work on i915 hardware.
|
|
|
|
This simplifies drivers using the draw module and removes the last dependency
on vertex-shader "internals". Since the draw module is producing the
post-transformed vertices, it makes sense to ask it where specific vertex
attributes are located.
This could also simplify some things in the state tracker code for selection,
feedback, rasterpos...
|
|
|
|
|
|
|
|
Also, simplify the logic a bit.
|
|
For hardware without native polygon stipple. Create a 32x32 alpha texture
that encodes the stipple pattern. Modify the user's fragment program to
sample the texture (with gl_FragCoord) and kill the fragment according to
the texel value.
Temporarily enabled in softpipe driver, replacing the sp_quad_stipple.c step.
|
|
AA points are drawn by converting the point to a quad, then modifying the
user's fragment shader to compute a coverage value. The final fragment
color's alpha is modulated by the coverage value. Fragments outside the
point's radius are killed.
|
|
Take a baby step to straightening out vertex paths.
|
|
|
|
|
|
|
|
Don't define ASM_SOURCES variable globally -- reserve that variable to be defined
locally by makefiles, together with C_SOURCES and CPP_SOURCES.
|
|
|
|
|
|
New draw/prim stage: draw_aaline. When installed, lines are replaced by
textured quads to do antialiasing. The current user-defined fragment shader
is modified to do a texture fetch and modulate fragment alpha.
|
|
|
|
|
|
In other words, don't build src/gallium source code from within src/mesa/Makefile.
Also, allow to customize which gallium auxiliary dirs, driver driver, winsys
dirs get built from the config/* files.
|
|
|
|
Create new files for shaders compiled/executed with llvm, sse, exec
respectively
|
|
|
|
"aux" is a reserved name on Windows (X_X)
|