查看: 2234|回复: 2

[脚本] Unity保存游戏效果图片,并显示出来

[复制链接]

18

主题

18

听众

201

积分

小学生

Rank: 2

升级   0.33%

发表于 2013-4-25 13:48 |显示全部楼层
共享资源获取更多积分!share your resources get more credits!

方案1:截屏保存,再显示。
核心知识:
1,Application.CaptureScreenshot("wuk.png");Unity会自动截屏保存在 Application.persistentDataPath+"/"+"wuk.png";
2,WWW 网页;
3,获取权限;
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />  

例1:


  1. public   Material   image;







  2. void Awake(){  

  3.    Application.CaptureScreenshot("wuk.png");  

  4. }   

  5. void Start () {



  6.     StartCoroutine(getCapture());



  7. }



  8. IEnumerator   getCapture(){



  9.     path=Application.persistentDataPath;



  10.     Debug.Log("path  "+path);

  11.   www=new WWW("file://"+path+"/wuk.png");  

  12.   yield  return www;  

  13.   image.mainTexture=www.texture;

  14. }
复制代码
方案2:保存指定屏幕区域为png,并显示;

核心知识:

    Texture2D.ReadPixels;System.IO.File.WriteAllBytes;

关键方法:

    Texture2D.ReadPixels; Texture2D.Apply();Texture2D.EncodeToPHG;  

例1:


  1. string path=Application.persistentDataPath+"/wukuaTurret.jpg";

  2. public   Material   image;





  3. IEnumerator getTexture2d()  {  

  4.     yield return new WaitForEndOfFrame();  

  5.     Texture2D t = new Texture2D(200, 180);

  6.    

  7.     t.ReadPixels(new Rect(200, 320, 200, 180), 0, 0, false);  

  8.     t.Apply();  

  9.    

  10.     byte[] byt = t.EncodeToPNG();  



  11.   System.IO.File.WriteAllBytes(path, byt);  

  12. }  

  13. IEnumerator   getCaptureFf(){

  14. path=Application.persistentDataPath;

  15. Debug.Log("path  "+path);

  16.   www=new WWW("file://"+path+"/Screenshot.png");  

  17.   yield  return www;  

  18.   image.mainTexture=www.texture;

  19. }

复制代码
楼主热帖

0

主题

32

听众

369

积分

小学生

Rank: 2

升级   56.33%

发表于 2014-4-26 10:15 |显示全部楼层
好好 好那个东西 谢谢分享
回复

使用道具 举报

0

主题

31

听众

420

积分

小学生

Rank: 2

升级   73.33%

发表于 2014-6-6 16:35 |显示全部楼层

感谢楼主的无私分享!
回复

使用道具 举报

0

主题

30

听众

201

积分

小学生

Rank: 2

升级   0.33%

发表于 2017-3-7 10:44 |显示全部楼层
真心顶
回复

使用道具 举报

18

主题

18

听众

201

积分

小学生

Rank: 2

升级   0.33%

发表于 2017-3-7 11:42 |显示全部楼层
说的非常好
回复

使用道具 举报

0

主题

12

听众

202

积分

小学生

Rank: 2

升级   0.67%

发表于 2017-3-7 10:50 |显示全部楼层
很好哦
回复

使用道具 举报

18

主题

18

听众

201

积分

小学生

Rank: 2

升级   0.33%

发表于 2017-3-7 11:19 |显示全部楼层
不错不错
回复

使用道具 举报

0

主题

12

听众

202

积分

小学生

Rank: 2

升级   0.67%

发表于 2017-3-7 11:01 |显示全部楼层
LZ真是人才
回复

使用道具 举报

0

主题

30

听众

202

积分

小学生

Rank: 2

升级   0.67%

发表于 2017-5-6 14:15 |显示全部楼层
很不错
回复

使用道具 举报

0

主题

31

听众

203

积分

小学生

Rank: 2

升级   1%

发表于 2017-5-6 13:54 |显示全部楼层
顶顶多好
回复

使用道具 举报

温馨提示:求助请到“Unity技术讨论”版块中发帖,便于集中解决!
您需要登录后才可以回帖 登录 | 立即注册

懒人模式:

关闭

站长推荐 上一条 /1 下一条

Unity3D游戏开发联盟(资源共享平台) -Unity3D,Unreal ( 粤ICP备20003399号-2 )

GMT+8, 2020-5-31 03:01 , Processed in 0.060318 second(s), 35 queries .