• 熱門專題

Unity AngryBots憤怒的機器人demo研究

作者|_小腻腻的博客:HONT  發布日期|-莱利斯:2016-11-24 21:08:21
Tag標簽_-_金骨宝细胞修复液:機器人  
  • 做為Unity早期的經典demo_雪人大冒险,一直從3.5以後沿用到4.7.x版本|__优信彩票注册登录。但其內部一些做法十分不合理亿发彩票机器人计划。比如使用過多的根目錄_马勒戈壁第一季,

    創建怪物和玩家不用SpawnPoint||-太比力克。AI-_易旺彩票网址、CheckPoint的代碼實現過於隨意_众彩彩票老板是谁,代碼命名風格詭異等等||600021。--诗恩芙。

    並且網上也有很多相關的學習文章-__小明的储蓄罐,所以我精簡了一下_||易富app,將一些有用的部分學習並記錄下來

    1.主角武器部分

    WeaponSlot為武器主要GameObject節點|11086移动彩票cn,裏麵有各種相關腳本__铜旗阵。

    其中瞄準線(LaserScope)通過LineRenderer實現__-顺丰优选:

    其Shader額外加了一個Noise效果---乐峰团购,然後通過腳本改變uv位置和縮放---柯达超级电影世界。腳本為LaserScope||111彩票骗局,shader路徑AngryBots/FX/LaserScope

    而映射在目標上的點使用麵片--ovi套件官方下载,並根據每幀發射的射線取得法線方向修改位置和方向-__云联惠买车。實現也在LaserScope裏

    另外-_-白洁在亲戚家被陈三日,為了防止每一幀多次取得射線導致的開銷||-1990的开户彩票平台,專門有一個腳本PerFrameRaycast緩存射線內容_|娱乐天地代理总代理,並且每幀更新--易旺彩票投诉。

    複製代碼
    function Awake () {
        tr = transform;
    }
    
    function Update () {
        // Cast a ray to find out the end point of the laser
        hitInfo = RaycastHit ();
        Physics.Raycast (tr.position, tr.forward, hitInfo);
    }
    
    function GetHitInfo () : RaycastHit {
        return hitInfo;
    }
    複製代碼

    2.雨水實現

    雨水的做法並非主流的在相機前加一個塊狀的粒子發射器|_雯雅婷漫画全集。而是用Mesh的移動來實現

    具體腳本在RainBox中|_|阴阳云,並通過RainManager獲取儲存的雨點Mesh|256买彩安卓版。每一個Mesh都包含若幹雨點麵片

    落在地上的漣漪也是包含若幹麵片的Mesh|_尊龙国际娱乐平台app,並且有多個_-梁创齐。其腳本在RainsplashBox中|-queena什么意思,通過Shader(AngryBots/FX/RainSplash)來播放漣漪的陣列圖

    shader中根據不同坐標-_掌上运维app,取得不同播放時間-__谢霆锋张柏芝近况:

    half timeVal = frac(_Time.z * 0.5 + v.texcoord1.x) * 2.0;

    另外其中一處循環取數組元素的腳本比較有趣(做了下修改)--35彩票黑钱:

    複製代碼
    int mIndex;
    
    
    void Update()
    {
        var collectionLength = 5;
        var a = (mIndex++) % collectionLength;
    
        Debug.Log('a: ' + a);//0,1,2,3,4 ... 0,1,2,3,4
    }
    複製代碼

    3.反射實現

    沒想到居然做了實時的反射-_金寨租房:

    其做法比較經典-李天一受害老师照片,通過一個反射相機獲得反射內容--_优惠多金币联盟,並用層Mask過濾地麵等內容|_-张莜雨魅惑,取到水平線的點-__2m彩票全年记录全年图,乘以反射矩陣得到反射位置--注册送38彩金。

    腳本在ReflectionFx中|_青岛爆燃事故责任处理意见,參數如下|-上海哪有蹦极:

    幾項重要參數_||132彩票软件app:

    Reflective Object反射的對象_|盈彩网计划,這裏隻是用這個集合裏的元素取一個最近位置爱玩毛线球,並作為水平麵參考得到反射點_--闹鬼电影。

    Reflective Materials 反射材質||-陈志平博客,用於把得到的RenderTexture丟到裏麵-_-线性代数第二版答案,Reflecction Sampler是賦值的Tex通道名稱-|灵宝党政网。

    Replacement Shader 處理反射的Shader__-118彩票会员账号,如果要拿來用可以直接拷貝該項目裏的

    目前已經到了Unity5||11086移动彩票co,鏡麵反射的處理方法已經非常多了|古董估价,這裏枚舉兩個_--水族之家zadull:

    The Blacksmith裏的帶模糊效果的高質量鏡麵反射_|_我是忍者第一猜成语:http://www.cnblogs.com/hont/p/5658491.html

    使用反射探頭實現的的鏡麵反射: http://www.cnblogs.com/hont/p/6091055.html

    另外---镣铐典狱官,關於傳統實時鏡麵反射實現|2元体彩七星彩走势图,這裏還有一個文章推薦_-再世篇攻略:http://gad.qq.com/article/detail/7157554

    4.其他內容補充

    1.遊戲圖像品質管理位於QualityManager中---钟秀全,其中ShaderDatabase腳本儲存shader信息-|盈彩在线是合法的吗,並在修改品質時對shader maximum LOD進行批量修改-__11086移动彩票co。

    2.MaterialImpactManager裏存放的是物理材質和音效的映射表

    3.ReflectiveBackgroundArbitrary的Shader裏直接讀到LightMap-高考几天,對於有要取到Lightmap需求的Shader---小型食品搅拌机,可以參考這個-闪电部队内购。

    4.當前環境的色調等內容管理放在MoodBox裏_金瓜钺斧朝天蹬,包括MoodBoxManager|楚雄彝族歌曲,這套東西統稱為MoodBox System--|金堆城贴吧。我不太確定Mood這種命名是否官方_-_众彩彩票是真的吗,先記下|weddingdress歌词。

    5.Editor下有一個導出obj工具.導出後在ExportedObj文件夾下|--觅血者斯基尔,可以直接導出.obj格式模型_双色球精准预测6十1,但是許多細小的零件模型_-苏州化工医院,而並非整合的_|132彩票平台。

    6.Editor下還有一個天空盒生成器和Cubemap生成器|现代科技成就的例子,隻需要提供一個點-_-爱尚满屋网,即可輔助生成

    7.Patrol Route 巡邏路線腳本|_恒大队歌,也可以繪製曲線

延伸閱讀|||苏木科:

About IT165 - 廣告服務 - 隱私聲明 - 版權申明 - 免責條款 - 網站地圖 - 網友投稿 - 聯係方式
本站內容來自於互聯網,僅供用於網絡技術學習,學習中請遵循相關法律法規
快乐赛车万喜彩票重庆时时彩快乐时时彩qq分分彩盛源彩票

免责声明: 本站资料及图片来源互联网文章,本网不承担任何由内容信息所引起的争议和法律责任。所有作品版权归原创作者所有,与本站立场无关,如用户分享不慎侵犯了您的权益,请联系我们告知,我们将做删除处理!