Pixi.js: Chrome 74 w / GTX780を䜿甚する堎合の「このブラりザではWebGLはサポヌトされおいたせん」

䜜成日 2019幎05月19日  Â·  43コメント  Â·  ゜ヌス: pixijs/pixi.js


゚ラヌをグヌグルで怜玢しおみたしたが、リンク切れの䞭囜のWebサむトである結果が1぀しか衚瀺されたせん。

予想される行動

Pixi.jsは、webpackで゚ラヌなしでロヌドおよび実行されたす。 バンドルしおからbrowserifyを䜿甚した堎合は、正しく実行されたす。

珟圚の動䜜

Uncaught Error: WebGL unsupported in this browser, use "pixi.js-legacy" for fallback canvas2d support.
image

考えられる解決策

私はjavascript゚コシステムの経隓があたりないので、これはwebpack 4の構成が䞍十分なこずが原因である可胜性がありたす。助けおいただければ幞いです

環境

Typescript 3.4.5、Pixi.js 5.0.2、Webpack 4.31.0

Webpack.config.js、クラむアントセクションはpixi.jsを䜿甚するコヌドの䞀郚です

/// <binding BeforeBuild='Run - Development' />
const HtmlWebpackPlugin = require('html-webpack-plugin');
const path = require('path');
var pixiModule = path.join(__dirname, '/node_modules/pixi.js/')
const CleanWebpackPlugin = require('clean-webpack-plugin');


module.exports = [
    // Server
    {
        mode: "development",
        devtool: "inline-source-map",
        entry: "./app.ts",
        output: {
            filename: "./app.js"
        },
        target: 'node',
        node: {
            __dirname: false,
            __filename: false,
        },
        resolve: {
            // Add `.ts` and `.tsx` as a resolvable extension.
            extensions: [".ts", ".tsx", ".js"]
        },
        module: {
            rules: [
                // all files with a `.ts` or `.tsx` extension will be handled by `ts-loader`
                { test: /\.tsx?$/, loader: "ts-loader" }
            ]
        },
        plugins: [
            new CleanWebpackPlugin()
        ]
    },

    // Client
    {
        mode: "development",
        devtool: "inline-source-map",
        entry: "./public/typescripts/entry.ts",
        output: {
            library: "ASC",
            filename: "public/client.js"
        },
        target: 'web',
        resolve: {
            // Add `.ts` and `.tsx` as a resolvable extension.
            alias: {
                'PIXI': pixiModule,
            },
            extensions: [".ts", ".tsx", ".js"]
        },
        module: {
            rules: [
                // all files with a `.ts` or `.tsx` extension will be handled by `ts-loader`
                { test: /\.tsx?$/, loader: "ts-loader" },
                { test: /\.json$/, include: path.join(__dirname, 'node_modules', 'pixi.js'), loader: 'json-loader' },
                //We expose the non minified pixi file as a global. The minified one was not working with our solution
                { test: pixiModule, loader: 'expose-loader?pixi' }
            ]
        },
        plugins: [
            new HtmlWebpackPlugin({
                filename: 'public/index.html',
                template: 'public/index.html',
                inject: false
            }),
            new HtmlWebpackPlugin({
                filename: 'public/game.html',
                template: 'public/game.html',
                inject: false
            })
        ]
    }
];
  • pixi.jsバヌゞョン5.0.2
  • ブラりザずバヌゞョンChrome 74.0.3729.157
  • OSずバヌゞョン_e.g。 りィンドりズ10

最も参考になるコメント

ハヌドりェアアクセラレヌションを有効にするこずで、私はそれを実珟したした。

Chrome->蚭定⌘、->詳现蚭定->システム-> 1番目を有効にする

党おのコメント43件

このブラりザでWebGLがサポヌトされおいない堎合pixi.js-legacy 、フォヌルバックcanvas2dのサポヌトに

これはnpmの別のバンドルです。 構成ではpixi.js䜿甚したす

このブラりザでWebGLがサポヌトされおいない堎合pixi.js-legacy 、フォヌルバックcanvas2dのサポヌトに

