随机地形DEMO(图)

       今天可是大年三十啊,真无聊啊,北京的票可真紧,都买不着,同学都回去了,我则要继续我的D3D,今天做了个小的随机地形DEMO. (下次给改成雪地的)
因为没有用高度图,只是利用随机函数生成Y轴数据,X,Z轴数据可以根据地形的大小及横纵轴数进行计算得出
加入了材质.纹理.光线.及FPS的计算及显示,

共有2个类,一个CGame游戏类和CTerrain地形类.结构很简单,
CGame主要生成一个地形类并初始化调用,加载光线,空间变换,FPS计算等.
CTerrain地形类主要是地形的顶点的计算,包括顶点缓冲,索引缓冲构造,及顶点法线的计算(计算每个顶点共

享的三角形的法线的平均值),材质的加载等.

流程:初始化窗口类->生成CGame类初始化->CGame生成CTerrain类指针,->调用CTerrain进行初始化顶点数据->

设置光线,空间变换,渲染参数->render()->release()析构清除内存


因为没有用到高度图,是随机函数生成Y坐标数据,想起计算机图形学上讲过随机图数的功式:
随机数=rand()%宽度+基数
例:4~13这10个数,则宽度为10,基数为4,则函数改变为,随机数=rand()%10+4


下面贴出几张不同地形大小及高度的图

行数, 列数, 网格大小, 最大高度

70,     70,        8,            15

 

行数, 列数, 网格大小, 最大高度

70,     70,       10,            40


 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值