原创 遊戲模塊化之WWW模塊封裝

前置知識: post請求指的是網址中後面有問號的,問號後面是參數,用&符號連接 get請求指的是通過網站訪問再加上一個用於存儲參數的表單來向服務器發出請求 www可以再unity中根據不同前綴下載不同文件 IOS: File://

原创 設計模式之工廠模式

工廠模式: 不關心生產過程(工廠模式特性) 作用:用於實例一些新的對象.比如金幣,野怪之類的gameobject 具體的工廠實現方法就不再演示了,簡單來說就是在工廠中創造一個方法,然後"用戶"只需要調用這個方法,然後傳遞所需參數,就

原创 設計模式之策略者模式

策略者模式: 一句話特點:根據不同的輸入得到不同的結果 舉個栗子: 需求: 在公司,每個人和公司都需要通過會計交稅,但個人與公司交的稅又是不同的輸入,用代碼實現下圖 實現: //交稅基類 public class AbsBase {

原创 設計模式之觀察者模式and代理模式

觀察者模式(Observer): 一句話特點:不斷地詢問 舉個栗子:像是時間計時器就符合這個模式,程序在Update中不斷地累加計時器,不斷詢問計時器是否到達了應該調用方法的時間點,如果到了那就歸零,並且調用方法,這種不斷詢問的方法也

原创 如何使用markdown插入圖片

方法有很多,我就推薦使用一個最簡單的 1.這個網站點進去(CMMS)https://sm.ms/ 2.把圖片拖進去 3.把圖片上傳到圖牀 4.獲取鏈接,把鏈接加入你的markdown編輯中,就能看到圖片了~ 注:圖片有效期我不知道,今

原创 編程原則

編程是一個解決問題的工具和方法. 爲了節省開發時間,就需要提升編程的複用性,解耦性,程序變成一個個的模塊,方便添加與更改. 遇到編程需求的項目的時候,需要按照以下步驟進行,能有效解決問題: 1.瞭解需求 2.畫圖,通過畫圖把問題實現方

原创 U3d尋找優先順序與加載物體方式與限定索引值

U3d尋找優先順序與加載物體方式與限定索引值 GameObject.FindGameObjectWithTag這個方法使用的是深度優先順序來尋找. GameObject裏的find都是深度優先的順序來查找物體,所以你用FindGame

原创 設計模式之單例模式

設計模式之單例模式 單例模式: 一句話概括:整個軟件或遊戲生命週期中,有且只有一個實例. 一個class本身是一個抽象的概念不佔用內存,每實例一個新類,會在內存中佔用一個內存單位,而單例模式指的是只能有一個實例.如何保證->使用st

原创 ①如何使用Photon來創建一個基礎的服務端與客戶端(ChatServer)

最近在學習用Photon 注意版本來建立服務器連接,怎麼下載以及怎麼註冊就不說了. 大體的流程: 首先創建服務端 接着把服務端信息寫入Photon3的config文件中去 重啓電腦後啓動服務端 寫個客戶端 啓動客戶端,連接服務器端

原创 編程就是解決問題,解決問題的步驟

最近因爲想學Shader怎麼寫,於是需要學圖形學知識,學習OpenGL又需要C++基礎,所以 又去學C++,讓我重新認識了一邊編程基礎。 編程其實就是解決問題,第一個“What”要解決什麼問題,第二個“How”如何解決,第三個以及之

原创 程序註釋該怎麼寫

錯誤的寫法 //把food歸零 int food = 0; // 哦你把food歸零,我已經知道了,所以你這注釋什麼意思? 正確的寫法 // 因爲食物剛被主角吃了,所以把食物的計數值爲零 int food = 0; 錯誤的寫法 /

原创 VisualStudio2017如何讓IDE的警告等級提升(把警告變成報錯)

爲了使程序更加完美,許多程序員都這麼做,首先把程序的錯誤等級提升到四級,再把警報出現的時候終止程序運行(注意 千萬不要改成Level5,否則你會迷失在C++標準庫之中的錯誤內)

原创 SelectMany 和 Select的區別

如果我們看這兩個擴展函數的定義很容易明白——Select是把要遍歷的集合IEnumerable逐一遍歷,每次返回一個T,合併之後直接返回一個IEnumerable,而SelectMany則把原有的集合IEnumerable每個元素遍歷