2016-05-23 181 views
0

在我的項目中,我有一個gameCamera,它用於在我的關卡中顯示事物以及顯示ui元素的uiCamera。 我正在嘗試截取只包含level-elements而不是ui的截圖。如何在屏幕截圖時隱藏某些元素

我的嘗試是隱藏uiCamera的工作原理,但它也暫時隱藏了用戶的ui,它看起來不太好。 這是代碼:

// hide the camera 
this->getUiCamera()->setVisible(false); 

utils::captureScreen([](bool captureBool, std::string path) { 
    // do something to make UI visible again, left this out because its not really relevant 
}, "level_screenshot.png"); 

我也渲染紋理周圍篡改但這並沒有因爲我的水平使用視差效果進行得很順利,很可能。

有沒有什麼辦法可以在隱藏uiCamera的同時截圖?是否有可能只採用gameCamera本身的屏幕截圖,也許通過使用renderTexture?

我科科斯版本是3.9

回答

0

您可以在陣列中添加的所有節點(這不應該出現在截圖)做到這一點,只是把截屏前,使所有節點的可見性。在拍攝屏幕截圖後啓用可見性。

+0

感謝您的回答。我在我的例子中試過類似的東西,只是我隱藏了一個攝像頭而不是節點,但結果與我的假設相同。然而,這看起來不太好,因爲用戶界面隱藏了幾秒鐘,用戶可以注意到它。我無法提供解決方案,因爲我們改變了一些東西,所以我們不再需要截圖了。 – Gigala