边缘世界 RimWorld

边缘世界 RimWorld

105 个评价
NareisLib多层图像框架[1.4/1.5/1.6]
5
   
奖励
收藏
已收藏
取消收藏
Mod, 1.4, 1.5, 1.6
文件大小
发表于
更新日期
7.834 MB
2023 年 7 月 5 日 上午 11:32
9 月 16 日 下午 11:56
7 项改动说明 ( 查看 )

订阅以下载
NareisLib多层图像框架[1.4/1.5/1.6]

描述
NareisLib

这是一个基于原版和外星人模组HumanAlienRace的自定义多层级渲染模组
------但是自1.5更新以来功能和原版部分重叠,都怪泰南(




1.针对原版的Def定义其图像
例如:
  • 对于一个defName为Test_Hair的HairDef;
  • 我们在另一个xml文件中定义一个MultiTexDef,defName随意,设置其originalDef属性为Test_Hair;
  • 这表示此MultiTexDef是针对这个名为Test_Hair的HairDef创建的,现在它们被关联在了一起;
  • 我们可以在MultiTexDef里设置许多图层,当游戏渲染我们关联的HairDef的时候,就会自动检测到我们在MultiTexDef里定义的图层并一起渲染。
*此为大致举例流程,实际使用请看:wiki操作介绍[github.com]*
可以作用于pawn身上的Def包括:BodyDef,HeadDef,HairDef,Apparel(衣服) ,HandTypeDef



2.自定义多层图像------目前这功能和原版重叠了,都怪泰南(
如字面意思,可以在MultiTexDef中定义多个相同或不同图层的图像;
但在列举图层之前需要先简单了解一些RimWorld对于Pawn(小人)的渲染机制:
  1. RimWorld对于Pawn的渲染主要使用来自Unity引擎的DrawMesh函数;
  2. 一个Pawn大致由两个部分组成,即头(Head)和身子(Body);
  3. 而如同函数字面意思,每个部分对应一种Mesh(网格),贴图需要绘制在Mesh上,Mesh来自游戏内部的网格池或者即时创建;
    ps:原版RimWorld无法渲染非常大的贴图即是因为网格的大小限制;
  4. 原版在绘制网格时,每层网格的间距非常小(小数点后两个零到三个零左右)而在间距小于gpu能处理的最高精度时,将由函数的执行顺序决定渲染顺序(即先执行的在底部);
  5. Rimworld的的渲染轴相较于传统unity游戏的区别是,它使用y轴作为高度轴(正常情况下为z),即x和z为图像的宽和高,y确定该图像的显示高度。
本模组通过对原版的渲染函数进行补充和修改,定义了一些可以指定的图层:
图层高度顺序由上往下递增
  1. BottomOverlay
  2. BottomHair
  3. BottomShell
  4. Body
  5. Apparel
  6. Hand
  7. Head
  8. FaceMask
  9. Hair
  10. FrontShell
  11. HeadMask
  12. Hat
  13. Overlay
其中的Body、Apparel、Head、FaceMask、Hair均为原版Pawn的身体部件,它们分别代表Pawn的身体、服装/装备/头部装备、头、脸妆/胡须、头发,而其他图层则是围绕这几个部件展开的。它们的默认渲染顺序也同上方展示的一致。
以上列出的图层并不是指最多只能设置13个层,以上层所起的作用是确定图层的y轴偏移基准。
通过在xml里指定图像为以上的任意图层,然后修改它的各项属性,由此达到多图层渲染的目的即为本模组的功能。



3.模组加载顺序
  • Harmony
  • Core
  • 各DLC
  • Human Alien Races
  • NareisLib(本模组)
  • 使用了NareisLib的模组
理论上未使用NareisLib的模组都可以排在它的前面。



4.已知问题(仅在边缘世界1.4版本存在)
边缘世界1.4版本需要订阅HugsLib 作为前置
与大部分修改了渲染逻辑的模组冲突;
已知冲突的有:
Hats Display Selection (影响帽子/头发渲染)
[CAT]Show Hair With Hats or Hide All Hats (影响帽子/头发渲染)
Combat Extended (影响帽子/头发渲染)
Vanilla Factions Expanded - Pirates (战棺影响全局人物渲染)
Dubs Apparel Tweaks (修改帽子和头发显示的功能影响帽子/头发渲染)
Stylish Rim (影响全局人物渲染)
RJW Animation Framework (影响全局人物渲染)

针对头发渲染部分的不兼容,目前此框架使游戏内的所有头发强制显示,后续会加入自定义设置。
1.5由于更改为与原版一致的渲染逻辑因此上述模组(理论上)是兼容的------谢谢泰南()



5.目前使用了本框架的模组



6.关于本框架
Github[github.com]
wiki操作介绍[github.com]

1.6移除部分屎山代码
23 条留言
ゆきんこ 9 月 13 日 下午 8:41 
希望取消hugsilb
boistenn 8 月 4 日 上午 8:28 
1.6 would be lovely I know coding takes time, wish you the best of luck and a wonderful day as this mod has been amazing.
flor4 7 月 29 日 上午 7:35 
跌,1.6有没有希望取消hugsilb的前置QAQ
光能族视监者 7 月 13 日 下午 10:18 
1.6plz
AlioJet 7 月 11 日 上午 7:37 
1.6plz
verniy709 2024 年 10 月 29 日 上午 6:59 
@清蒸五香龙 能不能详细讲一下问题是什么,我这边测试是没有问题。
奥妮克希娅 2024 年 10 月 27 日 上午 9:13 
似乎1.5的渲染依然与各类帽子显示冲突,使用帽子是否显示的mod后会导致安妮特莉丝渲染出现一些问题。希望可以修复一下。目前看来cat与ab的两种都有问题,别的没有测试。
Coco 2024 年 10 月 26 日 上午 11:06 
大佬NB
Device 2024 年 10 月 26 日 上午 5:42 
张庭秀 2024 年 10 月 24 日 下午 1:43 
好呀好呀,爱死你了大佬!