问答详情
源自:8-3 clip和剪辑区域

最后探照灯放大缩小那里,为什么var isIncrease = true;放在update函数里的运行结果是探照灯放大到700时一直抖动呢?

最后探照灯放大缩小那里,为什么var isIncrease = true;放在update函数里的运行结果是探照灯放大到700时一直抖动呢?

为什么var isIncrease = true 这一句一定要放在外面?

提问者:满满肥肉的夏天 2016-05-15 21:52

个回答

  • fengyunzhu
    2016-05-23 18:40:38
    已采纳

    看一下逻辑就知道原因了

    当radius大于700时(比方说是705), isIncrease设为了false,接着radius开始缩小执行-5操作,此时radius为700

    按原先逻辑,再次执行update时,因为isIncrease是false,radius还是执行-5操作,一直到小于150时,但是你把var isIncrease = true放在了update里面,这时radius为700 ,isIncrease为true,那么radius要执行+5操作,radius变为705,然后超过700,又执行-5操作,变为700,又执行+5操作,所以探照灯放大到700时一直抖动