编辑骨骼组件(PinchSkeletonComponent)

编辑骨骼组件用于调整骨头构件参数,并且调整好的参数还可以保存,方便之后使用。您可以通过编辑器或代码来使用此功能。
在编辑器中,也需要您首先点击“添加组件”,添加一个编辑骨骼组件,然后再对其进行编辑。您可参考编辑器目录下的SampleProject\PinchFace编辑骨骼示例工程。下图是编辑器中的编辑骨骼组件的设置参数截图:
alt
这里主要介绍一下骨头构件参数捏造属性:

  • 加载骨头捏造配置:这里加载一个后缀名为xpc的骨头参数配置文件(XML格式),该文件需要您自己提前写好,根据模型的骨架编写您想调节的骨头参数,包括骨头名字、描述信息、控制类型(位置position/缩放scale/旋转rotate)、参数最小值、参数最大值、参数调节步长以初始值。界面中的“构件参数”部分就是读取这个文件自动生成的对应界面。
    altxpc配置文件示例
    格式如下:

    <Pinchedface Version="0">
      <!-- name: 名字 只支持英文 -->
      <!-- desc: 描述 显示在编辑器中的参数名 -->
      <!-- desc: 描述 显示在编辑器中的参数名 -->
      <!-- ControlType: SCALE | POS | ROTATE -->
      <!-- min: 最小值 指定值最小值 -->
      <!-- max: 最大值 指定值最大值 -->
      <!-- step: 步长 最小移动距离 -->
      <ControlElement name = "name" desc = "描述(支持中文)" ControlType = "SCALE" min = "0" max = "1" step = "0.05">
          <!-- Bone 骨骼信息 -->
          <!-- name 骨骼名字 -->
          <!-- value 默认值 -->
          <Bone name = "name" value = "1, 1, 1" />
      </ControlElement>
    </Pinchedface>
    
  • 重置:点击此按钮,会重置“构件参数”中的数值为xpc文件中的默认初始值。

  • 保存实例配置文件:点击此项,会将当前设置的所有参数保存到后缀名为xpc.instance的文件中,如下图所示,记录了所有参数信息,方便下次使用。它相当于当前调节的所有构件参数的一次快照,默认保存的名称为骨头参数配置名称+.instance,如果您想保存多个实例配置文件,需要对其重命名,否则,每次会覆盖前面的保存。 altxpc.instance实例配置文件 格式如下:

    <!-- PinchParamCfgPath: xpc文件路径 -->
    <PinchNode PinchParamCfgPath = "szPath">
      <!-- Name: 名字 对应配置文件中name -->
      <!-- Value: 当前值 用户编辑后的值 -->
      <!-- Min: 最小值 对应配置文件中的min -->
      <!-- Max: 最大值 对应配置文件中的max -->
      <!-- Step: 步长 对应配置文件中step -->
      <Param Name = "name" Value = "0.5" Min = "0" Max = "1" Step = "0.05"/>
    </PinchNode>
    
  • 加载实例配置文件:可选择已有的实例配置文件(后缀名为xpc.instance)加载进来,加载成功后会自动更新构件参数列表。

  • 构件参数:可通过调节滑竿或各个编辑框,来调节参数属性,调节好的参数可保存到实例配置文件中。当前的构件参数也会随着组件保存到场景文件中。

0.1. 在代码中获取

---加载捏骨配置文件(*.xpc)
pComponent:LoadPichParamConfig(szCfgPath)
---加载并应用实例文件(*.instance)
pComponent:ApplyPinchParamFromCfg(szInstancePath)
---重构节点参数
pComponent:ResetPinchParams(szPinchNodeName)
---设置节点参数
local pParam = XPinchParam()
pParam.strName = "name"
pParam.fValue = 1
pComponent:SetPinchParam(pParam)
---还能设置一组参数
local tbParam = {}
---假设tbParam中添加了好多XPinchParam
pComponent:SetPinchParams(tbParam)
---获取所有节点参数值
local tbParam = pComponent:GetPinchParamsByArray()
@Copyright © cosmos 2019 all right reserved,powered by Gitbook修订时间: 2021-04-12 18:28:14

results matching ""

    No results matching ""