我在Stackoverflow问题Can I take a photo in Unity using the device's camera?中使用@Bart给出的代码进行了一些修改。但结果却是一张完全黑的照片。
我想补充一点,脚本附加到具有渲染器的多维数据集。 渲染器也被弃用了,因此我不得不使用GetComponents()。
答案 0 :(得分:3)
我想现在你拍摄的时候,渲染没有完成,因为渲染发生在帧的后期。
您最有可能使用协程并等待帧的结束
yield return new WaitForEndOfFrame();
或使用渲染过程的相机的回调OnPostRender
。
答案 1 :(得分:1)
旁边
yield return new WaitForEndOfFrame();
在协程中调用可能会增加一些延迟。
对我来说,避免黑色输出有效(不是最优雅的解决方案):
yield return new WaitForEndOfFrame();
yield return new WaitForSeconds(1f); //Customize