I've only just started learning OpenGL and I want to say that you're videos are absolutely exquisite. The production quality, learning material and execution that you've compiled are amazing and it is beyond just helpful for inquisitive students like myself. I thank you very much. :)
Yeah - I just need to get to making them. I'm actually working on a course on algorithms that's taking some time. For the computer science folks, this might be something you'd be interested in when it's finished.
Very nicely done, thanks a lot! This doesn't seem nearly as scary as I first thought it might be. I love the power and direct access to the video card this new method gives you.
Why on earth are there so few views! You explain things clearly. Your video quality is amazing. Thank you sir and I truly hope more people will view and learn from your videos!
Thank you so much for sharing these videos. One thing, it would be nice if a block diagram is provided to show how CPU, GPU, and the program are communicating with each other. It is hard to picture the process from codes.
omg, you wrote book?XNA?Wooow, do you know terraria, actually, i was wondering how the lighting effects in terraria can be implemented in opengl,like torches..etc.. so i'm trying to build a better skill on computer graphics. your courses are absolutely fantastic!
5:28 -> If we assume everything is in GLfloat* data (which is a pointer) what is the meaning of second parameter of function glBufferData (...,sizeof(data),...). Do we really have to pass the size of pointer or there is some mistake and it should be: glBufferData(...,sizeof(GLfloat),...). Assuming GLSL/OpenGL as C API to GFX hardware.
Hello, I have enjoyed your videos and I have to say, these are the best I've seen. I did have some issues with the previous video: my screen was also white and loading, but nothing happened. The output screen appeared with non-zero values, so I moved on like you said. Now I am running the other code, with the buffer and the triangle shows, but it stops as well as the blue color is not displayed. When I try closing the window with the triangle, there is no response. Any idea, what might be the problem? Thanks again for your videos!
I got it. On your next video, you show the code and I found that the file you have available does not match what you showed next. In line 144, the last parameter is missing (....colorID,4, GL_FLOAT....BUFFER_OFFSET(3*3*sizeof(GLfloat))). Thanks!
Firstly, great tutorial thank you so much., i have been trying to polish my opengl skills that i learnt few years ago but i dont seem to remember doing any shader coding..i am curious as to why?.is it because of new opengl version? Thank you
Jeffrey Chastine but how do you actually draw these now? dont we need to tell opengl how the position data is layed out? i mean, how does glDrawArrays know what and how to draw?
Hi... a question please ... How does the GPU know which VertexAtribute to be used for position and which one to be used for color as I can see in the code towards the end you use glEnableVertexAttribArray to represent both .... thanks for the video
Yes, you're correct in that the call to glVertexAttribPointer is used to set both locations, but look at the call in slide 22. You can see we're passing "loc2" as the variable, and then passing (as the last parameter) where that data starts. Compare that to the first call to glVertexAttribPointer and I think you'll see the difference. I hope that helps.
Ok.. I think i got it... Thanks... The gl_position value in the shader is what determines which vertex attrib to be considered as position... but there is no such similar gl constant in the fragment shader.. Why is that?
I've only just started learning OpenGL and I want to say that you're videos are absolutely exquisite. The production quality, learning material and execution that you've compiled are amazing and it is beyond just helpful for inquisitive students like myself.
I thank you very much. :)
Thanks - I'm glad they're helping!
i totally agree
These videos are really helping me with a computer science course that I'm taking right now. Thanks a lot!
one of the best tutorials, straight and not overcomplicated, you deserve much more views!
This should have more views, thank you very much!
Glad you liked it!
This has been extremely helpful. Thanks for all the effort you put into making this video!
Yeah - I just need to get to making them. I'm actually working on a course on algorithms that's taking some time. For the computer science folks, this might be something you'd be interested in when it's finished.
Very good tutorial! Probably the best one I've seen so far. It explains everything.
This is the firts video that explained step by step and I understood how it works.
Thank you :)
the best tutorial for openGL out there. Thank you so much!
Glad it helped!
i didnt just learn something about openGL, but also about the key features of a great presentation
Incredibly helpful video!
Your way of explanation is great! =)
Very nicely done, thanks a lot! This doesn't seem nearly as scary as I first thought it might be. I love the power and direct access to the video card this new method gives you.
My exam's coming on Tuesday and I'm learning through your videos! Thank you so much!! Great tutorial!!!!
Why on earth are there so few views! You explain things clearly. Your video quality is amazing. Thank you sir and I truly hope more people will view and learn from your videos!
These videos are excellent. Helping me alot in higher level computer science courses.
Awesome tutorial, explain almost every aspects of modern opengl for newbies. Thumb up! If the src code could be shared, i would give one more star.
cse.spsu.edu/jchastin/courses/cs4363/resources/Code.zip
No star needed :)
Thanks for the prompt response. Definitely five stars if youtube offers it :-p
+Jeffrey Chastine can you reupload the files please? It's an amazing tutorial, thank you very much!
Thanks! It's well explained. Good job!
Glad you liked it!
Thank you sooo much for the videos! they are amazing!!! helped me very much for my studies
Glad it helped!
Thank you so much for sharing these videos. One thing, it would be nice if a block diagram is provided to show how CPU, GPU, and the program are communicating with each other. It is hard to picture the process from codes.
This is explained in so understandable language.. Thank you sir! Please record more videos :(
Best opengl video on the youtube!
Glad you liked it!
omg, you wrote book?XNA?Wooow, do you know terraria, actually, i was wondering how the lighting effects in terraria can be implemented in opengl,like torches..etc.. so i'm trying to build a better skill on computer graphics. your courses are absolutely fantastic!
explained well, thanks a lot!
Will there ever be any more videos? These are really good.
Yea I can't wait. Will be very cool
Great tutorial man!
5:28 -> If we assume everything is in GLfloat* data (which is a pointer) what is the meaning of second parameter of function glBufferData (...,sizeof(data),...). Do we really have to pass the size of pointer or there is some mistake and it should be: glBufferData(...,sizeof(GLfloat),...). Assuming GLSL/OpenGL as C API to GFX hardware.
Can I put the color data and position data in different buffers and then link them together somehow?
Glad it helped!
Good stuff!
Thanks for these videos, they're great, but I still have one question: if I have multiple 3D objects, should I make a buffer for each one of them?
If they are different models, then yes. If you want to render two objects that have the same geometry, you can just reuse that buffer.
Ok, thanks for the quick response. :)
Hello, I have enjoyed your videos and I have to say, these are the best I've seen. I did have some issues with the previous video: my screen was also white and loading, but nothing happened. The output screen appeared with non-zero values, so I moved on like you said. Now I am running the other code, with the buffer and the triangle shows, but it stops as well as the blue color is not displayed. When I try closing the window with the triangle, there is no response. Any idea, what might be the problem? Thanks again for your videos!
I got it. On your next video, you show the code and I found that the file you have available does not match what you showed next. In line 144, the last parameter is missing (....colorID,4, GL_FLOAT....BUFFER_OFFSET(3*3*sizeof(GLfloat))). Thanks!
A way to make your video even more awesome would be to highlight what you are talking about.
Yeah - I tried doing this during recording, but the mouse would slowly get out of synch with what I was saying (for some reason).
Anyway, it's still very good :)
Firstly, great tutorial thank you so much.,
i have been trying to polish my opengl skills that i learnt few years ago but i dont seem to remember doing any shader coding..i am curious as to why?.is it because of new opengl version?
Thank you
It was probably the older version (fixed pipeline) of OpenGL. There weren't a lot of tutorials on shader-based OpenGL, so I made these :)
Great...looking forward to watching all of the tutorials..gosh your students are lucky..Thanks again
Jeffrey Chastine but how do you actually draw these now? dont we need to tell opengl how the position data is layed out? i mean, how does glDrawArrays know what and how to draw?
Hi... a question please ... How does the GPU know which VertexAtribute to be used for position and which one to be used for color as I can see in the code towards the end you use glEnableVertexAttribArray to represent both .... thanks for the video
Yes, you're correct in that the call to glVertexAttribPointer is used to set both locations, but look at the call in slide 22. You can see we're passing "loc2" as the variable, and then passing (as the last parameter) where that data starts. Compare that to the first call to glVertexAttribPointer and I think you'll see the difference. I hope that helps.
Ok.. I think i got it... Thanks... The gl_position value in the shader is what determines which vertex attrib to be considered as position... but there is no such similar gl constant in the fragment shader.. Why is that?
OpenGL Guru
Why is vPosition a vec4 at 10:30?
Because everything gets "upgraded" to a vec4 anyway (because of the hardware).
is this modern opengl?
09:45
Thanks - glad I could help!