mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 18:18:06 +02:00
improved solve_plane_chan() (Evgeny Kotsuba)
This commit is contained in:
parent
7ab14f00f0
commit
a2473160d4
1 changed files with 10 additions and 6 deletions
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: s_aatriangle.c,v 1.27 2003/01/20 15:20:27 brianp Exp $ */
|
||||
/* $Id: s_aatriangle.c,v 1.28 2003/01/22 15:03:09 brianp Exp $ */
|
||||
|
||||
/*
|
||||
* Mesa 3-D graphics library
|
||||
|
|
@ -132,12 +132,16 @@ solve_plane_recip(GLfloat x, GLfloat y, const GLfloat plane[4])
|
|||
static INLINE GLchan
|
||||
solve_plane_chan(GLfloat x, GLfloat y, const GLfloat plane[4])
|
||||
{
|
||||
GLfloat z = (plane[3] + plane[0] * x + plane[1] * y) / -plane[2] + 0.5F;
|
||||
if (z < 0.0F)
|
||||
const GLfloat z = (plane[3] + plane[0] * x + plane[1] * y) / -plane[2];
|
||||
#if CHAN_TYPE == GL_FLOAT
|
||||
return CLAMP(z, 0.0F, CHAN_MAXF);
|
||||
#else
|
||||
if (z < 0)
|
||||
return 0;
|
||||
else if (z > CHAN_MAXF)
|
||||
return (GLchan) CHAN_MAXF;
|
||||
return (GLchan) (GLint) z;
|
||||
else if (z > CHAN_MAX)
|
||||
return CHAN_MAX;
|
||||
return (GLchan) IROUND_POS(z);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue