Step By Work

大阪のホームページ制作会社

HTML5のcanvasを使用して、マウス座標からの直線を引くアニメーション【CreateJS】

Date: 2016.07.06
Update: 2023.10.04

執筆・監修

上杉 洋 Hiroshi Uesugi

1991年生まれ。 株式会社ステップバイワーク代表。 2013年に株式会社n.uを設立。 2015年にStep by workとして独立。 2021年株式会社ステップバイワークとして法人化。 HP制作/SEO対策/コンテンツ制作/動画制作/YouTube運用/写真撮/WordPressを全て一人でやります。

HTML5のCanvas機能を使用してマウスの座標から線を引くというアニメーションを作りました。

右側の結果の場所にマウスをホバーしてみてください。

See the Pen NrxYEp by Atushi (@Yoshikawa) on CodePen.

アニメーションの処理速度の問題からCreateJSを使用して同じ処理をする

上記の方法では処理落ちが発生してしまいアニメーションの速度が一定ではなかったのでCreateJSを使用し、同じアニメーションを実行することにしました。

マウスに追従する線が引けない問題

CreateJSでマウスに追従する線を引くのに苦労しました。 最初の方法では毎フレームカンバスをクリアしていたので問題なかったのですが、CreateJSではオブジェクトをremoveChildしてもインスタンスが残るので新たに生成する必要がありました。
毎フレーム新たなインスタンスを作成してることになりますが、問題ないのでしょうか?
でもCreateJSでは4.0でメモリの扱いが変更したらしいのでガーベジコレクションに期待したいと思います。

CreateJSで同じアニメーションを実装

結果、なんとか同じ処理をすることができました。

今回は簡単な実装ですが今後画像のアニメーションなども追加して装飾をしていきたいです。

この記事へのコメント 0件