Home › Forums › GAMES在线课程(现代计算机图形学入门)讨论区 › 作业3问题 Tagged: homework3 This topic has 1 reply, 2 voices, and was last updated 1 year, 5 months ago by CheapMeow. Viewing 1 reply thread Author Posts 2021年1月21日 at 上午8:15 #7605 Score: 1 Zr LianParticipant Karma: 1 pt 请问在draw函数中获取viewspace_pos为什么要乘以view矩阵?这样子相当于固定相机而改变了小牛在空间中的位置,那这样后面的光源坐标也应该乘这个view矩阵? This post has received 1 vote up. Attachments:You must be logged in to view attached files. 2023年5月25日 at 下午11:48 #16630 Score: 0 CheapMeowParticipant 个人理解是,我们已经固定了: 摄像机的中心:世界坐标原点 摄像机的前方向 g:-Z 方向 摄像机的上方向 t:Y 方向 在计算光线的时候,我们就是默认相机是这样固定的,不然我们在考虑光线的时候,我们还需要把相机的位置和角度纳入计算中,更麻烦了 所以光线的计算是在观察空间中的,所以 viewspace_pos 是三角形顶点坐标经过 MV 变换之后的观察空间的坐标 而 shader 中的光源的位置就是写死了观察空间中的位置 感觉实际中光源的位置也是一个传入的值,或许也是需要经过变换的,但是在这个 shader 里为了简单就写死了 参考: 作业3 interpolated_shadingcoords Author Posts Viewing 1 reply thread You must be logged in to reply to this topic. Log In Username: Password: Keep me signed in Log In