2015-08-13 07:29:00 +00:00
|
|
|
#ifndef _DNAMP2_CSKR_HPP_
|
|
|
|
#define _DNAMP2_CSKR_HPP_
|
|
|
|
|
|
|
|
#include "BlenderConnection.hpp"
|
|
|
|
#include "../DNACommon/DNACommon.hpp"
|
|
|
|
#include "CINF.hpp"
|
2015-09-26 03:12:08 +00:00
|
|
|
#include "../DNAMP1/CSKR.hpp"
|
2015-08-13 07:29:00 +00:00
|
|
|
|
2016-02-13 09:02:47 +00:00
|
|
|
namespace DataSpec
|
2015-08-13 07:29:00 +00:00
|
|
|
{
|
|
|
|
namespace DNAMP2
|
|
|
|
{
|
|
|
|
|
2015-09-26 03:12:08 +00:00
|
|
|
struct CSKR : DNAMP1::CSKR
|
2015-08-13 07:29:00 +00:00
|
|
|
{
|
2015-09-26 03:12:08 +00:00
|
|
|
Delete expl;
|
|
|
|
|
|
|
|
const atInt16* getMatrixBank(size_t) const
|
2015-08-13 07:29:00 +00:00
|
|
|
{
|
2015-09-26 03:12:08 +00:00
|
|
|
return nullptr;
|
|
|
|
}
|
2015-08-13 07:29:00 +00:00
|
|
|
|
|
|
|
void weightVertex(HECL::BlenderConnection::PyOutStream& os, const CINF& cinf, atUint32 idx) const
|
|
|
|
{
|
|
|
|
atUint32 accum = 0;
|
|
|
|
for (const SkinningRule& rule : skinningRules)
|
|
|
|
{
|
2015-08-15 04:12:15 +00:00
|
|
|
if (idx >= accum && idx < accum + rule.vertCount)
|
2015-08-13 07:29:00 +00:00
|
|
|
for (const SkinningRule::Weight& weight : rule.weights)
|
|
|
|
os.format("vert[dvert_lay][%u] = %f\n",
|
|
|
|
cinf.getBoneIdxFromId(weight.boneId),
|
|
|
|
weight.weight);
|
|
|
|
accum += rule.vertCount;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif // _DNAMP2_CSKR_HPP_
|