分享

Unity3D中的Texture2D纹理失真解决办法 | Unity3D教程手册

 3dC 2014-04-11

           Unity3D中的Texture2D纹理失真解决办法

Posted on 2013年04月08日 by U3d / Unity3D 基础教程 /被围观 513 次

Unity3D中Texture2D纹理类型绘制代码如下:

var img : Texture2D;

function OnGUI()

{

GUI.DrawTexture( Rect( left, top, width, height ), img );

}

绘制后会发现图像明显发虚,其实就是纹理在被Unity3D载入是自动缩放成了2的n次方大小(power of 2)。在Project面板中找到原始文件(测试纹理大小为 40×100)。

Unity3D中的Texture2D纹理失真解决办法

Unity3D中的Texture2D纹理失真解决办法

结果Unity3D将图片大小自行缩放。导致了纹理失真。解决方法如下:

Unity3D中的Texture2D纹理失真解决办法

Unity3D中的Texture2D纹理失真解决办法

首先将Texture Type选择为Advaced,在面板内弹出新的选项。将紧挨着他下面的Non power of 2的选项设置为None,一定要选择下面的Apply,接受修改,否则没有效果,这时可以看到下面的预览框内的纹理大小为实际的物理文件尺寸。

Unity3D中的Texture2D纹理失真解决办法

Unity3D中的Texture2D纹理失真解决办法

重新运行程序,便可以看到正常的显示效果了。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多