All of lore.kernel.org
 help / color / mirror / Atom feed
* [Bug 61635] New: glVertexAttribPointer(id, GL_UNSIGNED_BYTE, GL_FALSE, ...) does not work
@ 2013-02-28 21:02 bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
       [not found] ` <bug-61635-8800-V0hAGp6uBxMKqLRl/0Ahz6D7qz1kEfGD2LY78lusg7I@public.gmane.org/>
  0 siblings, 1 reply; 8+ messages in thread
From: bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ @ 2013-02-28 21:02 UTC (permalink / raw)
  To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW


[-- Attachment #1.1: Type: text/plain, Size: 1616 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=61635

          Priority: medium
            Bug ID: 61635
          Assignee: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
           Summary: glVertexAttribPointer(id, GL_UNSIGNED_BYTE,
                    GL_FALSE,...) does not work
          Severity: normal
    Classification: Unclassified
                OS: All
          Reporter: rodrigorivascosta-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org
          Hardware: x86 (IA32)
            Status: NEW
           Version: git
         Component: Drivers/DRI/nouveau
           Product: Mesa

I have a  NVidia GeForce 7600GT with the latest git nouveau driver (Gallium 0.4
on NV4B) and kernel 3.7.9.

I found the following problem: calling the function glVertexAttribPointer(idx,
GL_UNSIGNED_BYTE, GL_FALSE,...) does not work, that is the previous attrib
pointer remains, and the nouveau driver outputs in the dmesg:

[ 2052.630628] nouveau  [  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR
nstatus: BAD_ARGUMENT
[ 2052.630644] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [0x000dd000] subc 7 class
0x4097 mthd 0x1744 data 0x00001417

But glGetError() returns nothing unusual.

If I change the parameter from GL_UNSIGNED_BYTE to any other type (GL_BYTE,
GL_UNSIGNED_SHORT, GL_SHORT...) then it works as expected.

If I change the "normalized" parameter to GL_TRUE, it also works fine, even
with type GL_UNSIGNED_BYTE.

The software renderer does not have this problem. That and the kernel messages
suggest that it is a nouveau issue.

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 2875 bytes --]

[-- Attachment #2: Type: text/plain, Size: 181 bytes --]

_______________________________________________
Nouveau mailing list
Nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
http://lists.freedesktop.org/mailman/listinfo/nouveau

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug 61635] glVertexAttribPointer(id, GL_UNSIGNED_BYTE, GL_FALSE, ...) does not work
       [not found] ` <bug-61635-8800-V0hAGp6uBxMKqLRl/0Ahz6D7qz1kEfGD2LY78lusg7I@public.gmane.org/>
@ 2013-03-01 10:45   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
  2013-03-01 20:27   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
                     ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ @ 2013-03-01 10:45 UTC (permalink / raw)
  To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW


[-- Attachment #1.1: Type: text/plain, Size: 472 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=61635

--- Comment #1 from Emil Velikov <emil.l.velikov-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> ---
Created attachment 75733
  --> https://bugs.freedesktop.org/attachment.cgi?id=75733&action=edit
Typo?

Can you try the attached patch, it assumes there is a typo in the deffs

With that said, the nv30-40 vertex format table needs some love/expansion

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 1449 bytes --]

[-- Attachment #2: Type: text/plain, Size: 181 bytes --]

_______________________________________________
Nouveau mailing list
Nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
http://lists.freedesktop.org/mailman/listinfo/nouveau

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug 61635] glVertexAttribPointer(id, GL_UNSIGNED_BYTE, GL_FALSE, ...) does not work
       [not found] ` <bug-61635-8800-V0hAGp6uBxMKqLRl/0Ahz6D7qz1kEfGD2LY78lusg7I@public.gmane.org/>
  2013-03-01 10:45   ` [Bug 61635] " bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
@ 2013-03-01 20:27   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
  2013-03-02 20:15   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
                     ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ @ 2013-03-01 20:27 UTC (permalink / raw)
  To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW


[-- Attachment #1.1: Type: text/plain, Size: 914 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=61635

--- Comment #2 from rodrigo <rodrigorivascosta-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> ---
Thank, Emil, for your quick reply!

I've just tried this patch... The good news it that it no longer corrupts the
render, and no output to the dmesg, either. The bad news is that it still does
not work correctly.

This is what happens with the patched applied:

I'm sending a vertex attribute array with the same byte value for all the
vertices, and this value is used to calculate the color of the vertex, so I
expect it to render a solid color. The actual output is that most vertices are
rendered black (input 0) with just a few of them of random colors, changing
with each frame.

Weird...

If you think it could be useful I can try to extract the code into a small
compilable test case...

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 1704 bytes --]

