自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

GAIA LABORATORY FOR GRAPHICS

Department of Game and Multimedia Engineering

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

原创 光线追踪技术的理论和实践(面向对象)

光线追踪技术的理论和实践(面向对象) Theory & Practice of Raytracing(Object Oriented)这篇文章将介绍光线追踪技术。在计算机图形领域中,这种技术被普遍应用于生成高质量的照片级图像。在为一个场景计算光照的时候,通过固定...

2010-06-11 15:26:00 21078 44

原创 计算机图形学基础-张赐-专题视频课程

该课程是计算机图形领域的基础的课程,包含了计算机图形学的数学原理,例如在计算机图形学中的重要坐的标变换的原理。该课程也是游戏开发、VR/AR等开发的基础课程。在该课程中除了讲授数学原理,还包括了C++实践,实现3D数学类。该课程的主要内容包括:向量、向量空间、矩阵、矩阵空间、仿射空间、齐次坐标系、仿射变换、刚体变换、四元数等。...

2017-09-29 09:00:08 1050 1

原创 在UE4中模拟NURBS曲线和曲面

最近在虚幻引擎4的官方商场上线了c++蓝图工程项目。该工程利用几何算法对NURBS曲线和曲面进行了模拟。包括knot插入、删除、细化,……曲线和曲面,所有这些曲线和表面都可以实时编辑。实现的算法都参考了《The NURBS Book》这本书。该项目工程包含了NURBS的基本算法的c++代码,想学习的朋友不容错过!虚幻官方商城地址:https://www.unrealengine.c

2017-07-27 16:52:06 4026 1

原创 利用OpenGL点精灵实现云模拟(Cloud Simulation Using OpenGL PointSprite)

这篇教程介绍一种利用OpenGL点精灵,也就是PointSprite来实现云的模拟。在网上找了一些资料和论文,都是模拟真实的云和光照,且都比较复杂。后来看到一篇文章,介绍了一篇相对简单但效果比较好的方法。首先建立好云的轮廓模型,可以使用3DMax或其他的建模工具,然后创建该模型的包围体,将包围体中属于云的部分抽取出来,最后对抽取出来的部分进行三角化,然后贴图,最后加上光照。受到该方法的启发,这里我介绍一种更为简单的方法来实现对云的模拟。和从文件读取云模型相比,用代码生成云的轮廓要快的多。云的轮廓我们可以用球

2010-08-29 14:40:00 9629 10

原创 B-spline曲面的法线贴图

[教学视频]计算机图形学基础  在线学习教程    *原创文章,转载请注明出处*  B-spline曲面的法线贴图Normal Mapping on B-spline Surface 在openGL Cg系列教程中,有一篇文章详细的介绍了法线贴图的原理和实现。这种法线贴图的实现是基于平面的,也就是最常看到的在四边形上的法线贴图。如果想在一些几何体上贴图,比如to...

2010-06-15 16:53:00 8764 14

原创 OpenGL Vertex Buffer Objects(VBOs)

*原创文章转载请注明出处* OpenGL Vertex Buffer Objects(VBOs) Vertex Buffer Objects(VBOs)是一组保存在显存中的数据,这些数据可以是顶点,顶点颜色,顶点法线,顶点索引或贴图坐标等等。由于这些数据都是保存在显存中的,而且可以随时修改数据或整块替换数据,这样就极大的提高了显卡的工作效率和渲染的速度。VBO的概念类似于D

2010-05-20 12:53:00 13929 13

原创 openGL CG 系列教程07 – Toon Shader

*原创文章,转载请注明出处*      openGL CG 系列教程07 – Toon Shader 这篇教程将介绍一种卡通渲染(Toon Shader)的方法,卡通渲染属于non photorealistic rendering或简称NPR中的一种。卡通渲染一个物体看起来的效果就像卡通绘画一般,这里介绍一种简单的渲染卡通效果的方法。和一般光照渲染不同的是,卡通效果渲染的物体像

2010-05-15 22:04:00 7212 2

原创 openGL CG 系列教程06 – Normal Mapping (法线贴图)

*原创文章,转载请注明出处* openGL CG 系列教程06 – Normal Mapping (法线贴图) Normal Mapping(法线贴图),不论是在游戏开发还是其他计算机图形开发中都是使用很广泛的技术。如果一个物体的表面粗糙不平,物体顶点的法线也就朝向各个不同的方向,所以物体看起凹凸不平。要表现这样的物体,当然可以使用相当多的包含不同法线的顶点数据,这样做

2010-05-13 19:45:00 11460 1

原创 openGL CG 系列教程5 – Environment Mapping ( 环境贴图 )

