updateAfterEvent()は必要か?
私が書くスクリプトではフレームループで何らかの動作を行う場合、”updateAfterEvent()”コマンドを明示的に入れているのですが、アマゾンのレビューで「毎フレーム再描画されるから明示的にupdateAfterEvent()つけるのは無駄。」と書かれているので私なりの考え方を書きたいと思います。
まず簡単に言ってしまうと、これは手癖のような単なる習性ですので入れるかどうかはそれぞれの方の判断で良いと思います。フレームレートとの兼ね合わせであくまで見た目の動作に違和感がなければですが・・・
私自身ActionScriptでプログラムを覚えたわけではありませんので、これまでHyperTalk、Lingo、Basic、C、C++、Java等々でいろいろと経験を積む中で画面のリフレッシュを行うような操作は明示的にプログラミングすると言う習性ができてしまっています。
それとともに、下記のような記述スタイルがもっとも大きな理由です。
- 1フレームでスクリプトを記述してること。
- stop()でフレームを停止していること。(フレームを移動していない)
特に(2)のようにStop()アクションによってフレームの移動を停止しているのでタイムライン上はフレームループをしませんので自動的に再描画されるという考えはいまいち私に馴染みません。
ただし、フレームが停止していても設定したフレームレートでonEnterFrameのようなイベントが常に発生していますので、updateAfterEvent()を入れなくても画面上問題なければそれはそれで良しです。
まあ、私にとっては、ある意味”オマジナイ”のようなものですね(笑)
ということで、たとえ「無駄」だとしても今後も書くと思いますよ。私のスタイルなんで・・・
みなさんはどうしてますか?