言語を切り替える
テーマを切り替える

WeChat ミニゲームエンジンプラグイン実践:設定からトラブル解決までの完全ガイド

ミニゲームの開発が終わり、ビルドしてみると——パッケージ 5.2M。

WeChat 管理画面にアップロードすると、即却下。メインパッケージは 4M 以下が必須。

リソース削除、テクスチャ圧縮、オーディオ調整を繰り返し、ようやく 3.9M で通過。しかしプレイヤーは起動に数秒待ち、離脱する人も少なくない。

根本原因は、エンジンコードが容量を大きく占めていること。

WeChat ミニゲームエンジンプラグインは WeChat v7.0.7 で追加された機能で、エンジンコードを分離して個別キャッシュできる。一度プラグイン有効ゲームをプレイしたユーザーは、あなたのゲームを開く際にエンジンを再ダウンロードしなくてよい——起動が 0.5〜2 秒速くなる。

設定自体は難しくないが、落とし穴がいくつかある。本記事では手順と対処法を整理し、試行錯誤の時間を省けるようにする。

エンジンプラグインとは何か、なぜ起動が速くなるか

まず仕組みを押さえれば、効果の理由が見える。

通常モードでは、各ミニゲームがゲームエンジン全体をダウンロードする。Cocos Creator 開発なら、プレイヤーは Cocos エンジン全体——約 1〜2M——を取得する。

WeChat v7.0.7 以降、エンジンはプラグインとして個別キャッシュできる:

最初のプレイヤー:エンジン+ゲームコードをフルダウンロードし、エンジンは WeChat クライアントにキャッシュ。

2 人目以降(同版キャッシュあり):エンジンは再利用、ゲームコードだけ取得。

別ゲーム(同エンジン・同版・プラグイン有効):キャッシュ済みエンジンをそのまま使える。

例えば、プレイヤーがゲーム A(Cocos 2.2.0)をプレイした直後に、あなたのゲーム B(2.2.0)を開く。エンジンはキャッシュ済み——起動 4 秒が 2 秒以下になることもある。

版が違う場合は? キャッシュ v2.2.0、ゲーム v2.2.1 なら、WeChat は差分だけ増分ダウンロードする。実測ではダウンロード量を 50% 以上削減できることが多い。

公式値は起動 0.5〜2 秒短縮。数字は小さく見えるが、離脱率は厳しい。平均起動 4 秒のゲームは、1 秒起動より 60% 離脱リスクが高い。1 秒ごとに価値がある。

対応エンジンは Cocos Creator、Egret(白鹭エンジン)、LayaAir の 3 つ。本記事は Cocos Creator 手順が中心だが、他エンジンも原理は同じで、設定だけやや異なる。

エンジンプラグインの有効化(完全設定フロー)

Cocos Creator 2.2.1 以降、機能は内蔵済み。設定は思ったより簡単——大半はエディタが自動処理する。

ステップ 1:ビルドパネルで「エンジン分離」にチェック

Cocos Creator を開き、「プロジェクト」→「ビルド公開」、または上部の「ビルド」をクリック。

WeChat ミニゲーム向けに「エンジン分離」(「エンジンプラグインを使用」「エンジン分離を許可」など表記ゆれあり)にチェック。

前提 2 点

  1. 内蔵エンジンを使うこと。カスタムエンジンは非対応。
  2. デバッグモードビルドではないこと。デバッグ時はエンジンが分離されず丸ごとパッケージされる。

ビルド完了後、出力に次の 3 ファイルが増える:

  • game.json:設定ファイル。plugins フィールド追加
  • plugin.json:プラグイン設定、エントリ指定
  • signature.json:プラグインファイル署名

いずれもエディタ自動生成。手編集不要。

ステップ 2:WeChat 開発者ツールでプロジェクトを開く

WeChat 開発者ツールで build/wechatgame を開く。

落とし穴:appid は自分で開設したものを使う。エディタ既定の汎用テスト ID ではダメ。

エンジンプラグインは権限検証が必要で、汎用 ID は通らず機能が無効になる。