これはnpmの別のバンドルです。 構成ではpixi.js䜿甚したす

しかし、私が䜿甚しおいるブラりザは明らかにWebGLをサポヌトしおいたす
image
image

https://pixijs.io/examples/にあるv5の䟋は圹に立ちたすか あなたが瀺したそのペヌゞは基本的なwebglであり、はいたたはいいえです。 ただし、webglコンテキストを䜜成するずきは、ステンシルのサポヌトを芁求するなど、いく぀かの远加パラメヌタヌを䜿甚しお芁求したす。

ずにかく、それが゚ラヌです。それが私たちの助けようずする角床です。 webglたたはpixijsが必芁ずするwebglパラメヌタをサポヌトしおいないデバむスの倖郚で゚ラヌが発生するのを芋たこずがありたせん

https://pixijs.io/examples/にあるv5の䟋は圹に立ちたすか あなたが瀺したそのペヌゞは基本的なwebglであり、はいたたはいいえです。 ただし、webglコンテキストを䜜成するずきは、ステンシルのサポヌトを芁求するなど、いく぀かの远加パラメヌタヌを䜿甚しお芁求したす。

ずにかく、それが゚ラヌです。それが私たちの助けようずする角床です。 webglたたはpixijsが必芁ずするwebglパラメヌタをサポヌトしおいないデバむスの倖郚で゚ラヌが発生するのを芋たこずがありたせん

これらの䟋は機胜せずv4は機胜したすが、v5は機胜したせん、同じ゚ラヌが発生したす。 それは私には本圓に奇劙に思えたす、なぜ私のブラりザがそれをサポヌトしおいないのかわかりたせん。

動䜜しおいるpixi.jsアプリも確認したしたが、5.0.0-rc.2を䜿甚しおいたす。これが、動䜜する理由かもしれたせん。

助けおくれおありがずう

v4は、キャンバスレンダラヌにフォヌルバックしおいるため機胜したす。 v5の公匏リリヌスでは、レガシヌパッケヌゞを䜿甚しおいない限りそうではありたせん。

それで、おそらくあなたのgfxカヌドはwebglをサポヌトしおいたすが、マスキングに必芁なステンシルサポヌトのようなものを持っおいないので、それを䜿甚しようずするこずを拒吊したすか

ステンシルの堎合は、グラフィックドラむバを曎新しおみおください。

しかし、webpackが本圓に物事に圱響を䞎えるこずが刀明した堎合は非垞に面癜いでしょう:)

さお、これは非垞に奇劙です。私のデスクトップi7 7700k、gtx 780はそれを実行したせんが、Surface Book 1、iPhone XS、および友人のmacbook pro 2015では機胜したす。私のgpuは少し叀いですが、私はしたせんでした。それが問題になるず思いたす。

他に詊すべきこずがない限り、最倧限の互換性が必芁なため、レガシヌパッケヌゞを䜿甚するだけだず思いたすたた、実行できないものを実際に開発するこずはできたせん

グラフィックドラむバを再むンストヌルし、バヌゞョンを順方向たたは逆方向にしたす。 GPUは問題ではありたせんが、ドラむバヌのopengl郚分は問題です。

ちょっず埅っおください、私は本圓にばかげおいるず感じたす、それはクロヌムの問題だず思いたす、それはマむクロ゜フト゚ッゞで動䜜したす...私はラップトップず電話の䞡方でクロヌムを䜿甚しおいたのでそれは奇劙でした。

ブラりザには、さたざたなハヌドりェアのブラックリストがありたす... WebGLを完党に無効にする堎合もありたすが、既知の問題がある堎合は、特定のハヌドりェア/ドラむババヌゞョンの特定の機胜をブラックリストに登録する堎合もありたす。

この問題のタむトルWebpack + PixiJSの問題ではないを曎新し、「修正しない」ずマヌクしたした。これは、ハヌドりェア/ドラむバヌの問題である可胜性が非垞に高いためです。

さお、pixi.js-legacyを䜿甚し、すべおを倉曎しおpixi.js-legacyを参照するず、同じ゚ラヌが発生したす。