[-- Attachment #2: Type: text/plain, Size: 181 bytes --]

_______________________________________________
Nouveau mailing list
Nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
http://lists.freedesktop.org/mailman/listinfo/nouveau

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug 61635] glVertexAttribPointer(id, GL_UNSIGNED_BYTE, GL_FALSE, ...) does not work
       [not found] ` <bug-61635-8800-V0hAGp6uBxMKqLRl/0Ahz6D7qz1kEfGD2LY78lusg7I@public.gmane.org/>
  2013-03-01 10:45   ` [Bug 61635] " bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
  2013-03-01 20:27   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
@ 2013-03-02 20:15   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
  2013-03-04 19:54   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
                     ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ @ 2013-03-02 20:15 UTC (permalink / raw)
  To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW


[-- Attachment #1.1: Type: text/plain, Size: 1282 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=61635

--- Comment #3 from Emil Velikov <emil.l.velikov-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> ---
(In reply to comment #2)
> Thank, Emil, for your quick reply!
> 
> I've just tried this patch... The good news it that it no longer corrupts
> the render, and no output to the dmesg, either. The bad news is that it
> still does not work correctly.
> 
> This is what happens with the patched applied:
> 
> I'm sending a vertex attribute array with the same byte value for all the
> vertices, and this value is used to calculate the colour of the vertex, so I
> expect it to render a solid colour. The actual output is that most vertices
> are rendered black (input 0) with just a few of them of random colours,
> changing with each frame.
> 

I was afraid of that. It looks like the original define was a bit off, although
obviously this is not the correct one either.

Someone with an actual nv4x card and better understanding of OpenGL than me
should take a look and reverse-engineer the (remaining) format(s)


> Weird...
> 
> If you think it could be useful I can try to extract the code into a small
> compilable test case...

That's always a good idea :)

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 2223 bytes --]

[-- Attachment #2: Type: text/plain, Size: 181 bytes --]

_______________________________________________
Nouveau mailing list
Nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
http://lists.freedesktop.org/mailman/listinfo/nouveau

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug 61635] glVertexAttribPointer(id, GL_UNSIGNED_BYTE, GL_FALSE, ...) does not work
       [not found] ` <bug-61635-8800-V0hAGp6uBxMKqLRl/0Ahz6D7qz1kEfGD2LY78lusg7I@public.gmane.org/>
                     ` (2 preceding siblings ...)
  2013-03-02 20:15   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
@ 2013-03-04 19:54   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
  2013-08-13 17:49   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
                     ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ @ 2013-03-04 19:54 UTC (permalink / raw)
  To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW


[-- Attachment #1.1: Type: text/plain, Size: 632 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=61635

--- Comment #4 from rodrigo <rodrigorivascosta-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> ---
Created attachment 75914
  --> https://bugs.freedesktop.org/attachment.cgi?id=75914&action=edit
Test case to show the problem with unnormalized attribute pointers of type
GL_UNSIGNED_BYTE

Compile with:

$ gcc -o glbyte -Wall glbyte.c -lglut -lGLEW -lGL

Running with software rendering:

$ LIBGL_ALWAYS_SOFTWARE=1 ./glbyte

draws a beautiful star.

But with hardware rendering:

$ ./glbyte

it draws nothing :(

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 1695 bytes --]

[-- Attachment #2: Type: text/plain, Size: 181 bytes --]

_______________________________________________
Nouveau mailing list
Nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
http://lists.freedesktop.org/mailman/listinfo/nouveau

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug 61635] glVertexAttribPointer(id, GL_UNSIGNED_BYTE, GL_FALSE, ...) does not work
       [not found] ` <bug-61635-8800-V0hAGp6uBxMKqLRl/0Ahz6D7qz1kEfGD2LY78lusg7I@public.gmane.org/>
                     ` (3 preceding siblings ...)
  2013-03-04 19:54   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
@ 2013-08-13 17:49   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
  2013-08-14  5:21   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
  2013-08-16  0:33   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
  6 siblings, 0 replies; 8+ messages in thread
From: bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ @ 2013-08-13 17:49 UTC (permalink / raw)
  To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW


[-- Attachment #1.1: Type: text/plain, Size: 653 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=61635

--- Comment #5 from Ilia Mirkin <imirkin-FrUbXkNCsVf2fBVCVOL8/A@public.gmane.org> ---
FTR, removing

   _(R8_USCALED          , U8_USCALED , 1),
   _(R8G8_USCALED        , U8_USCALED , 2),
   _(R8G8B8_USCALED      , U8_USCALED , 3),
   _(R8G8B8A8_USCALED    , U8_USCALED , 4),

from nv30_format.c appears to fix the sample program that you had (it falls
back to R32G32_FLOAT). Obviously that's probably not the right approach
overall... perhaps those should all be UNORM/SNORM instead of UNORM/USCALED...
or SNORM/SSCALED...

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 1443 bytes --]

[-- Attachment #2: Type: text/plain, Size: 181 bytes --]

_______________________________________________
Nouveau mailing list
Nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
http://lists.freedesktop.org/mailman/listinfo/nouveau

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug 61635] glVertexAttribPointer(id, GL_UNSIGNED_BYTE, GL_FALSE, ...) does not work
       [not found] ` <bug-61635-8800-V0hAGp6uBxMKqLRl/0Ahz6D7qz1kEfGD2LY78lusg7I@public.gmane.org/>
                     ` (4 preceding siblings ...)
  2013-08-13 17:49   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
@ 2013-08-14  5:21   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
  2013-08-16  0:33   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
  6 siblings, 0 replies; 8+ messages in thread
From: bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ @ 2013-08-14  5:21 UTC (permalink / raw)
  To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW


[-- Attachment #1.1: Type: text/plain, Size: 424 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=61635

--- Comment #6 from Ilia Mirkin <imirkin-FrUbXkNCsVf2fBVCVOL8/A@public.gmane.org> ---
If you're still able to test on that NV4B, could you redo your program to take
a vec4 instead of a vec2 (and just feed it 0's), and see if it works then?
(Without any mesa changes.) It worked for me on a NV44.

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 1214 bytes --]

[-- Attachment #2: Type: text/plain, Size: 181 bytes --]

_______________________________________________
Nouveau mailing list
Nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
http://lists.freedesktop.org/mailman/listinfo/nouveau

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [Bug 61635] glVertexAttribPointer(id, GL_UNSIGNED_BYTE, GL_FALSE, ...) does not work
       [not found] ` <bug-61635-8800-V0hAGp6uBxMKqLRl/0Ahz6D7qz1kEfGD2LY78lusg7I@public.gmane.org/>
                     ` (5 preceding siblings ...)
  2013-08-14  5:21   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
@ 2013-08-16  0:33   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
  6 siblings, 0 replies; 8+ messages in thread
From: bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ @ 2013-08-16  0:33 UTC (permalink / raw)
  To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW


[-- Attachment #1.1: Type: text/plain, Size: 732 bytes --]

https://bugs.freedesktop.org/show_bug.cgi?id=61635

Ilia Mirkin <imirkin-FrUbXkNCsVf2fBVCVOL8/A@public.gmane.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #7 from Ilia Mirkin <imirkin-FrUbXkNCsVf2fBVCVOL8/A@public.gmane.org> ---
Fix now in mesa-git
(http://cgit.freedesktop.org/mesa/mesa/commit/?id=14ee790df77c810f187860a8d51096173ff39fcf),
pretty sure it's the right thing. Closing this. Thanks for the test case, very
useful!

-- 
You are receiving this mail because:
You are the assignee for the bug.

[-- Attachment #1.2: Type: text/html, Size: 2309 bytes --]

[-- Attachment #2: Type: text/plain, Size: 181 bytes --]

_______________________________________________
Nouveau mailing list
Nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
http://lists.freedesktop.org/mailman/listinfo/nouveau

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2013-08-16  0:33 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-02-28 21:02 [Bug 61635] New: glVertexAttribPointer(id, GL_UNSIGNED_BYTE, GL_FALSE, ...) does not work bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
     [not found] ` <bug-61635-8800-V0hAGp6uBxMKqLRl/0Ahz6D7qz1kEfGD2LY78lusg7I@public.gmane.org/>
2013-03-01 10:45   ` [Bug 61635] " bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2013-03-01 20:27   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2013-03-02 20:15   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2013-03-04 19:54   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2013-08-13 17:49   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2013-08-14  5:21   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ
2013-08-16  0:33   ` bugzilla-daemon-CC+yJ3UmIYqDUpFQwHEjaQ

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.