右上「詳細」→「ローカル設定」で appid を入力。未所持なら WeChat 公衆プラットフォームでミニゲームアカウントを登録し、審査後に取得。

ステップ 3:実機テストで検証

「プレビュー」で QR を生成し、スマホでスキャン。

vConsole に次のようなログ:

plugin ***** inject success!

inject success なら成功。inject fail なら次章のトラブル対処へ。

バージョン要件

項目バージョン要件説明
WeChat クライアント>= 7.0.7未満はプラグイン非対応
WeChat 開発者ツール>= 1.02.1911181RC 可
基礎ライブラリ>= 2.9.0開発者ツールで設定
Cocos Creator>= 2.2.1旧版は非対応

要件未達でもゲームは動くが、エンジンはメインパッケージに丸ごと入る。

パフォーマンス向上の実測比較

原理だけでは足りない。データを見る。

同エンジン版:完全再利用

端末に Cocos Creator v2.2.0 がキャッシュ済み、あなたのゲームも v2.2.0 でプラグイン有効とする。

  • 通常:エンジン 1.5M + ゲーム 2.5M = 計 4M、起動約 4 秒
  • プラグイン:エンジン再利用、ゲーム 2.5M のみ、起動約 2 秒

最良ケース——エンジンの再ダウンロードなし。

異なるエンジン版:増分更新

ゲーム v2.2.1、キャッシュ v2.2.0 なら、差分のみ DL。増分は全量の 10〜30% 程度が多い。

  • 通常:エンジン 1.5M(v2.2.1 フル)
  • プラグイン:増分 0.15〜0.45M、70% 以上削減

パッケージ最適化の実例

カジュアルランゲームの実測:

最適化前:

  • 総パッケージ 6.8M(上限超過で不可)
  • テクスチャ 3.06M(45%)
  • オーディオ 1.7M(25%)
  • フォント 1.02M(15%)
  • エンジン 0.68M(10%)
  • その他 0.34M(5%)

プラグイン+リソース最適化後:

  • 総パッケージ 3.2M(アップロード可)
  • 初回読み込み 5 秒 → 3 秒(40% 短縮)

プラグインは最適化の一部。4M 突破には圧縮・コード削減が不可欠——後述。

起動速度まとめ

シナリオ通常プラグイン効果
同版初回起動エンジンフル DLキャッシュ再利用0.5〜2 秒短縮
異版起動1.5M フル DL0.15〜0.45M 増分約 70% 削減
旧 WeChat(7.0.6)正常動作プラグイン無効互換対応要

出典:Cocos 公式+ CSDN 実測。プロジェクト差はあるが、DL 削減・起動短縮の傾向は一貫。

5 つのよくあるトラブルと解決策

見た目は簡単でも、現場ではつまずきやすい。代表的 5 件と対処。

トラブル 1:汎用テスト appid では検証できない

症状

プレビュー後、ゲームは動くが vConsole に:

plugin ***** inject fail!

またはプラグイン関連ログが出ない。

原因

ビルド既定の汎用 appid(例 wx1234567890abcdef)はローカル用で、ミニゲーム権限なし。プラグイン検証に通らない。

手順

  1. 公衆プラットフォームで appid のミニゲーム権限を確認(ミニプログラムではない)
  2. 開発者ツール「詳細」→「ローカル設定」で自分の appid を入力
  3. 「キャッシュをクリア」→「すべてクリア」後、再プレビュー

確認plugin ***** inject success! が出れば OK。

トラブル 2:「プラグイン未認可、追加してください」

症状

プラグイン未認可使用、プラグインを追加してください

原因

プロジェクトにプラグイン未追加。WeChat 側で能動的に追加が必要。

手順

  1. 「プラグインを追加」をクリック
  2. CocosCreator を選択して追加
  3. 再ビルド
  4. 「追加可能なプラグイン情報が空」なら全キャッシュクリア後に再試行

確認:起動成功+ vConsole で注入成功。

