作者Lincm (黄豆)
看板GameDesign
标题[请益] 关於Unity放进美术素材
时间Thu Dec 15 11:00:58 2016
由於我们家的RD说给他的美术素材全部都要是2的次方尺寸
想请问这样是正常的吗?
就是128x128 256x256 512x512 1024x1024这种的以此类推
觉得很奇怪,所以上来请益一下
就算不管甚麽东西,举凡角色立绘、头像、背景等东西
背景就是720*1280这种尺寸了,也要生给他2的次方尺寸
美术素材本来就会有尺寸大小不可能全是2次方的尺寸的情况
可是程式说不这样做的话他编译出来美术素材会变得超级大
甚麽NGUI的也不打算去买,说甚麽怕NGUI一更新就挂掉所以不打算靠外挂
全部靠着UNITY内建硬上,用texurepacker打包给他也不要
一个说甚麽放进去还要自己旋转对位很麻烦
一个说还要额外装东西的方法不是好方法
TP都打包给你们了应该顶多给对位图就好了吧= = ............
所以只好想请问有作游戏的同行一下,你们放背景还是角色立绘那种的
都是怎麽做的呢?
真的也会这样子做吗?
谢谢
角色没有很大只,可是却都应要把角色的尺寸宽高边界都拉到2次方....
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 60.250.154.157
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/GameDesign/M.1481770860.A.132.html
1F:推 damody: 会比较方便 但引擎都有内建功能才对 directx也没这问题 12/15 11:03
2F:→ damody: 蛮莫名奇妙的 有需要大量转的话写程式自己转 12/15 11:05
我也是不太懂@@一般来说是用TP打包给RD比较方便吧?
就算是单张单张给,RD应该也是要一个个拉进场景去对位置吧我想?
3F:推 UbaldJimenez: TexturePacker 完全可以切好直接变成单张单张的 Uni 12/15 12:08
4F:→ UbaldJimenez: ty Sprite,是不想学吧XD 12/15 12:08
请问这是一次放一张就切出来吗?@@那很多张不就很多工不就很累?XD
5F:推 UbaldJimenez: 而且拼图才有意义,你一张图喂进记忆体的确是分配2 12/15 12:18
6F:→ UbaldJimenez: 的次方的空间,例如128휱29的图,就是会占用128휲56 12/15 12:18
7F:推 UbaldJimenez: 推文被吃掉了,晚点再补,不过先说你们工程师的观 12/15 12:19
8F:→ UbaldJimenez: 念有问题,完全误解了记忆体配置的运作 12/15 12:19
我也是觉得UI类应该是比较适用TP@@
9F:推 wix3000: 不买nGUI是没什麽问题,没特殊需求的话uGUI很够用了 12/15 13:34
10F:→ wix3000: 但我记得Unity会自动把Sprite包成Atlas 12/15 13:37
RD也不熟UNITY 两位都不是CLIENT端的@@ 上次我给的3D的球还拉错
说我没弄好,我为了让对方看到一样的东西我还特地用汇出的
结果对方看到的还是跟在我电脑上的不一样,後来才知道对方是拉错东西的样子
11F:推 wix3000: 除非你的图本来就是做成图集的形式,否则不用特地遵守2 12/15 13:40
12F:→ wix3000: power的格式 前提是你家工程师是在用uGUI 12/15 13:41
13F:→ wix3000: 如果是用onGUI的神人的话我就不知道了 XD 12/15 13:41
RD说打包给AN吃是还好,打包给iOS吃就强迫要2次方甚麽的@@
14F:推 ycjcsie: uGUI不需要power of 2 12/15 13:51
所以可能是他UNITY内所有的UI素材都没设定好成为UI类型吗?@@
15F:推 holymars: 立绘头像背景 建议是用绘图软体批次处理成power of 2 12/15 17:12
16F:→ holymars: 有些东西不适合打包成atlas 又需要PVRTC压缩 又不想被 12/15 17:13
17F:→ holymars: 和unity sprite奋战长宽比的时侯... 12/15 17:14
18F:推 holymars: 你提的解法 NGUI->建议不要用 TexturePacker->不适合用 12/15 17:16
19F:→ holymars: 在立绘和背景上 12/15 17:16
20F:→ holymars: 用Unity importer直接rescale成pot -> sprite长宽比要手 12/15 17:17
21F:→ holymars: 动重调 12/15 17:17
22F:→ holymars: 在流程上最简单的方法→用绘图软体批次处理成pot 12/15 17:18
请问这边Unity importer是甚麽意思呢?
POT是甚麽意思呢?@@ 如果可以的话 希望能请益step by step的步骤或是教学
对不起@@不好意思这块不是很懂
很希望知道大家是如何处理这些非2次方的素材@@
23F:→ dreamnook: 我当初都跟美术讲说小一点 然後先放进手机看XD 12/15 17:27
24F:→ fatespinner: 应该是为了方便压缩吧,内建pot长宽比会爆炸 12/15 22:02
25F:→ crobo: 为了效能,npot无法最佳化 12/16 00:51
26F:→ jasonlu00: 感觉没错啊,除非是属於Sprite packer,不然pot方便压 12/16 00:54
27F:→ jasonlu00: 缩 12/16 00:54
请问我打开了Sprite packer可是里面却空空如也,是不是只支援PRO版本呢?
※ 编辑: Lincm (60.250.154.157), 12/16/2016 11:00:51
28F:推 wix3000: POT = Power Of Two 12/16 12:04
29F:推 UbaldJimenez: 昨天忘了补了,总之举例 128*129 的图,在记忆体里 12/16 12:27
30F:→ UbaldJimenez: 就要配置 128*256 的空间,但明明就只多了 1px,却 12/16 12:28
31F:→ UbaldJimenez: 要多出将近一倍的无用空间 12/16 12:28
32F:→ SSQ: 新开案子用UGUI比较好,NGUI会慢慢被淘汰 12/16 12:29
33F:→ UbaldJimenez: 这对於记忆体配置来说是极大的浪费,但你硬要把图 12/16 12:29
34F:→ UbaldJimenez: 留空到 128*256,意义在哪?拼图的好处就是够跟记忆 12/16 12:29
35F:→ UbaldJimenez: 体要最小的空间,可以塞进最多的图 12/16 12:30
36F:→ UbaldJimenez: 所以像刚刚上面的例子,浪费的空间就可以靠着填补 12/16 12:30
37F:→ UbaldJimenez: 其他小图把他补起来 12/16 12:30
38F:推 UbaldJimenez: 举例,如果你今天有两张图,一张是 128*129,一张是 12/16 12:32
39F:→ UbaldJimenez: 65*65,如果不拼图,在记忆体里面就会耗掉128*256 + 12/16 12:33
40F:→ UbaldJimenez: 128*128 12/16 12:33
41F:→ UbaldJimenez: 但如果拼图,因为 65*65 可以塞到 128*129 被配置到 12/16 12:33
42F:→ UbaldJimenez: 的128*256记忆体空间剩下的空白处,所以把两张图拚 12/16 12:34
43F:→ UbaldJimenez: 成128*256的图给游戏使用,这样就只会占128*256的空 12/16 12:34
44F:→ UbaldJimenez: 间。2的倍数是这样运作,你留空却不作为完全没意义 12/16 12:35
感谢解说,那这样看来其实最好的方式我想应该还是用TP将UI图打包给对方
请对方拉到场景上吧? 这样应该就算怪尺寸的话 用TP拚个1024*1024的
让他去使用应该也是可以的?
45F:→ KanoLoa: 我建议你们多磨合、抱着谦虚的心一起探讨问题点。 12/16 19:51
46F:→ KanoLoa: 最好两个人就坐隔壁,很快会了解unity是友情杀手 12/16 19:52
47F:→ KanoLoa: 简单事情变动能配合就配合,图改个大小对你来说很快 12/16 19:54
48F:→ KanoLoa: 但如果他不太熟悉,你不配合他改,可能花他更多时间修正 12/16 19:54
49F:→ KanoLoa: 反正资源过大软体跑不动,问题是他扛,他迟早要学更多。 12/16 19:55
50F:→ KanoLoa: 类似的事情还很多很多,例如法线方向,模型中心各种搞 12/16 19:56
51F:→ KanoLoa: 反之,如果某个变动你要花很多时间,换你要求他尽量配合 12/16 19:56
嗯嗯,因为同事不是写client的...所以也正在学习
只是有些按钮是114*118 他要我出成128*128给他
我想说应该正确的方式是给他拚好的大图才对吧@@
52F:推 shadowth: 就算是DirectX也有这问题吧 记得天珑书店里面有一本原 12/17 01:28
53F:→ shadowth: 文书也是这样写 主要是放大缩小处理後细节可不可以完美 12/17 01:29
54F:→ shadowth: 呈现的问题吧... 12/17 01:29
55F:推 littleshan: power-of-two 主要是可压缩,放大缩小是看 mipmap 12/17 02:52
56F:推 Bencrie: 早期支援 NPOT 的硬体刚出来的时候,速度会比 POT 慢一些 12/20 01:54
57F:→ Bencrie: 不知道这块是不是真的由硬体做还是 driver 自己处理掉 12/20 01:55
程式我就真的不熟了,我想应该也是每个人写法不一样.......
※ 编辑: Lincm (60.250.154.157), 12/20/2016 12:02:44