Azure Product
浏览模式: 普通 | 列表
分类: 3D Dreams | 1 | 2 | 3 | 4 | 5 | 6 | 7 | >

次世代游戏引擎光影制作简述

[ 2010-04-04 00:16:58 | 作者: Admin ]
一、游戏光影的范畴
实际游戏制作当中,狭义的灯光只是指程序实时根据灯光影响的顶点色和动态阴影,但实际应用当中,影响玩家整体感觉的光影效果,也就是广义上的光影效果包含的范围要更加广泛。
程序的即时光影,shader的定制固然对光影效果至关重要,美术制作的lightmap,normalmap,VertexColor乃至Glow都可以构成一般玩家认知上的灯光效果。
即是说,在游戏制作应该以游戏玩家的感觉为基准整体的设置光影的效果,而并非仅以技术手段作为分界,对于游戏制作来说,综合程序美术的多种表现手段,最终呈现给玩家的光影的感觉,才是游戏制作当中的灯光。

二、基本灯光系统介绍及使用方法
从画面渲染来说,无论一般网游还是次世代游戏,运算的规则构建是大体相似的,我们可以通过分析这个构架得出其中制作各种光影效果的可能性,下图是比较常规的各种图素经过如何的运算达成了最终画面的pipeline。
...

阅读全文...

NuMega Devpartner使用

[ 2010-03-29 11:58:43 | 作者: Admin ]
1 前言
我在本文中详细介绍了测试工具NuMega Devpartner(以下简称NuMega)的使用方法。

NuMega是一个动态测试工具,主要应用于白盒测试。该工具的特点是学习简单、使用方便、功能有效。NuMega共有三个独立的子功能——BoundsChecker、TrueCoverage、TrueTime。BoundsChecker为代码检错工具,TrueCoverage为测试覆盖率统计工具,TrueTime为程序运行性能测试工具。

本文挡通过三章对NuMega三个子功能的使用方法进行了介绍,各部分之间内容独立。如果你想了解NuMega的各项功能,建议阅读本文挡全部内容,如果你只想了解NuMega提供的某一个子功能的相关信息,按目录查看相应的章节即可。

需要说明的一点是,本文挡中所介绍的测试工具NuMega,专指NuMega for Visual ...

阅读全文...
一直有这个问题困扰着我,今天我找到了一个解决方案。

在stdafx.h中
#ifdef _UNICODE
#if defined _M_IX86
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"")
#elif defined _M_IA64
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls'
...

阅读全文...

乱七八糟

[ 2010-01-18 12:28:31 | 作者: Admin ]
如果你发现WTL的事件处理函数无法写到CPP中去的时候,检查下时候未包含一下头文件:

在stdafx.h最后添加:
#include <atlframe.h>

在maindlg.cpp中添加:
#include "StdAfx.h"
#include "resource.h"
#include "aboutdlg.h"
#include "maindlg.h"

如果你发现DDX无法使用,看一看。
是否未包含 #include <atlddx.h>

然后看看是否没有继承于继承于
public CWinDataExchange<T>

www.azure.com.cn
经过几天的算法改进,终于将AO加入了阴影渲染,下一步就是和直射阴影结合,
产生更加真实的光影效果,届时我会写一篇文章讲解一个简化版本的Globel illuminate,
使它适合游戏地形的阴影生成。

下放几张AO效果的图来看看,嘿嘿

军营的战车
uploads/200804/18_204759_ao2.jpg


军营的帐篷战车
uploads/200804/18_204855_ao1.jpg


地形全貌
uploads/200804/18_204936_ao3.jpg


www.azure.com.cn

自己用编辑器做的场景

[ 2008-02-22 16:06:22 | 作者: Admin ]
湖边的走道

uploads/200802/22_160801_scene1.jpg


山脚下

uploads/200802/22_160858_scene2.jpg


战场上都是尸体

uploads/200802/22_161003_scene3.jpg


营寨中

uploads/200802/22_161105_scene4.jpg


www.azure.com.cn

推荐日志 新场景截图,多图

[ 2007-12-17 19:13:22 | 作者: Admin ]
新的战场场景基本已经完成,只剩下一些逻辑的功能没有设置。
场景并不很复杂,保证7300GT能跑到平均45FPS以上。

下面是一些截图:

一条大河
uploads/200712/17_191644_scenetester2007121615142426.jpg


闪电下的废墟
uploads/200712/17_191743_scenetester2007121615150385.jpg


闪电下的寨门
uploads/200712/17_191845_scenetester2007121615161540.jpg


寨门2
uploads/200712/17_191912_scenetester2007121615164876.jpg


闪电划破长空
[img]uploads/200712/17_1...

阅读全文...
很长时间以来,在我的机器上(7300GT的卡)上渲染场景总是莫名其妙的卡,且症状并不是均匀不停的卡,而是当移动摄像机镜头的时候,发生卡的现象。
我一直怀疑是OGRE八叉树中 walkOctree() 递归产生的问题。总是试着优化其代码却不见好转,我总是以为是CPU这边的问题,并总在CPU这边优化下功夫。
今天当我用nvperfHUD检测的时候, 我调整了一个最卡的方向,试着用其调试看看。我突然发现当我使用2X2的纹理代替场景中所有的纹理的时候,FPS突然从5一下在跳到了88,我突然意识到这是显存上的瓶颈 ,这是我才意识到了真正的问题,美术提交的场景,物件,地表的贴图统统用的是TGA格式,而没有用DDS的压缩格式(因为DDS格式在显存中是压缩储存的并实时展开的,将消耗更少的显存)
于是我从早上开始干了一天的体力活,将现有场景的所有纹理全部换...

阅读全文...

多液面系统

[ 2007-11-08 16:36:09 | 作者: Admin ]
其实做多液面并不是太难,主要是反射问题很难解决。
在这里每个液面都支持反射环境,只是可能反射的并不是很真实,
这里只是取巧的近似做了下反射和通常我们使用的RTT反射还是有所不同的。

效果图:
uploads/200711/08_164039_multiwater.jpg


上图做了4块不同高度的水,
不同的颜色,
不同的波浪纹理。
且都反射周围的景象。

www.azure.com.cn
ħ˽ ħ˽ : ϲ ϲվ ϲʿ ϲʿ ϲʿ ϲվ ϲ ϲվ ϲ ϲ ͸۾ ˽ ѾѾַ document.write("");