设为首页收藏本站

AnyChat技术支持论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 2906|回复: 2
打印 上一主题 下一主题

在Unity3D引擎中获取的视频失真

[复制链接]

1

主题

2

帖子

7

积分

新手上路

Rank: 1

积分
7
跳转到指定楼层
楼主
发表于 2013-12-17 16:40:20 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
下面是我的截图:


unity3d的代码:
        if (m_locaPixellArray != null && m_locaPixellArray.Length > 0)
        {
            Texture2D.Destroy(localUserTexture);
            localUserTexture = new Texture2D(bitMapLocalWeight, bitMapLocalHeight, TextureFormat.RGB24, true);

            Color[] colors = new Color[bitMapLocalWeight * bitMapLocalHeight];
            for (int i = 0; i < colors.Length; i++)
            {
                colors.r = m_locaPixellArray[3 * i] / 255f;
                colors.g = m_locaPixellArray[3 * i + 1] / 255f;
                colors.b = m_locaPixellArray[3 * i + 2] / 255f;
                colors.a = 1;
            }
            localUserTexture.SetPixels(colors);
            localUserTexture.Apply();
        }

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

249

主题

2967

帖子

9075

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
9075
沙发
发表于 2013-12-17 16:43:08 | 只看该作者
您好,这样修改一下看看是否OK:
  1. for (int i = 0; i < colors.Length; i++)
  2. {
  3.     colors.r = m_locaPixellArray[3 * i] / 255f;
  4.     colors.b = m_locaPixellArray[3 * i + 1] / 255f;
  5.     colors.g = m_locaPixellArray[3 * i + 2] / 255f;
  6.     colors.a = 1;
  7. }
复制代码
就是将b、g互换一下。
回复 支持 反对

使用道具 举报

1

主题

2

帖子

7

积分

新手上路

Rank: 1

积分
7
板凳
 楼主| 发表于 2013-12-17 16:46:05 | 只看该作者
admin 发表于 2013-12-17 16:43
您好,这样修改一下看看是否OK:就是将b、g互换一下。

谢谢,按照你的思路,r和b换就可以了,再次感谢。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|AnyChat ( 粤ICP备13022410号-1 )  

GMT+8, 2024-4-25 17:17 , Processed in 0.127755 second(s), 24 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表