原创 《紀念碑谷》美術風格製作

經典獨立遊戲《紀念碑谷》藝術化的美術風格頗受讚譽,曾經獲得過多項大獎。最近正好在玩,對於製作流程比較好奇,於是趁週末做了下研究。 跟我猜想的差不多,總的來說不算複雜。它屬於LowPoly的風格,用Unity開發,具體可參見GDC上的視

原创 mini3d源碼解析及功能擴展

目錄標題簡介代碼簡析功能擴展完善三維變換功能增加簡單光照小結 簡介 mini3d是前網易員工@韋易笑開發的3d軟渲染引擎,總代碼量不到1000行,短小精悍,適合初學者學習。 本文結合源碼給出自己的理解,並在原作基礎上實現功能擴展:

原创 《Unity Manual》閱讀筆記(二):Scripting

找尋Component或者GameObject總結: 找Component: gameObject.GetComponent<RigidBody>() 找子節點中的GameObject: transform.Find("Gun")

原创 《Unity Manual》閱讀筆記(一):Graphics & Physics

Graphics Camera 兩種camera類型的區別: perspective: 透視。真實,Unity默認,遠小近大。 orthographic: 正交。無遠小近大。 要實現多個camera切換,可通過enabled屬性設置

原创 軟渲染是什麼

看完一遍圖形學的書之後,想着做點什麼來着。看到很多人說可以做一個3D軟渲染引擎。 軟渲染的概念網上並沒有直接的中文解釋。參考英文維基(Software Rendering)和一些其他資料後,整理要點如下: OpenGL和Direct

原创 《Unity遊戲設計與實現》讀書筆記

總評 這本書不是藉助例子系統性地串講Unity的各個知識點,而是引導讀者從一個個實例出發,先有遊戲創意,再逐個功能點分解、細化、建模,最後落實到代碼執行上。從這個角度講,這本書的定位不是Unity入門,也不是講純技術,而是藉助Unity講

原创 Shader學習筆記(二):Vertex/Fragment Shader

這篇文章討論如何寫頂點、片元着色器(Vertex/Fragment Shader)。 概念解釋 先看一個完整例子,關鍵地方我做了標記。先熟悉大致結構,後面我會詳細解釋: Shader "Unlit/NewUnlitShader" {

原创 Shader學習筆記(三):Shader中的光照

這篇文章討論shader中用到的光照。 理解光照 Unity中的光照技術包括: 實時光照(realtime lighting) 烘焙後的光照貼圖(baked lightmaps) 預計算的實時全局光照(precomputed realt

原创 分享:你必須知道的H5加速器九大常識!

日前,Layabox、Cocos2d-JS、Egret均宣佈即將聯合各大瀏覽器和APP發佈HTML5(簡稱H5)加速器。困擾H5產業的性能問題終於得到階段性解決。在大家紛紛談論H5加速器時,你最好知道以下常識:   Q:什麼是H5加速

原创 尋路建模的三種方式比較

概述 本文對於遊戲尋路中主流的三種建模方式做了比較,分析各自的適用範圍和優缺點。這三種建模方式包括:格子(Grid)、路點(Waypoint)、導航網格(Navmesh)。 寫這篇的原因是項目裏需要選擇一種合適的尋路實現方案,查閱了大量的

原创 Recast源碼解析(一):射線實現原理

最近公司的項目用到了recast做服務端尋路,自己在使用的過程中對其如何實現網格尋路很感興趣,根據需要研讀過部分實現代碼,同時也發現網上關於源碼分析方面的資料較少,因此這裏打算寫成一組系列做個總結。本文是針對recast中的一個射線方法(

原创 NavMesh生成研究(五):細節網格生成

本文翻譯自:http://critterai.org/projects/nmgen_study/detailgen.html 這篇文章描述了構造導航網格過程中的第五步,也就是最後一步:帶有高度細節信息的三角網格的生成。 源數據類:Poly

原创 Recast源碼解析(二):NavMesh導航網格生成原理(上)

上文說到recast的尋路分爲兩部分:recast(建網格)和detour(尋路),這裏就建網格這一步談談自己結合代碼的理解。這裏的navmesh指的是solo mesh,也就是靜態網格,與能動態添加障礙的tile cache加以區別。後

原创 NavMesh生成研究(一):體素化過程

本文翻譯自:http://critterai.org/projects/nmgen_study/voxelization.html NMGen是一個開源項目,包括Java版的recast靜態網格生成代碼,以及詳細介紹生成過程的文章。因爲在

原创 Unity換裝系統實現

公司的新遊戲最近要實現一個換裝系統,與開發的程序討論了一下,發現在unity下實現換裝還是比較容易的。這裏綜合公司的代碼和網上的討論,把實現的思路簡單說一下。 先是背景介紹。我們首先明確一些基本術語: bone:骨骼動畫中人或者物體的形