太空工程師LCD圖像顯示技術(shù)設(shè)計詳細(xì)介紹
- 來源:Little丶Life
- 作者:墨非
- 編輯:墨非

沒錯,我們做出了顯卡。
【原理】
當(dāng)LCD面板設(shè)置的字體是最后一個Monospace的時候,存在一些特殊的編碼,會顯示成像素顏色,這是由zzhou3014提出來的,也經(jīng)過了檢驗。例如:輸入\uE100則顯示一個黑色像素點。
值得注意的是,因為編碼的問題,直接給LCD手動寫入\uE100是不行的,必須通過程序?qū)懭?
【過程】
基于這個原理,我們最先實現(xiàn)了像素方塊的顯示,把屏幕字體大小設(shè)置為0.1f的時候,每行每列均有177個像素點,最開始我們采用兩個for循環(huán)遍歷所有的x和y,程序每個物理幀需要計算177*177次,遠(yuǎn)遠(yuǎn)超過了程序計算量上限,所以編程塊會報錯停止
最開始的層級顯示技術(shù)(綠色點是鼠標(biāo)控制運動的,監(jiān)測的是主控座椅的鼠標(biāo)輸入信息),這是最開始的顯示技術(shù),僅僅實現(xiàn)了不同圖像元素的分層顯示
然后是像素小游戲
至此因為算法的問題,每個物理幀程序都需要進(jìn)行177*177次計算,并匹配需要顯示的像素點,然后對像素點進(jìn)行著色。
在這種算法下,需要顯示的內(nèi)容越多,程序負(fù)擔(dān)越大,導(dǎo)致需要把程序的字體設(shè)得很大(0.5)來減少總像素點數(shù)量,減少程序計算負(fù)擔(dān)
再后來,我們著手優(yōu)化顯示的算法,取得了很好的成果,但是,依然無法實現(xiàn)0.1字體,因為程序至少在每個循環(huán)都要遍歷一次177*177個像素,這個計算量本身已經(jīng)超過程序限制了
下圖是0.2字體大小下用鼠標(biāo)繪圖,綠色鼠標(biāo)是通過監(jiān)測主控座椅的鼠標(biāo)輸入實現(xiàn)真實鼠標(biāo)隨動的,按住空格就能畫出黃色線條
最后,我們開創(chuàng)性地采用了1/2算法,即每個程序循環(huán)內(nèi)只刷新一半屏幕,完美實現(xiàn)了最小像素繪圖
雖然會有點卡,但是,這一技術(shù)非常有望應(yīng)用到飛船控制系統(tǒng)上,將各種控制、顯示、變成圖形化、可視化的操作
準(zhǔn)備把這玩意接入雷達(dá),做可視化雷達(dá)掃描

玩家點評 (0人參與,0條評論)
熱門評論
全部評論