辛普尔的材质重制指南

0 点赞
武装突袭3
转载

一份从入门到精通的《武装突袭3》重纹理基础指南,包括模组工具的使用、配置文件的制作以及GIMP的基础操作。如果在按照步骤操作时遇到任何问题或需要进一步说明,请留言,我会在有空时尽量回复。 开始之前 免责声明:我完全是自学的GIMP,《武装突袭3》的工具和模组制作也几乎是自学的。我的某些方法可能不是最优的。 你需要准备: 《武装突袭3》 《武装突袭3》工具 任意集成开发环境(VS、VS Code、Notepad++等) GIMP(或其他图像编辑器,但本指南使用GIMP) PBOManager 创建一个文件夹作为项目文件夹,然后在其中再创建一个文件夹,命名为“addon folders”之类的名称。完成的模组由一个包含一个或多个带有.的插件的文件夹组成。PBO格式。PBO本质上是一个压缩文件夹,类似于.zip或.rar文件,但可被引擎读取。【addon folders】文件夹将以文件夹形式包含你的插件,这些插件在被打包成.pbo文件之前存放于此。 选择资源 使用其他模组的资源时,请注意部分模组可能有许可证,禁止修改和重新分发其内容。有些模组会在描述中列出特定许可证,如APL-ND或APL-SA,但如果未列出许可证且存在疑问,最好谨慎处理,并通过评论或直接消息联系模组创作者。请注意,如果模组作者不同意对其模组进行修改,他们可以要求从创意工坊中移除相关的重纹理内容。在本指南中,我将使用RHSAFRF的Gorka-R和6B7-1M。 创建空白模组 1. 新建一个文件夹,以“@”开头并命名,例如“@Retexture_demo”。 2. 在该文件夹内新建一个名为“addons”的文件夹和一个名为“mod.cpp”的文件。 3. 用你选择的文本编辑器打开mod.cpp。 4. 参考BI的mod.cpp维基页面,输入所需信息。徽标和图片可稍后创建,若要公开发布,暂时将路径留空,最后再回来处理。文件至少应包含模组名称和作者。 创建空白插件 1. 在“addon folders”文件夹中新建一个文件夹。 2. 给它取一个简洁且独特的名称,以描述该插件的内容,例如“simpel_6b71m_retex”。建议使用独特的前缀以防止与其他模组冲突。 创建一个名为【textures】的子文件夹和一个名为【config.cpp】的文件。 【CfgPatches】 所有配置文件都需要一个【CfgPatches】类。它用于声明插件的基本信息,包括名称、内容和依赖项。复制下方的配置,将【simpel_6b71m_retex】替换为你的插件文件夹名称。

要添加依赖项,请找到包含您的重纹理所使用模型的模组。您可以通过在Arma启动器中点击该模组,然后点击【在Windows资源管理器中打开】来执行此操作。

找到合适的PBO,在这个例子中是【rhs_c_troops】。双击它在PBO管理器中打开,然后找到config.bin文件并将其拖到你的项目文件夹中。如果你难以找到正确的PBO,高级开发者工具可能会有所帮助。

启动Arma Tools并点击标有CfgConvert的按钮。在标有“source”的框中,点击“Browse”按钮并找到config.bin文件。双击该文件,目标路径应自动填充为同一文件夹。点击“Convert to CPP”。

打开新生成的config.cpp文件。将CfgPatches中插件的类名复制到你的模组的依赖项中,并加上引号。

非统一配置 打开你正在使用的模型插件的配置文件。搜索字符串“class [classname]”,其中[classname]是游戏内物品的类名。你可以在原版或ACE军火库的列表中悬停该物品来找到它。

如果该类不包含变量hiddenSelectionsTextures[],请检查父类以及其他使用相同模型(.p3d文件)的类。如果没有使用你尝试重新纹理化的模型的类包含隐藏选择项,那么该模型很可能未配置为可重新纹理化,除非你能获得反二值化的.p3d文件,否则无法重新纹理化。唯一的例外是,有时多个模型使用相同的纹理集,例如RHS中的Zenitco AK与非Zenitco版本共享相同的纹理,因此它们的类不包含隐藏选择项,而是从非Zenitco变体继承这些选择项。 在你的插件配置中创建一个新的类“CfgWeapons”,并将该物品的类复制到其中。