トラブル 3:「コードパッケージ展開失敗」/「開発者ではない」

症状

コードパッケージ展開失敗、コードパッケージを確認してください

または:

ログインユーザーは当該ミニプログラムの開発者ではありません

原因

appid 誤り、またはログイン WeChat に開発者権限なし。

手順

  1. appid が正しいか(汎用 ID でないか)
  2. 公衆プラットフォームで開発者権限を確認
  3. なければ管理者に追加依頼
  4. 権限あるアカウントで開発者ツール再ログイン

確認:実機プレビュー正常なら OK。

トラブル 4:旧 WeChat で起動しない/極端に遅い

症状

自端末では OK だが、一部ユーザーが起動不可または超遅延。

原因

WeChat 7.0.7 未満は非対応。フルエンジン DL が必要。メインが 4M 付近なら合算で上限超過し起動不能も。

手順

A:フルエンジンで互換(推奨が多い)

「エンジン分離」のチェックを外し、全 WeChat 版で動くようにする。代わりにメインが肥大化——リソース最適化とセット。

B:WeChat アップグレード案内

起動時に版を検出し、7.0.7 未満なら「最新 WeChat で最適体験を」と表示。

確認:WeChat 7.0.6 以下の実機で起動確認。

トラブル 5:カスタムエンジンでは使えない

症状

カスタムエンジンで「エンジン分離」ビルド失敗、または成功してもプラグイン無効。

原因

公式内蔵エンジンのみ対応。カスタムは公共プラグインライブラリ非接続。

手順

A:内蔵エンジンへ

修正が少なければ、変更をゲーム側に移し内蔵+プラグインへ。

B:プラグインを諦める

大規模カスタムならプラグインを諦め、フルパッケージ+リソース最適化。

確認:「カスタムエンジンを使用」にチェックがあればプラグインは効かない。

エンジンプラグインとパッケージ最適化の組み合わせ

「プラグイン ON で 1〜2M 減る?」——分離しても初期パッケージサイズには計上される点を忘れないでほしい。

WeChat ルール:メイン 4M、総量 30M。プラグイン時、エンジンは実 DL には含まれないが宣言サイズには含まれる。メイン+エンジンが 4M 超なら却下されうる。

プラグインは第一歩。4M 突破には他手段が要る。

パッケージ構成

種別割合説明
テクスチャ45%PNG、アトラス
オーディオ25%WAV、MP3、OGG
フォント15%TTF
エンジン10%Cocos Creator
その他5%設定、JSON

テクスチャが最大。エンジン 10% でも、分離により他ゲームとキャッシュ共有の恩恵がある。

完全最適化チェーン

6M 超を 3M 台へ——4 段階:

1. エンジン分離(前述)

チェック一つ。毎回フル DL を避ける。

2. テクスチャ

  • TinyPNG で PNG 圧縮
  • TexturePacker で RGBA4444(約 50% 削減)
  • 「回転を許可」で利用率 +15%

2M テクスチャが 1M になる例も。

3. オーディオ

  • BGM:WAV → OGG Vorbis Q5(約 70% 削減)
  • SE:MP3 96kbps(約 65% 削減)

1.7M → 0.5M も可能。

4. コード削減

  • 2D:3D モジュール削除
  • オフライン:ネットワーク削除
  • 簡易パズル:物理エンジン削除
  • デバッグ時のみ統計、リリースで削除

ビルドパネル「エンジンモジュール削減」で必要モジュールのみ残す。

協調最適化の効果

前述ランゲーム:

項目削減
テクスチャ3.06M1.02M2.04M
オーディオ1.7M0.5M1.2M
エンジン0.68Mプラグイン分離キャッシュ再利用
フォント1.02M0.34M(サブセット)0.68M
総量6.8M3.2M53%

初回読み込み 5 秒 → 3 秒。

各施策は独立。まずプラグイン、次にテクスチャと段階的に進められる。

プロジェクトごとに比率は違う。ビルド分析でボトルネックを特定してから手を入れるのがよい。

まとめ

