OpenGL
Nervermore
我是ias
展开
-
OpenGL BMP文件显示
#include#include#include#include#define FileName"Bliss.bmp"staticGLint ImageWidth;staticGLint ImageHeight;staticGLint PixelLength;staticGLubyte*原创 2012-01-08 19:57:13 · 849 阅读 · 0 评论 -
3dsplay.cpp
/* Copyright (C) 1996-2008 by Jan Eric Kyprianidis All rights reserved. This program is free software: you can redistribute it and/or modify it under the terms of the G转载 2012-03-01 16:38:35 · 1403 阅读 · 0 评论 -
OpenGL总结
1.OpenGL会利用插值算法将3个顶点连成三角形2.OpenGL中的阴暗处理有两种模式:GL_SMOOTH、GL_FLAT。 GL_SMOOTH: OpenGL将根据顶点的颜色,插值生成其他点的颜色,形成颜色变、过渡的效果。 GL_FLAT: 没有颜色渐变和过渡的效果。例如:对三角形单调着色,取最后一个顶点的颜色填充三角形。3.glColor3ub(): 参数原创 2012-03-01 23:00:37 · 1005 阅读 · 0 评论 -
OpenGL MD2模型显示
发文章也慢了。3D果然比2D复杂些。MD2是一系列“帧”组成的动画模型。读取模型的文件包括md2.h,md2.cpp。此外,纹理贴图也被封装成类class Texture,相关文件包括texture.h,texture.lib。md2.cpp代码量有900多行。没必要贴出来。为了读取和显示模型,作者封装了一个类class anmobj。使用的相关函数:md2_readModel 读取模转载 2012-03-01 23:14:55 · 3565 阅读 · 1 评论 -
OpenGL MDL模型显示
我在大二才接触到CS。当时的我不知道计算机图形学,更不知道OPENGL。玩CS,我太差,我更注意CS的开发,VALVE公司。毕业,工作,......直到今天,我才知道CS的模型,即骨骼动画模型MDL。而且OPENGL的课件,已经封装得很好。CS的模型基本都是mdl。所在路径为cstrike/models文件夹。例如匪的人物模型terror.mdl,AK47的模型p_ak47.mdl。MDL转载 2012-03-01 23:15:46 · 2516 阅读 · 0 评论 -
基于lib3ds和OpenGL的3ds文件的读取与显示
3ds文件是3ds Max建模软件的标准输入输出格式,它的应用十分的广泛。各种虚拟现实项目都可使用它作为模型格式,甚至可以在游戏中使用,但是它的文件格式比较复杂而且 没有相关的官方文档,所以对它的读取显示一直是一个问题。笔者通过多年的项目经验总结了一套操作3ds文件的方法,简单的说就是使用lib3ds库对 3ds文件进行解析读取,然后利用OpenGL来显示。一、 模型的读取要绘制模转载 2012-02-29 17:16:24 · 5188 阅读 · 0 评论 -
lib3ds 2.0 example 2
lib3ds 2.0 example 2cheungmine2009-2-14 在上一个例子中,展示了基本的lib3ds2.0的使用方法。在本例中,对上面的代码稍作修改。这样,无论3ds文件是否有相机或灯光,都可以显示了。 思路就是,如果3ds文件没有相机,我们就增加4个相机。如果没有灯光,就增加3个OmniLight。上面的代码参考了文转载 2012-03-01 15:11:54 · 3714 阅读 · 7 评论 -
3D Studio File Format Information (3dsinfo.txt)
by Jochen Wilhelmy a.k.a. digisnap digisnap@cs.tu-berlin.de原创 2012-03-02 09:42:46 · 1652 阅读 · 0 评论 -
Object Files (.obj)
Object files define the geometry and other properties for objects inWavefront's Advanced Visualizer. Object files can also be used totransfer geometric data back and forth between the Advanced Visuali原创 2012-03-02 11:32:02 · 2511 阅读 · 0 评论 -
OpenGL:Tutorials:Basic Bones System
What is a bone systemA bone system - aka skeletal system - is a technique used to create skeletal animations. A skeletal animation consists of a skin mesh and an associated bone structure, so movi转载 2012-03-02 11:42:48 · 5154 阅读 · 0 评论 -
3ds格式(3ds ftk), 还没有采用lib3ds库
这两天写了一个用数据手套驱动3ds手骨骼模型实时运动的程序(使用的3dsftk),发现用这个工具操作3ds模型有些固定的模式和这种格式固有的特点,总结如下:3ds使用小结:一个3ds文件的每一个mesh顶点都从0开始索引,这一点可以从facearray中保存的顶点索引看出来;对3ds的每个指针(比如mesh3ds *)最好都赋初始值NULL,否则可能不会给其非配空间;在原创 2012-03-04 11:42:27 · 1614 阅读 · 0 评论 -
在OpenGL中如何根据空间两点绘制圆柱?
说明:本文来自C3DN(中国3D技术开发社区 http://www.C3DN.net),转载请标明出处:http://www.c3dn.net/forum.php?mod=viewthread&tid=13&extra=page%3D1这几天做项目时需要根据已知的两个空间点A、B绘制圆柱,琢磨了两天,昨晚终于大功告成,贴出来跟大家分享分享,请大家多多指教!如图所示:转载 2012-03-01 22:59:57 · 3727 阅读 · 1 评论 -
OpenGLES/OpenGL 区别&OpenGL ES 1.x/OpenGL ES 2.0 区别
关于OPENGL 1.x与OPENGL ES 1.x的区别早先定义OpenGL ES是OpenGL的嵌入式设备版本,但由于嵌入式设备要求的是高性能,所以一些其它纯追求高性能的设备也开始用这种API方式,比如 SONY PlayStation 3。 OpenGL ES相对OpenGL删减了一切低效能的操作方式,有高性能的决不留低效能的,即只求效能不求兼容性(和苹果的作风类转载 2012-02-28 15:05:35 · 5132 阅读 · 1 评论 -
[OpenGL(C)] - 旋转立体三角形
//新建Win32控制台程序->空程序(Win32 Console Application->An Empty Project)/* glGenLists(i):自动分配没有使用的编号(返回的是编号中最小的一个,如果函数返回零,表示分配失败) glIsList:判断一个编号是否已经被用作显示列表。 创建显示列表: glNewList(list, GL转载 2012-01-07 19:29:23 · 818 阅读 · 0 评论 -
OpenGL纹理读写
#include#include#include#define WindowWidth 400#define WindowHeight400#define WindowTitle "OpenGL纹理测试"/* 函数grab * 抓取窗口中的像素 * 假设窗口宽度为WindowWidth,高度为WindowHeight */转载 2012-01-20 13:25:55 · 2161 阅读 · 0 评论 -
opengl旋转方块
#include#include#include#include#include#define ColoredVertex(c,v) do{ glColor3fv(c); glVertex3fv(v); }while(0)GLfloat angle =0.0f;#define FileName"Bliss.bmp"转载 2012-01-20 13:28:27 · 1075 阅读 · 1 评论 -
OpenGL像素处理流程
红宝书上的OpenGL像素处理流程简图,内涵丰富。转载 2012-01-20 06:55:28 · 629 阅读 · 0 评论 -
OpenGL光照的一点理解
以前总是避开光照着部分不看,虽然可以写程序,但是有一点总是不明白,所以那次数据结构课程设计的光照虽然用了,但效果很烂。 今天重看了一遍,完全是为了彻底搞明白这个小问题。 OpenGL光照分4种以模拟真实的世界:环境光,散射光,反射光,放射光。 在OpenGL里常需要设置光照的属性( 函数glLight*() ),还要设置物体的材质( 函转载 2012-01-20 06:55:55 · 606 阅读 · 0 评论 -
OBJ2OPENGL Convert OBJ file to OpenGL format
OBJ2OPENGL is a PERL script that reads an OBJ file describing a 3D object, and writes a C include file describing the object in a form suitable for use with Open GL.To see how to use the include fil转载 2012-02-28 09:55:31 · 1047 阅读 · 0 评论 -
OpenGL光源光照使用范例
1. 光照模型 环境光——经过多次反射而来的光称为环境光,无法确定其最初的方向,但当特定的光源关闭后,它们将消失.全局环境光——每个光源都能对场景提供环境光。此外,还有一个环境光,它不来自任何特定的光源,称之为全局环境光。这也就是为什么我们不加任何自定义光源,也能看见绘制的物体的原因。散射光——来自同一方向,照射到物体表面后,将沿各个方向均匀反射,因此,无论从哪个方向观转载 2012-02-27 14:40:52 · 3280 阅读 · 0 评论 -
Package-Pipeline
原创 2012-02-27 16:58:40 · 772 阅读 · 0 评论 -
基于OpenGL动画设计研究与实现
摘 要:本文从Windows及C语言编程基础出发,重点介绍了如何使用OpenGL来实现动画的原理与方法,并通过相关实例进行了验证。 关 键 词:OpenGL,API, 双缓冲技术,渲染,计时器 1.引 言 OpenGL是一种相对新的工业标准,它的前身是由SGI公司为其图形工作站开发的IRIS GL,是一个工业标准的三维计算机图形软件接口。 OpenGL不转载 2012-02-29 14:34:03 · 1086 阅读 · 0 评论 -
OpenGL ES2.0 的三种变量类型(uniform,attribute和varying)
最近研究了下OpenGL ES2.0的programing guide。看到shader里面声明的变量一般有三种类型,特地为此做个小的总结。 1.uniform变量uniform变量是外部application程序传递给(vertex和fragment)shader的变量。因此它是application通过函数glUniform**()函数赋值的。在(vertex和fragment)s转载 2015-02-26 11:50:23 · 740 阅读 · 0 评论