projects
/
mesa.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
mesa: implement glGet for AMD_framebuffer_multisample_advanced
[mesa.git]
/
src
/
mesa
/
main
/
points.c
diff --git
a/src/mesa/main/points.c
b/src/mesa/main/points.c
index 3239c6f28042ed6a1e7d3408f7698b2bceefcd3e..095e2a3d707dd42b5d68456155c700cfada78d17 100644
(file)
--- a/
src/mesa/main/points.c
+++ b/
src/mesa/main/points.c
@@
-5,7
+5,6
@@
/*
* Mesa 3-D graphics library
/*
* Mesa 3-D graphics library
- * Version: 7.1
*
* Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
*
*
* Copyright (C) 1999-2007 Brian Paul All Rights Reserved.
*
@@
-22,9
+21,10
@@
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
- * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
- * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
+ * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ * OTHER DEALINGS IN THE SOFTWARE.
*/
*/
@@
-40,18
+40,16
@@
* \param size point diameter in pixels
* \sa glPointSize().
*/
* \param size point diameter in pixels
* \sa glPointSize().
*/
-void GLAPIENTRY
-
_mesa_PointSize( GLfloat size
)
+static ALWAYS_INLINE void
+
point_size(struct gl_context *ctx, GLfloat size, bool no_error
)
{
{
- GET_CURRENT_CONTEXT(ctx);
-
- if (size <= 0.0) {
- _mesa_error( ctx, GL_INVALID_VALUE, "glPointSize" );
+ if (ctx->Point.Size == size)
return;
return;
- }
- if (ctx->Point.Size == size)
+ if (!no_error && size <= 0.0F) {
+ _mesa_error(ctx, GL_INVALID_VALUE, "glPointSize");
return;
return;
+ }
FLUSH_VERTICES(ctx, _NEW_POINT);
ctx->Point.Size = size;
FLUSH_VERTICES(ctx, _NEW_POINT);
ctx->Point.Size = size;
@@
-61,6
+59,22
@@
_mesa_PointSize( GLfloat size )
}
}
+void GLAPIENTRY
+_mesa_PointSize_no_error(GLfloat size)
+{
+ GET_CURRENT_CONTEXT(ctx);
+ point_size(ctx, size, true);
+}
+
+
+void GLAPIENTRY
+_mesa_PointSize( GLfloat size )
+{
+ GET_CURRENT_CONTEXT(ctx);
+ point_size(ctx, size, false);
+}
+
+
void GLAPIENTRY
_mesa_PointParameteri( GLenum pname, GLint param )
{
void GLAPIENTRY
_mesa_PointParameteri( GLenum pname, GLint param )
{
@@
-103,7
+117,7
@@
_mesa_PointParameterfv( GLenum pname, const GLfloat *params)
* If point parameters aren't supported, then this function shouldn't even
* exist.
*/
* If point parameters aren't supported, then this function shouldn't even
* exist.
*/
-
ASSERT
(!(ctx->Extensions.ARB_point_sprite
+
assert
(!(ctx->Extensions.ARB_point_sprite
|| ctx->Extensions.NV_point_sprite)
|| ctx->Extensions.EXT_point_parameters);
|| ctx->Extensions.NV_point_sprite)
|| ctx->Extensions.EXT_point_parameters);
@@
-119,9
+133,9
@@
_mesa_PointParameterfv( GLenum pname, const GLfloat *params)
return;
FLUSH_VERTICES(ctx, _NEW_POINT);
COPY_3V(ctx->Point.Params, params);
return;
FLUSH_VERTICES(ctx, _NEW_POINT);
COPY_3V(ctx->Point.Params, params);
- ctx->Point._Attenuated = (ctx->Point.Params[0] != 1.0 ||
- ctx->Point.Params[1] != 0.0 ||
- ctx->Point.Params[2] != 0.0);
+ ctx->Point._Attenuated = (ctx->Point.Params[0] != 1.0
F
||
+ ctx->Point.Params[1] != 0.0
F
||
+ ctx->Point.Params[2] != 0.0
F
);
break;
case GL_POINT_SIZE_MIN_EXT:
if (params[0] < 0.0F) {
break;
case GL_POINT_SIZE_MIN_EXT:
if (params[0] < 0.0F) {
@@
-209,7
+223,7
@@
_mesa_PointParameterfv( GLenum pname, const GLfloat *params)
}
if (ctx->Driver.PointParameterfv)
}
if (ctx->Driver.PointParameterfv)
-
(*ctx->Driver.PointParameterfv)
(ctx, pname, params);
+
ctx->Driver.PointParameterfv
(ctx, pname, params);
}
}
@@
-225,8
+239,6
@@
_mesa_PointParameterfv( GLenum pname, const GLfloat *params)
void
_mesa_init_point(struct gl_context *ctx)
{
void
_mesa_init_point(struct gl_context *ctx)
{
- GLuint i;
-
ctx->Point.SmoothFlag = GL_FALSE;
ctx->Point.Size = 1.0;
ctx->Point.Params[0] = 1.0;
ctx->Point.SmoothFlag = GL_FALSE;
ctx->Point.Size = 1.0;
ctx->Point.Params[0] = 1.0;
@@
-253,7
+265,5
@@
_mesa_init_point(struct gl_context *ctx)
ctx->Point.SpriteRMode = GL_ZERO; /* GL_NV_point_sprite (only!) */
ctx->Point.SpriteOrigin = GL_UPPER_LEFT; /* GL_ARB_point_sprite */
ctx->Point.SpriteRMode = GL_ZERO; /* GL_NV_point_sprite (only!) */
ctx->Point.SpriteOrigin = GL_UPPER_LEFT; /* GL_ARB_point_sprite */
- for (i = 0; i < Elements(ctx->Point.CoordReplace); i++) {
- ctx->Point.CoordReplace[i] = GL_FALSE; /* GL_ARB/NV_point_sprite */
- }
+ ctx->Point.CoordReplace = 0; /* GL_ARB/NV_point_sprite */
}
}