我要发帖 回复

管理员

735

主题

2万

积分

30

专家分

忠于职守杰出贡献鼓励

兴趣点(最多三项):

建模技术

私信
发表时间 : 2011-9-27 10:46:14 | 浏览 : 4122    评论 : 26
// 天气类型  =1,晴天 =2,阴天 =3,雾天 =4,雨天 =5,雪天
  1. void  postWeather()
  2. {
  3.         //float fval, s, c;
  4.     static float angle = 0.0f;
  5.     char str[256], *cp = getenv("MPI_LOCATE_VEGA_PRIME");
  6.    
  7.     switch (m_curWeatherIdx) {

  8.     case 1: // default settings
  9.         m_env->setVisibilityColor(1.0f, 1.0f, 1.0f, 1.0f);
  10.         m_env->setVisibilityRangeOpaque(60000.0f);
  11.         m_sun->setHorizonColor(1.0f, 0.545f, 0.239f, 1.0f);
  12.         m_skyDome->setGroundColor(0.2117f, 0.286f, 0.15f, 1.0f);
  13.                    if (vpEnvGlobals::instance()->getSkyLightEnable())
  14.         {
  15.             m_cloudLayer->setCoverageScale(0.26f);
  16.             m_cloudLayer->setTextureTiling(2.0f, 2.0f);
  17.             m_cloudLayer->setColor(0.3f, 0.3f, 0.3f, 1.0f);
  18.         }
  19.         else
  20.         {
  21.             sprintf(str, "%s/config/vegaprime/vpenv/cloud_scattered.inta", cp);
  22.             m_cloudLayer->setTextureFile(str);
  23.             m_cloudLayer->setTextureTiling(3.0f, 3.0f);
  24.             m_cloudLayer->setColor(0.96f, 0.98f, 0.98f, 1.0f);
  25.         }
  26.         m_cloudLayer->setElevation(3000.0f, 5000.0f);
  27.         m_cloudLayer->setTransitionRange(500.0f, 500.0f);
  28.         m_wind->setSpeed(100.0f);
  29.         m_snow->setEnable(false);
  30.         m_rain->setEnable(false);
  31.         break;
  32.    
  33.     case 2: // clear day, sparse clouds
  34.         m_env->setVisibilityColor(1.0f, 1.0f, 1.0f, 1.0f);
  35.         m_env->setVisibilityRangeOpaque(100000.0f);
  36.         m_sun->setHorizonColor(1.0f, 0.6f, 0.29f, 1.0f);
  37.         m_skyDome->setGroundColor(0.33f, 0.29f, 0.15f, 1.0f);
  38.                    if (vpEnvGlobals::instance()->getSkyLightEnable())
  39.         {
  40.             m_cloudLayer->setCoverageScale(0.1f);
  41.         }
  42.         else
  43.         {
  44.             sprintf(str, "%s/config/vegaprime/vpenv/cloud_few.inta", cp);
  45.             m_cloudLayer->setTextureFile(str);
  46.             m_cloudLayer->setTextureTiling(5.0f, 5.0f);
  47.             m_cloudLayer->setColor(0.96f, 0.98f, 0.98f, 1.0f);
  48.         }
  49.         m_cloudLayer->setElevation(3000.0f, 5000.0f);
  50.         m_cloudLayer->setTransitionRange(500.0f, 500.0f);
  51.         m_wind->setSpeed(15.0f);
  52.         m_snow->setEnable(false);
  53.         m_rain->setEnable(false);
  54.         break;
  55.         
  56.     case 3: // overcast with fog
  57.         m_env->setVisibilityColor(0.75f, 0.75f, 0.75f, 1.0f);
  58.         m_env->setVisibilityRangeOpaque(5000.0f);
  59.         m_sun->setHorizonColor(1.0f, 0.6f, 0.29f, 1.0f);
  60.         m_skyDome->setGroundColor(0.8f, 0.82f, 0.83f, 1.0f);
  61.                    if (vpEnvGlobals::instance()->getSkyLightEnable())
  62.         {
  63.             m_cloudLayer->setCoverageScale(0.5f);
  64.         }
  65.         else
  66.         {
  67.             sprintf(str, "%s/config/vegaprime/vpenv/cloud_overcast.inta", cp);
  68.             m_cloudLayer->setTextureFile(str);
  69.             m_cloudLayer->setTextureTiling(3.0f, 3.0f);
  70.             m_cloudLayer->setColor(0.69f, 0.75f, 0.77f, 1.0f);
  71.         }
  72.         m_cloudLayer->setElevation(500.0f, 3000.0f);
  73.         m_cloudLayer->setTransitionRange(500.0f, 500.0f);
  74.         m_wind->setSpeed(0.0f);
  75.         m_snow->setEnable(false);
  76.         m_rain->setEnable(false);
  77.         break;

  78.     case 4: // stormy, high wind,rain
  79.         m_env->setVisibilityColor(0.40f, 0.43f, 0.45f, 1.0f);
  80.         m_env->setVisibilityRangeOpaque(50000.0f);
  81.         m_sun->setHorizonColor(0.65f, 0.45f, 0.25f, 1.0f);
  82.         m_skyDome->setGroundColor(0.33f, 0.29f, 0.15f, 1.0f);
  83.                    if (vpEnvGlobals::instance()->getSkyLightEnable())
  84.         {
  85.             m_cloudLayer->setCoverageScale(0.4f);
  86.         }
  87.         else
  88.         {
  89.             sprintf(str, "%s/config/vegaprime/vpenv/cloud_storm.inta", cp);
  90.             m_cloudLayer->setTextureFile(str);
  91.             m_cloudLayer->setTextureTiling(3.0f, 3.0f);
  92.             m_cloudLayer->setColor(0.52f, 0.56f, 0.61f, 1.0f);
  93.         }
  94.         m_cloudLayer->setElevation(1000.0f, 4000.0f);
  95.         m_cloudLayer->setTransitionRange(500.0f, 500.0f);
  96.         m_wind->setSpeed(5.0f);
  97.         m_snow->setEnable(false);
  98.         m_rain->setEnable(true);
  99.         break;
  100.         case 5: // stormy, high wind,snow
  101.         m_env->setVisibilityColor(0.40f, 0.43f, 0.45f, 1.0f);
  102.         m_env->setVisibilityRangeOpaque(50000.0f);
  103.         m_sun->setHorizonColor(0.65f, 0.45f, 0.25f, 1.0f);
  104.         m_skyDome->setGroundColor(0.33f, 0.29f, 0.15f, 1.0f);
  105.                    if (vpEnvGlobals::instance()->getSkyLightEnable())
  106.         {
  107.             m_cloudLayer->setCoverageScale(0.4f);
  108.         }
  109.         else
  110.         {
  111.             sprintf(str, "%s/config/vegaprime/vpenv/cloud_storm.inta", cp);
  112.             m_cloudLayer->setTextureFile(str);
  113.             m_cloudLayer->setTextureTiling(3.0f, 3.0f);
  114.             m_cloudLayer->setColor(0.52f, 0.56f, 0.61f, 1.0f);
  115.         }
  116.         m_cloudLayer->setElevation(1000.0f, 4000.0f);
  117.         m_cloudLayer->setTransitionRange(500.0f, 500.0f);
  118.         m_wind->setSpeed(5.0f);
  119.         m_snow->setEnable(true);
  120.         m_rain->setEnable(false);
  121.         break;

  122.   
  123.     default:
  124.         break;

  125.     }
  126. }
