自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

痞子龙3D编程

学无止境,三人行必有我师,把这几年收藏的文章都晒出来,大家共享吧!向原创者致敬!察而知不足,严谨,求真,务实;网络收藏夹

  • 博客(141)
  • 资源 (22)
  • 收藏
  • 关注

转载 OGRE框选制作

框选制作首先,一如既往给出框架程序(运行该框架程序看到一个机器人的矩阵): #include    #include    #include "ExampleApplication.h"   class SelectionRectangle : public ManualObject   {   public:       SelectionRectangle(const String &name)           : ManualObject(name)       {       }       v

2011-04-29 15:01:00 2073

转载 OGRE关于 Demo_Crowd 例子的分析

<br />关键词: InstancedGeometry 着色程序 动画<br /><br />1)本例的主要函数在CrowdListener::createInstanceGeom<br />    可以在其中学习如何使用 InstancedGeometry 几何对象, 可用于创建大量实体的几何体<br />2)函数 CrowdListener::buildCrowdMaterial 则可以学习 如何修改一个材质中的子材质, 并给子材质的每个通道增加顶点着色程序<br />3)另外本例可以了解如何控制大量

2011-04-29 13:22:00 1751

转载 OGRE关于 Demo_FacialAnimation 例子的分析

<br />G主要是关于姿势动画的学习, 注意本例的姿势动画只用了一个帧<br /><br />1. 注意CEGUI窗口的处理函数 参数必须为 const CEGUI::EventArgs& e, 否则会出现错误.<br />2. CEGUI窗口的EventSelectStateChanged事件, EventScrollPositionChanged事件等等, 都有相关的处理事件函数<br />3. 使用帧监听器的鼠标缓冲来拦截鼠标事件, 实现对CEGUI窗口的点击和处理<br />4. 重点函数为 ha

2011-04-29 13:21:00 1793

转载 OGRE关于Demo_CubeMapping 的学习

<br />目的: 显示 立方体映射的特色(cube mapping), 还可以设置物体镜面映射出周围的景色<br />主要有两个类 CubeMapApplication 和 CubeMapListener<br /><br />* 该例中对象的周围景象反射是通过设置对象的主材质material实现的, 在脚本中设置了env_map cubic_reflect和cubic_texture属性<br />    该对象的子mesh则是复制原始mesh中的子mesh, 材质也是复制其子mesh的材质<br />

2011-04-29 13:21:00 2271

转载 OGRE关于 Demo_Instancing 例子的分析

关于 Demo_Instancing 例子的分析<br /><br />1. 本例建立框架模板的时候, 使用release版本编译运行一番, 发现其所用的文件ogre.cfg, plugins.cfg, resources.cfg与debug的版本不同, 链接库也不同.<br />    空白Ogre程序在release版本下FPS是1050左右, 但是在debug版本下只有90. 差距太大了啊<br />2. 天空盒使用的材质 是立体图 cubic_texture morning.jpg separate

2011-04-29 13:20:00 1967

转载 OGRE关于 Demo_Ocean 例子的分析

关于 Demo_Ocean 例子的分析<br />重要总结:<br />1. 该例主要类不再继承自ExampleApplication和ExampleFrameListener, 重写驱动类和监听类<br />2. 如何创建OIS的输入系统<br />    1) 创建OIS::ParamList pl;<br />    2) 调用程序渲染窗口的 getCustomAttribute方法得到窗口WINDOW属性所代表的窗口句柄<br />    3) 将该窗口句柄插入pl中<br />    4) 以pl

2011-04-29 13:19:00 2197

转载 ShadowMap

