Sign in to follow this  
Followers 0
SillyCow

OpenGL
Is GL_NORMALIZE still slow?

3 posts in this topic

Is glEnable(GL_NORMALIZE) slow on modern hardware?

I read the opengl pitfalls article which suggests that enabling this option slows down vertex processing.

The article is from 2000.

In 2000 there were still some low-end cards with S/W only vertex processing...

So, is this still a problem?

 

0

Share this post


Link to post
Share on other sites

One thing to note is if you're targeting OpenGL (desktop) that the GL_NORMALIZE target (for glEnable/glDisable) was deprecated in OpenGL 3.2 Core (July 2009). It won't be available any longer in Core profiles in 3.2 or later versions. Just an FYI. :)

2

Share this post


Link to post
Share on other sites

First be aware of what enabling GL_NORMALIZE actually does and what circumstances you may need it in.  If you never scale your matrix, you don't need it.  If you do scale but it's uniform (i.e. x, y and z are scaled by the same amount), you don't need it - use GL_RESCALE_NORMAL instead.

 

So having determined that you do need it, is it slow?  Well, it's certainly going to be slower than not using it, but that may not necessarily translate into "slow" - in other words, using GL_NORMALIZE may not suddenly throw you down to single digit framerates.  If you can still hit your target performance when using it, then you can hardly call it "slow", can you?

 

And finally, you've tagged your question "OpenGL ES" but you're not saying which version.  In 2013 you may well be lighting per-fragment, and renormalizing in your fragment shader anyway, in which case none of this discussion is relevant.

2

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0