*原创教程,转载请注明出处*openGL CG 系列教程5 – Environment Mapping (环境贴图) 利用物体材质specular属性来模拟高反光的物体是不够的。高反光的物体通常可以在表面反射出周围的物体,这样的效果需要通过环境贴图来实现。这篇教程将介绍如何利用Cg进行环境贴图。环境反射的原理很简单,一个光滑的物体表面可以根据我们观察的不同角度反

2010-05-08 13:38:00 11017 3

原创 openGL CG 系列教程4 - Lighting + Texture

*原创文章,转载请注明出处*openGL CG 系列教程04 – Lighting + Texture 前几个教程详细的讲解了使用可编程渲染管线实现如何实现光照。如果我们要渲染的模型是带有纹理,要想带有纹理的模型也应用于光照又该怎样实现呢?有的同学可能知道,在openGL的固定管线也可以设置TextureEnvMode模式为GL_MODULATE就可以实现光照和纹理颜色的混合。下面

2010-05-05 19:38:00 4885 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 4878 1

原创 openGL CG 系列教程2 - Vertex Lighting

*原创文章,转载请注明出处*openGL CG 系列教程2vertex lighting 之前的一篇教程HelloCG介绍了Cg的一些最基本的东西。这篇教程将介绍利用可编程渲染管线来实现光照。光照模型将采用广泛应用的phong模型,虽然这种模型在openGL的固定管线中已经实现了,但是学习该光照模型可以更加清楚的了解可编程渲染管线的流程。 首先要实现phong光照模

2010-04-28 22:54:00 6508 5

原创 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 10301 13

原创 openGL CG 系列教程

openGL CG 系列教程                         教程1  HelloCG            

2010-04-28 19:23:00 5049 4

原创 在openGL中实现RayPicking

*原创文章,转载请注明出处* 在openGL中实现RayPicking 看过D3D入门龙书的朋友肯定知道,第十五章讲picking的时候,是利用拾取射线和包围球的的交叉测试来完成拾取的。但是在OpenGL中,我们知道是利用OpenGL渲染管线的特点,在拾取模式中采用拾取矩阵,然后检查selectbuffer的内容来判断拾取的。这两种方法各有各的好处。在进行OpenGl编

2010-03-19 16:44:00 7487 11

原创 OpenGL图形管线和坐标变换

*原创文章,转载请注明出处*OpenGL图形管线和坐标变换OpenGL Rendering Pipeline & Coordinate Transformation  1.    引言 学习计算机图形学首先要搞清楚计算机图形渲染管线。当今两大图形API,OpenGL和Direct3D都有自己的渲染管线。但是对于刚刚接触计算机图形学的同学来说,“图形管

2010-02-21 11:18:00 11373 10

原创 利用OpenGL进行模型表现

 利用OpenGL进行模型表现 这篇文章介绍一下用OpenGL来表现模型对象。比如用3DMAX等工具做好一个模型后,我们希望能够在自己的程序中使用它。一般使用这些工具的导出功能导出特定的文件,然后读取其中我们感兴趣的部分,再把这些感兴趣的数据在我们的程序中组织好就可以了。利用OpenGL来表现静态模型是很简单的。 这里为了简单起见,模型对象文件为txt文本,只包含了模型的顶点个数,

2009-12-23 10:19:00 5644 5

原创 深入理解OpenGL拾取模式(OpenGL Picking)

