巧妙设置Texture Type,将ShadowMask内存占用变成之前的1/4

0x00 前言

在这篇文章中,我选择了过去一周Unity官方社区交流群中比较有代表性的几个问题,总结在这里和大家进行分享。同时,也欢迎大家加入我们这个讨论干货的官方技术群,交流看法分享经验。

Unity官方社区交流群:629212643

0x01 Editor

Q: 请问可以通过script修改Scene View的Shading Mode吗?


屏幕快照 2018-07-06 下午4.39.27.png

A:可以通过脚本来修改Scene View的Shading Mode,只需要修改UnityEditor.SceneView.lastActiveSceneView.renderMode,选择自己想要的Shading Mode即可,其中renderMode是一个DrawCameraMode类型的枚举。
关于DrawCameraMode,可以参考这个文档:
https://docs.unity3d.com/ScriptReference/DrawCameraMode.html

Q: 请问一下,在Unity Editor中可以打开右上角的Stats来查看当前场景的一些性能数据指标,这些数据可以通过脚本来获取吗?


B7FE2A39FFA3BD6B4C9338A1461E81F1.png

A: 这里的数据是可以通过C#脚本来获取的,在UnityEditor命名空间中有一个UnityStats类。里面包括了这些数据。


image.png

不过需要注意的是,由于UnityStats类定义在UnityEditor命名空间内,所以只能在Editor中访问。

0x02 Profiler

Q: 现在开发那边给的反馈是现在内存占用很高,会造成闪退。排除了Unity Profiler能够统计到的一些资源的问题,现在最有可能就是DLL和三方插件的问题,但是现在这部分的内存统计不到。所以给了我这边一个需求,问有没有办法统计到。

A: 这部分你需要对应平台的工具来进行分析。这是一个比较麻烦的事情,例如在iOS上你可能需要用到xcode和instrument来分析。安卓需要android studio或者adb的一些指令来分析。你可以参考一下这份文档:https://unity3d.com/cn/learn/tutorials/topics/best-practices/android-memory-management

A: 闪退的可能性有很多,你现在给的信息太少,不太能给你什么建议。你最好自己测一下,看看所谓“内存占用很高”这个结论是怎么测出来的。是PSS高还是单纯的mono高,不然没法解决。(北京-jadiek)

A: 收集下crash可以确定很多问题。比如oom 你可以确定下crash的机型内存是多少的,3g机型一般不会,不然你2g机型就会很频繁的必现。
你的打包模式和项目实现方案也可能会对你的内存产生影响,比如c#代码为主使用il2cpp打包 那么很可能你的代码片段的内存就有几十兆。比如你的场景和批使用静态和批方案 可能你的scenemem当中的mesh就有几十兆。比如你的内存泄漏,可能会导致你的mono会持续增长上百兆。(北京-哎呀)

0x03 Lightmapping

Q: 请问下如果只有一个灯并且开启了shadowmask来烘焙场景,生成的shadowmask都是4个通道的贴图。这个比较浪费,有什么优化的方法吗?unity2017. 谢谢。

A: 可以将texture type设置为single channel,在2018中可以选择保留的channel,选择Red即可,这样就生成了r8格式的texture,内存开销会变成之前的1/4。
image.png

0x04 Git&Unity

Q: 在用Git管理Unity版本的时候是如何处理二进制文件的呢?
目前Git提供的LFS功能是否能满足实际需要呢?
实在查阅不到相关资料……

A: 关于git lfs和Unity工程里的大文件的处理是有一些讨论的。
可以查看这里:https://www.reddit.com/r/gamedev/comments/6mc1az/%20lets_talk_about_unity_git_best_practices_and/
gitlab应该也是有这套api的。
适合unity用的.gitattributes文件,可以查看这个页面维护的内容:
https://gist.github.com/nemotoo/b8a1c3a0f1225bb9231979f389fd4f3f
可以再配合unity的smart merge。效果会比较好。
设置步骤可以查看这个页面:
https://robots.thoughtbot.com/how-to-git-with-unity

0x05 Resource

Q: 请问一下工程打包后,包里会有一些后缀为resS的文件。想问下这个文件的内容是什么?谢谢


image.png

A: resS后缀的文件主要是texture的二进制数据。如果是和场景有关的resS文件,比如level0.resS,这种一般是由于在Lighting窗口中设置了Skybox Material。

0x06 Shader Graph

Q: shader graph 这个面板跟着鼠标动 甩不掉 是bug吗?


89947362489518B605C4846B759C400F.png

A: 嗯。这的确是一个bug:https://issuetracker.unity3d.com/issues/blackboard-follows-mouse-after-changing-mode
不过这个Bug在2018.2.0b9应该修掉了。可以用这个版本测试下。

0x07 后记

好了,以上就是想和大家分享的几个在群里讨论的小问题。
再次,欢迎大家加入我们这个讨论技术的官方干货群,交流分享呀。

Unity官方社区交流群:629212643

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,718评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,683评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,207评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,755评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,862评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,050评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,136评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,882评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,330评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,651评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,789评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,477评论 4 333
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,135评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,864评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,099评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,598评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,697评论 2 351