复制代码

最近VR访客查看更多↓

gubingjie 评论于2011-9-27 11:09:23
老大,我顶你!!!
qingyuximo 评论于2011-9-27 14:23:34
正好需要雾方面的,老大就是好,啊哈哈!!!
kapole 评论于2011-9-29 12:36:38
顶老大,少走很多弯路
david_m 评论于2011-9-29 12:55:36
Obuil,最好把版本说一下,~~~
勤省,笃学,自强
撒旦狂魔 评论于2011-9-29 13:42:39
哈,这些贴子被大家这么一回复,都顶上来了!!!太好了
redplum 评论于2011-10-1 23:18:20
多谢楼主分享资料
rcdxph 评论于2011-10-2 08:56:51
提示: 作者被禁止或删除 内容自动屏蔽
gaara0909 评论于2011-10-8 13:04:07
老大分享的都是精品
kodong122 评论于2011-11-5 16:56:59
这个必须顶
zhangjun_new 评论于2011-11-8 12:25:13
太好了,正需求中,多谢。
sichuanwww 评论于2011-11-8 13:55:05
收藏一下   谢谢
努力挣钱,快乐生活!
wltmwy 评论于2011-11-10 23:26:33
顶上来,谢谢。
afeuwill 评论于2011-11-19 09:39:54
收下 多谢
segede 评论于2011-11-20 09:17:23
写的还是不错的
buku35专家组 评论于2011-12-30 20:55:05
虽然还是看不懂,但是支持这种无私奉献的人,支持。
wwzn077 评论于2012-1-13 14:12:28
正在学习,得多看代码啊
wujun 评论于2012-1-13 19:33:12
正好需要雾方面的,老大就是好,啊哈哈!!!
zoe707 评论于2012-3-22 10:54:51
收了。。谢谢
famcy 评论于2012-5-13 09:08:46
haohaohaohaohaohaohaohao

手机版|VR开发网 统计 津ICP备18009691号
网安备12019202000257

GMT+8, 2023-11-30 06:49 PM

返回顶部