簡體   English   中英

將字節數組設置為統一texture2d的快速方法

[英]Fast way to set byte array to unity texture2d

在unity3d中,我從相機(彩色相機設備)獲取圖像作為插件的字節數組,我希望在屏幕上實時顯示圖像。

如果我使用Texture2D.SetPixels32來制作紋理,它會顯着降低fps (從80到10)。

//First convert byte[] to color[]
  colorr = GetColor(imageBuffer);

  imageColor.SetPixels32(colorr);
  imageColor.Apply();   // fps reduced here

我想我需要在GPU上使用着色器執行此操作。

那么更快的解決方案是什么? 如果回答是使用着色器,可以給出樣本。

謝謝。

我使用openGL完成了它。 只需編寫一個Unity的插件並從Unity獲取Texture2D NativeID並將其發送到插件然后使用openGL將字節設置為紋理! 這是驚人的 ! FPS從10增加到50! 你也需要知道你必須在OpenGL模式下運行游戲,使用“-force-opengl”來使用opengl函數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM