- 博客(31)
- 资源 (9)
- 收藏
- 关注

原创 光线追踪技术的理论和实践(面向对象)
光线追踪技术的理论和实践(面向对象) Theory & Practice of Raytracing(Object Oriented)这篇文章将介绍光线追踪技术。在计算机图形领域中,这种技术被普遍应用于生成高质量的照片级图像。在为一个场景计算光照的时候,通过固定...
2010-06-11 15:26:00
21302
31
原创 计算机图形学基础-张赐-专题视频课程
该课程是计算机图形领域的基础的课程,包含了计算机图形学的数学原理,例如在计算机图形学中的重要坐的标变换的原理。该课程也是游戏开发、VR/AR等开发的基础课程。在该课程中除了讲授数学原理,还包括了C++实践,实现3D数学类。该课程的主要内容包括:向量、向量空间、矩阵、矩阵空间、仿射空间、齐次坐标系、仿射变换、刚体变换、四元数等。...
2017-09-29 09:00:08
1152
1
原创 在UE4中模拟NURBS曲线和曲面
最近在虚幻引擎4的官方商场上线了c++蓝图工程项目。该工程利用几何算法对NURBS曲线和曲面进行了模拟。包括knot插入、删除、细化,……曲线和曲面,所有这些曲线和表面都可以实时编辑。实现的算法都参考了《The NURBS Book》这本书。该项目工程包含了NURBS的基本算法的c++代码,想学习的朋友不容错过!虚幻官方商城地址:https://www.unrealengine.c
2017-07-27 16:52:06
4190
1
原创 利用OpenGL点精灵实现云模拟(Cloud Simulation Using OpenGL PointSprite)
这篇教程介绍一种利用OpenGL点精灵,也就是PointSprite来实现云的模拟。在网上找了一些资料和论文,都是模拟真实的云和光照,且都比较复杂。后来看到一篇文章,介绍了一篇相对简单但效果比较好的方法。首先建立好云的轮廓模型,可以使用3DMax或其他的建模工具,然后创建该模型的包围体,将包围体中属于云的部分抽取出来,最后对抽取出来的部分进行三角化,然后贴图,最后加上光照。受到该方法的启发,这里我介绍一种更为简单的方法来实现对云的模拟。和从文件读取云模型相比,用代码生成云的轮廓要快的多。云的轮廓我们可以用球
2010-08-29 14:40:00
9761
6
原创 B-spline曲面的法线贴图
[教学视频]计算机图形学基础 在线学习教程 *原创文章,转载请注明出处* B-spline曲面的法线贴图Normal Mapping on B-spline Surface 在openGL Cg系列教程中,有一篇文章详细的介绍了法线贴图的原理和实现。这种法线贴图的实现是基于平面的,也就是最常看到的在四边形上的法线贴图。如果想在一些几何体上贴图,比如to...
2010-06-15 16:53:00
8952
12
原创 OpenGL Vertex Buffer Objects(VBOs)
*原创文章转载请注明出处* OpenGL Vertex Buffer Objects(VBOs) Vertex Buffer Objects(VBOs)是一组保存在显存中的数据,这些数据可以是顶点,顶点颜色,顶点法线,顶点索引或贴图坐标等等。由于这些数据都是保存在显存中的,而且可以随时修改数据或整块替换数据,这样就极大的提高了显卡的工作效率和渲染的速度。VBO的概念类似于D
2010-05-20 12:53:00
14084
8
原创 openGL CG 系列教程07 – Toon Shader
*原创文章,转载请注明出处* openGL CG 系列教程07 – Toon Shader 这篇教程将介绍一种卡通渲染(Toon Shader)的方法,卡通渲染属于non photorealistic rendering或简称NPR中的一种。卡通渲染一个物体看起来的效果就像卡通绘画一般,这里介绍一种简单的渲染卡通效果的方法。和一般光照渲染不同的是,卡通效果渲染的物体像
2010-05-15 22:04:00
7437
2
原创 openGL CG 系列教程06 – Normal Mapping (法线贴图)
*原创文章,转载请注明出处* openGL CG 系列教程06 – Normal Mapping (法线贴图) Normal Mapping(法线贴图),不论是在游戏开发还是其他计算机图形开发中都是使用很广泛的技术。如果一个物体的表面粗糙不平,物体顶点的法线也就朝向各个不同的方向,所以物体看起凹凸不平。要表现这样的物体,当然可以使用相当多的包含不同法线的顶点数据,这样做
2010-05-13 19:45:00
11781
原创 openGL CG 系列教程5 – Environment Mapping ( 环境贴图 )
*原创教程,转载请注明出处*openGL CG 系列教程5 – Environment Mapping (环境贴图) 利用物体材质specular属性来模拟高反光的物体是不够的。高反光的物体通常可以在表面反射出周围的物体,这样的效果需要通过环境贴图来实现。这篇教程将介绍如何利用Cg进行环境贴图。环境反射的原理很简单,一个光滑的物体表面可以根据我们观察的不同角度反
2010-05-08 13:38:00
11319
1
原创 openGL CG 系列教程4 - Lighting + Texture
*原创文章,转载请注明出处*openGL CG 系列教程04 – Lighting + Texture 前几个教程详细的讲解了使用可编程渲染管线实现如何实现光照。如果我们要渲染的模型是带有纹理,要想带有纹理的模型也应用于光照又该怎样实现呢?有的同学可能知道,在openGL的固定管线也可以设置TextureEnvMode模式为GL_MODULATE就可以实现光照和纹理颜色的混合。下面
2010-05-05 19:38:00
5016
2
原创 openGL CG 系列教程3-Pixel Lighting
*原创文章,转载请注明出处* openGL CG 系列教程3-Pixel Lighting 在上一篇教程中介绍了phong model下的一般光照,并且用Cg着色语言实现了固定渲染管线中gouraud shading光照效果。由于是基于vertex的光照,虽然采用gouraud shading要比flat shading效果好的多,但是和phong shading的效果相差
2010-04-30 18:36:00
5100
1
原创 openGL CG 系列教程2 - Vertex Lighting
*原创文章,转载请注明出处*openGL CG 系列教程2vertex lighting 之前的一篇教程HelloCG介绍了Cg的一些最基本的东西。这篇教程将介绍利用可编程渲染管线来实现光照。光照模型将采用广泛应用的phong模型,虽然这种模型在openGL的固定管线中已经实现了,但是学习该光照模型可以更加清楚的了解可编程渲染管线的流程。 首先要实现phong光照模
2010-04-28 22:54:00
6625
1
原创 openGL CG 系列教程1 - Hello CG
*原创文章,转载请注明出处*OpenGL CG 系列教程1 - Hello CG 这篇教程将介绍如果在openGL中使用CG(C for Graphic)语言。想在程序中使用CG,首先要下载并安装 NVIDIA的Cg Toolkit。( http://developer.nvida.com/CgTutorial ) 安装好后,在openGL程序中就可以添加cg.h和c
2010-04-28 19:46:00
10505
12
原创 在openGL中实现RayPicking
*原创文章,转载请注明出处* 在openGL中实现RayPicking 看过D3D入门龙书的朋友肯定知道,第十五章讲picking的时候,是利用拾取射线和包围球的的交叉测试来完成拾取的。但是在OpenGL中,我们知道是利用OpenGL渲染管线的特点,在拾取模式中采用拾取矩阵,然后检查selectbuffer的内容来判断拾取的。这两种方法各有各的好处。在进行OpenGl编
2010-03-19 16:44:00
7614
7
原创 OpenGL图形管线和坐标变换
*原创文章,转载请注明出处*OpenGL图形管线和坐标变换OpenGL Rendering Pipeline & Coordinate Transformation 1. 引言 学习计算机图形学首先要搞清楚计算机图形渲染管线。当今两大图形API,OpenGL和Direct3D都有自己的渲染管线。但是对于刚刚接触计算机图形学的同学来说,“图形管
2010-02-21 11:18:00
11496
9
原创 利用OpenGL进行模型表现
利用OpenGL进行模型表现 这篇文章介绍一下用OpenGL来表现模型对象。比如用3DMAX等工具做好一个模型后,我们希望能够在自己的程序中使用它。一般使用这些工具的导出功能导出特定的文件,然后读取其中我们感兴趣的部分,再把这些感兴趣的数据在我们的程序中组织好就可以了。利用OpenGL来表现静态模型是很简单的。 这里为了简单起见,模型对象文件为txt文本,只包含了模型的顶点个数,
2009-12-23 10:19:00
5777
4
原创 深入理解OpenGL拾取模式(OpenGL Picking)
深入理解OpenGL拾取模式(OpenGL Picking) 在用OpenGL进行图形编程的时候,通常要用鼠标进行交互操作,比如用鼠标点选择画面中的物体,我们称之为拾取(Picking),在网上看了很多OpenGL拾取的文章,但大多是只是介绍在OpenGL中如何拾取,如何利用OpenGL提供的一系列函数来完成拾取,最多再简单介绍下OpenGL的名字栈(Name stack
2009-10-30 20:35:00
26806
41
原创 B-Spline Global Interpolation
<!--WAU_classic(rh3h4dnzpct1)// -->B-Spline Global Interpolation 现在来考虑一个问题。在空间中有n个点,如何求过这n个点的曲线呢?比如,我们要求过已知点的三次B-Spline曲线,并且分别作为曲线的起点和终点。这样的问题我们称为B-Spline Global Interpol
2009-09-07 15:50:00
4488
6
原创 B-Spline knot insertion
<!--WAU_classic(rh3h4dnzpct1)// -->B-Spline knot insertion 这里给大家介绍二个B-Spline曲线很重要的基本算法,knot insertion和knot refinement。Knot insertion就是指增加曲线knot个数,或者说改变曲线的knot vector空间,但是不改变曲线的
2009-09-03 16:05:00
3432
原创 基于B-Spline的刚体运动
<!--WAU_classic(rh3h4dnzpct1)// -->基于B-Spline的刚体运动2009-09-02 之前我有一篇文章介绍了关于Bezier曲线和刚体运动的一些方面,现在再来介绍一下关于B-Spline曲线和刚体运动的一些东西。但不管是基于Bezier曲线的刚体运动还是基于B-Spline曲线的刚体运动,它们的核心都是一样的,都是要用一条
2009-09-02 17:47:00
3969
3
原创 Morphing
<!--WAU_classic(rh3h4dnzpct1)// -->Morphing 这篇文章给大家介绍一下morphing,它是一种变型动画,也是一种关键帧插值动画。在计算机动画中,变型动画用的很多,比如一个动画角色在说话的时候,我们要对它的嘴做一种动画效果,看起来就像是他在说话一样,或者是做一个角色的表情动画,比如笑的时候嘴角是向上的,伤心的时候嘴角是向下
2009-08-18 18:38:00
3790
原创 Volume Visualization with Raycasting(GPU+OPENGL)
<!--WAU_classic(rh3h4dnzpct1)// -->Volume Visualization with Raycasting 前面已经介绍了scalar visualization和vector visualization,现在介绍一下volume visualization,中文里,我们称为体渲染或体可视化。虽然体可视化也是一种scalar可
2009-06-17 14:32:00
4350
原创 Image Based Flow Visualization(IBFV)
<!--WAU_classic(rh3h4dnzpct1)// -->Image Based Flow Visualization IBFV(Image Based Flow Visualization)是利用噪点图(noise image)来模拟向量场运动的一种可视化方法。为了了解IBFV,先来看看它的原理。如下图 从上图中可以看到,在
2009-06-15 19:22:00
7133
2
原创 Scalar Visualization
<!--WAU_classic(rh3h4dnzpct1)// -->Data Visualization -Scalar VisualizationData VisualizationData Visualization(数据可视化)是计算机图形领域中比较前沿的学科。它涉及了很多方面的知识,这篇文章通过一个实际的例子
2009-04-11 22:46:00
3460
1
原创 Introduction to B-Spline Curve
<!--WAU_classic(rh3h4dnzpct1)// -->Introduction to B-Spline Curve BSpline基函数BSpline基函数是由下面的公式定义的: 其中 称为knot,一条BSpline曲线的所有kont组成了一个数组 ,这个数组U称为knot vector。这个公式看起来很复杂,
2009-04-10 20:31:00
5501
5
原创 贝塞尔曲线和基于贝塞尔曲线的刚体运动
<!--WAU_classic(rh3h4dnzpct1)// -->贝塞尔曲线和基于贝塞尔曲线的刚体运动 贝塞尔曲线(Bezier Cruve)历史在计算机图形学中,曲线和曲面是重要的组成部分,其中贝塞尔曲线是目前应用比较广泛的曲线之一。但是在20世纪50年代之前,要在计算机上表现出光滑的曲线是很困难的事。直到1959年,法国雪铁龙汽
2009-03-23 21:35:00
8788
原创 微分方程基础
<!--WAU_classic(on999vsd1llr)// -->微分方程基础1. 初始值问题 微分方程描述了未知数和它的导数之间的关系。解一个微分方程就是要找到一个关系来满足这个方程,有时候也要同时满足一些附加条件。这里主要讨论常微分方程,比如下面的形式。 这里f是已知函数,x是该方程的状态(比如可以表示位移,
2009-02-16 10:46:00
2190
2
原创 向量基础
<!--WAU_classic(on999vsd1llr)// -->向量基础 定义n维向量:一组n维实数。 标记:表示n维向量行向量:列向量: 注意:1. 向量是一个包含大小和方向的量。2. 向量可以用来表示力,速度,位移等等。3. 向量是各类工程问题的关键。 向量和标量的乘法k:常量(标量
2009-01-08 15:24:00
2957
2
原创 Physically Based Modeling: Particle System Dynamics(粒子运动)
<!--WAU_classic(on999vsd1llr)// -->Physically Based Modeling: Particle System Dynamics 2008-11-23 我们身边的所有物体几乎都是由粒子(Particle)所构成的。在计算机动画中,模拟真实的世界时候,不可
2008-12-06 11:47:00
3694
原创 Motion Analysis HTR (分等级模型运动分析)
<!--WAU_classic(on999vsd1llr)// -->Motion Analysis HTR 2008-11-17 HTR(Hierarchical Translation-Rotation)是一种分级的模型动画技术,它是从一种.htr文件中读取模型动画信息,然后采用分级模型动画的方法来处理复杂的模型动画。使用3DMA
2008-11-28 17:07:00
5547
1
光线追踪技术的理论和实践
2010-06-11
OpenGL渲染管线和坐标变换
2010-01-27
Advanced 3D Game Programming with DirectX 8.0
2009-04-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人