原创 LeetCode算法題集-547. Friend Circles(朋友圈)

有個班級,裏面有N個學生,他們之中有些是朋友有些不是,比如如果A是B的朋友,B是C的朋友,那麼A就是C的間接朋友,我們定義所謂的朋友圈就是由直系和間接朋友所組成的羣體。 給定一個N*N的矩陣M,代表這個班級裏所有學生的朋友關係,如果M[i

原创 推薦幾個Lua實現原理的專欄

由於看的年代久遠所以忘了哪篇更好,但都是看過覺得不錯才收藏下來的,所以以下排名不分先後,建議都看看的: Lua5.0的實現(這個只有十來頁的簡短介紹,可以初步認識Lua內部實現) 探索Lua5.2內部實現(這個只是比上面的稍微長一點而已)

原创 LeetCode算法題集-739. Daily Temperatures(每日氣溫)棧的應用

給定一個每日溫度的數組,生成一個數組,要求:對於新數組的每個元素,是你需要等待更暖和的天數。如果接下去沒有更暖的天了,那就用0替代。比如,給定數組 temperatures = [73, 74, 75, 71, 69, 72, 76, 7

原创 重建 是UGUI優化的關鍵 -- Unite2017嘉賓楊懷忠分享《UGUI深度優化》

原文地址:重建 是UGUI優化的關鍵 -- Unite2017嘉賓楊懷忠分享《UGUI深度優化》關於UniteUnite大會是由Unity舉辦的全球開發者大會,至今已有10年的歷史。Unite現已成爲遊戲行業,VR/AR行業中最具有權威性

原创 Unity2018 ECS框架Entities源碼解析(一)框架的啓動與循環

本文主題:ECS框架的啓動和循環,System的OnUpdate函數在哪裏被調用,運行時disable一個System 先上個簡約版的類圖: World:保存着一個EntityManager和一堆ComponentSystem,默認情況

原创 Unity2018 ECS框架Entities源碼解析(三)ComponentDataArray的實現

一個普通的System大體是這樣的: public class SampleSystem : ComponentSystem { public struct Data { public readonly

原创 Unity2018 ECS框架Entities源碼解析(二)組件與Chunk的內存佈局

爲了性能考慮,所有Entity裏的組件數據都會存放在被稱爲Chunk的連續內存空間裏,因爲cpu訪問某內存時會順便加載附近的一段數據,所以數據的連續存放有利於提高緩存命中。 當然,並不是所有的A組件的值都放在同一個Chunk裏的,Chun

原创 《守望先鋒》中的網絡腳本化的武器和技能系統

原文地址:《守望先鋒》中的網絡腳本化的武器和技能系統在GDC2017【Networking Scripted Weapons and Abilities in Overwatch】的分享會上,來自暴雪的Dan Reed介紹了《守望先鋒》中

原创 OpenGL管線(用經典管線代說着色器內部)

原文地址:OpenGL管線(用經典管線代說着色器內部) 圖形管線(graphics pipeline)向來以複雜爲特點,這歸結爲圖形任務的複雜性和挑戰性。OpenGL作爲圖形硬件標準,是最通用的圖形管線版本。本文用自頂向下的思路來簡單

原创 在U3D中實現戰爭迷霧

原文地址:在U3D中實現戰爭迷霧一、簡介RTS類型的遊戲經常用到戰爭迷霧。一開始整個地形被迷霧遮蔽,只有Viewer的周圍一定範圍可見,隨着Viewer的移動,未探索的區域變成了可見。二、實現方法本人之前也沒有實現過戰爭迷霧,但是一提到戰

原创 LeetCode算法題集-406. Queue Reconstruction by Height(通過高重建隊列)

假設你有條隨機隊列,每個人被描述爲一對數字(h,k),其中h是該人的高,k是在該人前面且高大於等於h的人的數量。要求按以上規則去重建這條隊列。 英語原文: Suppose you have a random list of peo

原创 Unity渲染教程(十九):圖形處理器的實例化技術

原文地址(推薦其系列文章):Unity渲染教程(十九):圖形處理器的實例化技術 譯者:崔嘉藝(milan21) 審校:王磊(未來的未來) 渲染一大堆的球體。 添加對圖形處理器實例化技術的支持。 使用材質屬性塊。 讓實例化技術和

原创 《守望先鋒》架構設計與網絡同步 -- GDC2017 精品分享實錄

原文地址:《守望先鋒》架構設計與網絡同步 -- GDC2017 精品分享實錄 《守望先鋒》架構設計與網絡同步 Overwatch Gameplay Architecture and Netcode Timothy Ford Lead G

原创 LeetCode算法題集-513. Find Bottom Left Tree Value(找出左下角的葉子節點)

給定一顆二叉樹,找到最後一行的最左邊的葉子節點。英語原文:513. Find Bottom Left Tree ValueGiven a binary tree, find the leftmost value in the last r

原创 LeetCode算法題集-11. Container With Most Water(能盛最多水的水桶)

給定n個非負整數a1, a2, ..., an, 每個都代表座標軸上的高,其座標爲(i,ai).可以根據這條數組構建一幅柱形圖,每任意兩條柱子形成一個水桶,要求找到能盛最多水的水桶的面積。大致如下圖,紅色的代表盛水的面積:英語原文:11.