131 发表于 2011-7-18 08:55:09

替换贴图的新方法  [感谢一个名叫Kueken531的老外]

一句话解释替换贴图:
准确的说就是给原本没有凹槽的一个贴图文件打了个凹槽,于是可以在里面嵌入另一块宝石贴图以产生这块宝石贴图所带来的贴图效果。


这次需要用到的,只有Textures和Actor了,省去了Model这个繁琐的操作。



但是想要成功替换,还是需要知道模型所使用的Texture的文件名,比如Firebat.m3使用的一个贴图文件叫做FireBat_Diffuse.dds

想要替换这张贴图,就直接去TextureTab里面新建一个贴图,名字和ID都写FireBat_Diffuse,不要写.dds,然后由于文件名和ID都和文件名一样,所以文件也自然而然就选择成了FireBat_Diffuse.dds,不要动它就行了,在Slot里面写一个Main.Diffuse或者随便什么别的Slot

再新建一个Texture,这个就是你想要的最终效果的贴图,假如我们用Barrack_Specular.dds,就随便写,但是Slot一定要和上面一样,然后文件肯定选Barrack_Specular.dds。

接下来去Actor,在Event里面 Actor Creation ---> TextureSelectByID - 你新建的那个Texture。

然后进入游戏,就替换成功了 = =。。。

当然也有一个不是很惨重的代价,某些Texture 比如 Glow_Orange.dds,这个贴图被很多个Texture所使用,假如你的冲击波模型使用了这个贴图,而这个贴图的Slot 是 Hair.Emissive,然后你的冲击波模型同时使用了另一个贴图,Slot也是Hair.emissive, 这样的话,就会发生贴图冲突。不过这个情况很容易就可以避免。 尽量给这种可能被多个模型同时使用的贴图选择一个非常偏僻的Slot,比如Generic05.emissive..



PS:一直在给自己的地图进行完美的命名机制的同学,你们可能要忍一忍不要改变原文件贴图的名字和ID,因为一旦ID不同了,系统将调用没有开凹槽的原版贴图数据而不是你新建的开了凹槽的贴图数据,于是这样就导致了Actor选择了一个可以放进Main.Diffuse的贴图可是却发现用来替换的那个贴图根本没有凹槽,于是根本嵌不进去。。

当然,用来当宝石嵌入凹槽的贴图是什么名字什么ID都无所谓,就是原版贴图数据一定要使用你在Asset里看到的那个名字。

leosaac 发表于 2011-7-18 09:49:05

好方法,就是先把原来的贴图弄成某个没有贴图的贴图。然后在在Actor里面设置新的贴图吧。

131 发表于 2011-7-18 10:19:29

回 1楼(leosaac) 的帖子

= =。。。我不知道你是咋理解的,但是你理解错了。

玻璃渣的贴图数据的ID都和贴图文件的文件名一样,而且被隐藏了,而现在我们根据文件名建立新的贴图数据,某种意义上讲就是替换了原本的贴图文件,而我们现在给我们建立的新的贴图文件加上一个Slot,于是原本没有Slot的贴图数据现在有了Slot,于是就可以直接新建一些相同Slot的贴图直接用Actor替换了,原理基本和模型数据里的Texture Declaration还是一样的。

比如Firebat_Diffuse这项贴图数据里如果指定的贴图文件不是FireBat_Diffuse.dds,就无法进行贴图替换。

当FireBat_Diffuse这项数据里的贴图文件是FireBat_Diffuse.dds的时候,指定 main.diffuse这个Slot

再建立一个名称和ID都为12345的贴图数据里面指向文件 Marauder_Diffuse.dds,Slot为 Main.diffuse

现在去Actor里 TextureSelectByID - 12345, 这样才可以成功替换贴图。


准确的说是给原本没有凹槽的一个贴图文件打了个凹槽,于是可以在里面嵌入另一块宝石贴图以产生这块宝石贴图所带来的贴图效果。 = = 暗黑玩过没?跟那个差不多。

leosaac 发表于 2011-7-18 14:28:06

这样的说,Thanks,我懂了。

za12567 发表于 2011-7-18 20:58:46

直接import文件位置替换不是更快。。。

131 发表于 2011-7-18 22:45:07

回 4楼(za12567) 的帖子

你要是有两个新单位用同样的模型却想用不同的贴图而且想要保留原版单位的造型,你想怎么做呢= =

frozenleave 发表于 2011-7-19 13:26:13

那些盔甲模型可以动态替换么,像很多游戏都可以动态换衣服,那个太神奇了。。。

131 发表于 2011-7-20 08:02:25

回 6楼(frozenleave) 的帖子

有Actor在,当然可以在游戏进行时替换贴图。。。 = =

tazdingo 发表于 2011-8-7 17:09:48

lz还在么?贴图的Slot那里无论填什么都会自动变回none啊,好像改不了别的值……

blayck 发表于 2011-9-13 06:31:31

不曉得是不是我的方法錯誤,放進地圖後還是使用原本的貼圖
页: [1]
查看完整版本: 替换贴图的新方法  [感谢一个名叫Kueken531的老外]