前言 按照時(shí)間順序,事件的生命周期是這樣的:事件的產(chǎn)生和傳遞(事件如何從父控件傳遞到子控件并尋找到最合適的view、尋找最合適的view的底層實(shí)現(xiàn)、攔截時(shí)間的處理)->找到最...
RunLoop 的概念 一般來講,一個(gè)線程一次只能執(zhí)行一個(gè)任務(wù),執(zhí)行完成后線程就會(huì)退出。如果我們需要一個(gè)機(jī)制,讓線程能隨時(shí)處理事件但并不退出,通常的代碼邏輯是這樣的: 這種模...
Runtime的特性主要是消息(方法)傳遞,如果消息(方法)在對象中找不到,就進(jìn)行轉(zhuǎn)發(fā),具體怎么實(shí)現(xiàn)的呢。我們從下面幾個(gè)方面探尋Runtime的實(shí)現(xiàn)機(jī)制。 Runtime介紹...
OpenGL ES 3.0實(shí)現(xiàn)了具有可編程著色功能的圖形管線,如下圖所示頂點(diǎn)著色器和片元著色器是OpenGL ES 3.0中管線的可編程階段。 頂點(diǎn)著色器 頂點(diǎn)著色器輸入:著...
前言 GLKit框架的設(shè)計(jì)目標(biāo)是為了簡化基于OpenGL/OpenGL ES的應(yīng)用開發(fā),它的出現(xiàn)加快了OpenGL ES或OpenGL應(yīng)用程序開發(fā)。 使用數(shù)學(xué)庫,背景紋理加載...
紋理只是一種能夠應(yīng)用到場景中的三角形上的圖像數(shù)據(jù)。它經(jīng)過過濾的紋理單元(texel,相當(dāng)于基于紋理的像素)填充到實(shí)心區(qū)域。 簡單的說就是加載圖片,底層是使用紋理實(shí)現(xiàn)的 一、紋...
一、正背面踢除(Face Culling) 在渲染3D場景過程中可能會(huì)產(chǎn)生以下問題 我們需要決定哪些部分是對觀察者可?的,或者哪些部分是對觀察者不可見的? 對于不可見的我們應(yīng)...