I was reading about the side effects of using "discard" in OpenGL's fragment shader, such as early testing being disabled. But I could not find any alternative for alpha-testing until I stumbled upon glAlphaFunc, which seems to be deprecated since OpenGL 3.0. However I could not find any documentation on why it has been removed, and there seems to be no alternative to "discard".
What happened to glAlphaFunc? Why was it deprecated?
1.6k Views Asked by Type Definition At
1
There are 1 best solutions below
Related Questions in OPENGL
- setting OpenGL version in objective-C
- How to run OpenGL version 3.3 (with Intel HD 4000) on Ubuntu 15.04
- Can linear filtering be used for an FBO blit of an MSAA texture to non-MSAA texture?
- How to get shader version from QOpenGLShader?
- "Capture GPU Frame" in XCode -- iOS only?
- Difference between glewGetString(GLEW_VERSION) and glewIsSupported
- Tesselation result flickering - OpenGL/GLSL
- Water rendering in opengl
- Texture mapping consuming physical memory
- Rotating a Cube using Quaternions in PyOpenGL
- Switching from perspective orthographic projection in OpenGL
- FreeType2 and OpenGL : Use unicode
- Should Meshes with and without Skeleton use different Shaders?
- How to get accurate 3D depth from 2D screen mouse click for large scale object in OpenGL?
- Trying to load 2d texture with glTexImage2D, but just getting blank
Related Questions in OPENGL-3
- How to get accurate 3D depth from 2D screen mouse click for large scale object in OpenGL?
- Modern GLSL ( opengl 3+ ) : Implementing phong effect correctly;
- Shadow not rendered correctly
- OpenGL: Strange bahaviour of VBO deletion?
- Represent 2D array in opengl 4.5
- Confused with OpenGL 3+ Core functions and Extensions
- How to decrease first person shooting camera object in OpenGL
- Debuging OpenGL 3.0 without direct API ( aka glBegin() ... )
- Undefined reference to symbol 'glFrontFace'
- Moving and looking around with camera conflicts
- Precision of glReadPixels when reading unsigned int
- OpenGL 3.3 glDrawArrays for triangles
- Load obj files and draw other figures inside a cube with size 1 - java opengl
- Issue when drawing on a render texture. (OpengGL 3.3)
- Is it possible to draw anything in OpenGL 3+ without writing GLSL shaders? Will it run on older computers?
Related Questions in OPENGL-4
- Shadow not rendered correctly
- Represent 2D array in opengl 4.5
- Switching from 3D to 2D in OpenGL
- OpenGL texture array layer data copy
- Allocate multiple objects at once or not
- Confused with OpenGL 3+ Core functions and Extensions
- Incorrect result when using 3D textures
- offscreen rendering opengl 4.5 multisample FBO
- Precision of glReadPixels when reading unsigned int
- Parralax mapping does not work correctly using OpenGL and GLSL
- Render large circular points in modern OpenGL
- "Failed to make context current." on a computer without Qt
- What are the Attribute locations for fixed function pipeline in OpenGL 4.0++ core profile?
- How to set a unit for an object in OpenGL
- Failing to map a simple unsigned byte rgb texture to a quad:
Related Questions in OPENGL-2.0
- Drawing to multiple buffers simultaneously and rendering each buffer Individually to display
- Where is glTextureVertexPointer defined?
- OpenGL - Loading Multiple Images to Textures
- Modern equivalent of `gluOrtho2d `
- openGL2.0: How to disable vertex shaders?
- OpenGL DrawArrays with Color
- Open GL2.0 library codes
- OpenGL: Create proxy user for shader
- How can I pass multiple textures to a single shader?
- Opengl failing to depth test properly
- OpenGl renderer on Android
- Class design: how to return a shared_ptr: reference or copy
- VBO: Array not drawn
- GL_INVALID_OPERATION reported by glVertexPointer even though glEnableClientState(GL_VERTEX_ARRAY) called
- Is calling glBindBuffer, glUseProgram etc with same values as before inefficient?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Alpha testing has (on all implementations I know of) never been done in the early testing stage. I don't think it is even possible there because before the fragment shader has been executed there is no concept of a color or a alpha channel.
In addition, enabling alpha testing usually disables early depth testing (see here), which means that it behaves the same as when discard is used in the shader.
I cannot directly answer why
glAlphaFunchas been removed, but since there is no real difference betweendiscardand alpha testing, it's not really a problem.