Это трассировка стека:
Код: Выделить всё
#0 0x0000559e3a3e96f2 in removeleaf(btDbvt*, btDbvtNode*) ()
#1 0x0000559e3a3ebfc6 in btDbvt::update(btDbvtNode*, btDbvtAabbMm&) ()
#2 0x0000559e3a3cb303 in btCompoundShape::updateChildTransform(int, btTransform const&, bool) ()
#3 0x0000559e3a3cb45e in btCompoundShape::setLocalScaling(btVector3 const&) ()
#4 0x0000559e3a3cb3ff in btCompoundShape::setLocalScaling(btVector3 const&) ()
Код: Выделить всё
Asset::ptr_t asset = Asset::loadAsset("box.GLB");
btCollisionShape_ptr shape = asset->createCollisionShape();
shape->setLocalScaling({1, 1, 1});
std::shared_ptr Asset::createCollisionShape() {
std::shared_ptr self = shared_from_this();
ASSERT(self, "Failed to get self shared? possible constructed via new?");
class LocalShape {
public:
LocalShape(std::shared_ptr parent)
: parent_(parent) {
}
std::shared_ptr parent_;
btCompoundShape shape_;
};
auto proxy = std::make_shared(self);
proxy->shape_.addChildShape(btTransform::getIdentity(), collisionShape_.get());
return std::shared_ptr(proxy, &(proxy->shape_));
}
А может быть, поскольку ошибка возникает не всегда, я где-то портю память. но запуски под asan мне ничего полезного не дали.
подскажите, что делать и как попробовать решить эту проблему.
С уважением, max
Byllet3d версия 3.17 ( ebe1916b9 07.05.2021 | Запрос на слияние № 3834 от erwincoumans/master (HEAD, тег: 3.17) [erwincoumans])
Подробнее здесь: https://stackoverflow.com/questions/785 ... de-library
Мобильная версия