Model View Projection Matrices
HTML-код
- Опубликовано: 19 сен 2024
- Shows a model world projection matrices example in OpenGL and DirectX. These transformations must be multiplied in a particular order. These matrices take us from a three dimensional mathematical representation to two dimensional screen space.
you da real MVP
I want to upvote this comment, but I can't
This is by far the best tutorial on this pretty complicated(at least for me) topic, and helped me a lot. Thank you.
+MoulinRougexD :) You should take my graphics class at the University of Utah. :)
Jamie King Haha, right now i`m in Russia, but i plan on moving in USA, so may be i`ll! Would defenitly be glad to though. :)
:) Bust a move!
+MoulinRougexD A russian moving to the USA. Fuck logic.
TeleTubbie Luver le funny stereotypes x-:DDD
I wrote this application myself.
Dude that was really cool! What did you write it in, if I may ask? Is it in GitHub :) ?
Eh, just a local SVN. I guess I could push it out there. I was just trying to learn this material by allowing myself to "touch" what's going on.
Jamie King Have you ever pushed the code of this application in GitHub? I'm interested :D
Can I play with you application? :D
Jamie King Not sure if you are still there, but I would love to use this tool!
This is amazing. I'm starting to learn computer graphics (using modern OpenGL, so gotta write shaders myself) and i just have to thank you for this video, and all of them. The math behind matrices is amazing. Thank you!
Sure. No prob. Share the channel with your tech friends.
9 years later this is still an amazingly helpful video. Thank you!
😁
@@JamieKingCS Still commenting, what a god!
16:09 This is the best video on RUclips for understanding Model View Projection Matrices. Thank You so much.
Probably the best approach to an OpenGL "camera" tutorial I've seen. I think it would have been nice to explore other adjustable parameters like "up" direction for the camera, and looking at different field of views and angles for perspective and the orthographic projection, etc. Thank you for posting!
This tool you made is amazing. It shows everything visually and makes it just click in my head, thanks!
Great Video!
I had one semester of 3D-modelling and one semester computer animation and I almost understood nothing.
This video helped me alot more than all those lectures!
Thank you!
+intrepidro Heh. You're welcome!
as humans we tend to think the world resolves around us anyways... epic as well as this tutorial, the best tut on this topic ive come across at the end of many hours searching
this is actually why i subbed; your kids will appreciate having father like u, especially the son :))
one of the best videos i’ve seen on this topic. amazing visualization of the matrix multiplications
This was incredibly helpful in making something that seemed complex much easier to understand. Awesome video!
Thank you much. This video is the one I spent the most time on: making the visualization tool, explaining the topic, wrapping my head around the concepts myself. Of all my videos, this is the one I am most proud of. Thanks for the kind words.
best explanation on the whole internet!
I'am really enjoying your series Jamie. Perfect for a snowed in Sunday :)
Thank You!!
💥
VERY VERY VERY nice explanation and demonstration :D I finally understand why my crappy selfmade c# game didnt work ;)
Finally I understand MVP matrixes. This video helped me a lot! Thank you!
P.S. nice application, really should be used in 3d graphics courses
This is golden. I’m well into programming an OpenGl 3d java game and still didn’t understand how this matrix stuff worked.
Your video was very helpful in visualizing the transformation from model to world, world to view, and view to projection. Initially I was taught to include the model and viewing transformation as one. Nice to see how it all comes together. That flattening of the z axis is the rendering of the scene.
Your tutorials have been really helpful to new students all around the world. I have been learning computer graphics, trying to understand projections, matrices etc and But I find your demo program very, very helpful to demonstrate all the inner workings in real time, It would be really great if you can share the source code, or the binaries. It will help many others to program very cool things.
I am very grateful for all your work, thanks.
thank you for making hard topic so simple.. Its very nice.. I understood entire concept quite easily.. thank you..
It's the end of 2022 now and I just found a new mind blow vid.
Thanks
10:53 and you thought you were lazy to begin with :D that cracked me up dude. Awesome tutorial thank you
This is excellent; I am attempting to teach myself CG, and this is far better than a book. The eye coordinates were explained very well; the book I have seems to not emphasize that the world moves about the camera well.
My goal is to build the playlist I wish existed when I was learning graphics. It's so hard to gather this stuff from static images in a book, so I built this tool. Within a month or so, I will have it in github. Thanks for the kind words.
You've earned yourself a subscriber for the clear explanation. Will definitely check your playlist on how to understand the math behind it.
This was a very good video. I like the slider towards the end of the video that went between 0 and 1 so you could see it flat on the projection plane but still being in the 3D world from another viewpoint.
oh, that was awsome!!! Thank you Sir for all your effort!
View to Projection is an incredible tool
Thank you for this great explanation.
I want to thank you for this! I am working with XNA 4.0 and was very confused about the 3 Matrix parameters I needed to use for every "Draw" call... and how to scale things in the world, etc... So you really helped me visualize all of that. Thanks!
Ya, no problem. There are lots of videos in this playlist on the various 3D geometry stuff. Share the channel with your tech friends. Thanks!
15:15 Amazing Moment !!!
good visual representation. thanks
so cool tool to visualize matricies, thanks alot!
This one is really great Mr. Jamie
This is fantastic. Keep up the awesome work.
What a greate explaination!
Thank you!
Brilliant, super helpful man, thank you
Amazing video, Thank you!
This is insanely great.
Amazing! thank you, such a golden nugget of a video.
Is the something lilke a "common" projection matrix or at least camera position which is used for isometric games? Or does everyone use own values?
"Anyway, modelviewprojection we're done." lol xD
this is GOLD!
I have a basic understanding of vertex/matrix multiplication but I'm having a bit of trouble with the whole MVP matrices stuff. I'd really love if you could share you're application you made here so those of us who still need some help can play around with it and try to get a better understanding. Thanks for your great tutorials!
Thank you so much! Really well done!
holy shit,you are a genius
Could you possibly elaborate on the point of the projection matrix? I'm not quite understanding why it needs to be squished into 2d when we're viewing it in the viewport as 3d?
my god this is amazing
great video! thanks for uploading this.
No prob. Share it with your tech friend.s.
great explanation, is there any way to play with the tool you built?
Thank you for the amazing content!! Is there a way to try out your visualisation engine?
fantastic
Does rotate around the Z seem to rotate around the Y (at 7:38) ?
Nice explanation!
ah man - great explanation dude
mind blown.
When does the W homogeneous coordinate get involved?
Great Job, i'm curious on what tool did you use to create sliders, checkboxes, labels, because i want to try to recreate this kind of application myself
This is awesome!
Thanks Jamie King
i was expecting you to go camera view, and show that the slider doesn't change perspective, since it's doing that anyway. lol
Why do I see you everywhere xD
THANK YOU JAMIE
good work man.
that was awesome
thanks,I'm beginning to learn 3d game programming,this video is very useful for me,
Go look at my game engine programming playlist.
I have not seen model loading in this tutorial playlist, why not? Isn't it very important to render models when using openGL, to make the scene look better?
+TeleTubbie Luver Coming...coming...eventually...
+Jamie King Thanks for these videos, I'm studying computer games programming at Uni and these videos are extremely useful. I'm only up to here so far, but by the looks of it, there are no videos on texturing, are these in the works? again, thankyou for these videos:D
Michael Savaglia Yea, you'll see texturing soonish (month or two). I just barely uploaded the first video to this playlist since I came out of hiding. Going to add more...thinking one or two a week but no promises.
Helped me a lot.
thanks a lot , very nice video!!
Ok that was a good tutorial
very great!
Can you please release this application, I've always wanted to play around with these values without all the hassle.
brilliant, thanks
This app is cool, can we get it in order play with it???
Where is all the work being done at in the graphics pipeline when you are applying the MVP matrices to your vertex data? Im assuming the Vertex Shader? Since that is where all our uniform matrices are being applied to all the data.
+ezetreezy Yep! Graphics card doesn't care about 3D. That's just us doing some math in the vertex shader.
Jamie King If we apply phong shading/diffuse lighting(since you do this later in the playlist)...is some of the work(or could be most of the work) being forced upon the Fragment shader instead of the vertex shader?
Yep, and it looks better in the fragment shader. Keep watching.
you are good teacher - also made me laugh :)
+subconscious bias Heh, thanks. :)
:)
man, you're cool
Damn, pretty darn good! Anyway we can download that app?
I can move my object matrix around, then I can rotate my object matrix, then I can move object again with the shared view matrix, then when I try to rotate the object with the shared view matrix (it rotates the object like in step 2, and doesn't rotate my object like its rotating the entire world with the object...?) I keep getting confused at this last step, any idea?
+subconscious bias We could do a Google hangout sometime, and I can look at it. If you're interested, computersciencesurgeons@gmail.com
+Jamie King That would be awesome, I will add you and message you sometime
This video is not in the github list. There is no code for this tutorial.
Awesome
I want to understand this stuff so badly but the math is way over my head, I need to improve my math skills.
Study they Game Engine Programming playlist rigorously. I cover the math in a very basic way in there.
Do you have a specific video for the maths relating to each of the M, V and P matrices. I looked through your playlist but nothing stood out.
Game engine playlist
Thanks, I looked through it but didn't see (from the title) one video that corresponded to the M matrix, V matrix and P matrix, but maybe I just need to look harder.
All the matrices use the transformations (translation, rotation, scale, etc.) I cover in that playlist. It’s several videos though.
Thanks!
How did you attached a 3D OpenGL application to a Windows Form?
+Michele Turchiarelli I did this early in the playlist...video 2 I think.
3:54, Hm, to keep the symmetry, shouldn't it be called the World matrix? I mean, it represents where a model is in the world, not the model itself. The model coordinates are already the standard xyz with no transformation at all. You can see its the only one thats named after the former word and not the latter
Jamie King Rocks. Guru, can i have link to your software which you are using here to simulate?
all those confusions just cleared in 15 min. I should've watched this video earlier..
Would it be possible to share the matrix simulation application?
Have you happened to publish the application at all? My university assignment is asking for me to create a 3d scene and it would help soooo much if you have released it :D
which one is your game engine playlist?
so game cameras don't move?
Nope
The camera is completely theoretical. At the end of the day, you're just trying to figure out what will go into your viewport based on where the "camera" is.
How would you calculate the xyz location of your camera in 3d space?
simeon gbolo There is a video in this playlist that shows how to do this.
It's actually the location of the eye I was referring to. Your videos are amazing, thanks !
Somewhere in this playlist I walk through making a first person camera, and I show how the eye moves with the arrow keys and mouse.
Found it! You answered my question in videos 55-59. Cheers!
No prob!
整个中文字幕就更好了
对对对
Hey what is name od program that you USA at 6:09 for previewing transformations?
wheres the app we dont need the sources ?
we're done here
are you the kahn acandemy guy
Um...don't get too excited. :P
Thank me fellas, much thanks to me. As I found the sources github.com/1kingja
yea, but the question is...WHATS IS IN THE BOX??????????????????
could i take the code of this tutorial
This entire playlist is on github. Click on one of the annotations after a few seconds into one of the videos where I do live coding.
thank you, for your quick response. actually i'm working on my graduation project and i need to draw a grid or world and a centered camera like the one in this tutorial but i'm work on android so i want to know how to do this with openGl. could you help me.
+Ramy Emenwel don't know android...but I have a shape generator in my github that would give you a grid.
could you explain to me how this class works ?!
this is my mail: remenwel66@hotmail.com