sceneUpdated()vs invalidate()

问题描述 投票:0回答:1

viewer.impl.sceneUpdated()viewer.impl.invalidate()有什么区别?我已经看到它们一直在互换使用,但无法弄清原因。

invalidate()的情况下,我已经看到它使用每个可能的组合接受1到3个布尔参数,并且每次看起来都给出相同的结果。

autodesk-forge
1个回答
0
投票

viewer.impl.invalidate基本上是:

invalidate(needsClear, needsRender, overlayDirty)
//needsClear - full render - not (currently) interruptible, runs until completion, "locks" application, needs to re-render the whole scene from start
//needRender - progressive render - show a bit more each tick, runs unless interrupted by a move, control, etc.
//overlayDirty - overlay (like rollover highlighting etc) needs to be re-rendered

[sceneUpdated(objectsMoved, skipRepaint)基本上是

this.invalidate(!skipRepaint, false, !skipRepaint);

加上场景边界将被标记为要更新,并且阴影将被重新渲染。

© www.soinside.com 2019 - 2024. All rights reserved.