Revision control

Copy as Markdown

// Copyright (C) 2025 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
import QtQuick
import QtQuick3D
Node {
id: root
property var currentElement
property alias accessoryModel: matLib.accessoryModel
scale: Qt.vector3d(125, 125, 125)
Skin {
id: skin
joints: [
universalRigged,
universalRiggedPelvis,
universalRiggedLThigh,
universalRiggedLCalf,
universalRiggedLFoot,
universalRiggedRThigh,
universalRiggedRCalf,
universalRiggedRFoot,
universalRiggedSpine1,
universalRiggedSpine2,
universalRiggedSpine3,
universalRiggedRibcage,
universalRiggedLCollarbone,
universalRiggedLUpperarm,
universalRiggedLForearm,
universalRiggedLPalm,
universalRiggedRCollarbone,
universalRiggedRUpperarm,
universalRiggedRForearm,
universalRiggedRPalm,
universalRiggedNeck,
universalRiggedHead,
universalRiggedEar_L,
universalRiggedEar_R,
universalRiggedTail,
universalRiggedLPlatform,
universalRiggedRPlatform
]
inverseBindPoses: [
Qt.matrix4x4(0.0521354, 0.997101, -0.0554131, 0.00566421, -0.0998558, 0.0604155, 0.993166, -0.0113128, 0.993635, -0.0462458, 0.102716, -0.000159482, 0, 0, 0, 1),
Qt.matrix4x4(0.0524837, 0.996885, -0.0588782, -0.129069, -0.0996906, 0.0638952, 0.992965, -0.00123965, 0.993634, -0.0462449, 0.102733, -0.00015946, 0, 0, 0, 1),
Qt.matrix4x4(-0.0148187, -0.999795, 0.0138209, 0.11472, -0.101994, 0.0152618, 0.994668, -0.00236435, -0.994675, 0.0133301, -0.102199, 0.0683189, 0, 0, 0, 1),
Qt.matrix4x4(-0.0295033, -0.961289, -0.273957, 0.0573166, -0.139327, -0.267446, 0.953447, 0.0161199, -0.989807, 0.0662993, -0.126043, 0.0652713, 0, 0, 0, 1),
Qt.matrix4x4(-0.109644, -0.181131, 0.977328, 0.0139247, 0.0265916, 0.982369, 0.185049, -0.00465917, -0.993615, 0.0462783, -0.102895, 0.0657461, 0, 0, 0, 1),
Qt.matrix4x4(-0.0802324, -0.996752, 0.00698451, 0.114732, -0.102266, 0.0152015, 0.99464, -0.00235578, -0.991516, 0.0790881, -0.103153, -0.0679977, 0, 0, 0, 1),
Qt.matrix4x4(-0.00386155, -0.962573, -0.270995, 0.0573048, -0.0834417, -0.269742, 0.95931, 0.0160968, -0.996506, 0.0263168, -0.0792772, -0.0649614, 0, 0, 0, 1),
Qt.matrix4x4(-0.109275, -0.181181, 0.977359, 0.0139144, 0.026588, 0.982364, 0.185081, -0.00465573, -0.993656, 0.0462107, -0.10253, -0.0654343, 0, 0, 0, 1),
Qt.matrix4x4(0.0233255, 0.976558, 0.213989, -0.130806, -0.110221, -0.21023, 0.971419, 0.0362973, 0.993634, -0.0462449, 0.102734, -0.000159445, 0, 0, 0, 1),
Qt.matrix4x4(0.0593366, 0.989962, -0.128276, -0.226188, -0.0957679, 0.133555, 0.986403, -0.0429914, 0.993634, -0.0462451, 0.102731, -0.000159361, 0, 0, 0, 1),
Qt.matrix4x4(0.0717905, 0.96266, -0.261021, -0.299745, -0.0868268, 0.266734, 0.959851, -0.0844726, 0.993634, -0.0462447, 0.102734, -0.000159497, 0, 0, 0, 1),
Qt.matrix4x4(0.052136, 0.997101, -0.0554134, -0.397215, -0.0998731, 0.0604167, 0.993164, -0.00179365, 0.993634, -0.0462453, 0.102733, -0.000159269, 0, 0, 0, 1),
Qt.matrix4x4(0.985651, -0.15429, -0.0684685, 0.0373958, 0.100984, 0.213951, 0.971611, -0.081982, -0.135261, -0.964583, 0.226462, 0.384641, 0, 0, 0, 1),
Qt.matrix4x4(0.788415, -0.589832, 0.174643, 0.0926977, -0.272261, -0.0800077, 0.958892, 0.0885573, -0.551612, -0.803553, -0.223668, 0.386452, 0, 0, 0, 1),
Qt.matrix4x4(0.716768, -0.632828, 0.292869, 0.0227472, -0.436741, -0.0799974, 0.896023, 0.128777, -0.5436, -0.770149, -0.333722, 0.374363, 0, 0, 0, 1),
Qt.matrix4x4(0.644705, -0.700983, 0.304926, -0.0503604, 0.619877, 0.712823, 0.328077, -0.385019, -0.447335, -0.0224966, 0.894084, 0.118375, 0, 0, 0, 1),
Qt.matrix4x4(-0.96083, -0.0636989, -0.269718, 0.0377081, -0.277121, 0.231549, 0.932518, -0.0819213, 0.00305259, 0.970736, -0.240131, -0.38462, 0, 0, 0, 1),
Qt.matrix4x4(-0.858261, -0.513195, 0.00439038, 0.0929622, 0.0622307, -0.0955749, 0.993475, 0.0885033, -0.509427, 0.852934, 0.113965, -0.386281, 0, 0, 0, 1),
Qt.matrix4x4(-0.816522, -0.561467, 0.134339, 0.0229932, 0.235371, -0.111279, 0.965514, 0.128669, -0.527155, 0.819983, 0.223014, -0.374191, 0, 0, 0, 1),
Qt.matrix4x4(-0.755012, -0.635839, 0.160206, -0.0501357, -0.605613, 0.769859, 0.201372, -0.384822, -0.251376, 0.0550157, -0.966325, -0.118263, 0, 0, 0, 1),
Qt.matrix4x4(0.0590774, 0.990319, -0.125607, -0.396243, -0.0959311, 0.130877, 0.986747, -0.0294173, 0.993634, -0.0462448, 0.102734, -0.000159438, 0, 0, 0, 1),
Qt.matrix4x4(0.052136, 0.997101, -0.055413, -0.5211, -0.0998731, 0.0604163, 0.993165, 0.00750447, 0.993634, -0.0462453, 0.102733, -0.000159192, 0, 0, 0, 1),
Qt.matrix4x4(0.339831, 0.930243, 0.138433, -0.983872, -0.156166, -0.0893358, 0.983683, 0.166819, 0.92743, -0.355904, 0.114913, 0.144129, 0, 0, 0, 1),
Qt.matrix4x4(-0.273977, 0.95881, 0.0749705, -0.983774, -0.0568354, -0.0939588, 0.993953, 0.166803, 0.960056, 0.268059, 0.0802368, -0.144432, 0, 0, 0, 1),
Qt.matrix4x4(0.0757279, -0.400997, -0.912944, -0.0664403, 0.0834149, 0.914912, -0.394942, -0.165663, 0.993634, -0.046245, 0.102733, -0.000159459, 0, 0, 0, 1),
Qt.matrix4x4(0.0521356, 0.997101, -0.0554131, 0.00566419, -0.0998559, 0.0604155, 0.993166, -0.0144963, 0.993635, -0.046246, 0.102716, -0.0657465, 0, 0, 0, 1),
Qt.matrix4x4(0.0521356, 0.997101, -0.0554131, 0.00566423, -0.0998559, 0.0604155, 0.993166, -0.0144963, 0.993635, -0.046246, 0.102716, 0.0654275, 0, 0, 0, 1)
]
}
Node {
id: bodyRigged
rotation: Qt.quaternion(0.707107, 0.707107, 0, 0)
AccessoryMaterialLibrary {
id: matLib
}
Node {
id: universalArmature
position: Qt.vector3d(-0.0012664840323850513, 0.011565704829990864, 0.004971697460860014)
rotation: Qt.quaternion(0.997986, -0.0290157, -0.0246449, 0.0507453)
Model {
id: toyNodeModel
source: root.currentElement.customMesh
skin: skin
materials: animationMaterial
}
Node {
id: universalRigged
position: Qt.vector3d(-1.0186340659856796e-10, 1.2951204553246498e-09, 3.41970007866621e-10)
rotation: Qt.quaternion(0.707107, 5.39183e-08, 0.707107, -5.49885e-08)
}
Node {
id: universalRiggedPelvis
position: Qt.vector3d(-5.922629497945309e-09, -0.010523475706577301, -0.1347365826368332)
rotation: Qt.quaternion(0.707106, -0.00123974, 0.707106, -0.00122761)
Node {
id: universalRiggedLThigh
position: Qt.vector3d(-0.012414590455591679, 0.00680693332105875, 0.06434483826160431)
rotation: Qt.quaternion(-0.0164644, -0.0243565, 0.999568, -0.00033351)
Node {
id: universalRiggedLCalf
position: Qt.vector3d(0.05875241756439209, -4.958128556609154e-07, 3.4319236874580383e-07)
rotation: Qt.quaternion(0.989259, 0.0154112, -0.0247383, -0.143236)
Node {
id: universalRiggedLFoot
position: Qt.vector3d(0.05307980626821518, -1.7031561583280563e-07, 3.070454113185406e-08)
rotation: Qt.quaternion(0.674376, -0.00462269, 0.0147114, 0.738227)
}
}
}
Node {
id: universalRiggedRThigh
position: Qt.vector3d(-0.012414581142365932, 0.006806946359574795, -0.06434483826160431)
rotation: Qt.quaternion(0.0164537, -0.024393, 0.999567, 0.000334035)
Node {
id: universalRiggedRCalf
position: Qt.vector3d(0.05875237286090851, -4.461035132408142e-07, -3.611203283071518e-07)
rotation: Qt.quaternion(0.98929, -0.0154181, 0.024642, -0.143043)
Node {
id: universalRiggedRFoot
position: Qt.vector3d(0.05307982489466667, 1.555308699607849e-07, -1.2078089639544487e-08)
rotation: Qt.quaternion(0.674507, 0.00466852, -0.0146408, 0.738109)
}
}
}
Node {
id: universalRiggedSpine1
position: Qt.vector3d(0.006677897181361914, -0.0005109388148412108, -2.1245796233415604e-09)
rotation: Qt.quaternion(0.99049, -1.53498e-07, -2.71501e-08, 0.137586)
Node {
id: universalRiggedSpine2
position: Qt.vector3d(0.09655272960662842, 2.60770320892334e-08, -1.0433723218739033e-08)
rotation: Qt.quaternion(0.985061, 1.21159e-06, -1.42053e-07, -0.172207)
Node {
id: universalRiggedSpine3
position: Qt.vector3d(0.08225015550851822, -3.1548552215099335e-08, -1.0419171303510666e-08)
rotation: Qt.quaternion(0.997682, -1.23839e-06, -1.21353e-08, -0.068047)
Node {
id: universalRiggedRibcage
position: Qt.vector3d(0.08838807046413422, -4.6566128730773926e-08, 1.9266735762357712e-08)
rotation: Qt.quaternion(0.994504, 1.69735e-07, -3.02714e-07, 0.104698)
Node {
id: universalRiggedLCollarbone
position: Qt.vector3d(-0.00253615016117692, 0.0148304533213377, 0.004399856552481651)
rotation: Qt.quaternion(0.671309, 0.00376807, -0.730239, -0.126811)
Node {
id: universalRiggedLUpperarm
position: Qt.vector3d(0.14280031621456146, -7.450580596923828e-08, -7.613562047481537e-08)
rotation: Qt.quaternion(0.941044, 0.206179, -0.240757, 0.118159)
Node {
id: universalRiggedLForearm
position: Qt.vector3d(0.10050942748785019, -1.6065314412117004e-08, 7.89295881986618e-08)
rotation: Qt.quaternion(0.995913, 0.0540124, -0.0201404, 0.0695285)
Node {
id: universalRiggedLPalm
position: Qt.vector3d(0.11251094192266464, -1.4901161193847656e-08, -1.9837170839309692e-07)
rotation: Qt.quaternion(0.693424, -0.718796, -0.0476581, -0.0149871)
Node {
id: accessoryHolder_Hand_Left
position: Qt.vector3d(-0.008436787873506546, -0.2557981610298157, -0.12775936722755432)
rotation: Qt.quaternion(0.103318, 0.429085, 0.865849, -0.235621)
CustomModel {
id: metalBracelet_Left
position: Qt.vector3d(0.158, 0.048, -0.24153)
rotation: Qt.quaternion(0.707972, 0.0986974, 0.0879475, 0.693758)
visible: AccessoryState.metalBracelet_LeftVisible
source: "meshes/cylinder_009_mesh.mesh"
materials: matLib.items_generic
}
}
}
}
}
}
Node {
id: universalRiggedRCollarbone
position: Qt.vector3d(-0.002536127809435129, 0.014830454252660275, -0.004399869590997696)
rotation: Qt.quaternion(0.671308, -0.00376816, 0.73024, -0.126811)
Node {
id: universalRiggedRUpperarm
position: Qt.vector3d(0.14280030131340027, -1.862645149230957e-08, -6.52798917144537e-08)
rotation: Qt.quaternion(0.941044, -0.206179, 0.240757, 0.118159)
Node {
id: universalRiggedRForearm
position: Qt.vector3d(0.10050933808088303, 1.4901161193847656e-08, 1.7229467630386353e-08)
rotation: Qt.quaternion(0.995913, -0.0540127, 0.0201401, 0.0695281)
Node {
id: universalRiggedRPalm
position: Qt.vector3d(0.11251107603311539, 3.725290298461914e-08, -3.67872416973114e-08)
rotation: Qt.quaternion(0.693424, 0.718796, 0.0476583, -0.0149872)
Node {
id: accessoryHolder_Hand_Right
position: Qt.vector3d(-0.20556066930294037, -0.35123521089553833, 0.061212554574012756)
rotation: Qt.quaternion(0.568684, 0.349602, 0.211173, -0.713991)
scale: Qt.vector3d(0.999999, 1, 0.999999)
CustomModel {
id: metalBracelet_Right
position: Qt.vector3d(-0.19480888545513153, 0.04038756340742111, -0.3259944021701813)
rotation: Qt.quaternion(-0.0889828, 0.909527, -0.323377, 0.2455)
visible: AccessoryState.metalBracelet_RightVisible
source: "meshes/cylinder_009_mesh.mesh"
materials: matLib.items_generic
}
}
}
}
}
}
Node {
id: universalRiggedNeck
position: Qt.vector3d(0.0001160837709903717, -0.0005109547637403011, -9.851646609604359e-09)
rotation: Qt.quaternion(0.999372, -4.15573e-07, 2.12591e-07, -0.0354308)
Node {
id: universalRiggedHead
position: Qt.vector3d(0.12408043444156647, 4.0512531995773315e-08, -3.768946044147015e-09)
rotation: Qt.quaternion(0.999372, 4.27221e-07, -2.21328e-07, 0.035431)
Node {
id: universalRiggedEar_L
position: Qt.vector3d(0.4717787802219391, -1.1548399925231934e-07, 0.17517535388469696)
rotation: Qt.quaternion(0.984193, -0.0126966, -0.157936, 0.0791197)
}
Node {
id: universalRiggedEar_R
position: Qt.vector3d(0.4717785120010376, -1.1734664440155029e-07, -0.17517589032649994)
rotation: Qt.quaternion(0.984193, 0.0126967, 0.157936, 0.0791197)
}
EyesAccessories {
id: eyesAccessories
matLib: matLib
}
MouthAccessories {
id: mouthAccessories
currentElement: root.currentElement
matLib: matLib
}
EyewearAccessories {
id: eyewearAccessories
matLib: matLib
}
HeadwearAccessories {
id: headwearAccessories
matLib: matLib
}
}
}
}
BodyAccessories {
id: bodyAccessories
matLib: matLib
}
}
}
}
Node {
id: universalRiggedTail
position: Qt.vector3d(0.0038796490989625454, -0.12033336609601974, 1.714215613901615e-08)
rotation: Qt.quaternion(0.573576, 5.51413e-08, -3.18342e-08, -0.819152)
}
}
Node {
id: universalRiggedLPlatform
position: Qt.vector3d(0.06558699160814285, 0.0031835290137678385, 3.4924596548080444e-10)
rotation: Qt.quaternion(0.707107, 1.77807e-08, 0.707107, -3.14455e-08)
}
Node {
id: universalRiggedRPlatform
position: Qt.vector3d(-0.06558700650930405, 0.003183548804372549, 7.8580342233181e-10)
rotation: Qt.quaternion(0.707107, 1.77807e-08, 0.707107, -3.14455e-08)
}
Node {
id: neutral_bone
}
}
}
AnimationMaterial {
id: animationMaterial
baseColorSource: root.currentElement.baseColor
normalMapSource: root.currentElement.normalMap
}
}