自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 资源 (4)
  • 收藏
  • 关注

原创 OpenGL 延迟着色

OpenGL 延迟着色(Deferred Shading)我们之前一直使用的光照方式叫做正向渲染(Forward Rendering)或者正向着色法(Forward Shading),它是一种非常直接的方式,我们根据场景中所有的光源去依次渲染一个一个的物体,这很容易理解和实现,但同时这对程序性能的影响也很大,因为对场景中的所有物体的每个片段都需要根据所有光影进行计算,这是非常大的工作量,而且其实大部分片段着色器的输出都会被之后的输出覆盖,这些计算就被浪费了。延迟着色法(Deferred Shading)

2021-05-31 17:31:27 534

原创 OpenGL ply

OpenGL plyply格式PLY全名为多边形档案(Polygon File Format),主要用以储存立体扫描结果的三维数值,透过多边形片面的集合描述三维物体,与其他格式相较之下这是较为简单的方法。它可以储存的信息包含颜色、透明度、表面法向量、材质座标与资料可信度,并能对多边形的正反两面设定不同的属性。在档案内容的储存上PLY有两种版本,分别是纯文字(ASCII)版本与二元码(binary)版本,其差异在储存时是否以ASCII编码表示元素信息。头部header每个PLY档都包含头部信息(he

2021-05-26 16:41:05 1243

原创 LeetCode1035. 不相交的线(二维动态规划)

题目在两条独立的水平线上按给定的顺序写下 nums1 和 nums2 中的整数。现在,可以绘制一些连接两个数字 nums1[i] 和 nums2[j] 的直线,这些直线需要同时满足满足: nums1[i] == nums2[j]. 且绘制的直线不与任何其他连线(非水平线)相交。请注意,连线即使在端点也不能相交:每个数字只能属于一条连线。以这种方法绘制线条,并返回可以绘制的最大连线数。示例 1:输入:nums1 = [1,4,2], nums2 = [1,2,4]输出:2解释:可以画出两条不交叉

2021-05-22 16:50:17 372

原创 openGL着色器 (shader)

着色器 (shader)着色器(Shader)就是运行在GPU上的小程序。这些小程序在图形渲染管线的某个特定部分而运行。从基本意义上来说,着色器只是一种把输入转化为输出的程序。着色器也是一种非常独立的程序,因为它们之间不能相互通信;它们之间唯一的沟通只有通过输入和输出。图形渲染管线在讲着色器之前,不得不先理清楚openGL的图像渲染管线。在OpenGL中,任何事物都在3D空间中,而我们的屏幕和窗口却是2D像素数组,所以OpenGL的大部分工作都是关于把3D坐标转变为适应你屏幕的2D像素。3D坐标转

2021-05-20 17:42:34 4492

原创 找出第 K 大的异或坐标值

找出第 K 大的异或坐标值给你一个二维矩阵 matrix 和一个整数 k ,矩阵大小为 m x n 由非负整数组成。矩阵中坐标 (a, b) 的值可由对所有满足 0 <= i <= a < m 且 0 <= j <= b < n 的元素 matrix[i][j](下标从 0 开始计数)执行异或(相同为0,不同为1)运算得到。请你找出 matrix 的所有坐标中第 k 大的值(k 的值从 1 开始计数)。示例 1:输入:matrix = [[5,2],[1,6]

2021-05-19 23:30:51 110

原创 OpenGL 混合

OpenGL 混合(Blending)在OpenGL中,物体透明技术通常被叫做混合(Blending)。透明的物体的颜色来自于不同浓度的自身颜色和它后面的物体颜色的混合。可以开启GL_BLEND来启用混合功能:glEnable(GL_BLEND);OpenGL以下面的方程进行混合:Csource:源颜色向量。这是来自纹理的本来的颜色向量。Cdestination:目标颜色向量。这是储存在颜色缓冲中当前位置的颜色向量。Fsource:源因子。设置了对源颜色的alpha值影响。Fdes

2021-05-18 11:20:36 604

原创 优先队列priority queue

优先队列是分优先级的队列 题目 The only printer in the computer science students’ union is experiencing an extremely heavy workload. Sometimes there are a hundred jobs in the printer queue and you may have to wait

2016-05-14 19:21:22 337

原创 C++ Namespace命名空间和static的用法总结

Namespaces are used to prevent name conflicts.Ways to Use Namespace Identifiersuse a qualified name consisting of the namespace, the scope resolution operator :: and the desired the identifier

2016-05-14 17:52:48 4030

原创 银行账户问题

Suppose there is a class PersonalAccount, which has a private member variable balance (type: integer and value is 0 at first);Besides, this class has three member functions: 1. add, add money into u

2016-02-26 21:50:30 520

原创 新学期 新生活

新学期已经开始了! 尽管我很不想不想来学校,但是没法避免。 这学期要更加努力学习C++,要让自己的成绩好看一点哦。 第一节实验课Give you two strings a, b, determine whether string a contains the string b. Input Format The first line contains a integer n, repr

2016-02-26 21:35:05 323

原创 杂记

时间过得好快,回到家里已经快两个星期了。 年关将近,家里的人也忙忙碌碌的。 回到了久别的家乡,一切还是那么的熟悉。 以前吃腻了的家里的饭,现在吃起来是那么可口,前几天还梦到高考

2016-02-26 20:54:40 246 1

原创 文章标题

NUMBER 1 给出两个正整数m和n,请求出这个两个数的最大公约数(greatest common divisor,后面简写为gcd)和最小公倍数( least common multiple,后面简称lcm)。 测试样例: input: 25 45 output: the gcd about these two numbers is: 5 the lcm about these

2016-02-06 15:49:35 628

原创 期末复习

Number 1 Write a program to determine the ranges of char , short , int , and long variables, both signed and unsigned , by printing appropriate values from standard headers. No INPUT And, your OUT

2016-01-18 21:40:41 309

原创 删除相同字符

删除两个字符串数组中相同的字符 Description In this exercise, you will get two strings A and B in each test group and the length of every string is less than 40, you need to delete all characters which are contained

2016-01-12 22:41:36 1005

原创 判断二叉树是否对称

判断一棵二叉树是否对称。二叉树节点定义如上次的结构相同:typedef struct node { int x; struct node* left; struct node* right; } BN;int isSymmetric(BN* root);来判断一棵二叉树是否对称,对称返回1,非对称返回0.node结构要按照上面的代码在symmetri

2016-01-12 22:26:25 317

原创 struck有关与集合有关

what a fucking day this morning , though I really wanted to take history class which is the last lesson of this term, but I was too sleepy to wake up. After a silent math class, I went to library to

2016-01-07 22:59:49 287

原创 组合数与排列二叉树

2016年1月6日 晴 手机铃声已经响过了,然而自己还是不想起床 想想今天要去上程设课就头疼 自从开始学习指针,我就稀里糊涂的,作业都按时完成不了,好忧伤 从床上下来打开电脑开始苦逼的打代码计算系数 给出一个多项式(x+y)^K,询问x^n * y^m的系数输入两个数n, m 。K为n+m的和。n,m均不超过100因为系数可能非常大,所以要求输出模10007后的结果 样例输入 1

2016-01-06 15:10:16 552

原创 人生第一次写的代码

开始记录学习程序设计的历程 从零开始学习打代码第一次打的代码#include<stdio.h>int main() { int num; printf("\nPlease input a number:"); scanf("%d", &num); printf("hello world: %d", num); return 0; }这就是我第一次亲手

2016-01-06 13:28:32 347

OpenGL实现贝塞尔曲线画笑脸

opengl+glut+vs2019,实现贝塞尔曲线画笑脸,环境都是配好的,解压就能运行

2023-04-09

Deferred Shading延迟渲染.zip

Exercise 9:Deferred Shading的实现 要求: 1.在练习8的基础上,实现Deferred Shading算法; 考察目的: 1.阅读文献,理解并实现文献中算法; 2.通过FrameBufferObject实现render-to-texture技术; 3.实现multiple-render-targets技术;

2021-05-31

OpenGL载入ply格式的3D模型,使用VBO

Exercise 8:三维模型的载入 要求: 1.载入一个简单的ply格式的三维模型; 2.使用Vertex Buffer Object的方式来绘制三维模型; 3.使用Per-Pixel Shading方式进行绘制; 考察目的: 1.了解ply文件的基本格式; 2.了解Vertex Buffer Object的使用;

2021-05-26

Per-Pixel Shading绘制两个茶壶实现

Exercise 7:Per-Pixel Shading的实现 要求: 1.绘制两个茶壶,一个使用固定管线的Per-Vertex Shading方式进行光照,另一个使用Per-Pixel Shading方式进行光照; 考察目的: 1.基本GLSL的了解和使用; 2.通过GLSL实现光照计算; 3.了解如何使用OpenGL扩展;

2021-05-24

OpenGL实现的放大镜功能(渲染到纹理的方式).zip

要求: 1.在练习5的基础上,实现放大镜功能,放大场景中的任意部分; 2.放大镜可以通过鼠标键盘进行控制; 考察目的: 1.对OpenGL坐标系变换的理解;

2021-05-20

空空如也

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

TA关注的人

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