so 开始动工

一个问题:地表高度图的raw文件,在已有raw文件的基础上,自己用photoshop来搞定?下载photoshop.
 
开场的淡入效果:可能是通过设置环境光逐渐变亮而实现
(棉花糖文字的效果实现方式:也许,sdk有api可以将字母转换为primitive,然后可以对这些primitive处理,将这些三角形溶解为billboad化的粒子,再附与几张纹理贴图以让其形状变化)
 
查阅sdk,sdk中有ID3DXFont接口,DrawText函数。貌似没有可以将字母转换为primitive的api。。。。那么如果我们要将2D的文字显示成3D,有些什么办法呢?最普遍的情形:2D文字实际上是一个个像素点(x,y) 那么可以从这个点扩展为(x,y,0) (x,y,1),这样就使其在z维度上得到了扩充。如此``可以将2D文字“拉伸”为3D文字。这样primitive也可以得到了。
 
SDK有详细Text3D实例
 
----------------------------------------------------------------------
1 开始画出地形结构。
----------------
准备工作:
Q:查sdk DDS 格式的文件可以用dxTex工具将bmp转换为DDS格式。
 
Q:读raw文件的函数是什么?
A:SDK无此函数,自行写的c++函数实现
 
Q:除了高度图的方法,还有其他哪些地形渲染方式???参照书《Premier.Press.-.Focus.On.3D.Terrain.Programming.-.OpenGL.pdf
《Real-Time 3D Terrain Engines Using C++ And Directx9 》
 
~~~~~~~~~~~~6月7日追加~~~~~~~~~~~取消或推迟,有完美处理表现。
1,将地形用3Dmax做成.x文件,直接拿过来用
2,用算法计算,得到地形值。同时注意地形的连续性。
A:《Premier.Press.-.Focus.On.3D.Terrain.Programming.-.OpenGL.pdf》中的方法:(1),同样是基于height map,采用brute force algrithm(畜生般的蛮力算法@-@)其实就是前述的分解为index buffer的办法。对此算法的评价:地形详尽度高,但渲染较慢。(2),fractal terrain generation:(2.1)fault formation
 
 
fault formation算法:
1,给定一个平面
2,对平面用随机的线条一分为二,对其中的一部分附与高度值
3,持续进行2操作,使得平面呈现混乱的高度值
4,从上到下从下到上从左到右从右到左进行过滤操作。使得高度值比较连续。(其实就是所谓的进行线性插值)
细节日后再详细探究````相当怀疑不会比brute force的算法快。。
 
---------------
不知不觉又废话了这么多,为什么沉下心来做点事情就这么难呢。一会儿就是习惯性的看看QQ mop 新浪体育。哎``~
 
火域幻境中有大量纹理贴图
 
用photoshop打开了raw文件,放大到像素就是一个个马赛克。按照这种高度图的作法,貌似我应该以这个raw文件为原型,大量的用印章工具copy出我想要的地形图效果。二话不说,开工吧~``
 
 
~~~~~~~~~~~6月8日追加~~~~~~~~~~~~
 
写写伪码:
 
initialScene()
readRawFile(filename);
creatVertexBuffer(i,j,heightmap[i][j]);
for(k=0;k<N;k++)
  creatIndexBuffer(4k+1.4(k+1),4K+2...);
creatTextureFormFile(filename); 
}
 
世界变换 视见变换 
D3DXMatrixTransformation(&matworld,....)
D3DXMatrixTransformation(&matview,...)
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值