新しいLive2D公式コミュニティ(日本向け)が公開されました!
ぜひご利用ください!
Live2D公式コミュニティ

■このコミュニティの今後について
このコミュニティ(forum.live2d.com)につきましては、しばらくの間新コミュニティと並行して運営しますが、2022年内を目処に閉鎖する予定です。
閉鎖時期や内容については決定次第お知らせいたします。
海外向けコミュニティについては変更ございません。
Live2Dに関するユーザーのみなさま同士の交流・ご質問・不具合の報告・提案・要望などについて是非お寄せください。
※Live2D公式スタッフからの発言や回答については確約できないことを予めご了承ください。

Live2D ヘルプ

Cubism Editorダウンロード / 動作環境
Cubism SDKダウンロード / 対応表
Cubism 製品利用ライセンス(SDK含)

Cubism 製品のライセンスについてのお問い合わせはこちら
nizima 及び nizima 製品についてのお問い合わせはこちら
【各最新OSの対応状況について】
Cubism Editorは 4.1.02 正式版以降でWindows 11 及び macOS Monterey に対応しております。ぜひ最新版をご利用ください。
※macOSをお使いの方でOSアップデートする際は必ずCubism Editorのライセンスを解除してください。
Cubism EditorをインストールしているmacOSをアップグレードしたい
Cubism SDKについては各SDKのREADMEまたはNOTICEをご確認ください。

【Mac各機種への対応状況について】
現在、Cubism EditorはApple M1チップ搭載機種には対応しておりません。
詳細は 動作環境 をご参照ください。
関連するお問い合わせへの対応はこの文章をもって代えさせていただきます。
Cubism 製品のマニュアル・チュートリアルはこちら
 
Cubism Editorマニュアル    Cubism Editorチュートリアル    Cubism SDKマニュアル    Cubism SDKチュートリアル

Cubism 3 SDK for Web での複数モデルの表示

編集済: 7月 2019 Cubism 3 SDK
Cubism 3 SDK for Web で2つのキャンバスに別々にモデルを表示する際に、WebGLに関するエラーが発生し、片方のモデルしか表示されません。

・公式のサンプル実装を用いたエラーの再現方法

1. 公式のサンプルを https://github.com/Live2D/CubismWebSamples からダウンロードまたはクローン

3. Sample/TypeScript/Demo/src/lappdelegate.ts の 61〜64行目を以下のように書き換え

public initialize(id: string): boolean
{
// キャンバスの取得
canvas = <HTMLCanvasElement>document.getElementById(id);


3. Sample/TypeScript/Demo/index.html の 11〜18行目を以下のように書き換え

<canvas id="canvas1" width="950" height="500"></canvas>
<canvas id="canvas2" width="950" height="500"></canvas>


4. Sample/TypeScript/Demo/src/main.ts の 13〜18行目を以下のように書き換え

const canvas1 = new LAppDelegate;
const canvas2 = new LAppDelegate;
if(canvas1.initialize('canvas1') == false)
{
return;
}
canvas1.run();
if(canvas2.initialize('canvas2') == false)
{
return;
}
canvas2.run();


5. https://github.com/Live2D/CubismWebSamples の手順に従ってビルドし、サーバーを起動

6. 実行結果を確認すると、片方のモデルしか表示されず、コンソールに以下のようなエラーが出力されます




ご担当者様、もしくは同じような状況に遭遇した方、解決策について教えていただけると大変幸いです。
何卒宜しくお願い致します。

コメント

  • @yuki さん

    Cubism 3 SDK for Webは、複数のGLコンテキストに対しての描画は想定されておりません。
    シェーダの生成やモデルの描画は、最後に取得したGLコンテキストに対してのみ行っています。

    複数のcanvasへの描画は、プロジェクト全体でシェーダの生成やモデルの切り替え、描画を行うGLコンテキストを複数保持、管理するように修正していただけば対応することが可能です。
コメントするにはサインインまたは登録して下さい。