1

まず第一に、私はこれをここで尋ねるべきか「プログラマー」で尋ねるべきかを決めることができませんでした、穏やかにしてください;)

AS3の「コアライブラリ」と呼ばれるものの内部で何が起こるのだろうか(そうです、この場合は正確な用語ではないかもしれませんが、それでも私が何を意味するのかがわかります)。

たとえば、次のように入力すると、次のようになります。

var shape:Shape = new Shape();
shape.graphics.beginFill( 0xff0000 );
shape.graphics.drawCircle( 100, 100, 100);

...グラフィックオブジェクトで正確に何が起こりますか?AVM2のレンダリングAPIの呼び出しになると思いますが、これはどのように見えますか?それを見る方法はありますか、またはこれらのソースはアドビ以外の人のために完全に閉鎖されていますか?

ありがとう!

4

3 に答える 3

2

私の提案は、(上記のような)単純なものをコンパイルし、それを実行して、仮想マシンで実行されるコードであるabc(Actionscriptバイトコード)をダンプすることです。

abcdumpおよびswf2abcプロジェクトを試すことができます。

本当に単純なもののバイトコードを読むことから始めて、あなたがどう思うかを見てください:)

于 2012-04-05T07:06:09.307 に答える
2

私は@sberryの提案に同意してバイトコードを調べます。

ただし、その前に、AVM2wikiを調べておくとよいでしょう。

于 2012-04-05T07:26:51.763 に答える
2

次のビデオは、Flashでレンダリングがどのように機能するかを理解するのに非常に役立ちます。

ベクターグラフィックを描くのでShape、電話をかけたときに何が起こるdrawCircle()かは、ビデオで説明されていることとほぼ同じだと思います。

于 2012-04-05T08:53:05.710 に答える