|
Attenuate function of GL Points not Environmental context awareWas going through my comps searching and came across this bug demo I made long ago, still a bug. Attenuate doesn't work on some GPUs but where it does, it's broke in the sense that the perspective based size adjustment is locked off and not aware of the viewing angle. Seeing's believing:
|
What's weird to me is that in your example the structure renderer seems to actually deliver different sizes at different z positions.
A GL Point should always stay the same size regardless of Z placement, and should also always face forward no matter what the rotation.
These GL Points are actually attenuating according to changes in 'Y' value also. You can see that in there start position before it spins. Just to be clear I added another row of single GL Points in the Structured renderer patch.
So the display is: Row 1: GL Point Structure
Row 2: Sphere in Structure Transform
Row 3: GL Point in Structure Transform
Space to att, 'S" to start them spinning.
Perhaps you're used to seeing them with a GPU that doesn't attenuate. There was discussion of this topic on tb's random walk thread, I seem to remember his laptop's GPU didn't execute attenuation at all. From what I remember attenuate is a GLSL function that Kineme's GL Tools is leveraging rather than any feature design/construct on their part.
I see them attenuating with X and Y placement, corresponding to the edges of the QC projection mode (as well as Z).
I see what you are saying is a bug now... there was something about the constant spinning that was obscuring it for me, and then when I disconnected the spin, I didn't get it at first. The points at the edges are staying the same size they would be if a Y rotation of the whole structure wasn't taking place.
It's that I don't use that function. If I wanted to draw a bunch of points that changed with Z, I would most likely also want rotation, at which point I would typically use an iterator and sprites. I've been under the impression the GL Points always billboard.