#include "main/glheader.h"
#include "main/colormac.h"
#include "main/context.h"
#include "main/macros.h"
#include "main/texstate.h"
#include "s_context.h"
#include "s_feedback.h"
#include "s_points.h"
#include "s_span.h"
Defines | |
#define | CULL_INVALID(V) |
Used to cull points with invalid coords. | |
Functions | |
static INLINE GLfloat | get_size (const GLcontext *ctx, const SWvertex *vert, GLboolean smoothed) |
Get/compute the point size. | |
static void | sprite_point (GLcontext *ctx, const SWvertex *vert) |
Draw a point sprite. | |
static void | smooth_point (GLcontext *ctx, const SWvertex *vert) |
Draw smooth/antialiased point. | |
static void | large_point (GLcontext *ctx, const SWvertex *vert) |
Draw large (size >= 1) non-AA point. | |
static void | pixel_point (GLcontext *ctx, const SWvertex *vert) |
Draw size=1, single-pixel point. | |
void | _swrast_add_spec_terms_point (GLcontext *ctx, const SWvertex *v0) |
Add specular color to primary color, draw point, restore original primary color. | |
void | _swrast_choose_point (GLcontext *ctx) |
Examine current state to determine which point drawing function to use. |
#define CULL_INVALID | ( | V | ) |
Value:
do { \ float tmp = (V)->attrib[FRAG_ATTRIB_WPOS][0] \ + (V)->attrib[FRAG_ATTRIB_WPOS][1]; \ if (IS_INF_OR_NAN(tmp)) \ return; \ } while(0)
Add specular color to primary color, draw point, restore original primary color.
void _swrast_choose_point | ( | GLcontext * | ctx | ) |
Examine current state to determine which point drawing function to use.
static INLINE GLfloat get_size | ( | const GLcontext * | ctx, | |
const SWvertex * | vert, | |||
GLboolean | smoothed | |||
) | [static] |
Get/compute the point size.
The size may come from a vertex shader, or computed with attentuation or just the glPointSize value. Must also clamp to user-defined range and implmentation limits.
Draw large (size >= 1) non-AA point.
RGB or CI mode.
Draw size=1, single-pixel point.
Draw smooth/antialiased point.
RGB or CI mode.