自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 资源 (1)
  • 收藏
  • 关注

原创 重新思考C++函数重载

在C++中,辨别一个函数的方法依次为:作用域→函数名→函数参数,编译器根据这三步来决定调用哪个函数,所以当这三者都无法让编译器决定调用哪个函数时,编译就会出错。如下面这段代码,两个f函数有着相同的作用域和函数名,对f传入一个右值,既能匹配值传递的函数,又能匹配右值引用,所以编译就会报错。编译运行正常,因为当传入一个左值时,该参数只能匹配到值传递的f函数。

2023-11-01 23:12:06 46

原创 Games202作业1

Games202课程的作业一,内容是基于ShadowMap实现硬阴影和PCF、PCSS的软阴影。

2023-09-30 23:37:58 211

原创 Games202作业0及优化部分

如果偶尔能显示,应该是材质加载的问题,在loadOBJ.js中,有这样一个语句materials.preload();这个语句会进行资源的异步加载,但随便将该materials进行了传参,此时materials可能还没加载完成,导致在渲染模型的时候无法正确应用材质。在完成所有工作后,发现渲染出来的模型是灰色,这个问题很脑残,原因是在复制pdf中的PhongMaterial.js多一些空格,,,导致参数映射不正确。在此过程中会遇到模型偶尔加载不出来的问题,参见bug部分。2.shader参数设置不正确。

2023-09-28 22:41:24 250

原创 Games104作业四(含提高项)

调试程序后,发现 bool 值并不能在 UI 上显示出来,查看 editor.cpp 发现其中并没有实现对 bool 类型的反射支持,仿照其他数据类型的写法,在 EditorUI::EditorUI() 增加以下代码实现对 bool 类型的反射支持。最后,修改 motor_compent.cpp 中计算跳跃速度的定义,在计算跳跃速度时先判断使用那种方式来控制跳跃,然后采取相应的方法计算跳跃初速度。

2023-09-12 22:49:48 72

原创 Games101 Homework7 优化

本次作业其实就是在 whitted-style 的 ray tracing 上进行改进,实现更常见的 path tracing,原理部分闫老师的课程和作业文档中已经讲地十分清楚,不再赘述(如有一些细节上的疑惑,可以参考官网的论坛或者这篇文章),这里主要分享几个可以优化的点。

2023-09-02 15:53:41 53

原创 Ubuntu虚拟机交互失灵

简单来说,Ubuntu on wayland 是一个 Ubuntu 上使用的新的GUI系统,但这仍然无法解释为何在某次重启之后才会出现这种问题,以及旧的系统仍然存在并被设为了默认选项。在某一天使用 Virtual box 重启Ubuntu虚拟机后发现鼠标键盘全部失灵!多次重启后仍无法解决,试过网上的设置自动捕获鼠标键盘的那些方法也都没用。没错,就是在登录时设置选项 Ubuntu on wayland,然后问题神奇的消失。在开机时长按 shift 进入安全模式后,检查磁盘使用情况,也没有发现异常。

2023-08-25 12:34:01 135

原创 Oracle VM VirtualBox 安装 guest addition

安装 guest addition 的常规方法是点击菜单栏中的设备→安装增强功能,此时需要虚拟机在运行中,不出意外的话,虚拟机中会弹出窗口。为了方便使用虚拟机,通常需要安装 guest addition,该模块包含了主机与虚拟机之间进行拖放文件、复制粘贴等功能。确认勾选后重启,检查复制粘贴功能是否可用(拖放功能一般是可以的,但复制粘贴则未必)。E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。如果没有成功,那么恭喜你跟博主有了一样的经历--_-- ~~。

2023-08-24 22:40:39 877

原创 计算机图形学概念——立体角

也类似,因为如果不进行缩放,角度的范围会变成0~1,并不直观,尤其在表示一些特殊角的时候(例如。在记忆时,有两种方法帮助我们记忆,一种是:曲面在单位球面上的投影面积,另一种是:曲面在半径为。本身是一个无量纲的常数,可以认为是一个缩放因子,这与平面角乘了。立体角可以看作平面角在三维空间的扩展,对于某段曲线。最近在复习图形学的时候,发现这个概念特别容易混淆。但如果这样记忆,我们很容易弄混淆,把公式误以为是。的球面上的投影面积占总面积的比例。为半径的球面上的投影面积,为半径的圆上的投影弧长,更常见的是微分形式,

2023-08-20 18:17:02 119

原创 Unity3D 2021安装安卓支持出错

安装Unity3D 2021.3.X时,勾选了安卓支持的相关模块,但是提示无法下载,安装完成后,想在UnityHub里面再添加依旧不行。尝试了网上的多种方法,包括使用科学上网工具、更改安装路径等等,依旧无济于事。

2023-06-16 16:02:30 569

原创 力扣题库-765.情侣牵手 最优解法

按照自己思路写的力扣765题的解法,时间复杂度为O(n),比官方题解更优

2021-02-22 18:54:49 255

原创 力扣题库-119.杨辉三角II

按照自己思路写的,感觉还不错O(∩_∩)O哈哈~题目描述给定一个非负索引k,其中 k≤33,返回杨辉三角的第 k 行。在杨辉三角中,每个数是它左上方和右上方的数的和。示例:输入: 3输出: [1,3,3,1]进阶:你可以优化你的算法到 O(k) 空间复杂度吗?来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/pascals-triangle-ii代码(C++14)class Solution ...

2021-02-13 16:50:26 128

原创 并查集

并查集模板这是一个c++实现的并查集模板这是一个c++实现的并查集模板class Union_find {private: int *u; unsigned int size;public: Union_find(unsigned int n) { size = n; u = new int[size]; memset(u, -1, sizeof(int)*size); } ~Union_find() {

2021-01-31 21:19:22 64

原创 回文对

题目给定一组互不相同的单词,找出所有不同的索引对(i, j),使得列表中的两个单词,words[i] + words[j],可拼接成回文串。示例 1:输入:["abcd","dcba","lls","s","sssll"]输出:[[0,1],[1,0],[3,2],[2,4]] 解释:可拼接成的回文串为 ["dcbaabcd","abcddcba","slls","llssssll"]示例 2:输入:["bat","tab","cat"]输出:[[0,1],[1,0]] 解...

2020-08-06 22:26:31 212

原创 最小区间

在力扣上刷到的一个题,感觉挺有意思,当时起手写了一个近似O(kn²)时间复杂的代码,但提交上去发现果然超时。最后借鉴了另一个题“最小覆盖子串”的思路,在原来的代码上进行了修改,将时间复杂度优化为O(n)。思路大致思路是:先将所有的k个数组合并,为了知道每个数字来自哪个数组,给每个数(i)配一个标识(j),表示对应的数组编号,可以用元组列表实现,将该元组列表按i进行升序排序,这样问题变成了类似的“最小覆盖”问题,我们的目的就是要找到两个数i1和i2,使得他们之间的数包含了所有的标识(j)0~k-1,并

2020-08-03 19:40:53 339

原创 Java中的继承与重写

根据自己的经验总结的Java继承与重写规则:继承与重写:1.对于static类型:只在父类中保留一份,子类不可重写,但可以有同名,互不干涉2.对于普通类型:继承后父、子类中各保留一份,可重写,子类中有同名方法默认为重写,有同名变量会保留3.对于final类型:只在父类中保留一份,不可重写,不可有同名方法(默认为重写),除非在父类中为private...

2019-03-28 11:48:09 357

北京高校数模大赛.rar

北京高校数模大赛.rar

2021-08-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除