在你复制的类上方声明一个新类,并为其赋予相同的名称。为你复制的类指定一个新名称,并将其继承的类替换为旧名称。

在CfgWeapons中为任何其他缺失的继承类声明类。

替换作者和显示名称变量。如果了解相关操作,你也可以删除任何不必要的变量或类。

前往hiddenSelectionsTextures[]中指定的路径,将文件复制到你的项目文件夹中以备后用。你需要复制路径中指定的文件,以及以_as和_nohq结尾的文件。

将hiddenSelectionsTextures中的路径更改为你的插件文件夹的textures子文件夹,并修改名称。在这种情况下,我只更改头盔罩的纹理,而不是头盔本身,因此我只修改头盔罩的路径。

此时,CfgWeapons类应该已经完成。你可以通过以下方式确认:使用PBOManager将其打包为PBO文件,然后将该PBO文件放置在你的模组的addons文件夹中。

通过点击启动器顶部的【本地模组】按钮,将该模组添加为本地模组。选择你的模组文件夹(以@开头的文件夹),它就会作为本地附加组件显示在启动器中。

启动游戏后,你应该能在武器库中看到你的物品,点击它时会收到一个缺失纹理错误。如果没有错误,且它看起来与你继承的物品相同,那么你要么错误地设置了隐藏选项,要么该模型没有隐藏选项。

统一配置 单个制服需要两个类,一个位于CfgWeapons中,另一个位于CfgVehicles中。 打开你正在使用的模型所在插件的配置文件。搜索字符串“class [classname]”,其中[classname]是你游戏内物品的类名。你可以在原版或ACE军火库的列表中将鼠标悬停在该物品上找到它,例如“rhs_uniform_gorka_r_g”。

有些人喜欢将CfgVehicles和CfgWeapons中的制服类命名为相同的名称,因此在复制前请确保选择了正确的类。该类应包含【ItemInfo】类。如果没有,请在配置中查找下一个【class [classname]】实例,找到后复制该类。 在你的插件文件夹的config.cpp中声明【CfgWeapons】类,然后将你要重新纹理的制服配置中的类粘贴到其中。

复制uniformClass变量中包含的字符串,然后在其他模组的配置文件中搜索“class [字符串]”。找到该类并复制。 如果该类不包含hiddenSelectionsTextures[]变量,请检查父类以及使用相同模型(.p3d文件)的其他类。如果您尝试重新纹理的模型没有任何类使用hiddenSelections,那么该模型很可能未配置为可重新纹理,除非您能获得反二值化的.p3d文件,否则无法重新纹理。唯一的例外是,有时多个模型使用相同的纹理集,例如RHS中的Zenitco AK与非Zenitco版本共享相同的纹理,因此它们的类别不包含隐藏选择项,而是直接从非Zenitco变体继承这些内容。在你的插件配置中,创建一个名为CfgVehicles的新类别,并将制服类别粘贴到其中。

在你复制的类上方声明新类,并为它们赋予相同的名称。为你复制的类赋予新名称,并将它们继承的类替换为旧名称。更新uniformClass变量中的类名——cfgWeapons类中的变量应包含cfgVehicles中类的类名,反之亦然。

在CfgWeapons中声明ItemInfo的依赖项。更新作者和显示名称。如果清楚操作,可移除不必要的变量。

前往hiddenSelectionsTextures[]中指定的路径,将文件复制到你的项目文件夹中以备后用。你需要复制路径中指定的文件,以及以_as和_nohq结尾的文件。

将hiddenSelectionsTextures中的路径更改为您插件文件夹的textures子文件夹,并更改纹理的名称。

此时CfgWeapons类应该已完成。你可以通过使用PBOManager将其打包为PBO文件,然后将该PBO文件放置在你的模组的addons文件夹中来确认这一点。

通过点击启动器顶部的【本地模组】按钮,将该模组添加为本地模组。选择你的模组文件夹(以@开头的文件夹),它就会作为本地附加组件显示在启动器中。

