EaselJS HTML5 キャンバス ライブラリを使用するゲームを作成しています。Ludei の CocoonJS を使用して、さまざまなバージョンの Android から始めて、さまざまなプラットフォームに展開しようとしています。
次を使用して、キャンバスに放射状のグラデーションを描画しようとしています:
shape.graphics.beginRadialGradientFill(['red', 'green'], [0, 1], 0, 0, 0, 0, 0, radius).drawCircle(0, 0, radius);
Android 4.0.3 を実行している HTC Sensation ハンドセットで、CocoonJS Launcher の下でゲームを実行し、Canvas 2D/WebGL を使用すると、塗りつぶされた円が表示されません。奇妙なことに、Webview を使用すると、円は正しく表示されます (パフォーマンスは低下しますが)。これは、最新の 2.0.0.beta または 1.4.7 バージョンの Launcher を使用している場合に当てはまります。
(CocoonJS ではなく) ブラウザーでネイティブにゲームを実行すると、円も正しく表示されます。
beginRadialGradientFill ではなく beginFill を使用すると、Canvas 2D/WebGL を使用しても円が正しく表示されます。
この問題が発生している理由について、CocoonJS Launcher のコンソールには手掛かりがありません。
Android 4.4.2 を実行している Samsung Galaxy S4 ハンドセットで、Canvas 2D/WebGL を使用すると beginRadialGradientFill が期待どおりに機能します。
古いバージョンの Android で beginRadialGradientFill を使用してこの問題に遭遇したことがありますか? もしそうなら、解決策にたどり着きましたか?