Skip to content

HongFengRM/Advanced-SHP-Render-Script

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

Advanced-SHP-Render-Script

一个高级的RA2 SHP素材渲染脚本

简介

本脚本是一个用于进行RA2、TS等游戏MOD所用的帧序列素材渲染的MaxScript脚本。
本脚本极大地参考了戴子玲老师的渲染脚本,在此表示最高的敬意和感谢。
本脚本具备场景快速导入、摄像机参数快速调整、建筑物、步兵、动画渲染功能、自定义渲染序列功能以及快速导入零件的功能。
本脚本当前仍在测试和开发阶段,且出于作者的业余爱好重心转移,该脚本的未来更新将会放缓。但当前已具备基本功能。

启动

通过将Advanced_SHP_Render_Script_1.5.ms文件拖入3DSMAX主窗口启动该脚本。此时窗口中应当出现一个标题为ASRS主菜单 1.5的脚本窗口。我们将在下面分别说明其各个部分的功能。

主要设置

这一部分包括场景导入和基本渲染环境设置、摄像机与渲染尺寸设置两个部分。主要影响渲染的环境和效果。

场景导入与设置

通过点击场景导入与设置按钮进入该设置选项。
您将会看到一个标题为场景控制的子窗口。我们将依次介绍其中八个按钮的作用。

  • 基本3光场景
    • 这一场景为经典的RA2渲染脚本所内置的3个平行光渲染场景。您可以通过点击这一按钮导入这一场景。该场景明暗对比适中,渲染速度快。
  • 扩展8光场景
    • 这一场景为红枫自己用的渲染场景,具备八个平行光。您可以通过点击这一按钮导入这一场景。该场景明暗对比较强,渲染速度适中。
  • Nord天光场景
    • 这一场景为应Nordlicht要求添加的,具有天光设置的场景。该场景具备为场景自动添加AO的效果,但渲染速度最慢。
  • 清除所有场景
    • 这一按钮可以清除当前场景内的渲染组件,包括光照和地板。
  • 第二行
    • 第二行的四个按钮可以切换渲染背景色。

您可以手动修改脚本文件夹下的场景以满足您的个性化需求。

摄像机与渲染尺寸

这一部分用来快速调整摄像机和渲染尺寸。我们依次介绍四个按钮的作用。

  • 摄像机左、右转45度
    • 这一对按钮用于快速调整摄像机方向。实际上是通过扭转中心虚拟对象从而同时旋转摄像机和灯光实现的,因此看起来像是渲染对象在旋转而场景保持一致。该功能用于步兵和载具渲染时快速调整并预览渲染结果。
  • 调整为大、小建筑渲染尺寸
    • 这一对按钮用于快速调整摄像机参数,以适应不同尺寸的建筑物渲染,方便用户建造奇观。值得注意的是您需要手动改变渲染设置中的渲染尺寸,脚本当前不具备这一功能。

渲染

这一部分用于渲染帧序列。 注意!

  • 在具体使用该部分的功能之前,您 务必 先按下 C 键以将摄像机切换至 RA2目标摄像机 以保证渲染的正常执行。
  • 在具体使用该部分的功能之前,您 务必 对场景进行增量保存(备份)以保证不会发生意外损失!

这一部分的简要工作流程如下

  1. 您将模型或中心虚拟对象 进行特定旋转以满足渲染的初始方向要求 ,然后 C进入摄像机视角 ,然后按下指定的渲染按钮并确认
  2. MAX渲染当前帧,并按照预先指定的方向、角度扭动中心虚拟对象,而后重复这一过程若干次。
  3. MAX自动关闭非投影光,然后 为场景内所有几何体赋予无光投影材质 ,并打开地板的阴影渲染选项,重复过程2,以渲染阴影部分。 您必须注意,这一过程 将破坏场景内的灯光和材质 因此您必须在执行渲染之前增量保存(备份)您的场景!
  4. 渲染结束,您可以去文件夹查看您的渲染结果。
  5. 重要! 您需要在 不保存 的情况下,重新打开您的场景,以 取消场景对灯光和材质的修改 !如果您在渲染结束后的状态 错误地选择保存且没有做备份 ,您的场景将 需要您手动进行灯光和场景的修复

我们将逐个介绍四个主菜单。

建筑渲染

这一部分用于渲染建筑物素材。通过点击建筑渲染按钮进入该选项。 您将会看到一个标题为建筑渲染的子窗口。我们将依次介绍其中八个按钮的作用。

  • 渲染本体帧
    • 该按钮将自动渲染建筑物的本体帧和其阴影。您可能需要手动去制作、合并损坏帧。
  • 建筑动画
    • 该按钮将自动渲染建筑物的动画。
  • 围墙自动对准、输出围墙帧
    • 该功能尚未完成合并,请您使用独立的围墙渲染脚本。

