PDA

View Full Version : GLslang in ATI 6.14.10.6404



Corrail
12-12-2003, 04:32 AM
Hello!

I just tried out GLslang in ATI Catalyst 6.14.10.6404 drivers and found the following problems:

-) glCompileShaderARB will compile the following line without problems in a Vertex Shader:

gl_Position = gl_ModelViewProjectionMatrix * gl_Position ;

But if I want to link a Program Object (at which this Vertex Shader Object is attached to) my program crashes fully.


-) When I define a uniform sampler and use glGetActiveUniformsARB, this function doesn't return me a vaild name, a vaild size and a valid uniform type of that sampler uniform. But GL_OBJECT_ACTIVE_UNIFORMS tells me that these uniforms should be there.


-) There are no texture lockup functions in a vertex shader. But GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB returns me a number of 16.


Anyone have these problems too and is able to help me?

Thanks a lot
Corrail

Corrail
12-12-2003, 05:21 AM
I just noticed another problem:

glGetActiveAttribARB doesn't return me a vaild attribute type. It returns me for

float: 0
vec2: 1
vec3: 2
vec4: 3
mat2: 4
mat3: 5
mat4: 6

An not the defined values.

mchristen
12-12-2003, 07:52 AM
I can't talk about ATI drivers but for current 3dlabs implementation:

* You can't just run a Vertex shader without a Fragment shader. (you need to implement both shaders right now)

* Vertex Shader texture mapping isn't implemented yet, use fragment shaders for that http://www.opengl.org/discussion_boards/ubb/wink.gif


You can download API release notes of 3dlabs implementation (in their new SDK revision 6) http://www.3dlabs.com/support/developer/ogl2/downloads/index.htm

--Martin

Corrail
12-12-2003, 07:59 AM
* You can't just run a Vertex shader without a Fragment shader. (you need to implement both shaders right now)

It is possible to run a Vertex Shader without a Fragment Shader. In ATI driver it is possible and the standart OpenGL Machine is responsible to do the fragment processing.


* Vertex Shader texture mapping isn't implemented yet, use fragment shaders for that

*hm* But why does GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB returns me 16??? :-)

DopeFish
12-12-2003, 08:34 PM
Well he is talking about 3DLabs drivers, you are talking about ATi's drivers. See the difference?

mchristen
12-12-2003, 10:04 PM
My point was, both ATI and 3dlabs OGLSL implementations are not completed yet.

They both still lack key features, and unexpected things happen.

--Martin

MichaelK
12-15-2003, 07:59 AM
And the latest spec is also buggy.
Where can we submit caught errors in the spec?

Sergey K.
12-18-2003, 06:31 AM
glUniform4fvARB(Loc, @Vec) generates an OpenGL INVALID_OPERATION error, while glUniform4fARB(Loc, Vec[0], Vec[1], Vec[2], Vec[3]) runs ok. Bug ?

DanO
12-19-2003, 11:42 AM
The easiest for ATI fix the bugs is by emailing devrel@ati.com. They'll be happy to help you out.

It's most helpful if you send a sample program (with source if possible) to reproduce the problem.