深入理解OpenGL拾取模式(OpenGL Picking)    在用OpenGL进行图形编程的时候,通常要用鼠标进行交互操作,比如用鼠标点选择画面中的物体,我们称之为拾取(Picking),在网上看了很多OpenGL拾取的文章,但大多是只是介绍在OpenGL中如何拾取,如何利用OpenGL提供的一系列函数来完成拾取,最多再简单介绍下OpenGL的名字栈(Name stack

2009-10-30 20:35:00 26472 51

原创 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 4421 8

原创 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 3251

原创 基于B-Spline的刚体运动

<!--WAU_classic(rh3h4dnzpct1)// -->基于B-Spline的刚体运动2009-09-02 之前我有一篇文章介绍了关于Bezier曲线和刚体运动的一些方面,现在再来介绍一下关于B-Spline曲线和刚体运动的一些东西。但不管是基于Bezier曲线的刚体运动还是基于B-Spline曲线的刚体运动,它们的核心都是一样的,都是要用一条

2009-09-02 17:47:00 3867 2

原创 Morphing

<!--WAU_classic(rh3h4dnzpct1)// -->Morphing 这篇文章给大家介绍一下morphing,它是一种变型动画,也是一种关键帧插值动画。在计算机动画中,变型动画用的很多,比如一个动画角色在说话的时候,我们要对它的嘴做一种动画效果,看起来就像是他在说话一样,或者是做一个角色的表情动画,比如笑的时候嘴角是向上的,伤心的时候嘴角是向下

2009-08-18 18:38:00 3668 1

原创 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 4227 4

原创 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 7015 2

原创 Scalar Visualization

<!--WAU_classic(rh3h4dnzpct1)// -->Data Visualization                   -Scalar VisualizationData VisualizationData Visualization(数据可视化)是计算机图形领域中比较前沿的学科。它涉及了很多方面的知识,这篇文章通过一个实际的例子

2009-04-11 22:46:00 3348 2

原创 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 5321 5

原创 贝塞尔曲线和基于贝塞尔曲线的刚体运动

<!--WAU_classic(rh3h4dnzpct1)// -->贝塞尔曲线和基于贝塞尔曲线的刚体运动    贝塞尔曲线(Bezier Cruve)历史在计算机图形学中,曲线和曲面是重要的组成部分,其中贝塞尔曲线是目前应用比较广泛的曲线之一。但是在20世纪50年代之前,要在计算机上表现出光滑的曲线是很困难的事。直到1959年,法国雪铁龙汽

2009-03-23 21:35:00 8661 2

原创 微分方程基础

<!--WAU_classic(on999vsd1llr)// -->微分方程基础1. 初始值问题     微分方程描述了未知数和它的导数之间的关系。解一个微分方程就是要找到一个关系来满足这个方程,有时候也要同时满足一些附加条件。这里主要讨论常微分方程,比如下面的形式。      这里f是已知函数,x是该方程的状态(比如可以表示位移,

2009-02-16 10:46:00 2097 2

原创 向量基础

<!--WAU_classic(on999vsd1llr)// -->向量基础 定义n维向量:一组n维实数。 标记:表示n维向量行向量:列向量:  注意:1. 向量是一个包含大小和方向的量。2. 向量可以用来表示力,速度,位移等等。3. 向量是各类工程问题的关键。 向量和标量的乘法k:常量(标量

2009-01-08 15:24:00 2801 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 3593 1

原创 Motion Analysis HTR (分等级模型运动分析)

<!--WAU_classic(on999vsd1llr)// -->Motion Analysis HTR 2008-11-17         HTR(Hierarchical Translation-Rotation)是一种分级的模型动画技术,它是从一种.htr文件中读取模型动画信息,然后采用分级模型动画的方法来处理复杂的模型动画。使用3DMA

2008-11-28 17:07:00 5353 2

OpenGL点精灵云模拟

这篇教程介绍一种利用OpenGL点精灵,也就是PointSprite来实现云的模拟。包括PFD教程和源代码

2010-08-29

光线追踪技术的理论和实践

这篇文章将介绍光线追踪技术。在计算机图形领域中,这种技术被普遍应用于生成高质量的照片级图像。在为一个场景计算光照的时候,通过固定图形渲染管线可以计算phong光照模型,由于该模型的特征,使得渲染的物体看起来有塑料的质感。如果要渲染一个有金属质感且能反射周围环境的物体,phong模型就无能为力了。和固定渲染管线相比,可编程图形渲染管线的力能要强的多,虽然可以实现很多逼真的光照效果,比如利用环境贴图来现实物体对环境的反射效果。但是这种环境反射只能反射出已经保存在Cube Map中的图像。在真实世界中,如果一个能反射周围环境的物体周围还有很多其他物体,它们就会相互反射。一般的环境贴图技术达不到这样的效果,于是在渲染照片级画面的时候,就要用到光线追踪的技术。文本还将利用c++面向对象的方法来实现光线追踪。

2010-06-11

OpenGL渲染管线和坐标变换

看到论坛上很多同学问坐标转换的问题,什么屏幕坐标转世界坐标等等,看来很多同学都没有弄清楚图形管线是怎么回事。 一旦弄清楚了渲染管线,有关于这类的问题都可以迎刃而解。于是我用了两天的时间来完成这个OpenGL的教程,绝对的原创。 希望这篇教程能够给大家帮助~

2010-01-27

opengl es load 3ds

用opengl es 读取 3ds文件的代码

2009-08-16

Advanced 3D Game Programming with DirectX 8.0

A wise man somewhere, somehow, at some point in history, may have said the best way to start a book is with an anecdote. Never to question the words of a wise man who may or may not have existed, here we go.

2009-04-21

Introduction to 3D Game Programming with DirectX 9.0

俗称“红龙”的经典d3d入门书籍。 该版本为高清pdf英文版

2008-12-10

C++入门经典(3rd) 中文版

地球人都知道,c++入门经典书籍 pdf格式

2008-09-13

空空如也

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

TA关注的人

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