启动游戏后,你应该能在装备库中看到你的制服,点击它时应该会出现缺失纹理错误。如果没有出现错误,且它看起来与你继承的物品相同,那么要么是你错误设置了隐藏选项,要么是该模型没有隐藏选项。

纹理制作 制作迷彩纹理时,高质量的样本至关重要。 纹理类型 _co - 较常见的纹理文件类型,仅支持完全不透明或完全透明的纹理 _ca - 纹理文件,支持半透明效果 _as - 环境光遮蔽 _nohq - 法线贴图 _smdi - 高光/金属贴图,通常对重绘纹理不是必需的 _as文件并非制作重绘纹理的必需文件,但它能显著提升最终效果的视觉质量。将纹理转换为图像 打开《武装突袭3》工具中的TexView 2。将.paa纹理文件拖到TexView 2上,纹理会显示在窗口中。

点击文件>另存为,然后将.paa后缀替换为.png,并将“保存类型”选项更改为“所有文件”,接着点击保存。对所有纹理都执行此操作。

将_co纹理重命名为你在配置文件中为其指定的名称,然后在GIMP中打开它。将_as和_nohq文件拖到GIMP窗口上,作为图层添加。

制作覆盖层 如果您使用的模型有纯色纹理,则无需使用_as和_nohq文件。 如果要将纯色纹理重新纹理化为另一种纯色,请点击颜色>着色,然后使用滑块或颜色选择器将其更改为正确的色调。您可以跳至测试部分。

如果你要将纯色纹理重新绘制为迷彩物品,请点击颜色>去色>去色,然后点击确定。接下来点击颜色>颜色转透明,再点击确定。跳至应用迷彩部分。

如果您没有纯色纹理,请按照以下步骤操作。 首先,通过点击图层面板中的眼睛图标,隐藏_nohq和_as两个图层。在您的基础纹理文件中,寻找纹理中任何非迷彩的部分。在我的示例中,这仅包括护罩孔洞周围暴露的线迹。

使用自由选择工具(快捷键=F)选择区域,然后复制粘贴所选内容。

点击带有页面图标的绿色按钮,将其复制到新图层。

将新图层拖到层级顶部,为其命名并隐藏该图层。

选择【as】图层并取消隐藏。点击【颜色】>【去色】>【去色】,然后在弹出的窗口中点击【确定】。

点击颜色>颜色转透明,然后点击确定。该图层应变为大部分透明。

显示_nohq图层。你可以在此处重复相同的去饱和和颜色转透明操作,但为了获得更好的效果,我建议增加一个步骤。点击颜色>曲线。选择红色通道并复制下方所示的曲线,然后对绿色通道执行相同操作。保持明度、蓝色和透明通道不变。

现在按照与【as图层】相同的步骤操作:去色,然后执行颜色转透明。隐藏原始纹理图层,将其移至顶部,此时你应该会得到类似这样的效果。

应用迷彩纹理 将迷彩纹理拖入作为图层,并在层级中将其拖至底部。 使用参考图像,尽可能准确地缩放图案。使用Shift+S调出缩放工具。如果需要更多迷彩且纹理可平铺,复制纹理并对齐边缘,然后点击图层面板底部的合并选项。

纹理通常会有以不同方向映射的区域。在重新绘制纹理时必须考虑到这一点。以原始纹理为参考,复制迷彩图层并旋转,使其与纹理各部分的方向相匹配。 右键点击你创建的任何新迷彩图层,点击添加图层蒙版,选择黑色(完全透明)蒙版选项,然后点击添加。对除最底层之外的所有迷彩图层执行此操作。

为第一层迷彩选择对应的纹理区域,然后点击图层蒙版并使用油漆桶工具将其填充为白色。对所有迷彩图层执行相同操作。我已用不同颜色突出显示了各个迷彩图层,以演示操作方法。

选择一个叠加层,点击颜色>曲线,然后将通道切换为阿尔法通道。以原始纹理为参考,调整叠加层的强度。尝试调整曲线直到熟悉其效果,并尽量使亮度接近原始纹理。提高_as图层的阿尔法值以加深阴影,提高_nohq图层的对比度以增强材质纹理的可见度。

