Sign in to follow this  

[GLSL] Simple lighting shader not working

This topic is 1603 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hello!

 

For now, I used OGL in fixed function mode. But now I want to learn the programmable pipeline now.

 

I tried to implement a simple diffuse - specular lighting shader from http://www.lighthouse3d.com/tutorials/glsl-core-tutorial/directional-lights-per-pixel/ . But I got wierd results (picture attached)

 

I uploaded my code to pastebin:

 

- Rendering: http://pastebin.com/cUDtHcWJ

 

- Vertex shader: http://pastebin.com/hE8s3KE7

 

- Fragment shader: http://pastebin.com/pVpr6zhR

 

And if I move my camera further the object, it gets brighter. Something I had to do with the position right?

Share this post


Link to post
Share on other sites

What I notice is that you only have 16 vertices available in your vertex buffer. To make a cube you need 24.

 

Each corner has 3 faces meeting all with different normal directions. Since you need a unique normal for each triangle then you need 3 vertices per corner. 3 x 8 = 24.

Edited by shazen

Share this post


Link to post
Share on other sites

Oops, I forgot to add that I left out the top and bottom sides. But okay, I'll try to rewrite that, and include the top and bottom sides

Edited by RobeeZ

Share this post


Link to post
Share on other sites

Okay, so I reduced it to render just one plane. And I found an other tutorial: http://www.rastertek.com/gl40tut06.html

 

I use EXACTLY the same shaders, and I use exactly the same position, and normals. But I got a black triangle instead of a yellow one. Looks like intensity is always zero.

 

The class of what I'm rendering: http://pastebin.com/ez5K9vN3

Share this post


Link to post
Share on other sites

This topic is 1603 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this