步兵渲染

这一部分用于渲染步兵素材。通过点击步兵渲染按钮进入该选项。 您将会看到一个标题为步兵渲染子窗口的子窗口。 在这一过程中,您需要保证在每次渲染时,将步兵方向 指向前方(也即在摄像机中看到士兵的正后背) ,自定义渲染除外。 我们将依次介绍其中按钮的作用。

  • 步兵帧手动渲染
    • 这一部分用于渲染步兵的各个动画。您可以通过点击特定按钮以输出特定朝向、特定面数的帧及其阴影帧。这里覆盖了原版步兵可能需要的所有帧动画按钮。
  • 自定义步兵帧
    • 这里是本脚本的进阶内容,是为引擎扩展所预留的 。您可以在这里手动指定一个帧前缀,并在下方选择这一帧前缀下,您需要渲染单向或者八向的图像。如果您需要特定方向的单向图像,您需要在渲染前手动调整。

动画渲染

这一部分用于渲染动画素材。通过点击动画渲染按钮进入该选项。 您将会看到一个标题为动画渲染子窗口的子窗口。 我们将依次介绍其中按钮的作用。

  • 一般动画
    • 借助这一按钮渲染一般的动画。
  • 开火动画
    • 借助这一按钮渲染32向开火动画,初始朝向向上。
  • 抛射体\建筑塔
    • 借助这一按钮渲染SHP抛射体和建筑物的炮塔。
  • 动态抛射体
    • 借助这一按钮渲染动态抛射体。
  • SHP载具的炮塔
    • 借助这一按钮渲染SHP载具的炮塔。

自定义渲染

这一部分用于渲染自定义素材。通过点击自定义渲染按钮进入该选项。 您将会看到一个标题为自定义渲染的子窗口。这里是本脚本的进阶内容,是为引擎扩展和进阶素材所预留的 。 我们将依次介绍其中选项的作用。

  • 旋转面数
    • 在这里选择您需要渲染多少个面数,实际上是将360°分为多少份。
  • 旋转方向
    • 在这里选择您需要的旋转方向。
  • 俯仰方向
    • 未实现。
  • 渲染范围
    • 可以选择渲染活动帧(动画)或者当前帧(一帧)
  • 影子方向
    • 可以选择影子朝向光照方向的背向(类似原版建筑)或者向下(类似原版飞行器)。
  • 影子大小
    • 可以选择完全尺寸影子或者50%比例的影子(类似原版飞行器)
  • 本体遮挡阴影
    • 可以选择本体是否会遮挡阴影。用于飞行器渲染。
  • 帧前缀
    • 手动指定渲染的帧文件名称前缀。您在这一部分不可以使用字符S,因为这一字符是为阴影所预留的。建议使用字母表中S之前的大写字母组合。
  • 开始渲染
    • 点击按钮按照上述选项进行渲染。

对象

这一部分用于导入预制件和四个预制动作,方便步兵素材的制作。

预制步兵零件

这一部分包含了一些简单的步兵武器(红枫自己做的,以 CC0协议公开至公有领域以便利步兵素材制作 )、来自原版的步兵泄露模型的身体护甲(以方便制作和原版画风一致的素材)以及四个常用步兵动画(FBX格式,可以导入到原版泄露的模型上)。 来自WW的模型由WW保留所有权利。 重要!导入动画时弹出的页面里需要选择仅更新动画选项! 由于过于简单明了不做进一步解释。

预制其他零件

这一部分仅包括一个来自原版泄露的步兵开火效果模型。您需要用缩放动画和移动动画来使用这一模型。由于过于简单明了不做进一步解释。

关于

这里有脚本的作者、版本和更新时间数据,以及帮助文档入口(指向我的博客的在线存档)。

常见问题(Q&A)

Q: 为什么在渲染确认页面取消渲染之后,按按钮都不起作用了? A: 这是因为MAXSCRIPT在报错的时候会自行终止脚本的进一步操作。这实际上是一个BUG,因为手动终止不应被认为是错误,将会试图在下一个版本中修复这一问题。

Q: 为什么很多功能不起作用? A: 因为作者还没有完成所有功能的开发。

Q: 我误覆盖我的场景了怎么办! A: 首先我在上面重复强调了备份的重要性,如果您还是犯了这种错误请您手动更换场景中的每一个材质,并删除所有灯光、地板、并重新导入渲染场景。

About

一个高级的RA2 SHP素材渲染脚本

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published