ShadowMap1、原理<br />阴影实时渲染是计算机图形学的高级技术。它能提高场景的真实感。两种通用的阴影渲染技术分别是地图阴影(shadow map)和体积阴影(shadow volumes)。地图阴影的优势在于效率很高,因为地图阴影只需要渲染场景两次(一般来说)。并且不需要进行几何处理和产生额外的mesh。无论多复杂的场景,使用地图阴影总能保持很好的性能。<br />地图阴影的概念很直观。首先,从光线的方向把整个场景渲染到一张纹理上。通过特定的顶点和像素渲染器渲染得到的这张纹理就被叫做地图阴影(s

2011-04-29 13:17:00 6633 2

转载 OGRE关于 Demo_DeferedShading 例子的分析

总结:<br />1. 可以学会克隆一个实体的方法<br />2. 可以根据雅典娜的材质得知顶点着色器的使用, 在事先构建的切线数据(buildTangentVectors)放置于 着色程序的属性 tangent中, 着色程序就可以直接使用该属性<br />3. 学会如何创建一个曲面, 用MovablePlane.<br />4. 实体调用setMeshLodBias设置LOD, 数值越小则越清晰.<br />5. 实现如何创建一个只能拥有一个实例的类 class className : public Og

2011-04-29 13:16:00 3148

转载 简单的继承SimpleRenderable,实现画一个平面

头文件:<br /><br />#ifndef __LINE3D_H__<br />#define __LINE3D_H__<br /><br />#include "Ogre.h"<br />#include <vector><br /><br />using namespace Ogre;<br />using namespace std;<br /><br />#define POSITION_BINDING 0<br />#define TEXCOORD_BINDING 1<br /><br />c

2011-04-28 16:46:00 2028

转载 用OGRE装载和渲染WOW模型

<br />目前只支持一个Mesh,(WOW的 model 里有多个 ModelRenderPass每个 pass代表一个子物体,整个模型只有一套顶点数据,但每个子物体有自己的贴图信息和顶点索引)<br /> <br />还没添加动画,粒子的支持….<br /> <br />一创建支持MPQ的FileSystem<br />class MPQArchive : public Ogre::Archive<br />一个MPQArchive代表一个 .mpq文件<br /> <br />class _OgreP

2011-04-28 16:45:00 2159

转载 让VS2005编辑器支持着色器语法高亮 (其他高亮如lua脚本同理)

1. 创建或编辑usertype.dat文件(此文件在VS安装目录下的Common7/IDE下面,比如我的就在D:/Program Files/Microsoft Visual Studio 8/Common7/IDE/usertype.dat),添加如下的关键字列表,每个单词占一行,如果你想添加你自己的关键字,也可以按照这种方式添加在usertype.dat文件中<br />2. 在vs中打开Tools->Options...->TextEditor->File Extension<br />填写你想使用

2011-04-27 15:42:00 2503

转载 液晶显示器刷新率

<br />在论坛看到不少关于液晶显示器的说法。<br />  因为xorg本身对显示器的智能支持度不够,引起过很多问题,还出现了部分用户烧毁液晶显示器的情况。<br />  在这些问题面前,有相当多的人传播了错误的知识:<br />  液晶显示器没有刷新率,液晶显示器是无所谓刷新率的等等。<br />  我这里还是先给结论:首先,液晶显示器是有刷新率的,其次,刷新率(或响应时间)对液晶显示器是一个重要的性能指标。<br />  现在我来详细地阐述一下有关理论。<br />  首先提第一个概念FPS,它的意

2011-04-27 11:18:00 4332

转载 垂直同步

<br />垂直和水平是CRT中两个基本的同步信号,水平同步信号决定了CRT画出一条横越屏幕线的时间,垂直同步信号决定了CRT从屏幕顶部画到底部,再返回原始位置的时间,而恰恰是垂直同步代表着CRT显示器的刷新率水平。<br /> <br />工作原理  显示器上的所有图像都是一线一线的扫描上去的,无论是隔行扫描还是逐行扫描,显示器,都有2种同步参数——水平同步和垂直同步。 关键部分<br />  为什么垂直同步的开关会影响CS中的fps值?道理一点都不复杂。首先我们平时运行操作系统一般屏幕刷新率是多少?大概

2011-04-27 11:03:00 2488

转载 理解计算机3D图形学中的坐标系变换

<br />     要谈坐标系变换,那么坐标系有哪些呢?依次有:物体坐标系,世界坐标系,相机坐标系,投影坐标系以及屏幕坐标系.我要讨论的就是这些坐标系间的转换。<br />     这些坐标系不是凭空而来,他们都是为了完成计算机3D图形学最最最基本的目标而出现.<br />      计算机3D图形学最最最基本的目标就是:将构建好的3D物体显示在2D屏幕坐标上.<br />      初看好像就是将最初的物体坐标系转换到屏幕坐标系就可以了呀,为什么多出了世界坐标系,相机坐标系,投影坐标 系。这是因为:在一

2011-04-27 09:33:00 8167 1

原创 pitch yaw roll 最直观的解释

<br />pitch():将物体绕X轴旋转(localRotationX)<br /><br />yaw():将物体绕Y轴旋转(localRotationY)<br /><br />roll():将物体绕Z轴旋转(localRotationZ)<br />

2011-04-27 09:28:00 11360 2

转载 ogre 模型读入 和 产生 阴影

<br />#include "ExampleApplication.h"<br />class MyApplication : public ExampleApplication<br />{<br />public:<br /> MyApplication() {<br /> }<br /> ~MyApplication() {  }<br />protected:<br /> // Just override the mandatory create scene method<br />  virtu

2011-04-26 18:36:00 1772

转载 OGRE scene_blend

这种融合方式用于场景中当前通道。textureunit中的纹理融合运算是用于纹理层的融合,而这个融合是把这个通道的输出作为一个整体链接到渲染目标的当前内容。因此,这种融合支持物体透明度的设置和其他一些特性。它有两种定义形式,一种用于预定义融合类型,一种支持手动调节源和目标的要素。形式1: scene_blend 例子:  scene_blend add下面以简单形式列举常用的融合参数:add           渲染输出的颜色加到场景中。相当于scene_blend one onemodulate     

2011-04-26 09:27:00 2987

转载 Speedtree 剔除优化原理

MotivationThis section outlines a culling algorithm specifically designed for rendering very large forests and has been tested on forests as large as 10,000,000 trees covering 1,600 square miles.  A

2011-04-25 16:49:00 3466 1

转载 OGRE顶点程序与片断程序的声明

顶点程序与片断程序的声明为了在你的材质中使用顶点或者片断程序(参看:3.1.9 在渲染通路中使用顶点程序和片断程序),首先你必须定义它们。一个程序定义可以被多个材质使用,唯一的前提条件是必须在引用它之前在材质的渲染通路部分中定义。 程序定义可以被嵌套在.material脚本内(在这种情况下,它必须位于任何对它的引用之前,即必须先定义后引用)或者如果你希望跨多个.material脚本使用同一个程序,你可以在一个外部的.program脚本中定义。程序定义的方式与在.program或者.material脚本中一样

2011-04-25 16:44:00 3389

转载 OGRE在渲染通路中使用顶点程序和片断程序

3.1.9 在渲染通路中使用顶点程序和片断程序<br />在材质脚本的pass段中,你可以引用.program脚本中定义的顶点程序和/或片断程序(详见3.1.4 顶点程序与片断程序的声明)。这些程序与使用他们的渲染通路分开定义,是因为他们很可能在多个分开的材质间被重复使用,更可能跨越多个不同的.material材质脚本,所以这种方法可以让你只定义一次而多次使用。 <br />如前文所述命名程序一样,你也可以向它提供参数。下面是一个简单的例子: vertex_program_ref myVertexProgr

2011-04-25 16:43:00 3254

转载 VC调试的时候 “没有调试信息,未加载符号”解决方法

<br />其实我重新生成项目就解决了这个问题,不过还是贴一篇挺详细的调试入门在这,怕以后有用<br />http://www.vckbase.com/document/viewdoc/?id=924<br />概述<br />调试是一个程序员最基本的技能,其重要性甚至超过学习一门语言。不会调试的程序员就意味着他即使会一门语言,却不能编制出任何好的软件。<br />这里我简要的根据自己的经验列出调试中比较常用的技巧,希望对大家有用。<br />本文约定,在选择菜单时,通过/表示分级菜单,例如File/Ope

2011-04-25 16:42:00 3600 1

转载 Vertex Shader 结构

我们将通过下面这个Vertex Shader结构的图形模型来进入Vertex Shader的世界:在Vertex Shader中的所有数据都被表现为128-bit的四元数(4 x 32-bit):因为使用一个指令但处理一组数据,一个Vertex Shader的硬件可以被看成是一个典型的SMID(单指令多数据)处理器。Vertex Shader使用的这种数据格式非常的

2011-04-24 11:35:00 3524

转载 Shader学习心得

以下的教程由乌龟和毛驴的技术小屋原创,转载请注明原始文章出处,并保留这段话,请勿侵权.  1.1 序言  以前一直觉得,学习shader最好是在Visual Studio的环境下进行学习,因为这样不仅能够学到DirectX和C++的一些使用方法,而且对于Shader在实际应用时也有好处.结果今天就碰得灰头土脸的.  1.2 碰壁过程  下面是我的程序段:

2011-04-24 11:29:00 3269

转载 你所不知道得Ogre

<br />首先说明,这个标题只是炒作,可能下面所有的观点看官们早已了然于胸。 <br /> <br />Ogre研究的人太多了,在中国更是这样,但很多人都仍然认为Ogre只不过是一个普通的图形引擎而已,并且主要研究的也是Ogre作为普通引擎的部分。<br />但Ogre有自己的特点,不知道大家都注意了没有,反正我是没有注意到,最近看到了一本国外的著作才侥幸的到这些知识。<br />Ogre老大是做软件工程出身,似乎他很讨厌这个工作,但是确实带来了Ogre设计上的特点。<br />首先是场景图的管理,一般而

2011-04-24 11:21:00 1938

转载 将Shader嵌入Ogre(固定渲染管线到可编程渲染管线)

<br />引言:一般的,ogre是使用固定渲染管线,嵌入可编程管线,可借助GPU,提供更多更丰富的效果。<br />//-----------------使用脚本加入shader(.material或者.programe使用.hlsl etc)----------<br />1、声明(不是写shader程序)<br />      这儿声明的意思:不是写Shader程序(这个着色程序一般在.hlsl/.glsl/.cg后缀的文件里面),而是用于设置ogre与Shaer的桥梁,内容就是shader文件源和一

2011-04-24 11:15:00 3566

转载 关于speedtree的spt文件和stf文件

用场景来分析的话,一个场景是.stf文件(Speed Tree Forest).该文件描述了每棵树的相关属性。而一棵树是通过一个.spt(Speed Tree)文件来描述的.用文本编辑器打开,就能看到里面记录了该树的所有信息。而该插件为此开发了配套了树木编辑器材。使用该编辑器,打开.spt文件之后,就可以对该树进行浏览以及编辑。 What is .spt and how to open .spt file.spt, namely SpeedTree Data file, is a Tree Data fil

2011-04-23 18:25:00 6602

转载 Linux2.6.19.x内核编译配置选项详解

转载于:http://lamp.linux.gov.cn/Linux/kernel_options.html作者:金步国Code maturity level options代码成熟度选项Prompt for development and/or incomplete code/drivers 显示尚在开发中或尚未完成的代码与驱动.除非你是测试人员或者开发者,否则请勿选择General setup常规设置Local version - append to kernel release 在内核版本后面加上自定

2011-04-23 17:11:00 4409

转载 VC++编译选项详解

优化-[]================================================================================[]/O1 最小化空间 minimize space /Op[-] 改善浮点数一致性 improve floating-pt consistency /O2 最大化速度 maximize speed /Os 优

2011-04-23 17:07:00 2232

转载 Ogre手动加载骨骼动画

<br /><br />如果自己设置骨骼/mesh目录,还要手动修改resources.cfg文件,将骨骼/mesh目录添加进去,否则程序会崩溃01///初始化骨骼动画参数 02Animation::setDefaultInterpolationMode(Animation::IM_LINEAR); 03Animation::setDefaultRotationInterpolationMode(Animation::RIM_LINEAR);   04  05///得到实体 06Ogre::Entity*

2011-04-22 14:56:00 2019

转载 Ogre手动绘制模型以及添加材质

<br />1.用Ogre来绘制一个立方体ManualObject* cube;cube = mSceneMgr->createManualObject("cube");cube->begin("cubeMaterial"); // 顶点 cube->position( -100, -100, -100); //0 cube->colour(0.0, 0.0, 0.0); cube->position( 100, -100, -100); //1

2011-04-22 14:54:00 3434

转载 Ogre的官僚主义批判

<br />Ogre的Manager真是多啊,就象个官僚公司,干事的没几个,一堆的Manager,个个丫还都是Singleton.说自己是Singleton却又public构造函数,让人来new它.在第1次被new的时候,偷偷地将this赋给静态成员ms_Singleton,第2次new它就要assert喊冤了,当然这都是叫Singleton的模板基类的那个构造函数干的(典型的小人行径,见不得光).Manager一多,本来不复杂的事,也变得复杂了.<br />1.LogManager<br />a.全局单体

2011-04-22 14:53:00 2498

转载 Ogre的WeaponTrail (刀光)

<br />就是刀光拖尾效果,这个挺有意思,Ogre竟然单写了一个类来实现这个功能。名字叫做RibbonTrail。<br />不过这个类似乎并不太好用,实现的效果是从手握武器的位置沿相对衬的两个方向延伸出片,这样的话,如果手里是把剑,那么效果就不对了。如果手里的武器是长枪,因为手握得位置也不是正中间,所以也不对。。。。<br />  于是又有人写了一个WeaponTrial类来解决这个问题。但是他没有处理缩放问题,所以在连接点从父节点带来的缩放矩阵影响下,刀光的宽度就会有问题,除非你的人物的骨骼完全没有缩

2011-04-22 14:48:00 2550 1

转载 从零创建最简单的 ogre 程序

一般的 ogre 教程貌似都是从已有的例子框架开始创建 ogre 程序的,这篇文章教你从零开始,创建一个能显示一条龙的 Ogre 程序,这个程序只有最少的代码,没有其他功能,方便你理解 ogre 的一些基本概念。开始一个新的 Win32 程序,你可以删除所有代码,只需要保留 WinMain 的声明。(让我们从零开始)在 stdafx.h 里添加头文件包以及 lib 文件引用: #include #pragma comment( lib, "OgreMain.lib" ) 准备工作完成,让我们开始改造 Wi

2011-04-21 13:22:00 1926 2

转载 运行时库

<br /> 在计算机程序设计领域,运行时库是一种被编译器用来实现编程语言内置函数,以提供该语言程序运行时(执行)支持的一种特殊的计算机程序库。这种库一般包括基本的输入输出或是内存管理等支持。 <br />  运行时库由编译器决定,以面向编程语言,提供其最基本的执行时需要。比如Visual Basic需要复杂的运行时库支持而C的运行时库则相对简单。 <br />  当然这还是由编译器厂商决定的。运行时库中的函数可能对程序员透明,也可能不透明。这也是由编译器厂商忖度语言执行环境的需求而决定的。 <br /> 

2011-04-21 09:38:00 1080

转载 Visual C++中的C运行时库浅析

1.概论  运行时库是程序在运行时所需要的库文件,通常运行时库是以LIB或DLL形式提供的。C运行时库诞生于20世纪70年代,当时的程序世界还很单纯,应用程序都是单线程的,多任务或多线程机制在此时还属于新观念。所以这个时期的C运行时库都是单线程的。  随着操作系统多线程技术的发展,最初的C运行时库无法满足程序的需求,出现了严重的问题。C运行时库使用了多个全局变量(例如errno

2011-04-21 09:32:00 1403

转载 errno的启示

<br />一、errno的由来<br />    在C编程中,errno是个不可缺少的变量,特别是在网络编程中。如果你没有用过errno,那只能说明你的程序不够健壮。当然,如果你是WIN32平台的GetLastError(),效果也是一样的。<br />    为什么会使用errno呢?个人认为,这是系统库设计中的一个无奈之举,他更多的是个技巧,而不是架构上的需要。我们观察下函数结构,可以发现,函数的参数返回值只有一个,这个返回值一般可以携带错误信息,比如负数表示错误,而正数表述正确的返回值,比如recv

2011-04-21 09:29:00 1413

转载 speed tree技术分析

  两年前第一次下载speed tree demo运行时,立刻被精美的画面所震撼,场景中大片的树木尤其吸引我的眼球,speed tree使用何种技术来渲染大范围的植物一直令我不解。因为在很多游戏中对树木的渲染都可以很明显地看到多边形的痕迹,而在speed tree中你几乎看不到任何破绽,繁茂的树叶、精确的光照、shadow、self-shadow,这些元素构造起了一个完美的树木。   直到前几个月无意中玩完美世界时发现它使用了speed tree来渲染树木,由于洪恩丑陋的美工得以使我发现了其中的端倪。我立刻

2011-04-20 10:13:00 4162 1

转载 Next-Generation SpeedTree Rendering 下一代SpeedTree渲染

  【译】《GPU GEMS 3》----Next-Generation SpeedTree Rendering 翻译[1] 收藏<br />      最近在研究树木的渲染,看了一些相关的技术说明,几乎都是老外写的,再次为中国游戏产业的前景感到担忧。看了几天的英文,索性也把其中的重要部分翻译了出来,在这里与大家共享,先贴出《GPU GEMS 3》第4章的翻译,第一次写翻译,不免有错漏的地方,欢迎大家指出。如需转载,请先与本人联系。name:LeYond ,qq:413952706<br />第四章 下一代

2011-04-18 16:34:00 4334 1

转载 SpeedTree学习笔记

最近拿到SpeedTree资料,开始学习,并用到项目里去.1.  该插件的特点:api无关。它本身只是数据结构和逻辑架构,没有任何渲染语句子,因此为了把它应用到自己的引擎里,需要为之添加渲染相关的语句。而根据sdk的讲解,推荐用户为之搭建中间架构,用来联系SPEEDTREE与自己的引擎。这样做起码有两点好处,搭建的中间架构(也推荐别加任何api相关的语句),因此,即使你以后换了api(譬如从gl换成dx),中间架构还是可以继续沿用的。还有一个好处就是,当speedtree更新版本的时候,你也无须修改你的引擎

2011-04-18 13:43:00 8330 2

转载 天龙八部GridInfo读取源码

转自:http://www.cppblog.com/mybios/archive/2008/03/09/44046.aspx<br />天龙八部GridInfo文件的格式已经有人公布了,在这里:http://www.mobilegamebase.com/blog/article.asp?id=17<br />不过,此文中有点笔误的地方,就是那个nFirstLayerOP的位标记的描述有点错误,正确的应该如下:<br /> // 图片水平翻转,即左右翻转<br />#define FLIP_HORIZINTA

2011-04-15 15:30:00 2049

projgrid-hq.pdf

海洋投影网格实现原理

2020-12-25

GPU Memory Model Overview.pdf

GPU Memory Model Overview.pdf GPU内存模型

2020-12-25

GDC breaking down

GDC breaking down

2020-12-25

9-TEXTURE COMPRESSION TECHNIQUES.pdf

TEXTURE COMPRESSION TECHNIQUES.pdf 贴图压缩技术

2020-12-25

Real-Time Adaptive Scalable TextureCompression for the Web.pdf

Real-Time Adaptive Scalable TextureCompression for the Web.pdf 实时web astc编码压缩

2020-12-25

IMPROVED ENCODING FOR COMPRESSED TEXTURES.pdf

IMPROVED ENCODING FOR COMPRESSED TEXTURES.pdf 贴图压缩的改进方法

2020-12-25

Rendering from Compressed Textures.pdf

Rendering from Compressed Textures.pdf 使用压缩纹理渲染

2020-12-25

ASTC-GDC2013.pdf

ASTC-GDC2013.pdf astc 在GDC 2013的演示文档

2020-12-25

ASTC_User_Guide_102162_0002_01.pdf

ASTC_User_Guide_102162_0002_01.pdf astc 用户使用手册

2020-12-25

KHR_texture_compression_astc_hdr.pdf

KHR_texture_compression_astc_hdr astc 官方说明文件

2020-12-25

DX12DOCEN.chm

Direct3D 12 graphics SDK doc DX12 sdk 官方文档离线缓存 版本

2019-12-18

es_spec_3.2.pdf

OpenGL ES3.2说明书 规格说明书移动图形技术ES 3.2移动图形规范,最大变化一是继续汲取桌面版OpenGL的营养

2019-10-28

Developer_Track_5_ASTC-The_Future_of_Texture_Compression.pdf

Developer_Track_5_ASTC-The_Future_of_Texture_Compression ASTC相关介绍ARM制定的一个新的贴图压缩给格式,官网资料

2019-10-28

PowerVR.Supported+Extensions.OpenGL+ES.EGL.pdf

PowerVR.Supported+Extensions.OpenGL+ES.EGL.pdf opengl 扩展

2018-08-16

Unreal Engine 4 的光和影.docx

Unreal Engine 4 的光和影.docx 全面介绍 UE4中的光照

2018-08-16

Optimizing Texture Transfers

Optimizing Texture Transfers, 英伟达 显卡优化相关文档

2018-08-16

ShadowVolume 体积阴影DEMO

ShadowVolume 体积阴影DEMO

2010-02-05

OpenGL Direct3D 撰写的各种3D图形算法演示

OpenGL Direct3D 撰写的各种3D图形算法演示 OpenGL Direct3D 撰写的各种3D图形算法演示

2010-02-05

ogre+mfc框架程序

ogre+mfc ogre+mfc框架程序

2010-02-05

mfc + opengl

mfc + opengl mfc + opengl 框架程序

2010-02-05

屏幕录像VB源码 录制,播放,生成,编辑

屏幕录像 VB源码 录制,播放,生成,编辑 功能完善

2009-03-13

空空如也

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

TA关注的人

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