5.0.0-rc.2を䜿甚しお動䜜バヌゞョンを確認したしたが、webgl2を䜿甚しお動䜜したす。
image

しかし、5.0.0-rc.2を䜿甚するず、次の゚ラヌが発生したす「UncaughtTypeErrorUndefinedのプロパティ 'performMixins'を読み取れたせん」私のwebpackバヌゞョンでは。
image

どんな助けでもありがたいです

5.0.0-rc.2は䜿甚しないでください。 最新リリヌスを䜿甚する5.0.3

5.0.3「キャッチされない゚ラヌこのブラりザではWebGLがサポヌトされおいたせん。フォヌルバックcanvas2dのサポヌトには「pixi.js-legacy」を䜿甚しおください。」を詊したした。 埓来通り。 PixiJS 5.0.0-rc.2を䜿甚しおWebGl 2で実行されおいるバヌゞョンを実行しおいたすが、5.0.1 +に远加された、機胜しない新機胜はありたすか

もう少しテストを行うず、朜圚的な奇劙さが瀺されたす

  1. 端に
    V5の䟋は実行されたすが、_WebGL 1_を䜿甚したす。
    image
    V4の䟋は_WebGL1で再び実行されたす_
    image
    私の䜜業䞭のゲヌムhttps://ascension.azurewebsites.net/game.htmlはPixi.js5.0.0を実行したす-rc.2は
    image
    私のwebpackゲヌムはPixi.js5.0.3ず_WebGL1_で読み蟌たれたすが、正しく機胜したせん
    image
  2. Chromeの堎合
    V5が機胜しない
    image
    V4は動䜜したすが、_canvas_で動䜜したす
    image
    私の䜜業䞭のゲヌムは5.0.0-rc.2ず_webgl2_で実行されたす
    image
    私のwebpackゲヌムには、 5.0.3の投皿で説明されおいる゚ラヌがありたす
    image

これがたったく圹立぀かどうかはわかりたせんが、私には奇劙に思えたす

唯䞀の良い方法は、pixiず同じようにコンテキストを䜜成する関数を䜜成するこずだず予枬しおいたす「 stenciltrue 」を芁求し、pixiを䜿甚せずに、単なるhtml + jsでテストしたす。

次に、仕様ずデモを含むレポヌトを、クロムバグトラッカヌのクロム開発者に提䟛できたす。

私はそれが非垞に長い道のりであるこずを理解しおいたすが、Mozillaず比范しお、それらはより速く、垌望がありたす:)

もう䞀床質問したす。ドラむバヌを曎新しようずしたしたか

唯䞀の良い方法は、pixiず同じようにコンテキストを䜜成する関数を䜜成するこずだず予枬しおいたす「 stenciltrue 」を芁求し、pixiを䜿甚せずに、単なるhtml + jsでテストしたす。

次に、仕様ずデモを含むレポヌトを、クロムバグトラッカヌのクロム開発者に提䟛できたす。

私はそれが非垞に長い道のりであるこずを理解しおいたすが、Mozillaず比范しお、それらはより速く、垌望がありたす:)

もう䞀床質問したす。ドラむバヌを曎新しようずしたしたか

はい、ドラむバヌを曎新したした。Chrome // flagsでもwebGL2.0コンピュヌティングをオンにしたした。

それで、それはChrome偎の問題だず思いたすか 私はあなたの提案を詊しおみお、䜕が起こるか芋おいきたす。

偶然にも、ゲヌム「Nier Automata」のプレむ䞭に、gtx 780ず780tiでクラッシュの問題が発生したした。これは、このカヌドのドラむバヌが䜕らかの圢で壊れおいる可胜性がありたす。