如果你之前隐藏了一开始创建的纯色图层,请将其显示出来,然后使用颜色>色相-饱和度工具或颜色>着色工具将其调整为正确的颜色。

接缝偏移 当纹理上的两块布料在接缝处相遇时,你应该复制一份迷彩纹理,重新定位,然后使用蒙版使其仅在其中一块布料上可见。这样可以营造出物品是由多块布料缝合而成的感觉,而不是图案在接缝处连续延伸。 这并非必需步骤,许多模组制作者也不会费心去做,但在我看来值得一做。不过,这确实需要很长时间,因为你必须手动为每块布料制作蒙版。 下方展示的是我的“军事装备包重纹理”模组中G3野战裤的多地形迷彩纹理。多地形迷彩的不同部分用不同颜色突出显示,以便更清晰地看到接缝。

使用CTRL+SHIFT+E导出纹理至插件文件夹的textures子文件夹。

将纹理拖入TexView 2,点击文件>另存为。将.png替换为.paa并保存,然后删除.png图像。

使用PBO管理器将插件文件夹打包为PBO文件,然后将其移动到你的模组文件夹中。

确保模组作为本地模组加载并启动游戏。如果PBO文件创建正确,它应该会出现在编辑器中,并且选择时不会出现错误。

你可以编辑纹理并不断重新启动游戏,直到对其外观满意为止。以下是一些需要避免的事项。

我常见的纹理重绘错误(除了使用劣质色板外)包括纹理过于鲜艳和/或明亮,以及纹理缩放不当。参考图片对解决这三个问题都有很大帮助,务必使用它们。 最终处理与发布 当你对纹理满意后,在发布前应添加一些收尾工作。如果你想替换所修改物品的图标,现在就应该进行。 此外,对于公开模组,你需要创建一个logo,并将其用于主模组文件夹中mod.cpp里的logo和logoSmall路径。 在addons文件夹中新建一个名为“[mod name]_data”的文件夹(其中[mod_name]替换为你的模组名称),并在里面放置.paa格式的logo纹理。将文件打包成PBO格式并移动到模组文件夹的addons子文件夹中,然后在mod.cpp中设置指向其包含的标志文件的路径。

打包PBO文件 打开《武装突袭3》工具中的Addon Builder。选择插件文件夹作为输入,选择mod文件夹的addons子文件夹作为输出。

如果你计划进行除重新纹理之外的任何操作,应点击选项,然后将以下字符串粘贴到“直接复制的文件列表”框中:*.p3d;*.paa;.rtm;*.sqf;*.sqs;*.bikb;*.fsm;*.wss;* .ogg;*.wav;*.fxy;*.csv;*.html;*.lip;*.txt;*.bisurf;*.sqm;*.ext;*.dbf;*.prj;*.shx;*.shp;*.pac;*.rvmat。或者你可以使用Mikero's PBOProject,它更高级,但对于简单的重新纹理,Addon Builder更简单。 签署插件:从《武装突袭3》工具中打开DSUtils。点击“添加源目录”按钮,选择你的模组的addons文件夹。你的PBO文件应会出现在列表中。

点击“私钥”右侧的“N”按钮,在标有“授权名称”的框中输入你的模组名称。复制下方路径,然后点击创建密钥。

点击“处理文件”,PBO文件应会被签名且不会抛出任何错误。完成后,你可以关闭DSUtils。

导航至你复制的密钥路径,找到与你的模组同名的bikey文件。复制该bikey文件,注意不要复制biprivatekey。在你的模组文件夹中新建一个名为【key】的文件夹,并将bikey粘贴到其中。

发布 打开《武装突袭3》工具中的Open Publisher。选择你的模组文件夹作为模组内容。填写所有方框,然后同意右下角的Steamworks许可并点击发布。等待完成后关闭。有时最后会卡住,只需在Steam上查看你的创意工坊页面确认是否正常发布。

如果你对本指南有任何问题,欢迎留言,我会在有空时回复。