深大计算机图形学
文章平均质量分 80
深大计算机图形学
归忆_AC
for dream in szu...会看消息,欢迎交流,若有错误可以私信反馈。
实验报告仅供参考!
展开
-
【深圳大学计算机图形学】期末大作业 虚拟场景建模
在本次实验中,综合了这学期学过的众多知识,包括层级建模,图形绘制,物体绘制,阴影绘制添加纹理,键盘控制,场景交互,相机转动等,所含知识点和实验操作非常多。通过本次实验,更加熟悉了此前不太掌握的纹理绘制和层级建模原理,此外最大的收益在于更深入了解了计算机图形学的原理,熟悉了OpenGL下的基本框架,学会该如何利用计算机进行包含众多物体的场景绘制以及交互控制物体。层级建模的最深层次需要达到至少四层。参考实验2.3,实现物体的变换,允许用户通过键盘或者鼠标实现场景中至少两个物体的控制(移动,旋转,缩放等等)。原创 2024-02-05 18:40:30 · 2178 阅读 · 4 评论 -
【深圳大学计算机图形学】期中大作业 俄罗斯方块
仔细分析movetile函数后发现,它是到底部才会返回false,所以这个if就成了相判断其是否到了底部,只有到了底部才会更新时间,而不是我所设想的下移一格更新一次时间。既然如此,将更新时间的语句移到if语句外即可。17.接下来完善checkfullrow函数,检查棋盘格在row行有没有被填充满,如果没有填满row行则返回函数,否则消去那一行,并将其上的格子下移一格。19.其实到这里游戏的基础功能就已经基本做好了,加下来需要考虑的是优化人机交互界面即UI设计,以及游戏难易度调整,记分以及按键功能提示等等。原创 2024-02-05 18:09:58 · 1379 阅读 · 0 评论 -
【深圳大学计算机图形学】实验补充二 层级建模-人形机器人
1.参考上次上机课的内容绘制每一个节点,完成torso(), head(), left_upper_arm(), left_lower_arm(), right_upper_arm(), right_lower_arm(), left_upper_leg(), left_lower_leg(), right_upper_leg(), right_lower_leg()函数。2.上次实验课的display()函数,该函数调用每个节点的绘制方法,同时构建各个节点的局部变化矩阵;原创 2024-02-05 17:56:44 · 986 阅读 · 4 评论 -
【深圳大学计算机图形学】实验补充一 层级建模-机械手臂
如图(c)所示,选中需要操作的节点以后,通过键盘A键和S键完成机器模型的变化。实验中按照层次模型深度优先遍历顺序,按照(底座,大臂,小臂)的顺序对节点进行绘制。注意,子节点的变换矩阵等于父节点的变换矩阵乘以子节点的局部变换矩阵。在对层次模型中的节点进行操作的时候,此操作不但会影响该节点的位置和方向,同样会影响该节点的所有子孙节点。如在机械手臂模型中,底座的操作会影响整个模型,但是小臂的操作只影响自己。可以得到如下(a)的结果,将整个实验内容完成可以得到(b)的效果。(c) 键盘操作改变模型。原创 2024-02-05 17:49:07 · 445 阅读 · 0 评论 -
【深圳大学计算机图形学】实验四 带纹理的OBJ文件读取和显示
这一行代码说明了纹理坐标是一个包含两个浮点数的向量,数据类型是GL_FLOAT,步长为0(因为纹理坐标是紧密排列的),偏移量根据之前顶点、颜色和法向量数组的大小计算而来。循环中,通过极坐标系的转换,计算每个切片上的顶点坐标 (x, y, z),其中 x 和 y 分别为极坐标的变换,而 z 为 0,表示圆盘在 xy 平面上。存储纹理坐标和法向量索引: 将每个侧面三角面片的纹理坐标的下标存储在 texture_index 中,法向量的下标与顶点坐标的下标相同,存储在 normal_index 中。原创 2024-02-05 17:39:28 · 1381 阅读 · 0 评论 -
【深圳大学计算机图形学】实验三 光照与阴影
这一行计算了相机坐标系的x轴向量 u,它表示相机右侧的方向。shadowMatrix[0][3], shadowMatrix[1][3], shadowMatrix[2][3], shadowMatrix[3][3]:这一行代表阴影坐标的齐次坐标系的W分量,通常不需要设置为0.0。shadowMatrix[0][3], shadowMatrix[1][3], shadowMatrix[2][3] 和 shadowMatrix[3][3] 通常根据坐标变换的需求设置,它们会影响坐标的平移。原创 2024-02-04 13:02:12 · 1237 阅读 · 0 评论 -
【深圳大学计算机图形学】实验二 三维模型读取与控制
一旦所有的顶点位置、颜色和面片信息都准备好,接着调用 storeFacesPoints() 函数,这个函数在内部会将每个面片的点和颜色信息存储在 points 和 colors 容器中。紧接着,定义了每个三角面片的顶点索引。2. 将每个三角面片的顶点坐标和颜色信息从相应的数据结构中提取出来,并将它们按照一定的顺序添加到 points 和 colors 这两个数据结构中。在这个循环中,将每个顶点的位置存储在 vertex_positions 容器中,并将相应的颜色存储在 vertex_colors 容器中。原创 2024-02-03 15:18:37 · 1039 阅读 · 0 评论 -
【深圳大学计算机图形学】实验2.2 OFF格式的模型显示
(by 归忆)原创 2023-10-16 16:53:37 · 151 阅读 · 0 评论 -
【深圳大学计算机图形学】实验2.1 OpenGL鼠标键盘的交互
(4)添加鼠标回调函数sroll_callback,根据鼠标滚轮的y偏移量来旋转图形,向上滚动时顺时针旋转,向下滚动时逆时针旋转。(3)在main函数中设置键盘回调函数和鼠标点击回调函数,使得在点击鼠标或者敲击键盘时会跳转到响应函数进行判断和进行相关的操作。(2)查看mouse_button_callback函数,即鼠标点击响应回调函数。(5)在main函数中绑定鼠标回调函数,使得滚动鼠标时会跳转到回调函数并执行相应操作。(6)运行代码,滚动鼠标滚轮,发现成功旋转了正方形,如图所示。原创 2023-10-10 15:45:03 · 524 阅读 · 0 评论 -
【深圳大学计算机图形学】实验一 OpenGL基本绘制
打开Visual Studio Installer,点击修改后勾选以下部分,全部勾选完成后点击进行安装即可。在老师发的软件包中找到这两个软件的安装包,默认安装即可,最后在cmd输入cmake和git检验是否安装成功。1.找到github上的项目网址,如图所示,这里可以看到最新项目的版本,记下网站地址https://github.com/microsoft/vcpkg/。2.在准备放置vcpkg文件夹的目录下打开cmd,输入以下命令使用git拉取项目。3.在vcpkg文件夹下以管理员模式打开powershel原创 2023-09-22 17:41:22 · 745 阅读 · 1 评论 -
【深圳大学计算机图形学】实验1.2 OpenGL与着色器编程
首先,通过不断在大正方形上添加小一点的正方形的方式来达到交替的目的。其次,循环的过程中,颜色需要改变,尺寸需要变小。可知通过循环使得三个点的坐标为(1,0),(cos 120度,sin 120度),(cos 240度,sin 240度)。1.老规矩,打开cmd,进入到实验代码所在文件夹下,输入"cmake -B .",注意不要漏了点,另外cmake生成项目需要一段时间,不要中途退出。注意递减幅度要选好,我刚开始选的是0.20,结果输出一个全黑图......10.最后,再加点料叭,窗口标题改成姓名和学号。原创 2023-09-15 16:36:46 · 321 阅读 · 0 评论