My brain vs opengl documentation right now
category: general [glöplog]
language like, "Otherwise, the largest possible red accumulation buffer of at least the minimum size is preferred." doesn't make sense to me right now.
I just want to make sure this is clear.
in glXChooseVisual's attribute param setting GLX_RED_SIZE to 1 is like requesting the maximum red size from the visual, yes?
I just want to make sure this is clear.
in glXChooseVisual's attribute param setting GLX_RED_SIZE to 1 is like requesting the maximum red size from the visual, yes?
I think it's requesting the size of 1. In any case, I'd set it to zero. Accumulation buffers don't have hardware support on any modern hardware.
oh, I copy-pasted from the wrong documentation. "Otherwise, the largest available red buffer of at least the minimum size is preferred" is what I meant
after some typing I've found that glXChooseVisual chooses some random crappy visual. I have a 24bit display please, not a 16bit one
My brain vs your post right now - fail...
err
GLX documentation != OpenGL Documentation?
Although, it isn't great in itself...
GLX documentation != OpenGL Documentation?
Although, it isn't great in itself...
ah, don't worry, OpenGL documentation was never meant for humans.
Following quote come from "6.1. CREATING AND BINDING BUFFER OBJECTS" in "The OpenGL
R Graphics System:
A Specification
(Version 4.4 (Core Profile) - October 18, 2013)"
My brain understand this quote as following 3 codes generate GL_INVALID_OPERATION.
#1:
#2:
#3:
But in my experience, #2 is vaild OpenGL code.
R Graphics System:
A Specification
(Version 4.4 (Core Profile) - October 18, 2013)"
Quote:
An INVALID_OPERATION error is generated if buffer is not zero or a name
returned from a previous call to GenBuffers, or if such a name has since been
deleted with DeleteBuffers.
My brain understand this quote as following 3 codes generate GL_INVALID_OPERATION.
#1:
Code:
glBindBuffer(GL_ARRAY_BUFFER, 12345);
#2:
Code:
GLuint name;
glGenBuffers(1, &name);
glBindBuffer(GL_ARRAY_BUFFER, name);
#3:
Code:
GLuint name;
glGenBuffers(1, &name);
glDeleteBuffers(1, &name);
glBindBuffer(GL_ARRAY_BUFFER, name);
But in my experience, #2 is vaild OpenGL code.
tomohio: I believe that's only valid in legacy GL.
tomohiro: in #2 you are assigning a name returned from a previous call to glGenBuffers, hence, from documentation: "An INVALID_OPERATION error is generated if buffer is not zero or a name
returned from a previous call to GenBuffers,"
So #2 is correct and the documentation says it's correct :-)
returned from a previous call to GenBuffers,"
So #2 is correct and the documentation says it's correct :-)
#1 and #3 are valid in OpenGL ES 2.0/3.0/3.1 but not in OpenGL. These use cases rely on "generate-upon-binding" mechanism which is considered deprecated and which you should not - in general - be using if you're coding for ES. As was said, they will generate an error if you try following them.
i believe english 2.0 will add mandatory parentheses
Jcl: Thank you!
Now I can understand OpenGL Specification correctly.
"An INVALID_OPERATION error is generated if buffer is not (zero or a name returned from a previous call to GenBuffers), or if such a name has since been deleted with eleteBuffers."
kbi: I only use OpenGL and I didn't know #1 and #3 are valid in OpenGL ES.
216: Indeed. Parentheses help understanding english.
Now I can understand OpenGL Specification correctly.
"An INVALID_OPERATION error is generated if buffer is not (zero or a name returned from a previous call to GenBuffers), or if such a name has since been deleted with eleteBuffers."
kbi: I only use OpenGL and I didn't know #1 and #3 are valid in OpenGL ES.
216: Indeed. Parentheses help understanding english.
What!? OpenGL has documentation!? :)
(My brain vs opengl) documentation :)
I've just tested vbos in GL. let's say that in most of configuration using a gl buffer to sotre 3d objects infos do not speed up the rendering, specially on mobile platforms like android or iPhone !
Bartoshe: go home, you're drunk.
In fact: if I were you, I'd then go further and check if glBegin()/glVertex*()/glEnd() are faster than VAA & element-driven draw calls. Hell, maybe they're even faster than indirect calls, now that would make a good headline!
(sic)
(sic)