Intro to Graphics 06 - 3D Transformations

Поділитися
Вставка

КОМЕНТАРІ • 44

  • @emcpadden
    @emcpadden 2 роки тому +22

    I’m binge watching these videos. Cem does an awesome job at exploring things. I can tell he really enjoys teaching and that is also what makes these visits so engaging! Great job! I will be watching his other content when I’m done with this series. Thanks for making this so approachable. I feel like I could teach someone else this from his excellent explanations. Thank you!!!

  • @blanchsb
    @blanchsb 2 роки тому +5

    I've been studying this topic for a while and have an engineering background. I must say this 2D and 3D explanation of CG matrices for Rot/Trans/Scale is wonderfully done. Thank you very much for posting this to UA-cam.

  • @MrErererererr
    @MrErererererr 3 місяці тому +3

    I am glad that I find this lectures. Thanks for great videos.

  • @rupeshmandke
    @rupeshmandke 3 роки тому +7

    One of the very few easy to understand explanation of otherwise made complex to understand topic! This one helps build the intuition which is very useful. Perspective projection is combination of Perspective transform + Orthographic projection is something explained very well. Looking forward to upcoming videos :)

  • @EnchiridionYT
    @EnchiridionYT 11 місяців тому +4

    Lovely! Thank you Cem! 🙂

  • @wazabear6916
    @wazabear6916 3 роки тому +3

    Your hard work is appreciated, I can tell you put a lot of effort into these videos. Thank you.

  • @santiagofernandogomez4986
    @santiagofernandogomez4986 3 роки тому +3

    Thank you so much for this content. Please keep uploading more videos, this is gold!

  • @ahmeterencagatay8985
    @ahmeterencagatay8985 2 місяці тому

    Hocam Sabancı Üniversitesinde son sınıf CS öğrencisiyim, Computer Graphics dersimin midterm'üne hazırlanıyordum ki videolarınıza denk geldim. Slide'larınız konseptleri görsel olarak sürekli canlandırmanız ve enerjiniz harika, çok güzel anladım çok teşekkür ederim.

  • @oflpoeog
    @oflpoeog 11 місяців тому

    Thank you again University of Utah and Cem Yuksel for making these intro lessions available for the plebs at www

  • @karmagiel
    @karmagiel 2 роки тому +2

    Edit: nvm, i think i got it now ^^
    could it be there is a mistake in the matrices in min 37:06 ? Because when the far and near plane are both in negative z direction, 2/f-n gives us a negative scalar => would invert our z-coordinates aka change the handedness of the coordinate system. looking at the source code of glm::ortho for example, they put an extra minus sign in front: -2/(far-near)
    great videos btw :)

  • @szabolcsnyeste9666
    @szabolcsnyeste9666 3 роки тому

    Thank you for the video! 3D rotation was very gentle, it alone worth a couple lessons. And when the homogeneous last coordinate gets to be zero - that's where the fun begins :)

  • @jorgecouchet1081
    @jorgecouchet1081 2 роки тому +1

    Beautiful and incredible explanation! Thanks a lot for you really hard work!

  • @anuragparcha4483
    @anuragparcha4483 11 місяців тому

    Thanks for this great course Cem. I have a doubt at 58:33, why can't the 3rd row of [0, 0, ?, ?] be [0, 0, Pz, 0]? Would that not help with maintaining Pz = P'z? Since Pz^2 / Pz = Pz? Or does this matrix need to be independent of the P vector?

  • @saikongz
    @saikongz 3 роки тому +1

    At 53:40, I am kind of lost here. Do you mean [α*x, α*y, α*z, α] and [x,y,z,1] are the same point w.r.t the camera view? In 2D dimension, for example, [1,2] and [3,6] are not same point with respect to position, but are the same when it represent direction. Is this the correct understanding?

    • @saikongz
      @saikongz 3 роки тому

      Or another way to understand is that, because the existence of orthographic transformation, these two points ([α*x, α*y, α*z, α] and [x,y,z,1]) will eventually converge to one. Does this make sense?

    • @cem_yuksel
      @cem_yuksel  3 роки тому +4

      Homogeneous coordinates take a 3D vector and make it 4D. Therefore [ax, ay, az, a] is a 4D vector. The corresponding 3D projection of such a 4D vector is [x,y,z]. Note that the 4D vector [x,y,z,1] (i.e. a=1) has the same projection.

  • @smoothrelaxation2870
    @smoothrelaxation2870 Рік тому

    Great series so far. I can't say I'm comfortable with the math yet but knowing what we're trying to achieve helps keep me motivated.
    I make environments in Unreal Engine 5 so understanding perspective has already helped me make better scenes. Cheers.

  • @oflpoeog
    @oflpoeog 11 місяців тому +2

    53 years old, if i was young again i would study Computer Graphics (at Utah)

  • @arts2crafts
    @arts2crafts Місяць тому

    Thanks a lot for posting Sir. It is really a useful lecture
    Is there a downloadable link for the slide deck ?

  • @Ryan-ms8bi
    @Ryan-ms8bi 2 роки тому

    Cem, at 31:15. The Projection Transformation, why 1 represents f and -1 represents n, did I miss something? I like your course very much😃.

    • @cem_yuksel
      @cem_yuksel  2 роки тому +2

      Good catch! It's a left-handed coordinate frame. :)

    • @Ryan-ms8bi
      @Ryan-ms8bi 2 роки тому

      @@cem_yuksel I see , thanks !😀

  • @graphics_travelers
    @graphics_travelers Рік тому

    57:11 Pz multiplied by another Pz? Don't you mean divided by Pz or multiplied by 1/Pz, that's the only way one will get a 1?

  • @nikolaitesla4267
    @nikolaitesla4267 21 день тому

    Hi,
    I’d like to follow these lectures and work on the assignments, but I’m unsure about my JavaScript skills. Is learning JavaScript essential for understanding and retaining the concepts covered in the course? Or are there alternative approaches I could consider? I’d greatly appreciate your guidance. Thank you!

    • @cem_yuksel
      @cem_yuksel  20 днів тому

      No, JavaScript is not essential, but it is not a hard language to learn for anyone with programming experience, and it is a good skill to have.

  • @SreyRc
    @SreyRc 2 роки тому

    So well explained! Can't thank you enough!

  • @karmagiel
    @karmagiel 2 роки тому

    another question:
    With the orthographic projection we were able to define the location of the view volume ourselfs.
    Now when we used perspective projection we kinda directly used the vertex-coordinates relative to camera space. that would imply that our view-frustum-box center is at (0,0) in the camera space, wouldnt it?

    • @cem_yuksel
      @cem_yuksel  2 роки тому +1

      No, it is a transformation from the camera space to the canonical view volume, which has a different center.

    • @karmagiel
      @karmagiel 2 роки тому

      @@cem_yuksel thanks!

  • @caviare8169
    @caviare8169 2 роки тому

    Your illustrations are so great! Thanks for sharing these videos (^ ^)

  • @MultiHomestead
    @MultiHomestead Місяць тому

    Where can I download the slices?

  • @rishabhsharma9369
    @rishabhsharma9369 3 роки тому

    Cem, at min 54, could you explain why we are dividing the 4th coordinate(previously represented value 1 and for perspective transformation Pz). Looking at 2D transformation video, I thought the value 1 was introduced for the trickery of representing translation as a matrix operation.

    • @szabolcsnyeste9666
      @szabolcsnyeste9666 3 роки тому +3

      The 1 value was enough for the translation part, but not enough for this case. Two things to highlight: one part is that if you take [x,y,z], and multiply by 'α', and do this for all α values in interval (-inf,inf) that gives you one particular line in 3D which goes through the origin. This is useful for us because if the eye is in the origin, we see this line as one point. Second take: we track this 'α' value like this: [α*x, α*y, α*z, α] and this represents the same point as [x,y,z,1] and so [x,y,z]. To get the 1, we divide all by 'α'. To truly understand this I believe you need to go through some calculations by yourself, but I can not help you in the limits of this comment.

  • @FPChris
    @FPChris 2 роки тому

    I know you can change It however you want but I was alway most comfortable with your eye as 0,0,0 and -x left, -y up, and -z behind. +Y up is cool too if you think of it as Height. But then I’d prefer +Z moving away as a Distance value. Again do what ya like but be consistent.

  • @lavz24
    @lavz24 2 роки тому

    Great explanations.

  • @FPChris
    @FPChris 2 роки тому

    9:35 yep.

  • @한푼땡전
    @한푼땡전 2 роки тому

    I LOVE THIS CLASS

  • @ic_1234
    @ic_1234 Рік тому

    Thanks Tom Araya!!!

  • @spider853
    @spider853 3 роки тому

    Thank you

  • @BigRubberDucky
    @BigRubberDucky 2 роки тому

    School teaches you such generic things and I really want to niche down into graphics, but man the barrier of entry is very high.