雨雪天气

-----------西昌.何雨锋 雨雪天气
在大气中往往有天气,实际上atmosphere就可以完成了,
atmos1->Rain_Init(100,global1->GetTex("rain1"),-4,0,0,2,30,16,100,5,0.08);    //速度很快的落雪
atmos1->Rain_Enable(tvtrue);

//rain_init(粒子数量,粒子图案,下落速度[必须为负才行],X轴的风向[-2~2],Y轴的风向[-2~2],随机系数[雪是乱飞舞的],粒子飞行距离=20,雨粒子半径,雨的半径[设小了感觉雨就只在你面前下],雨点生成速度,0.008默认)
只要把粒子图案设为雪或雨,落下的就是了。


但是,渲染有问题,如果1渲染陆地,2渲染天空盒 3渲染内容,那么内容不会在雨雪中。
      而atmosphere的渲染分两个:  atmosphere_render和skybox_render
      所以应该1渲染天空盒 2渲染陆地 3渲染大气 4渲染内容

      atmos1->Skybox_Render();    //1渲染天空盒
      land1->Render(tvfalse,tvfalse);   //2渲染陆地  
       if((rand()%10)/10<0.2)   //3更新了的水被放到内容中去渲染
  {
   water1->MakeWave(rand()%60,rand()%60,rand()%5);
  }
       water1->UpdateWater(tvtrue);
      scene1->RenderAllmesh();      //渲染内容及水
      atmos1->SkyBox_Enable(tvfalse,tvfalse);   //最后在渲染完内容后4渲染大气
      atmos1->Atmosphere_Render();  
      atmos1->SkyBox_Enable(tvtrue,tvfalse);

这样,大气在最近,然后是景物,然后是陆地,然后是天空盒,整个逻辑就正确了。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值