【小松教你手遊開發】【unity實用技能】Google Protocol Buffer(protobuf) 使用和研究
由於專案使用的是c#,所以下面的範例也是用於c#
一、安裝Google Protocol Buffer
二、編寫一個bat檔案處理檔案,批量生成c#檔案,如:
@echo off SETLOCAL ENABLEDELAYEDEXPANSION rem 查詢檔案 for /f "delims=" %%i in ('dir /b "..\*.proto"') do ( echo %%i ) set var2=%cd% for /f "delims=" %%i in ('dir /b /s "..\*.proto"') do ( set var=%%i echo !var! set var1=%cd% copy !var! !var1! ) for /f "delims=" %%i in ('dir /b/a "*.proto"') do protogen -i:%%i -o:%%~ni.cs pause
三、編寫.proto檔案。
四、使用.bat檔案編譯.proto檔案。生成對應c#檔案。
五、
。
。
。
相關推薦
【小松教你手遊開發】【unity實用技能】unity所有特殊文件夾的用途(轉自雨松momo)
unity實用技能這裏列舉出手遊開發中用到了所有特殊文件夾。 Unity3D研究院之手遊開發中所有特殊的文件夾 - 雨松MOMO程序研究院 1.Editor Editor文件夾可以在根目錄下,也可以在子目錄裏,只要名子叫Editor就可以。比如目錄:/xxx/xxx/Editor 和 /Editor 是一
【小松教你手遊開發】【遊戲渲染】單色shader,紋理shader
無單色shader Shader "ChrisShader/OneColorShader" { Properties { _Color ("color", Color) = (0,0,0,0) } SubShader {
【小松教你手遊開發】【unity實用技能】角色頭部跟隨鏡頭旋轉
無這個在端遊上比較場景,在角色展示的時候,當攝像頭在角色身邊上下左右旋轉時,角色頭部跟隨鏡頭旋轉。如天涯明月刀等。 這個在手遊上比較少見,不過實現也沒什麽區別。 首先一般情況下,找到模型的頭部節點,直接用lookAt指向camera就可以了,不過一般需求不會這麽簡單。 比如說,超過頭部扭動極限,頭部需要插值回
【小松教你手遊開發】【unity實用技能】unity性能問題查找方法
無這次先說一下mono內存的性能問題查找方法mono主要是代碼問題,各種解決方案在其他地方會講到,首先就是解決每個尖峰,這個會導致gc,mono堆內存申請等問題。 1.先用cube來測 手機上跑一局看看數據 可以看到在這裏申請了內存,可以看到。這時候首先有個向下的尖峰,這個是執行了一次gc。然後mono發現,
【小松教你手遊開發】【unity系統模塊開發】Unity5.5.2UI打包AssetBundle
無 unity 系統模塊 之前已經有幾篇文章寫打包AssetBundle,但畢竟沒有實際在項目中寫過都寫的比較淺。 剛好最近項目更新Unity5.5.2就順便由我來更新ui打包流程 這裏就把這次的經驗寫一下 這裏還是稍微解釋一下打包的基本目的: 打包ui就是把你做的界面打包出來成assetbund
【小松教你手遊開發】【unity實用技能】給每個GameObject的打開關閉加上一個漸變
無 手遊開發 在遊戲開發中,經常會因為直接將GameObject,setActive的方式打開關閉,這種方式效果太過生硬而給它加上一個Tween 可能是AlphaTween或者ScaleTween。 再加上一個PlayTween來做控制。 這樣子需要在每個GameObject上加上這幾個Compone
【小松教你手遊開發】【unity實用技能】計算目標物體是否在自己的扇形視野範圍
無 51cto 在做遊戲開發中經常會需要到計算扇形的視野或者是受擊範圍的時候。 其實這個分為兩部分, 第一部分是在扇形距離範圍內(也就是不考慮角度,其實是圓形範圍內) 第二部分是扇形角度範圍內 第一部分很簡單,Vector3.Distance(a, b);計算距離 下面講講第二部分,扇形角度範圍內。
【小松教你手遊開發】【unity系統模塊開發】熱更
無 手遊開發 現在的手遊項目如果沒個熱更新叠代根本跟不上, 特別是像我們項目做mmo的更是需要經常改動代碼。 而現在的項目一般會選擇用lua的方式實現熱更新 不過我們項目由於歷史原因沒有使用,用的是另外一種方案 在項目裏的所有GameObject都不掛腳本(NGUI腳本就通過代碼的方式掛上),自己寫的
【小松教你手遊開發】【unity實用技能】線性差值計算實現
無 手遊開發 其實這個unity本身就有的函數Mathf.Lerp(),為什麽還要自己實現呢。 有一個原因就是這個函數返回的是float型,float型如果數字非常大,轉出int時會有精度丟失,也就是轉出來的值不對。 而且非常簡單。 看下公式 public int Lerp(int a,int b,i
【小松教你手遊開發】【unity系統模塊開發】Unity Assetbundle打包筆記
無 手遊開發 *最近項目更新了Unity5.5.2,順便更新了項目的ui打包,也更新一下這邊的筆記 首先打包分為兩部分,一部分是打包成Assetbundle包,一部分是從Assetbundle包解包出來成為可用的資源。 首先說第一部分 打包 所有資源都可以打包,甚至不是資源(一些數據)也可以打包,只要
【小松教你手遊開發】【unity實用技能】NGUI字型描邊
NGUI的UILabel中實現字型的描邊是通過以方形的方式對字型網格頂點偏移一定位置後作為其描邊網格。以這種方式描邊在邊角處會生硬,描邊不均勻問題,特別是在比較大的字型描邊時偏移越大這種生硬,不均勻程度越明顯。處理這種描邊一可以通過改進shader的方式來做調整,這裡我介紹林一種新的方式:以圓形方式對字型網
【小松教你手遊開發】【unity實用技能】Google Protocol Buffer(protobuf) 使用和研究
由於專案使用的是c#,所以下面的範例也是用於c# 一、安裝Google Protocol Buffer 二、編寫一個bat檔案處理檔案,批量生成c#檔案,如: @echo off SETLOCAL ENABLEDELAYEDEXPANSION rem 查詢檔案
【小松教你手遊開發】【unity實用技能】u3d 當你發現一個函式被呼叫,但是完全找不到是誰呼叫的時候
一般有可能是通過函式名作為字串呼叫,但是這種在除錯時也是能跟蹤到 而如果連除錯都跟蹤不到的時候,看看是不是動畫效果。 如果是的話可能是在那個特效中呼叫。 這樣的話除錯也跟蹤不到。 這種時候要找的話要定位到對應的GameObject上,開啟Animation,檢視 長這
【小松教你手遊開發】【系統模組開發】圖文混排 (在label中插入表情)
本身ngui是自帶圖文混排的,這個可以在ngui的Example裡找到。但是為什麼不能用網上已經說得很清楚,比如雨鬆momo的http://www.xuanyusong.com/archives/2908 最重要的一點就是我們肯定不會選擇一個完整的中文字型檔,動態字型無辦法
覆盤王者榮耀手遊開發全過程,Unity引擎使用幀同步放棄狀態同步
https://blog.csdn.net/anypkv/article/details/78480877 http://king.shandian.biz/88.html 如今已經大獲市場成功的《王者榮耀》一直是業內各方關注的物件,而我們也知道這款產品在成為國民級遊戲之前
【unity實用技能】記一次失敗的藍圖接口開發失敗經驗
返回值 。。 cat you 值類型 fff nts cor oci 本來想寫一個批量控制widget開關的接口,想寫一個像append一樣的可加pin的接口 首先還是找到這個接口得代碼 可以看到關鍵的點就是 CommutativeAssociativeBinaryOper
教你如何生成一個簡潔又美觀的html報告及其簡單分析(三)
如何生成一個簡潔又美觀的html報告? 步驟一: 按照前面所講的,新建執行緒組,http請求等,設定各種場景和負載值,包括多少個執行緒,多少個使用者,迴圈多少次。 步驟二: 設定好了儲存,然後用命令列去啟動效能測試,檢視相關測試結果。 在cmd中輸入 (生成的報告我選擇建在D
【unity實用技能】u3d 獲取屏幕的寬高
無想搞個全屏Sprite,獲取Screen.Width什麽的都不對。 因為這個跟你的Camera的aspect有關。 所以有個很簡單的方法 首先一般你的項目都會限度是以寬還是高做基準來拉伸 我們是橫版遊戲,所以是寬做基準 我們的寬定的標準值為1334. 所以是這樣 public int GetScreenHe
【unity實用技能】unity3d 陀螺儀控制camera移動旋轉
無https://docs.unity3d.com/ScriptReference/Gyroscope.html unity 官方文檔就很清楚,只有一點要註意: 所有教程都教你怎麽用 input.gyro.attitude 但是這個表示的是空間中的位置,首先你是想做像王者榮耀開頭晃動攝像機的效果,需要把上個位
【unity實用技能】unity編輯器工具之加載預制(Prefab)和場景(Scene)
無在unity裏做打包或者幫策劃美術做工具的時候經常會需要把Prefab拉出來或者場景打開做檢驗工作 其實這個在上一篇在ui打包的文章裏有提到,不過重點不同,上篇重點是打包,這篇的重點是把裏面的一個小知識點拉出來講一講 接下來就講講兩者分別怎麽做 一、把預制Prefab拉出來 就是像我們平時把預制拉到這個地方