Yes I had this issue too, but when trying to share my QShaderProgram not
changing parents.

I simply can't progress as fast as want because of a lot of small bugs like
this one and sadly I don't know how the backend is supposed to work to be
able to contribute.


In our homebrew engine I had similar issue, and the simplest way to solve
them was to check ptr in the 3D engine instead of using assert, because it
can be much hard from the user view to ensure the validity of all nodes.



2016-10-26 16:56 GMT+02:00 Oleg Evseev <ev.m...@gmail.com>:

> Hi,
>
> I had problems similar to what you describe https://bugreports.qt.io/
> browse/QTBUG-55093 in qt 5.7. I haven't check it on 5.8.
>
> 2016-10-26 16:37 GMT+03:00 Xavier Bigand <flamaros.xav...@gmail.com>:
>
>> Hi,
>>
>> I have to change to parent to nullptr to make some entities invisible,
>> but when I put them visible back I get a crash.
>>
>> The crash is a segfault in the method void 
>> Entity::setNodeManagers(NodeManagers
>> *manager) because the this pointer is null.
>>
>> Here is the callstack :
>>   Qt53DRenderd.dll!Qt3DRender::Render::Entity::setNodeManagers
>> (Qt3DRender::Render::NodeManagers * manager) Line 140 C++
>>   Qt53DRenderd.dll!Qt3DRender::Render::RenderEntityFunctor::create(const
>> QSharedPointer<Qt3DCore::QNodeCreatedChangeBase> & change) Line 562 C++
>>   Qt53DCored.dll!Qt3DCore::QAbstractAspectPrivate::createBackendNode(const
>> QSharedPointer<Qt3DCore::QNodeCreatedChangeBase> & change) Line 198 C++
>>   Qt53DCored.dll!Qt3DCore::QAbstractAspectPrivate::sceneNodeAd
>> ded(QSharedPointer<Qt3DCore::QSceneChange> & change) Line 163 C++
>> Qt53DCored.dll!Qt3DCore::QChangeArbiter::distributeQueueChan
>> ges(std::vector<QSharedPointer<Qt3DCore::QSceneChange>,std::allocator<
>> QSharedPointer<Qt3DCore::QSceneChange> > > * changeQueue) Line 120 C++
>>   Qt53DCored.dll!Qt3DCore::QChangeArbiter::syncChanges() Line 180 C++
>>   Qt53DCored.dll!Qt3DCore::QAspectManager::exec() Line 282 C++
>>   Qt53DCored.dll!Qt3DCore::QAspectThread::run() Line 88 C++
>>   Qt5Cored.dll!QThreadPrivate::start(void * arg) Line 380 C++
>>   [External Code]
>>   [Frames below may be incorrect and/or missing, no symbols loaded for
>> kernel32.dll]
>>
>>
>>
>> I am also curious to know what does the enable flag on QEntity, it seems
>> easier to use it to control the visibility of object and maybe faster.
>>
>>
>> PS: I am using the git branch 5.8
>>
>>
>> --
>> Xavier
>>
>> _______________________________________________
>> Interest mailing list
>> Interest@qt-project.org
>> http://lists.qt-project.org/mailman/listinfo/interest
>>
>>
> _______________________________________________
> Interest mailing list
> Interest@qt-project.org
> http://lists.qt-project.org/mailman/listinfo/interest
>
>


-- 
Xavier
_______________________________________________
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest

Reply via email to