官网上下载的模型没有贴图,所以试图从steam的文件夹中导出模型。官网模型下载:http://www.dota2.com/workshop/requirements
安装过程主要参考这个帖子,因为时间比较早所以有所改动;
另外建议浏览器取消自动启动迅雷下载,利用浏览器自带的下载器,否则可能下错;
1.安装gcfscape
下载链接:http://nemesis.thewavelength.net/files/files/gcfscape185.exe
打开gcfscape
file -> open
找到dota2模型路径,如D:\SteamSetup\steamapps\common\dota 2 beta\game\dota
打开pak01_dir.vpk
选择models-heroes,然后就会显示各个英雄对应的文件夹,右键想导出的英雄文件夹,选择导出。
导出后再选择materials-models-heroes,导出对应英雄的贴图文件,建议放到不同的文件夹中层次比较清晰。
这里关于vpk中的文件格式有个帖子分析的比较清楚,但是我试着用电脑浏览器打开那个帖的链接就找不到了,所以复制了一部分在这里供参考:
僻老大
本帖最后由 僻老大 于 2015-11-7 18:11 编辑
之前的教程仅仅提供了各个大文件夹的相关内容,然而并不是每一个mod作者都整理得这么规范。
下面就详细解析各个文件夹内与mod相关的详细目录结构:
▼dota 2 beta
▼game
▼dota
▼materials 文件格式: .vtex_c(存储图片主要内容) .vmat_c(scripts脚本读取文件,控制.vtex_c图片的输出方式)
▼models
▼heroes
各英雄对应英文名文件夹 (存储各个英雄的贴图文件)
▼items
各英雄对应英文名文件夹 (存储各个英雄饰品的贴图文件)
particle
带有startup_background、loading_background、console_background等文件分别为游戏启动图
(带有cn的为国服健康游戏那个)、载入背景(不是游戏载入图)、控制台背景
▼models 文件格式: .vmdl_c(scripts脚本读取文件,控制vmesh_c以及相应贴图的输出)
.vmesh_c(存储3d模型信息) .vagrp_c(控制动作文件.vanim_c的输出) .vanim_c(存储动作信息)
.vphys_c(控制模型的物理运算) .vseq_c(不明。。。)
▼heroes (存储英雄默认及至宝各部位的的模型及动作文件)
▼各英雄对应英文名文件夹
▼16进制命名文件夹
英雄各部位的动作文件
英雄各部位的模型文件
▼items (存储英雄饰品的的模型及动作文件)
▼各英雄对应英文名文件夹
▼16进制命名文件夹
英雄各部位的动作文件
英雄各部位的模型文件
▼panorama 文件格式: .vtex_c(存储图片主要内容) .vxml_c(一种代码文件格式)
.vjs_c(一种代码文件格式) .vcss_c(一种代码文件格式)
▼images
loadingscreen (存储游戏载入图文件)
▼econ
各种物品预览图所在文件夹(在兵器库中看到的图)
▼styles
文件名包含loadingscreen的为控制载入图使用方法的.vcss_c脚本
▼particles 文件格式: .vpcf_c(粒子特效文件)
▼units
▼heroes (部分英雄特效)
各英雄对应英文名文件夹
▼models
▼heroes (部分英雄特效)
各英雄对应英文名文件夹
▼items (物品特效)
各英雄对应英文名文件夹
▼resource 文件格式: .png(图片) .usm(选人动画)
▼flash3
▼images
▼econ
各种物品预览图所在文件夹(在兵器库中看到的图)
▼heroes
▼seletion
各英雄对应英文名图片 (存储选择英雄图标,游戏直接读取)
各英雄对应英文名图片 (存储英雄头像,游戏直接读取)
▼spellicons (存储英雄技能图标,游戏直接读取)
▼各英雄对应英文名文件夹
各英雄技能对应英文名图标 (存储英雄技能图标,部分英雄有)
各英雄技能对应英文名图标 (存储英雄技能图标,所有英雄都有)
▼videos
▼portraits
各英雄对应英文名文件 (选择英雄时的动画肖像)
▼soundevents 文件格式: .vsndevts_c(控制音频文件的触发)
▼game_sounds_heroes (游戏音效)
各英雄对应英文名音频事件文件
▼music (音乐包)
▼valve_dota_001
2.安装ValveResourceFormat
我看网上的教程通常都是给的Github的网址:https://github.com/SteamDatabase/ValveResourceFormat
这个我不会装,因为VS版本较低所以sln都打不开,我下载的差不多的这个,也是压缩包和一些文件,全下载下来之后解压,用VS安装ValveResourceFormat.0.0.13.647.nupkg这个文件。安装方法参考这篇博文。安着安着文件夹里突然就有了exe文件,不确定是不是完整的,我上传到了百度网盘:链接:https://pan.baidu.com/s/1TYr4AxlGSNCOP2kgJhRwcw 提取码:s2i2
打开后Open之前导出的英雄文件夹,选择文件夹中的vmesh_c文件,点Export导出obj文件(这个软件不能批量导出,只能一个个打开导出);然后打开贴图所在文件夹,选择vtex_c文件,导出图像。
3.下载VTFEdit
因为前一步导出来的直接就是png图像,所以这一步又不太一样。但是大佬提供的这个软件还是能用。
链接:http://down0.greenxf.com:8010/图文处理/图像处理/vtfedit(www.greenxf.com).zip
解压后打开x64文件夹里的VTFEdit.exe,选择贴图文件夹导出的png图片,ctrl+e,命名保存,就得到了对应的TGA格式贴图。
4.安装blender
下载链接:http://42.236.10.3/softdl.360tpcdn.com/blender/blender_2.75a.msi
因为ValveResourceFormat好像不能把.vanim_c导出成smd格式的文件,所以就没smd的插件了。如果有好心人教教我怎么把动作导出来万分感谢!
打开blender(文件夹里有exe文件),可以先通过右上角显示对象的那块删除中间的Cube,建议把Camera和Lamp也删了,然后点击file-import-Wavefront(.obj),选择之前导出来的obj文件,这个好像也只能一个个选择了点击地址栏右侧的Import Obj。这时候会回到之前的视图,诶怎么找不到Import进来的模型呢?这时候往上滚滚轮就会发现原来这个模型不仅太大了而且离原点很远,当然导进一个obj文件只能看到一个组件,全部导入后就能看到完整的模型,不用担心组件位置问题,只要自己不乱动,导入后位置是自动对应的。
关于blender的基本操作可以参考这篇文章;
然后File -> export -> fbx
设置一个路径和名字,即导出成功
5.构建模型
我选择的是导入Unity(导入建模软件应该也一样),打开你的项目,把fbx模型和贴图文件TGA都拷贝到相应文件夹下,unity的话就拖到Assets目录下,建议新建文件夹Textures用来存放贴图文件。新建文件夹Materials,在文件夹下创建材质球(create-material),点击右侧属性栏中的Albert左边那个小圆点,就能选择对应的贴图文件。把fbx模型拖到视图中,再把材质球拖到对应的组件(左侧列表的模型名字前面有个小三角,点开就能看到组件)上。
大概样子差不多这样,下面的卡片是我另加的。
整个过程磕磕绊绊的,对这些软件也都不太熟悉,希望对需要的同学有所帮助。