さお、私はこのクむックテストJavaScriptを曞きたした

    var canvas = document.createElement("canvas");
    // Get WebGLRenderingContext from canvas element.
    console.log("Context (no args):");
    var a = canvas.getContext("webgl");
    console.dirxml(a.getContextAttributes());
    console.log("Context (stencil):" );
    var b = canvas.getContext("webgl",{ stencil: true});
    console.dirxml( b.getContextAttributes());
    console.log("Context (failIfMajorPerformanceCaveat):" );
    var c = canvas.getContext("webgl",{ failIfMajorPerformanceCaveat: true});
    console.dirxml( c.getContextAttributes());
    console.log("Context (Both):" );
    var d = canvas.getContext("webgl",{ stencil: true, failIfMajorPerformanceCaveat: true });
    console.dirxml( d.getContextAttributes());
    console.log("Context (Alias):" );
    var e = canvas.getContext("webgl",{ antialias: false});
    console.dirxml( e.getContextAttributes());

そしお、私が䜕をしようずしおも、ステンシルを真実にするこずはできないようです。 私は自分のPCずラップトップの䞡方でこれを詊したしたラップトップはv5で動䜜したす。 この時点で䜕をするのかわかりたせん。

pixiをハックしお無効にし、RenderTextureフレヌムバッファ甚にデフォルトで䜜成されたステンシルアタッチメントを削陀し、マスクを䜿甚しないようにしたす;

たたは、逆に、叀いドラむバを詊しおください:)ずころで、Linuxナヌザヌはこの皮の問題を頻繁に抱えおいたす

さお、この問題を閉じたす。 Pixi.jsはfirefox webgl 2を䜿甚しお正しく機胜しおいるように芋えるので、今のずころはそれを䜿甚したす。 ドラむバヌずクロヌムの_特定の_組み合わせが原因で動䜜しない可胜性があるず思いたす。 私は、叀いMacブック、叀いWindows 7マシン、Windows 10ラップトップなど、さたざたなマシンでv5の䟋を耇数詊しおみたした。 私のPCは奇劙な倖れ倀のようです。Firefox、Chrome、Edgeでこの問題が発生した堎合は、このチケットを再床開く䟡倀があるかもしれたせん。

すべおの助けおくれおありがずう

再開しないでください。 それは100私のクロヌムむンストヌルでしたたした、ベヌタチャンネルぞの切り替えはそれを修正したようでした。
chrome// flagsをいじっおも圹に立たず、すべおの拡匵機胜を削陀しおも䜕も起こりたせんでした。

このタむプの問題は、同様の環境で同じ問題が発生する可胜性がある将来のナヌザヌにずっお非垞に圹立ちたす。 たくさんの詳现を提䟛しおくれおありがずう。

再開しないでください。 それは100私のクロヌムむンストヌルでしたたした、ベヌタチャンネルぞの切り替えはそれを修正したようでした。
chrome// flagsをいじっおも圹に立たず、すべおの拡匵機胜を削陀しおも䜕も起こりたせんでした。

これが私にもうたくいったこずを確認できたす。Chromeベヌタ版をむンストヌルするず、アプリは正垞に実行されたした。 ありがずう。

ランダムな発芋それはクロヌムベヌタのせいではありたせん

䜕らかの理由で、ハヌドりェアアクセラが無効になりたした。

ハヌドりェアアクセラレヌションを有効にするこずで、私はそれを実珟したした。

Chrome->蚭定⌘、->詳现蚭定->システム-> 1番目を有効にする

@ivanpopelyshevこれは、WebGLでマスキングするための代替方法を䜿甚しお解決できたすか このstackoverflowスレッドの説明付きのオプションがさらにいく぀かあり

手動で有効にしおもナヌザヌの圹に立たないず思いたす。 以䞋のコヌドは私のために働いた
import * as PIXI from 'pixi.js-legacy'

ハヌドりェアアクセラレヌション蚭定が無効になっおいるため、Chromeを䜿甚しおもこの問題が発生したした。 デフォルトで有効になっおいるはずなので、しばらく前に無効にしたに違いありたせん。

しかし、この堎合、Pixiがロヌドに倱敗する理由に興味がありたす。これは、HTML5キャンバスにフォヌルバックするべきではないためです。

image

@ immanuelx2スクリヌンショットを投皿したドキュメントは最新ではありたせん。 キャンバスのフォヌルバックはv5.0.0からレガシヌブランチに移動されたした-ここでリリヌスの発衚を参照しおください

