今天通過一個小案例,來講解OpenGL的正背面剔除以及深度測試的應(yīng)用。 圓環(huán)的繪制 我們使用GLTools中的void gltMakeTorus(GLTriangleBatc...
今天通過一個小案例,來講解OpenGL的正背面剔除以及深度測試的應(yīng)用。 圓環(huán)的繪制 我們使用GLTools中的void gltMakeTorus(GLTriangleBatc...
底層結(jié)構(gòu) 我們通過執(zhí)行xcrun -sdk iphoneos clang -arch arm64 -rewrite-objc -fno-objc-arc main.m,將上述...
什么是離屏渲染坪哄? 離屏渲染(offscreen-rendering)顧名思義為屏幕外的渲染,即渲染的結(jié)果不會直接呈現(xiàn)到當(dāng)前屏幕上呢撞,而是等待合適的時機才會被顯示损姜。 正常情況下饰剥,...
簡單應(yīng)用 關(guān)聯(lián)對象常用的API如下: 默認(rèn)情況下拦英,因為分類底層結(jié)構(gòu)的限制,不能添加成員變量到分類中测秸。但可以通過關(guān)聯(lián)對象來間接實現(xiàn)疤估。 關(guān)聯(lián)對象的原理 實現(xiàn)關(guān)聯(lián)對象技術(shù)的核心對象...
Category的底層結(jié)構(gòu) 在源碼的中灾常,我們可以查看到Category的底層結(jié)構(gòu)(objc-runtime-new.h) Category的底層結(jié)構(gòu)是struct categ...
KVO KVO的本質(zhì)是什么? KVO的全稱是Key-Value Observing铃拇,可以用于監(jiān)聽某個對象屬性值的改變钞瀑。主要使用下面幾個方法: 我們自定義一個Person對象,...
本文主要通過三個問題尿庐,一起探尋一下OC對象實現(xiàn)的底層原理。 一個NSObject對象占用多少內(nèi)存呢堰? Objective-C的本質(zhì) 我們平時編寫的Objective-C代碼抄瑟,底...
排序(Sorting)是計算機程序設(shè)計中的一種重要操作,它的功能是將一個數(shù)據(jù)元素的任一序列枉疼,重新排列成一個按關(guān)鍵字有序的序列皮假。由于待排序的記錄數(shù)量不同,使得排序過程中設(shè)計的存...
什么是哈希表 散列表(Hash table骂维,也叫哈希表)惹资,是根據(jù)關(guān)鍵碼值(Key value)而直接進(jìn)行訪問的數(shù)據(jù)結(jié)構(gòu)。也就是說航闺,它通過把關(guān)鍵碼值映射到表中一個位置來訪問記錄...
平衡二叉樹(Balanced Binary Tree 或 Height-Balanced Tree)又稱AVL樹褪测。它或者是一顆空樹,或者具有下列性質(zhì)的二叉樹: 它的左子樹和右...
查找表是由同一類型的數(shù)據(jù)元素構(gòu)成的集合潦刃。由于集合中的數(shù)據(jù)元素之間存在著完全松散的換洗侮措,因此查找表是一種非常領(lǐng)邊的數(shù)據(jù)結(jié)構(gòu)。 對查找表經(jīng)常進(jìn)行的操作: 查詢某個特定的數(shù)據(jù)元素是...
拓?fù)渑判?對一個有向無環(huán)圖G進(jìn)行拓?fù)渑判蚬愿埽菍中所有頂點排成一個線性序列分扎,使得圖中任意一對頂點u和v,若邊 ∈E(G)胧洒,則u在線性序列中出現(xiàn)在v之前畏吓。通常环揽,這樣的線性序列稱...