三国志11的一点分析

三国志11的一点分析

张嘉华 [email protected] QQ:188318005

由于很多朋友问到我三国志11的渲染问题,今天只好自己用GA加Fraps,还有RPGViewer分析了一下,并把分析弄了段录像,三国志11与信长野望革新两个游戏用了类似的水墨地形渲染方法,参考视频,可以简单分析到几点

1、 LOD

对于战棋地图环境中的每个格子,都有LOD,那么这种LOD应该是类似Tiled Chunk的方法,而不是基于四叉树自适应方法,看上去只看出两级LOD

三国志11的一点分析_第1张图片

上图的那个战棋格子chunk由4*4*2三角形构成

三国志11的一点分析_第2张图片

下图那个chunk三角形数量减半

2、 天空背景

三国志11的天空背景很特别,用了一种圆柱状天空围绕,主要可能是因为限制了镜头不能提高,因此围一圈就够了,下图是渲染时从线框看出来围着形式的天空,再下图是

三国志11的一点分析_第3张图片

用RPGViewer解出了三国志11里面天空对应的背景图8张

三国志11的一点分析_第4张图片 三国志11的一点分析_第5张图片

三国志11的一点分析_第6张图片 三国志11的一点分析_第7张图片

三国志11的一点分析_第8张图片 三国志11的一点分析_第9张图片

三国志11的一点分析_第10张图片 三国志11的一点分析_第11张图片

把这几张图片绕着场景画一圈就是天空背景了。

3\水墨勾边

三国志11的一点分析_第12张图片

三国志11的一点分析_第13张图片

三国志的水墨勾边主要是看三角形的法线,用摄像机的视向量与地形三角形的法向量点积,然后把颜色减去这个点积值放大某个系数后的结果就是最终的勾边效果。下面是我做的游戏的一段模拟勾边的效果。

float3 viewdir=normalize(CameraLookat.xyz-CameraEye.xyz);

float dotvalue=dot(In.normal,viewdir);

float edgecolor=max(dotvalue,0.0f)*10.0f;

转载于:https://www.cnblogs.com/javazjh/archive/2011/09/08/2171701.html

你可能感兴趣的:(三国志11的一点分析)