GuiLite 2.9 發布:單片機 + 3D

←手機掃碼閱讀     admin @ 2019-10-09 , reply:0

新功能

原本以為3D的故事已經結束了,但是開發群「王多餘」同學的一個視頻,讓我們意識到單片機上依然有實現3D效果的可能,從視頻上看出:少許的3D特效對用戶體驗有非常直觀的提升(例如:開機動畫,進度條,指示信息等)。當然這些效果不是單片機獨有,其他嵌入式linux平台,或windows平台也可以獲利;畢竟能以最小的資源代價得到3D效果,並沒有壞處。

為此,我們特別開發了一個3D引擎(Hello3D),因為該引擎僅僅引用到了GuiLite底層渲染,並不需要對GuiLite作特別修改,因此該引擎作為GuiLite的一個實例,放在GuiLiteSamples代碼庫裡面;目前已經適配的工程有:STM32F103、STM32F4xx、Windows、Linux、Qt;有興趣的同學可以下載運行一下。

該引擎的主要優勢和特點如下:

  1. 能夠方便的構建3D模型,以上效果僅僅需要1百行代碼(包括:引擎和demo實例)
  2. 能夠在單片機下面運行,實驗的硬體是:stm32f103(16k ram)
  3.  能夠支持linux,windows,qt -- 由於GuiLite的高度可移植性,做到這一點並不難 可以根據readme,在5分鐘內,移植到任意單片機硬體上

不足之處有:暫時不支持紋理(對資源要求較高,可能會在非單片機平台上實現),反光,陰影這些高級屬性。

當然,為了保證良好的UI交互,UI應該以2D為主;那麼作這個東西的意義何在呢?我想意義有:

  1. 為2D的UI增加一抹3D的亮色,從而提高用戶體驗
  2. 對於簡單的3D功能,不需要求助體量龐大的大型3D圖形庫(例如:DirectX,OpenGL)
  3. 使3D效果能夠在單片機/嵌入式環境得到運用
  4. 打開一個3D窗戶,為開發者增加一個選擇;相信肯定有人可以做出更有實際意義,更驚艷的效果出來

代碼更新

同時,此次發布,對GuiLite庫進行了小的代碼優化,包括:

  1. 修改部分變數的名稱,避免詞不達意
  2. 刪除某些未被使用的介面
  3. 刪除某些不必要的函數入參

請大家一併更新GuiLiteGuiLiteSamples代碼庫

社區動態

  1. 開發群同學(喵星人)完成GuiLite的python移植,並在多個實例上運行成功
  2. 開發群同學(inkfish)完成「智能手環」的開發,感謝視頻分享 開發群同學(王多餘)也自製了一個3D引擎,感謝視頻分享
  3. 開發群同學(獃獃)完成對GuiLite utf-8編碼原理的研究,感謝分享「中文轉utf-8」的網址
  4. 開發群新加入了一位中國嵌入式的開山大神兼Boss,期待大家繼續分享自己的精彩實例和移植方案,或許一不小心,好工作自己找上門了呢:)




[admin ]

來源:OsChina
連結:https://www.oschina.net/news/110428/guilite-2-9-released
GuiLite 2.9 發布:單片機 + 3D已經有23次圍觀

http://coctec.com/news/all/show-post-216489.html