unity调用摄像头拍照

需要说明的是:手机截图中左边的图为摄像头的画面,即变量goo,右边为屏幕截图,即变量jj

摄像头的API和屏幕截图的API没有任何关系,前者只负责把摄像头打开,后者负责屏幕截图


unity调用摄像头拍照_第1张图片


unity调用摄像头拍照_第2张图片


2 代码作修改,手机截图如下:(画布太小,超出画布的内容被裁减掉)
unity调用摄像头拍照_第3张图片


unity调用摄像头拍照_第4张图片


3 代码再作修改,手机截图如下:(画布大,但是内容没有那么大,那么底层的画布就显露出来)
unity调用摄像头拍照_第5张图片


unity调用摄像头拍照_第6张图片


4 代码再作修改,手机截图如下:(画布和内容同样大小)


unity调用摄像头拍照_第7张图片


unity调用摄像头拍照_第8张图片


综上所示总结:
Texture2D t = new Texture2D(Screen.width-180, Screen.height, TextureFormat.RGB24, false);
上面一行代码相当于PS中的画布 ,定义一个画布


t.ReadPixels(new Rect(0, 0, Screen.width-180, Screen.height), 0, 0, false);
上面一行代码相当于PS中内容图层


5 将代码再作修改

unity调用摄像头拍照_第9张图片


unity调用摄像头拍照_第10张图片


6 将代码再作修改


unity调用摄像头拍照_第11张图片


unity调用摄像头拍照_第12张图片



最后总结:
我发现从一张手机的整屏截图的图片中间抠一个部分出来,确实很难,干脆换一种思路,直接弄一个image占满全屏,将摄像头画面输送给这个image上,这样就不用截图,整屏捕获的正好就是摄像头拍摄内容


unity调用摄像头拍照_第13张图片


FR:海涛高软

你可能感兴趣的:(Unity拍照)