エンジンプラグインは WeChat ミニゲーム起動最適化の第一歩——設定にチェック、コード変更不要。

ただし単体では足りない。メインが 4M 付近なら旧 WeChat ユーザーは開けないことも。

効果的な流れ:

  1. プラグイン有効化で新 WeChat 体験を改善
  2. 構成分析(テクスチャ/オーディオ/フォント)
  3. 的を絞った最適化:RGBA4444、OGG/MP3、フォントサブセット
  4. WeChat 7.0.6 以下で互換確認
  5. 前後データを数値比較——感覚頼みにしない

これで 6.8M → 3.2M、起動 40% 短縮は現実的。待ち時間が減り、離脱も下がる。

私も同じ落とし穴にハマった。手順をまとめたので、あなたの時間が少しでも節約できれば。質問はコメントで——可能な限り答える。

WeChat ミニゲームエンジンプラグインを有効化する

ビルド設定から実機テストまでの完全な手順

⏱️ 目安時間: 10 分

  1. 1

    ステップ1: ビルドパネルでエンジン分離にチェック

    Cocos Creator を開き、メニューから「プロジェクト」→「ビルド公開」を選択。WeChat ミニゲームプラットフォームで「エンジン分離」にチェック。内蔵エンジンを使い、デバッグモード以外でビルドすること。
  2. 2

    ステップ2: WeChat 開発者ツールで appid を設定

    WeChat 開発者ツールでビルドディレクトリ(build/wechatgame)を開く。右上「詳細」→「ローカル設定」で、ミニゲーム権限のある appid を入力(汎用テスト ID は不可)。
  3. 3

    ステップ3: 実機プレビューで検証

    「プレビュー」で QR コードを生成し、スマホでスキャン。vConsole で `plugin ***** inject success!` が出るか確認。`inject fail` の場合は appid 権限とプラグイン認可を確認。
  4. 4

    ステップ4: プラグイン認可を追加

    「プラグイン未認可」と出たら「プラグインを追加」をクリックし、CocosCreator プラグインを追加。リストが空ならキャッシュをクリアして再試行。
  5. 5

    ステップ5: 旧バージョン互換テスト

    WeChat 7.0.6 以下の端末で起動確認。旧版はエンジンプラグイン非対応のため、エンジンコードはメインパッケージに丸ごと入る。

FAQ

エンジンプラグインはどのゲームエンジンに対応しているか?
WeChat ミニゲームエンジンプラグインは Cocos Creator、Egret(白鹭エンジン)、LayaAir の 3 エンジンに対応。原理は同じで、設定方法だけ若干異なる。
エンジンコードを分離しても初期パッケージサイズに計上されるか?
はい。分離して個別キャッシュされても、初期パッケージ宣言サイズ(4M 制限)には計上される。削減されるのは実ダウンロード量であり、宣言サイズではない。
カスタムエンジンでプラグインを使えるか?
いいえ。Cocos Creator 内蔵の公式エンジンのみ対応。カスタムエンジンは WeChat 公共プラグインライブラリに接続できず、プラグインを諦めるか内蔵エンジンに戻す必要がある。
旧 WeChat ユーザーへの影響は?
WeChat 7.0.7 未満は非対応。起動時にエンジンをフルダウンロードする。互換のため完全エンジンを残すか、アップグレードを案内する。
エンジンプラグインでパッケージはどれくらい減るか?
エンジンコードはパッケージの約 10%。分離後は同エンジンゲーム間でキャッシュ再利用。同版なら初回起動が 0.5〜2 秒短縮、異版なら増分ダウンロードで約 70% 削減。
プラグイン有効化後も他の最適化は必要か?
必要。第一歩に過ぎない。4M 制限突破にはテクスチャ圧縮(RGBA4444)、オーディオ最適化(OGG/MP3)、フォントサブセット、コード削減などが要る。

5分で読めます · 公開日: 2026年5月22日 · 更新日: 2026年6月8日

関連記事

コメント

GitHubアカウントでログインしてコメントできます