设为首页收藏本站新闻投稿

MOD中国同盟社

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3022|回复: 16

【起源教程】关于起源引擎动态贴图的探讨   [复制链接]

Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15

帖子
517
精华
0
声望
6030 点
金币
564 Mold
被赞许
143 次
注册时间
2011-1-4

可爱小猫 懒人勋章

发表于 2013-6-29 10:29:42 |显示全部楼层
本帖最后由 978834177 于 2013-6-29 10:32 编辑

相信大家对起源动态贴图有一些了解,比如流动的河水,燃烧的火焰等等,像这些效果该如何用到武器上呢?下面给出两种方法制作动态贴图。

实现原理分别是一种是通过加载动态vtf,一种是通过对细节贴图进行矩阵变换(需DX9支持)

首先来使用第一种方法,来看一段效果

fire_ingame.gif

这种效果就是大家熟知的加载动态vtf文件,但是vtf的动态贴图大小有限制,一般到了1024基本就不动了,而且要加载的动态贴图需要由gif动画图片转换为vtf格式,所以有一定局限性,当然也有他的作用,不同场景用不同的特效。看一下上面这种效果是怎么实现的:

1:将gif动态图片转换成vtf格式(可以用这个转换工具

http://pan.baidu.com/share/link?shareid=1450886511&uk=974013202)

效果如图:

fire.gif


文件名为fire.vtf

2:vmt 中添加参数(这里以官方ak为例,rif_ak47skin1.vmt

  1. "$basetexture"        "models\weapons\v_models\rif_ak47\rif_ak47skin1"
  2.         "$envmap" "env_cubemap"
  3.         "$envmapmask" "models\weapons\v_models\rif_ak47\rif_ak47skin1_ref"
  4. 上面是官方默认参数,意思相信大家都懂,下面是所要添加的
  5.         "$detail" "models\weapons\v_models\rif_ak47\fire" //细节纹理
  6.         "$detailscale" "6" //纹理缩放比例(这里由于动态的vtf比较小,所以放大6倍)
  7.         "$detailblendfactor" 0.1  //细节贴图的alpha 值
  8.         "$detailblendmode" 6  //细节贴图的模式 (1.普通叠加6.发光叠加,其余数字会有缓慢的渐变过程,具体自行调试)
  9.         "Proxies"        //贴图附加参数
  10.     {
  11. "AnimatedTexture"  //动态贴图
  12.                 {
  13.                         "animatedtexturevar" "$detail"    //动态贴图定义变量
  14.                         "animatedtextureframenumvar" "$detailframe"   //动态贴图帧数定义变量
  15.                         "animatedtextureframerate" 30    //贴图变化速率
  16.                 }  
  17.   }
复制代码

保存好后效果就如上面所演示的。

-----------------------------------华丽的分割线----------------------------



第二种方法为直接使用一张静态图片,通过对图片进行旋转缩放等参数,达到运动的效果,这里以一张1024的静态图片为例

1.    同样将图片转换为vtf格式,这里以风暴战区的贴图为例

blue.png

2.    将vmt参数修改为

  1. VertexLitGeneric
  2. {
  3.        "$basetexture"      "models\weapons\v_models\rif_ak47\rif_ak47skin1"
  4.        "$envmap"
  5. "env_cubemap"
  6.        "$envmapmask"
  7. "models\weapons\v_models\rif_ak47\rif_ak47skin1_ref"
  8.        "$detail"
  9. "models\weapons\v_models\rif_ak47\electricity_blue_d"
  10.        "$detailscale" "1"  //细节贴图缩放,这里由于我直接用的1024贴图,保持原比例就好不用放大。
  11.        "$detailblendfactor" 1
  12.        "$detailblendmode" 6
  13.        "Proxies"
  14.     {
  15.         "TextureScroll"   //滚动贴图
  16.         {
  17.             "textureScrollVar"
  18. "$detailtexturetransform"   //滚动贴图定义变量
  19.             "textureScrollRate" 0.25    //滚动速率
  20.             "textureScrollAngle" 45     //滚动角度
  21.         }
  22.     }
  23. }
复制代码


保存好后效果如下

blue_ingame.gif


当然w模效果同理

0003.jpg


当然不是所有武器都适合这种效果,适当运用会有比较好的感受,另外给一个进入游戏调试贴图的控制台命令  sv_cheats 1 ,    mat_reloadmaterial <vmt名字>

例如 mat_reloadmaterial rif_ak47skin1 ,通过此参数可以不用退出游戏查看贴图变换效果,比如测试迷彩贴图什么的- -!

综上,上面的实现过程其实比较简单,害我还去读半天英文- -,不过有局限性,就是动态贴图只能附加到模型所调用的某张贴图上,要想指定某处可能就需要分uv贴图,或通过alpha通道解决,更多效果需要大家共同探讨。


官方对贴图属性进行了许多定义,更多资料可以参考官方开发文档:https://developer.valvesoftware.com/wiki/SDK_Docs


素材附件: vmt_desc.rar (426.35 KB, 下载次数: 65)
已有 8 人评分声望 金币 被赞许 收起 理由
q123456zw + 20 + 10 + 1 很给力!
32550163qq + 20 + 20 + 1 赞一个!
zhuzixing + 15 + 5 + 1 贴图技术有长进了!
wyl2341990 + 1 赞一个!
1018167342 + 1 赞一个!

总评分: 声望 + 75  金币 + 45  被赞许 + 9   查看全部评分

使用道具 举报

Rank: 10Rank: 10Rank: 10

帖子
805
精华
0
声望
7771 点
金币
1376 Mold
被赞许
114 次
注册时间
2010-9-8

可爱小猫 懒人勋章

发表于 2013-6-29 10:41:34 |显示全部楼层
这个教程写的很好。
动态贴图,可以做TF那种枪。

点评

978834177  确实,以前感觉这方面就是一个空白,现在总算有点头绪了。  发表于 2013-6-29 10:43:31
你为什么不问问神奇海螺呢?
当看到潘娜新,我和小伙伴们都惊呆了。

使用道具 举报

Modchina声望-崇敬

大射天下

Rank: 10Rank: 10Rank: 10

帖子
554
精华
1
声望
4456 点
金币
782 Mold
被赞许
89 次
注册时间
2010-6-7

可爱小猫 懒人勋章

发表于 2013-6-29 11:51:18 |显示全部楼层
本帖最后由 咸鱼为人 于 2013-6-29 11:55 编辑

1.6要是可以多好···         

点评

猫猫,乖  1.6插件比CSS多多了..  发表于 2013-7-1 14:09:55
潜入  咸鱼是cs1.6真粉丝。抱着好电脑,依旧坚持1.6  发表于 2013-6-29 15:08:37
978834177  现在玩 1.6的不多了吧  发表于 2013-6-29 12:28:52

使用道具 举报

Honorary Member

冇有模型的斑竹

Rank: 7Rank: 7Rank: 7

帖子
2870
精华
0
声望
14752 点
金币
255 Mold
被赞许
195 次
注册时间
2011-6-15

MTT职员 可爱小猫 懒人勋章 Modchina灌水王

发表于 2013-6-29 12:37:01 |显示全部楼层
占楼看帖。。。支持一下!!!

使用道具 举报

Rank: 10Rank: 10Rank: 10

帖子
587
精华
0
声望
3769 点
金币
219 Mold
被赞许
29 次
注册时间
2012-3-13
发表于 2013-6-29 14:14:12 |显示全部楼层
多啦君好牛...........

使用道具 举报

Rank: 10Rank: 10Rank: 10

帖子
995
精华
0
声望
4839 点
金币
1089 Mold
被赞许
138 次
注册时间
2010-11-21

懒人勋章

发表于 2013-6-29 16:39:03 |显示全部楼层
组织是不会亏待你的,你是一个英勇的战士....

使用道具 举报

Rank: 10Rank: 10Rank: 10

帖子
350
精华
0
声望
7394 点
金币
508 Mold
被赞许
6 次
注册时间
2011-9-27

可爱小猫 懒人勋章

发表于 2013-6-29 20:55:04 |显示全部楼层
加油  ! 多啦君

使用道具 举报

Rank: 2

帖子
11
精华
0
声望
109 点
金币
25 Mold
被赞许
0 次
注册时间
2013-6-30
发表于 2013-7-1 21:03:50 |显示全部楼层
好牛的样子的说……                       

使用道具 举报

Rank: 5Rank: 5

帖子
91
精华
0
声望
1569 点
金币
526 Mold
被赞许
0 次
注册时间
2013-6-29

可爱小猫

发表于 2013-7-10 16:22:19 |显示全部楼层
此贴必精,求交好友QQ905501269

使用道具 举报

Rank: 7Rank: 7Rank: 7

帖子
196
精华
0
声望
2874 点
金币
178 Mold
被赞许
3 次
注册时间
2013-7-9

可爱小猫

发表于 2013-7-10 18:09:08 |显示全部楼层
潜入 发表于 2013-6-29 10:41
这个教程写的很好。
动态贴图,可以做TF那种枪。

小白福利,就是复印,顶礼膜拜,这个教程写的很好。

使用道具 举报

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

回顶部