- 博客(52)
- 资源 (4)
- 收藏
- 关注
原创 games106 homework1实现
PBR材质相关理解记录在了这篇文章里,作业中的实现参考了pbrbasic, pbribl, pbrtexture中的实现。
2023-08-04 23:53:00
448
原创 PBR材质理解整理
先前看了很多遍类似的了,结合《Unity Shader 入门精要》中的内容整理了下便于以后理解,以后有补充再添加。光与材质相交会发生,散射改变光的方向,吸收改变光的能量。在均匀介质中,光沿直线传播。传播过程中材质的折射率变化,光的传播方向也会发生变化,介质边界折射率突变,光会发生散射现象。实际光和物体交互非常复杂,光沿直线传播也只是一种特例。介质的表面是不平滑的,由很多的微表面构成,微表面折射的光被折射到物体内部,一部分被物体吸收,一部分被重新散射到物体外部。
2023-08-04 23:50:54
784
原创 Vue项目大屏可视化适配 transform+解决高德地图经纬度偏移
vue js大屏适配 transform 方法+解决高德地图经纬度偏移问题
2022-07-27 09:58:03
4860
4
原创 【GAMES101】作业4 Bézier 曲线
分析了下文档的意思,大概是用递归的方法实现De Casteljau算法。实现起来也比较简单,递归函数的递归出口在control_points中的点数为1时,返回求出的这个点,递归的代码如下所示。直接调用原代码给出的native_bezier。两个函数一起调用效果如下所示。直接绘制除的Bezier曲线存在走样的问题。反走样的思路是计算九宫格中与当前点相邻的8个像素点坐标与当前点坐标距离,并根据距离设置颜色线性渐变(思路参考作业4(提高)含Bazier曲线的反走样处理)按照这个思路绘制的边缘效果比其
2022-06-25 20:02:40
492
原创 React前端购物车商品数量添加组件
组件的实现效果如图所示:可以通过“+”和“-”按钮增加减少数量,手动输入商品数量。从antd导入相关的icon以及相关使用到的内容:设置状态state:自写组件AddNumber,控制点击按钮修改商品数量。继续添加useEffect,通过表单输入去修改商品数量。......
2022-06-20 10:58:56
552
原创 表格封装useTable TypeScript理解
参照AntD动态合并Form表单项做项目时遇到封装函数useTable,因为项目中表格基本都使用了这个函数,自己在做自定义新表格时看到这个函数就很疑惑,遇到了各种各样的问题,也不懂ts,在这里试着配合文档理解一下这个函数的功能,之后有了解再继续更新。-> ts文档试图完成导出表格的功能,使用fetchYearExcel向后端发出请求。下面是封装好的useTable使用。 const { refresh, searchBy, submit, excelLoading, exportExce
2022-04-02 15:58:16
1872
原创 【GAMES101】作业3 Pipeline and Shading
**1. blinn-phong模型****漫反射光****高光****环境光****漫反射+环境光+高光 叠加****2. Bump Mapping****3. Displacement Mapping****4.双线性插值**
2022-03-01 16:38:45
2525
1
原创 2021年保研推免面试经验
保研过去了有三个月了,懒惰的我决定还是记录一下这段经历,或许能够给后来的人一点点参考。个人基本信息本科院校:南方某末流211本科专业:数字媒体技术绩点排名:5/125推免排名:3/125奖励荣誉:三创赛国家特等奖,2份软著,还有2个学业奖学金,校赛奖项若干。感觉2021年也是巨卷的一年,很多学校bar拉的挺高,初筛都没有过。9/24湖南大学信科院计算机科学与技术方面1. 老师:英文自我介绍1min 我:开始背诵准备好的自我介绍2. 老师:你为什么选择湖大来读书?
2021-12-20 23:22:18
1968
6
原创 Ubuntu 安装显卡驱动 system can not recover
关键词:ubuntu,安装显卡驱动,ohno system can not recover背景:Ubuntu 20.10问题描述:配置深度学习环境时,我试图给ubuntu安装一个显卡驱动。依照教程装驱动的时候是要禁用nouveau然后再重启系统的,我禁用完nouveau以后弹出了一个说是gnome出错的框,当时没有多想,立刻就重启了。…结果重启了以后就发现出了问题。先是出现下面一行字:“/dev/nvme0n1p2:clean, xxx/xxx files xxx block”然后就显示一白
2021-05-17 21:48:26
937
原创 [编程题]Tree Traversals (25)
关键词:数据结构,二叉树试题链接:Tree Traversals 问题描述:思路:用广度优先搜索的方法解决八数码问题。可以构建一颗“状态树”,把九宫格每一种状态视为一个结点,初始状态视为根节点。那么我们计算从初始状态到目标状态的最少步数其实就是相当于求从根节点到目标结点的最少步数,这样就把理解问题尽可以用广度优先算法解决了。对于广度优先搜索问题首先让根节点入队,对于每个结点有四个搜索方向:然而这四个方向不一定都走得通,还需要考虑到:1.搜索不能超过九宫格边界。2.不能走“回头路”。对于满足以
2021-05-09 21:18:14
106
原创 [编程题]八数码
关键词:递归,穷举,排序,广度优先搜索BFS试题链接:八数码问题描述:思路:用递归(深度优先搜索)的方法解决全排列问题。类比《算法笔记》里深度优先搜索那一节里面提到的“走迷宫”问题,把输入字符串的每一个字符都看做是一个结点,当做是迷宫的一个岔路口,每到一个岔路口都看一看自己当前有几种选择(用flag数组进行标记),在选择一个字符添加到结果字符串中以后要记得回退。当结果字符串的长度等于输入字符串的长度时,设置递归出口,打印字符串。备注:观察输出,在深度优先搜索之前需要对输入的字符串进行排序。
2021-05-06 19:09:18
130
原创 [编程题]全排列
关键词:递归,穷举,排序,深度优先搜索DFS试题链接:全排列问题描述:思路:用递归(深度优先搜索)的方法解决全排列问题。类比《算法笔记》里深度优先搜索那一节里面提到的“走迷宫”问题,把输入字符串的每一个字符都看做是一个结点,当做是迷宫的一个岔路口,每到一个岔路口都看一看自己当前有几种选择(用flag数组进行标记),在选择一个字符添加到结果字符串中以后要记得回退。当结果字符串的长度等于输入字符串的长度时,设置递归出口,打印字符串。备注:观察输出,在深度优先搜索之前需要对输入的字符串进行排序。
2021-05-06 10:51:09
152
原创 [编程题]Linked List Sorting
关键词:链表,查找试题链接:Linked List Sorting问题描述:思路:由于题目提到的地址范围很小,所以可以考虑用静态链表来解决问题。依照题目的要求,需要在node结构体中新添一个flag的变量用于记录当前结点是否在结点链中(是否为有效结点),读取输入完毕以后,用sort函数进行排序,先按照有效结点排前面的规则排序,再按照结点中数据从小到大的顺序进行排序。备注:这道题需要注意的是在它给出的一大串输入里面,可能有的结点根本就不再链表里面,这个时候按照地址需要遍历一遍静态链表,把在链
2021-05-04 16:53:52
134
原创 [编程题]Sharing
关键词:链表,查找试题链接:Sharing问题描述:思路:由于题目提到的地址范围很小,所以可以考虑用静态链表来解决问题。依照题目的要求,需要在node结构体中新添一个cnt的变量用于记录当前结点是否第一次出现在结点链中。解决方案:#include<iostream>#include<string>using namespace std;const int maxn=100010;//牺牲地址换取时间?struct NODE{ int next;
2021-05-04 15:23:02
81
原创 [编程题]任务调度
关键词:最小堆,拓扑排序,字符串试题链接:任务调度问题描述:思路:前序任务比较多的任务的优先度应该设定为较低值,可以把一个任务的前序任务数。这道题的大体思路是:先声明一个数据结构node,记录任务名称,任务的前序任务数。在优先队列里将前序任务数的任务优先级设定为较低值。对于输入的每一行,首先将当前行任务存入map中(如果是第一次出现),再将括号其后序任务存入map中(如果是第一次出现),并修改其前序任务数。备注:priority_queue 容器适配器定义了一个元素有序排列的队列。默认
2021-04-29 18:53:12
529
原创 [编程题]1071. Speech Patterns (25)
关键词:map,字符串试题链接:Speech Patterns (25)问题描述:思路:这道题的大体思路是先把字符串转换为全小写,然后遍历字符串,寻找字符串中的”word“(也就是被非字母数字分割出的string)用map存储它们出现的次数最后输出。备注:1.map本身是有序的,而unordered_map是无序的。map底层为红黑树,unordered_map底层为哈希表。2.在寻找“word”的过程中,首先需要判断当前遍历到的字符是否为字母或数字,如果是,加入到当前模式s中,如果不是且
2021-04-29 09:42:33
81
原创 [编程题]Are They Equal (25)
关键词:字符串试题链接:Are They Equal (25)问题描述:思路:这道题可以用string来解决的。比较麻烦的地方是它的输入可能有多种形式…可能就会被忽略。比如: 7 0.987 00009873 0000 0.000它的输入不像正常的int和float一样,它会有前置0,以至于输入要用string来存储。下面就是我遇到的比较容易出错输入:有效数字不够,处理时就需要在后面补0。 if (s.length() > i) { r
2021-04-28 11:49:39
64
原创 [编程题]Set Similarity (25)
关键词:set , vector, STL试题链接:Set Similarity (25)问题描述:思路:这道题很显然是要用集合set来解决的。C++STL模板中的set(集合)有两个特点:1.集合中没有重复元素。2.集合内部是自动有序的。对于集合求交并补常用的几个函数://求v[a] v[b]并集并将结果存放于一个vector u中set_union(v[a - 1].begin(), v[a - 1].end(), v[b - 1].begin(), v[b - 1].end()
2021-04-27 23:21:44
82
原创 Pycharm安装Pytorch过程
关键字:torch1.8.1+cu111, torchvision0.9.1+cu111,torchaudio===0.8.1之前一个项目用到了pytorch,当时试了好多方案安装pytorch终于后终于成功把它装上了。很久没用后把anaconda卸载了…重新打开这个项目emmmm…心情有点复杂。写个文档记录下我怎么重装的(留给下一次重装看bushi)。直接上pytorch官网(https://pytorch.org/get-started/locally/)选好对应版本号,复制然后试图直接安装时报
2021-04-27 00:01:56
3453
1
原创 [编程题]Student List for Course (25)
关键词:vector , map试题链接:https://www.nowcoder.com/questionTerminal/e9482512572944199d1babbcdf567b3d问题描述:思路:这道题的核心就是变长数组vector的应用(以及map的应用),做题之前应当好好考虑一下vector该用在存储什么变量是最合适的,考虑它“长度可变”的特性让自己结题的过程变得更加简单。在Course List for Student(https://blog.csdn.net/qq_4564
2021-04-26 17:04:28
105
原创 [编程题]Course List for Student (25)
关键词:vector , map试题链接:https://www.nowcoder.com/questionTerminal/a6e370ac55fc4bd49d0bb62710e35868问题描述:思路:这道题的核心就是变长数组vector的应用(以及map的应用),做题之前应当好好考虑一下vector该用在存储什么变量是最合适的,考虑它“长度可变”的特性让自己结题的过程变得更加简单。备注:使用algorithm中的sort函数对vector中的数据进行排序时,应当用到begin()和en
2021-04-26 15:47:09
125
原创 [编程题]最大公约数和最小公倍数
关键词:最大公约数,辗转相除法试题链接:https://www.nowcoder.com/questionTerminal/cf4091ca75ca47958182dae85369c82c问题描述:思路:求解最大公约数常常会用到辗转相除法(欧几里得算法),基于定理:若a,b均为正整数,则gcd(a,b)=gcd(b,a%b)。具体做法是:用较大数除以较小数,再用出现的余数(第一余数)去除除数,再用出现的余数(第二余数)去除第一余数,如此反复,直到最后余数是0为止。可以采用递归的方法求解最大
2021-04-26 12:05:32
311
原创 [编程题]1019. 数字黑洞 (20)
关键词:递推关系,动态规划试题链接:https://www.nowcoder.com/questionTerminal/2e6a898974064e72ba09d05a60349c9e问题描述:根据算法笔记上的思路:对于每一个A,其左侧所有P的数目与其右侧所有T的数目相乘得到的结果即为这个A能够组成的pat数,统计所有A能够组成的pat数求和,即为题目的答案。备注:最好每次相加的时候都能够取一次模,不然可能有溢出的风险。解决方案:#include<iostream>#i
2021-04-26 11:48:11
93
原创 [编程题]有几个PAT(25)
关键词:递推关系,动态规划试题链接:https://www.nowcoder.com/questionTerminal/5e7d025e91ab468f909cb93d431b89c3问题描述:根据算法笔记上的思路:对于每一个A,其左侧所有P的数目与其右侧所有T的数目相乘得到的结果即为这个A能够组成的pat数,统计所有A能够组成的pat数求和,即为题目的答案。备注:最好每次相加的时候都能够取一次模,不然可能有溢出的风险。解决方案:#include<iostream>#inc
2021-04-25 22:25:40
94
原创 [编程题]整数无序数组求第K大数
关键词:TopK问题,堆,随机选择试题链接:https://www.nowcoder.com/questionTerminal/097ab63cffa847d89716f2ca8c23524f问题描述:这道题我使用堆把它搞定了,之后会继续整理随机选择算法的解决方案。解决方案:#include<iostream>#include<vector>#include<queue>using namespace std;int main(){ v
2021-04-22 22:09:09
219
原创 [编程题]找x
看到这道题的第一反应是用二分查找解决了(因为是算法笔记二分法那一章节里面的题目)。后来一拍脑袋想起来二分法不是得让序列有序么。这才用自己的方法解决了这道题目。实际解决问题的时候还是要更多地理解题目本身。#include <stdio.h>#include <iostream>using namespace std;int main(){ int n; int a[200]; cin >> n; for(int i =0;i&.
2021-04-22 19:51:50
128
原创 编程题:看电视
试题链接:http://codeup.cn/problem.php?cid=100000584&pid=0关键词:区间贪心ac代码如下所示:(比较奇怪的是我在声明区间数组时,将itv声明为int itv[num]然后运行就会报错,但是声明int itv[100]就能ac,当时困扰了我很久,明明一点逻辑问题都没有了但是不停的“答案错误”…决定以后直接就像int itv[100]这样声明数组。)#include<iostream>#include<algorithm>
2021-03-31 12:10:40
164
原创 PAT B1020 月饼
试题链接:https://www.nowcoder.com/questionTerminal/6fc9a928c7654b0fbc37d16b8bd29ff9关键词:简单贪心策略,数组,排序ac代码如下所示:#include<iostream>#include<algorithm>#include<iomanip>using namespace std;struct mooncake{ float store; //库存量 float
2021-03-31 10:37:46
70
原创 编程题:八皇后问题
这道题目描述跟它实际的有点区别,它的输入应该只有一个,且是一个整数,输出才是92个序列中与这个整数对应的那个序列。看了《算法笔记》以后感觉这个问题的逻辑已经基本掌握了,做这道题时遇到的最大的问题是:1.审题:关于数组记录的数据应该是从0开始还是从1开始,这个一开始的时候我没有仔细看题就是从0做起的,后来发现要从0做起。2.数值传递:唉,只能说该用全局变量的时候就用吧,传来传去我自己就糊涂了,本来递归就很烂了…下面是ac的代码:#include<iostream>#include&l.
2021-03-30 22:45:41
203
原创 编程题:吃糖果
关键词:递归,动态规划写递归之前一定要考虑的递归中的两个重要概念:递归边界和递归式。我的解决方案:#include<stdio.h>#include<iostream>using namespace std;int dp(int N){ //递归出口 if(N==1)return 1; //1块巧克力只有一种方案 else if (N==2)return 2; //2块巧克力有两种方案 else return dp(N-1)+dp(N-
2021-03-29 17:22:50
300
原创 编程题:谁是你的潜在朋友
标签:数组,哈希,排序试题链接:https://www.nowcoder.com/questionTerminal/0177394fb25b42b48657bc2b1c6f9fcc我的解决方案:#include<stdio.h>#include<iostream>using namespace std;const int maxn=10000;int main(){ int readers[maxn]={0}; int readerHasTabl
2021-03-29 17:07:17
130
torchaudio-0.8.1-cp37-none-win_amd64.whl
2021-04-26
torchvision-0.9.1+cu111-cp37-cp37m-win_amd64.whl
2021-04-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人