mirror of
https://github.com/MihailRis/voxelcore.git
synced 2026-10-04 18:41:51 +00:00
fix fatal error when skeleton is missing
This commit is contained in:
parent
b2df0a7e91
commit
8b5261f4f1
3 changed files with 16 additions and 5 deletions
|
|
@ -147,7 +147,7 @@ void Entities::loadEntity(const dv::value& map, Entity entity) {
|
|||
if (map.has(COMP_TRANSFORM)) {
|
||||
transform.deserialize(map[COMP_TRANSFORM]);
|
||||
}
|
||||
if (skeleton == nullptr) {
|
||||
if (skeleton == nullptr || skeleton->config == nullptr) {
|
||||
return;
|
||||
}
|
||||
std::string skeletonName = skeleton->config->getName();
|
||||
|
|
@ -397,6 +397,9 @@ void Entities::renderDebug(
|
|||
ctx.setLineWidth(2);
|
||||
for (auto [entity, transform, skeleton] : view.each()) {
|
||||
auto config = skeleton.config;
|
||||
if (config == nullptr) {
|
||||
continue;
|
||||
}
|
||||
const auto& pos = transform.pos;
|
||||
const auto& size = transform.size;
|
||||
if (frustum && !frustum->isBoxVisible(pos - size, pos + size)) {
|
||||
|
|
@ -434,9 +437,11 @@ void Entities::render(
|
|||
}
|
||||
|
||||
const auto* rigConfig = skeleton.config;
|
||||
rigConfig->render(
|
||||
assets, batch, skeleton, transform.rot, pos, size
|
||||
);
|
||||
if (rigConfig) {
|
||||
rigConfig->render(
|
||||
assets, batch, skeleton, transform.rot, pos, size
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue