0

私は2DタイルベースのHTML5キャンバスアプリケーションに取り組んでおり、描画中の画像に適用できる特殊効果の種類を知りたい( context.drawImage(...) )。私が遭遇した唯一のトリックは、canvas.globalAlpha の値を変更することです。これにより、前のフレームの色がいくらか残り、キャンバス オブジェクト上のオブジェクトがフレームからフレームへと移動している場合に、ぼやけた効果やぼんやりした効果が作成されます。

context.fillStyle をプリミティブ形状の ARGB 値に設定することに匹敵する画像をレンダリングするものはありますか?

乗算モードはありますか?つまり、画像のピクセルの色に目的の色を掛けます。これは、プリミティブ ライティングに使用できます。(私は context.globalCompositionOperation をいじりましたが、興味深いものは何も見つかりませんでした)

他に何かクールなエフェクトはありますか?

注: このアプリケーションには WebGL を使用したくありません。これはゲームです。つまり、リアルタイムであり、時間がかかりすぎるため、javascript コードで各ピクセルを変更することはできません。(プレイヤーが死んで画面上で何も動かなくなったときにおそらくそれを行うことができますが)

4

1 に答える 1

0

Canvas には事前定義された効果はありません。画像の形状を操作するには、マトリックス変換を使用できます。
画像のピクセルと色を操作するには、getImageData メソッドを使用する必要があります - http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#pixel-manipulation。次に、Google を使用して、渦巻き、ぼかし、エンボスなどの効果を適用するアルゴリズムを見つけます。

于 2012-06-15T10:35:24.413 に答える