15,978 reputation
13873
bio website vectorstorm.org
location Melbourne, Australia
age
visits member for 4 years, 1 month
seen 46 mins ago

Mobygames Profile (not entirely accurate): http://www.mobygames.com/developer/sheet/view/developerId,80048/


4h
comment OpenGL Shaders Ignored
glGetError() would have spotted that problem. :)
1d
awarded  Enlightened
1d
awarded  Nice Answer
1d
comment GLSL 330 Core Bug? - Uniform variable will not set to value if it is named a certain way
(note that the above is not behaviour which is mandated by the standards; it's just an explanation for what was actually failing in this particular case, using the specified ATI driver, according to some debugging.)
1d
comment GLSL 330 Core Bug? - Uniform variable will not set to value if it is named a certain way
See my comment below about "Suspected driver bugs still almost always turn out to have been technically-illegal OpenGL code which one vendor let you get away with and another didn't." In this case, if your shader uses pr_matrix and vw_matrix but not the others, pr_matrix is uniform 0 and vw_matrix is uniform 1. If the shader uses pr_matrix and m1_matrix, pr_matrix is uniform 1 and m1_matrix is uniform 0. Your code was always setting the projection matrix into uniform 0.
2d
comment GLSL 330 Core Bug? - Uniform variable will not set to value if it is named a certain way
Driver bugs still aren't common -- just much less absurdly rare than C compiler bugs. Suspected driver bugs still almost always turn out to have been technically-illegal OpenGL code which one vendor let you get away with and another didn't. Just not in this case. :)
2d
comment GLSL 330 Core Bug? - Uniform variable will not set to value if it is named a certain way
(You get the these issues using ATI's official drivers on Windows or Linux, under OpenGL. You don't seem to get them on OS X; presumably they're using entirely different codebase for their ATI drivers? Additionally, you don't get these issues on Linux if you're using the open-source community drivers instead of the official ATI ones.)
2d
comment GLSL 330 Core Bug? - Uniform variable will not set to value if it is named a certain way
(With that said, I've seen a lot of newly-ported-to-OpenGL games fail on certain ATI cards due to the "not retaining previously set uniform values" issue. The general wisdom is that you should remember what uniform values you last set, and not re-set them if they don't change. But on ATI cards with the official drivers, you can sometimes end up rendering using rubbish uniform values if you do that.)
2d
comment GLSL 330 Core Bug? - Uniform variable will not set to value if it is named a certain way
@Flafla2 C compiler bugs are very rare; you're unlikely to ever bump into one unless you're working on an unusual platform. When you suspect a C compiler bug, most people won't believe you; on balance, you're more likely to be making a silly mistake than to have found a real issue. Driver bugs around details in the OpenGL specification are much, much more common and less unbelievable. Particularly in this sort of area like "what happens with a uniform variable which the host program doesn't actually set a value for" which virtually never happen in the real world.
2d
comment Enemy Follow Player Orthogonal Movement
What is your question? Looks like it's doing exactly what you've specified that you want it to do?
2d
comment Is there a way of moving the transform of an object relative to it's geometry
Note that moving an object's transform always moves the geometry; that's what the transform is there for. What you're really intending to ask is whether there's a way of moving the object's geometry relative its transform.
Jun
28
answered Popular licensed music on my game, where to start?
Jun
28
comment GLSL 330 Core Bug? - Uniform variable will not set to value if it is named a certain way
While we're here, it's worth also mentioning that the current ATI drivers for certain GPUs also don't always correctly retain uniform values when switching between current shader programs. So not only do you need to set all your shader' uniforms explicitly, you need do it it every time you switch from one shader to another.
Jun
28
answered GLSL 330 Core Bug? - Uniform variable will not set to value if it is named a certain way
Jun
28
comment Small text is very light / faint with FreeType and OpenGL
@akaltar Valve's distance field method doesn't render small text well. The big benefit of distance fields is that they make shapes in a texture remain smooth even when drawn much bigger on screen than the texture from which it's drawing.
Jun
3
comment Collaborative Diffusion vs. A* for loose armies combat: any clear winner?
You mean, aside from CD only being useful if every agent is trying to reach the same destination?
Jun
1
awarded  Yearling
May
30
comment How to compute matrix transform local/world on OpenGL
Can you explain the m_WorldTransform = m_pParent->m_WorldTransform * m_WorldTransform; line in your code? Why are you adjusting your WORLD matrix by the parent's WORLD matrix, if they're WORLD matrices already?
May
30
comment Authentication between client, central server, and player ran server
Yes, that's what I was intending to point out (but maybe didn't make clear). Under "strict" NAT (by Microsoft's definition), the auth server and game server won't see the same IP:Port values for a single player, so the auth server can't usefully tell the game server the IP/port to expect to see. This issue can also happen with "moderate" NAT (depending on specific NAT implementation) if there are two players behind the one NAT device, both trying to send from the same port number.
May
28
awarded  Good Answer