2016-03-02 51 views
0

我想知道如何將整個Android UI的投影儀顯示彎曲(執行幾何校正)到曲面屏幕上。彎曲Android UI以獲得曲面屏幕

OpenGL是Android平臺上的核心庫,我知道OpenGL ES允許將每個屏幕幀作爲紋理映射到用戶定義的網格網格。

我如何利用這個轉換整個UI(跨所有應用&主題),如下圖所示?

我也研究了可穿戴API,但似乎僅限於單個應用程序,並且不會執行翹曲操作。

如果我不能扭曲整個用戶界面,那麼我想要扭曲並顯示來自Android TV HDMI-In的每一幀。 SDK似乎沒有利用Open GL。我可以重寫它並進行轉換嗎?

Warp screen

回答

0

谷歌紙板做這樣的事情來校正鏡頭失真。谷歌尚未正式發佈該源代碼,但他們根據寬鬆的開放源代碼許可證發佈了該二進制文件,因此人們冒昧進行反編譯。

發生大部分魔術的課程名爲DistortionRenderer。基本上,場景被渲染成紋理緩衝區,然後用於紋理DistortionMesh。這聽起來像是同樣的技術會適合你,但你必須想出自己的方式來生成與投影儀屏幕相對應的失真網格。

+0

我錯過了,你想爲所有的應用程序做到這一點,而不僅僅是你自己的。 –

+0

感謝提示凱文。如果我無法扭曲整個用戶界面,那麼至少是我的Zidoo X9媒體播放器附帶的HDMI直通/捕捉應用程序。源代碼是開放的,我認爲可以在他們的[disHDMI()類]上完成(https://github.com/zidootech/zidoorecorder/blob/master/src/com/zidoo/recorder/tool/HdmiTool.java #L4)。 DistortionRenderer可能效率低下(不知道它是否會迫使我渲染左+右顯示)。 –

+0

您的提示讓我找到[BitmapMesh [(https://android.googlesource.com/platform/development/+/eclair-sholes-release/samples/ApiDemos/src/com/example/android/apis/graphics/BitmapMesh .java),它看起來像有它的工作方法。我想知道我是否可以利用HDMI In工具。 希望我能找到一個Android開發人員爲我工作這個項目。在[自由職業者和其他論壇]上找不到合適的技能(https://www.freelancer.com/projects/Software-Architecture/Android-Warping-Custom-Geometric/#/details) 我的日常工作是解決方案架構師。閱讀/理解但無法編碼 –