Moving The Camera // OpenGL Tutorial #14

Опубликовано: 22 Октябрь 2024
на канале: OGLDEV
13,266
289

AEJuice Free Plugins https://aejuice.com/free-plugins/?ref...
AEJuice I Want It All Bundle https://aejuice.com/product/i-want-it...
AEJuice YouTube Channel    / @aejuice  

In this video we will create a camera class and connect it to the keyboard using FreeGLUT. This will allow us to move the camera. We will also cleanup the main render loop by refactoring out all the matrix initialization there.

Make sure to watch all the previous tutorials in the "OpenGL For Beginners" playlist at    • OpenGL for Beginners  

Please visit https://ogldev.org to see more of my tutorials on modern OpenGL.

Link to source: https://github.com/emeiri/ogldev/blob...
If you want to get the same version that was used in the video checkout the tag TUT_14_CAMERA_MOVE.

OpenGL 4.6 specification: https://www.khronos.org/registry/Open...

🔥 I'm using the following books as background information for my tutorials and I highly recommend them for learning more about OpenGL and Vulkan.
These are affiliate links so if you use them to buy the books the price is the same for you and I will get a small commision (thank-you!).

📖 OpenGL 4 Shading Language Cookbook - Third Edition: Build high-quality, real-time 3D graphics with OpenGL 4.6, GLSL 4.6 and C++17 3rd ed. Edition: https://amzn.to/3XO2J3S

📖 3D Graphics Rendering Cookbook: A comprehensive guide to exploring rendering algorithms in modern OpenGL and Vulkan: https://amzn.to/3MMJQbf
(Watch my short video review on this book:    • The 2nd book I'm using for my Vulkan ...  )

📖 Vulkan Programming Guide: The Official Guide to Learning Vulkan: https://amzn.to/3XwBjhr
(Watch my short video review on this book:    • The book I'm using for my Vulkan seri...  )

Timecodes
0:00 Intro
1:18 Creating a class for the world transformation
9:02 Creating a class for the camera
12:10 Using cross product for moving left and right
16:04 Initializing the camera matrix
18:20 Using FreeGLUT to capture the keyboard
19:43 Cleaning up the projection matrix initialization
20:56 Build and run
21:38 Conclusion

Feel free to comment below.

Email: [email protected]
Facebook:   / ogldev-188319114585587  
github: https://github.com/emeiri/ogldev.git
Twitter: @ogldev
One time donations (Paypal): https://ogldev.org/donate.html
Patreon:   / ogldev  

Credits:
Music - "Summer" from https://bensound.com

Enjoy,

Etay Meiri

#opengl #computergraphics #opengtutorials