games101 HomeWork4 Games101 HomeWork4 bezier:该函数实现绘制 Bézier 曲线的功能。它使用一个控制点序列和一个OpenCV::Mat 对象作为输入,没有返回值。它会使 t 在 0 到 1 的范围内进行迭代,并在每次迭代中使 t 增加一个微小值。对于每个需要计算的 t,将调用另一个函数 recursive_bezier,然后该函数将返回在 Bézier 曲线上 t处的点。最后,将返回的 2023-07-28 CG > games101
games101 HomeWork3 Games101 HomeWork3 导航 导航 作业要求 第三次作业才是真正上强度的作业,作业要求和质量都特别高,先来看看所有的要求: 1 . 修改函数rasterize_triangle(const Triangle& t) in rasterizer.cpp: 在此处实现与作业 2 类似的插值算法,实现法向量、颜色、纹理颜色的插值。 2 . 修改函数 get_projection 2023-07-27 CG > games101
Ubuntu解决高分屏下Matlab工具栏字体过小 能够看到工具栏,说明你已经能够打开matlab了,不管你是以何种方式打开的。 首先打开matlab,然后在命令行输入一下代码: 1234#在命令行内输入如下命令,其中2.0是放大的尺度,根据需要自行设置s = settings;s.matlab.desktop.DisplayScaleFactor;s.matlab.desktop.DisplayScaleFactor.PersonalValue 2023-07-25 Linux > Ubuntu
games101 HomeWork2 Games101 HomeWork2 导航 导航 作业要求 rasterize_triangle(): 执行三角形栅格化算法 static bool insideTriangle(): 测试点是否在三角形内。你可以修改此函数的定义,这意味着,你可以按照自己的方式更新返回类型或函数参数。 先从简单的函数开始 insideTriangle insideTriangle只需要检查点是否在三角形内部 2023-07-24 CG > games101
games101 HomeWork 作业以及提高课详解 导航 作业框架下载 HW1 - >透视投影矩阵 HW2 - >图形填充 HW3 - >obj导入与phong HW4 - >Bezier曲线的绘制 HW5 - >Ray tracing光线追踪 HW6 - >Ray tracing光线追踪加速 HW7 - >Path Tracing & Microfacet 材质 2023-07-24 CG > games101
games101 HomeWork1 games101 HomeWork 1 说起来我自己写games101的作业也是曲曲折折,虚拟机很卡就拿VS配环境,Windows不会配环境,就装Linux,现在装上了Linux,却因为没有经验把Windows格式化了(我是真的沙比),好在还是开始做了,也挺顺利的,所以再来记录一下作业。 这里是作业框架的下载作业框架下载 导航 导航 基础部分 这里需要完成两个函数,一个是模型变换矩阵,一个是透视 2023-07-23 CG > games101
计算机图形学笔记三——橡皮筋技术和椭圆扫描算法 上一篇:圆形、圆弧段的绘制算法 下一篇:暂无 橡皮筋技术 橡皮筋技术就是可以使得用户进行可视化编辑,也就是在编辑的时候,图像能够进行实时的变化。这是一种非常实用的技术,接下来和大家讲解一下这个技术。 我们有鼠标点击回调函数,还有鼠标移动回调函数。我们需要的是在鼠标点击过后,移动鼠标能够预览我们绘制的图像。比如这是有无橡皮筋技术的对比: 有橡皮筋技术 随着鼠标的移动,我们的最后一个顶点会跟 2023-04-23 CG
计算机图形学笔记一——绘制直线的算法 绘制直线的算法 下一篇->圆形的绘制 数值微分法 数值微分法(digital differential analyzer DDA)使用直线的增量方程来计算直线的下一个迭代点像素的方法。直线的微分方程: $$ \frac{dy}{dx}=\frac{\Delta y}{\Delta x}=\frac{y_1-y_0}{x_1-x_0}=k $$ 得到迭代公式: $$ x_{i+1}=x_i+ 2023-04-21 CG
基于Glut的俄罗斯方块开发 # 基于Glut的俄罗斯方块 概述 作为大一下期的一个C++程序设计的作业,原本李卫明老师是打算让我们用MFC实现一个俄罗斯方块的,但是我不想学习MFC,所以使用了glut来实现它。所有的代码由自己一个人完成,Game类的维护由李卫明老师的教程优化而来。李卫明老师课程传送门: 1.建立框架 2.添加功能模块 3.消息响应和界面绘制 其中,我借鉴了李老师俄罗斯方块的存储方式(4*4的二维数组来存储 2023-04-09 CG
Games101笔记 P11~? 贝塞尔曲线(Bezier Curve-General Algebraic Formula) 三个点的贝塞尔曲线迭代公式: \[b^1_0(t)=(1-t)b_0+tb_1 \] \[b_1^1(t)=(1-t)b_1+tb_2 \] \[b_0^2(t)=(1-t)b_0^1+tb_!^1 \] 展开得到 \[b^2_0(t)=(1-t)^2b_0+(1-t)tb_1+t^2b_2 \] n个控 2023-04-04 CG > games101