それでもキャンバスのフォヌルバックが必芁な堎合は、pixi.js-legacyを䜿甚しおください。 マスタヌブランチにはcanvasのサポヌトが含たれなくなり、WebGL「のみ」であり、より高速になりたす。

゚ラヌが発生した埌、新しいタブでアプリケヌションを開くず、この問題が発生したした CONTEXT_LOST_WEBGL

Chromeを閉じおから再起動するず、問題が解決したした

線集
䞊蚘の手順に埓っお耇補を詊みたしたが、再珟できたせんでした

詳现
クロヌム77.0.3865.90
osx10.14.6
グラフィックRadeon Pro Vega 20 4 GB、IntelUHDグラフィック6301536 MB

だから私は@winterNebsず同様の問題を抱えおい

他の誰かがこの問題を抱えおいる堎合に備えお。 フラグ「オヌバヌラむド゜フトりェアレンダリングリスト」を手動で有効にする必芁がありたしたchrome// flags

詳现
クロヌム78.0.3904.97
osx10.13.6

@goodgeckoに感謝し

Chromium79.0.3945.88に基づくBraveBrowser 1.1.23のLinuxずWindowsの䞡方で、この正確な問題が発生したす。
同じChromiumビルドに基づく通垞のChromeが完党に機胜するのは興味深いこずです。
Firefox 71.0は、問題なく問題なく動䜜したす。

@goodgeckoのヒントは圹に立ちたせんでした

Chrome蚭定のハヌドりェアアクセラレヌション高床状態を確認したすか Chromeでこのオプションを閉じるず、同じ問題が発生したした。
これがお圹に立おば幞いです。

Chrome蚭定のハヌドりェアアクセラレヌション高床状態を確認したすか Chromeでこのオプションを閉じるず、同じ問題が発生したした。
これがお圹に立おば幞いです。

これは私のために働いた。 ハヌドりェアアクセラレヌションをオンにする必芁がありたした

私にずっおはさらに奇劙です。 https://get.webgl.org/が機胜しおいたす。 PIXI v5の䟋は、マスクを䜿甚しおいる堎合したす

しかし、ゲヌムを開こうずするず、WebGLがサポヌトされおいないず衚瀺されたす。

他の誰かがこの問題を抱えおいる堎合に備えお。 フラグ「オヌバヌラむド゜フトりェアレンダリングリスト」を手動で有効にする必芁がありたしたchrome// flags

詳现
クロヌム78.0.3904.97
osx10.13.6

これは私のために働いた、ありがずう

オヌプン゜ヌスのX.OrgX Server Nouveauドラむバヌを䜿甚しおいるChrome安定版80.0。+、Ubuntu18.04でも同じ問題が発生したした。 私はWebGLテストに合栌し、それがドラむバヌである必芁があるず考えたので、独自のテストNvidiaをむンストヌルした埌、すべおが正垞に機胜するようになりたした。

ランダムな発芋それはクロヌムベヌタのせいではありたせん

䜕らかの理由で、ハヌドりェアアクセラが無効になりたした。

こっちも䞀緒。 ハヌドりェアアクセラレヌションを無効にしたした。 以前、OBSでブラりザを録画するために無効にしたした。

Chrome83でも同じ問題が発生したす| macos 10.13.6 | nVidia Geforce 210

PixiJSの䟋はFirefoxで正垞に動䜜しおいたす。
コン゜ヌル出力

PixiJS 5.3.0 - WebGL 1 - http://www.pixijs.com/

しかし、Chromeでは、Canvasにフォヌルバックしおいたす。
出力コン゜ヌル

PixiJS 5.3.0 - Canvas - http://www.pixijs.com/

@ Fxlr8の䟋は、 際に正垞に機胜しおいたす。 Webコン゜ヌルを開いお確認したす。

それは私のために働いた
image

このスレッドをロックできたすか ここで貢献するこずはこれ以䞊ありたせん。問題はハヌドりェアアクセラレヌションでした。

それでも問題が解決しない堎合は、別の問題なので、このスレッドを壊すのではなく、新しいスレッドを開く必芁がありたす。

このペヌゞは圹に立ちたしたか
0 / 5 - 0 評䟡