Web版特有の注意点

最終更新: 2019年1月18日

レンダラにWebGLコンテキストなどを渡す

CubismWebSamplesではパフォーマンス向上のため、ループ内でWebGLのゲッターの使用を控え、アプリケーション側でキャッシュしたものを渡しています。
描画前のフレームバッファ、ビューポートの情報をレンダラに渡す必要があります。

    // キャンバスサイズを渡す
    let viewport: number[] = [
        0, 
        0, 
        canvas.width,
        canvas.height
    ];

    this.getRenderer().setRenderState(frameBuffer, viewport);
    this.getRenderer().drawModel();

アロケータ、メモリ関連の説明

Native版とは違い、不要になった変数やオブジェクトはガベージコレクションにより解放されるため、これらに対して適切に参照を切る必要があります。

テクスチャのフォーマットについて

Web版ではライブラリの描画方式がPremultiplied方式になっているため、テクスチャ生成時にUNPACK_PREMULTIPLY_ALPHA_WEBGLをtrueにする必要があります。

gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, 1);
この記事はお役に立ちましたか?
はいいいえ
この記事に関するご意見・
ご要望をお聞かせください。