縮小している表示オブジェクト(画像ではない)があります。画像を拡大縮小したときと同じジャギーとエイリアシングされたエッジがあります。画像をスムージングするのと同じ方法で、その表示オブジェクトをスムージングする方法はありますか?
更新
これは、インタラクティブな子表示オブジェクトを備えたインタラクティブな表示オブジェクト(スプライト)です。ビットマップに描画できません。
縮小している表示オブジェクト(画像ではない)があります。画像を拡大縮小したときと同じジャギーとエイリアシングされたエッジがあります。画像をスムージングするのと同じ方法で、その表示オブジェクトをスムージングする方法はありますか?
更新
これは、インタラクティブな子表示オブジェクトを備えたインタラクティブな表示オブジェクト(スプライト)です。ビットマップに描画できません。
Matrix3D 変換を追加することで、表示オブジェクトを強制的に「3D」モードにすることができます。これを行う最も簡単な方法は、rotationX 値を与えることです。
myDisplayObject.rotationX = 0.0;
Pixel Blenderを使用してスプライトでバイキュービックリサンプリングを行いますか?
http://blog.onthewings.net/2009/08/25/bicubic-resampling-by-pixel-bender/
また、シェイプの「ヒント」ボックスをチェックしてみてください (これにより、円や楕円が奇妙な形になることがあるので、ギャンブルです)、レンダリング ドロップダウンから「ビットマップとしてキャッシュ」を選択してみてください。
設定してみましたstage.quality = stageQuality.High;
か?また、それを行い、手動でスムージングを設定したい場合は、Lanczos のリサンプリング機能を試すことができます(私は作成しませんでした)。
警告: この関数はかなりパフォーマンスが高いため、フレームごとに使用したくないでしょう!
まず、bitmapData を使用して、displayObject をビットマップに描画する必要があります。
var bmd:BitmapData = new BitmapData(dispObject.width, dispObject.height, true, 0);
//Create new bitmapData with the same size as your object and with transparancy.
bmd.draw(dispObject);
//Draw you displayObject onto the empty Bitmap
var b:Bitmap = new Bitmap(bmd, true);
//Create the bitmap container and load the data, and the true turns smoothing on!
addChild(b);
//Add it to the stage and now you can use the scale and width variables like this
b.x = dispObject.x;
b.y = dispObject.y;
b.scaleX = dispObject.scaleX;
b.scaleY = dispObject.scaleY;
ビットマップ オブジェクトの Smoothed プロパティを true に設定してから、スケーリングを試みることができます。
表示オブジェクトにはビットマップが含まれているか、ビットマップ自体である必要があります...