采用的语言是c++,利用面向对象的思想,一些基础的线性代数和空间几何的知识也会用到,编程的框架用的是GLFW,渲染用到的是OpenGL
2024/9/10 0:11:22 359KB Ray Tracing OpenGL RayTracer
1
这个场景中包含两匹马,不知道怎么起名,所以就叫“TwoHorses”啦。
还有就是用到各种反射模型、各种光照模型、各种纹理、PLY格式的几何模型。
对应博文链接:http://blog.csdn.net/libing_zeng/article/details/70183028
2024/8/6 9:27:26 5.09MB 光线追踪 反射模型 光照模型 纹理
1
光线跟踪算法c++编写有文档,有报告。
2023/4/10 11:19:11 3.46MB raytracing c++
1
这是本人学习光线追踪以来生成的第一个“一本正派”的场景。
该场景中主体是“地球仪”。
这个场景中包含如下几部分:1,地球仪的底座(1个回旋面+1个圆柱面,Phong材质,木纹纹理);
2,地球仪的主体球面(Phong材质,图片映射纹理);
3,地球仪的支架(半个圆环+1个圆柱面+2个小球面,Reflective材质,没有纹理);
4,地球仪下方的圆台(1个封闭圆柱面,Phong材质,2D方格纹理);
5,场景的下面和背面(2个平面,Matte材质,2D方格纹理);
对应博文:http://blog.csdn.net/libing_zeng/article/details/69856133
2021/7/4 13:31:04 3.78MB 地球仪 光线追踪 方格纹理 过程纹理
1
一、1.Pleasedownloadandinstalltheglutlibrary.2.WriteacompleteprogramusingthefollowingcodestodrawaSierpinskigasket.voidmyinit(){//attributesglClearColor(1.0,1.0,1.0,1.0);glColor3f(1.0,0.0,0.0);//setupviewingglMatrixMode(GL_PROJECTION);glLoadIdentity();gluOrtho2D(0.0,50.0,0.0,50.0);glMatrixMode(GL_MODELVIEW);}voiddisplay(){GLfloatvertices[3][3]={{0.0,0.0,0.0},{25.0,50.0,0.0},{50.0,0.0,0.0}};//anarbitrarytriangleintheplanez=0;GLfloatp[3]={7.5,5.0,0.0};//orsetanydesiredinitialpointwhichisinsidethetriangle;intj,k;intrand();glBegin(GL_POINTS);for(k=0;k<5000;k++){/*pickarandomvertexfrom0,1,2*/j=rand()%3;//computenewlocation;p[0]=(p[0]+vertices[j][0])/2;p[1]=(p[1]+vertices[j][1])/2;//displaynewpointglVertex3fv(p);}glEnd();glFlush();}#includevoidmain(intargc,char**argv){glutInit(&argc;,argv);glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);glutInitAWindowSize(500,500);glutInitWindowPosition(0,0);glutCreateWindow(“SimpleOpenGLExample”);glutDisplayFunc(display);myinit();glutMainLoop();}3.实现DDA和Bresenham画线算法(1)画10万以上随机生成的直线段,比较两个算法的平均时间.(2)分别把屏幕上的1*1,5*5,9*9像素当作直线段上的一个点,观察线段的走样情况.二、请写一个OpenGL(如果熟悉WebGL也可以用)程序完成如下任务(1)读入三维网格模型的obj文件;(2)用OpenGL函数glTranslatef()对模型模型进行平移,使得其重心位于原点;(3)用函数glLookAt()设置视点,并且要求试点绕模型一周,以便用透视投影观察各个侧面;(4)要求利用真实感绘制对模型进行渲染.(利用OpenGL函数设置光源,材质,计算好每个三角形的法向量后,利用OpenGL的glNormal函数给待绘制的三角形设置法向量).绘制的结果大概如下:三、本实验为综合实验,任务是利用光线跟踪算法进行Whitted全局光照计算,并对读入场景进行真实感绘制。
(特别提示:网上类似的projects可以参考,但不能照抄.如http://tobias.isenberg.cc/graphics/LabSessions/RaytracingProject,http://physbam.stanford.edu/links/ray_tracing/project_ray_tracing.htmlhttps://www.cs.utexas.edu/~fussell/courses/cs354/assignments/raytracing/handout.shtml)(1)参加对象:本实验针对所有选课同学,3-5人组成一个小组,共同实现;
非15级同学在组队方面有困难的话可与老师沟通.(2)实验结果提交:每人都要求提交一份.内容包括a.源程序;可执行代码;三维场景数据;同组的同学这部
2021/5/20 14:17:55 48.13MB 华南理工大学 图形学实验
1
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