2010-02-01から1ヶ月間の記事一覧

TextAPI と Shadow API を仮実装

Flashバックエンドに、TextAPI と Shadow API の仮実装を入れました。globalCompositeOperation も幾つか実装しています。 まだ調整が甘くて、 影が切れることがある textAlign 未実装実装済 利用できないフォントが指定されると、Times New Roman が使われ…

メソッドとして関数を呼んだ場合の this の値

js

今日は、うっかり忘れがちな「メソッド内の this が何を示すか」を復習するついでに、脳内ダンプしてみます。C++ の this には、 「this(ポインタ)は メソッドの親オブジェクトを示す」 「メソッド内では、 this->hoge() と hoge() は同じ意味になる。thisは…

Canvas on Flashでアニメーション

Flashバックエンドの実装とbugfixもいい感じに進んでます。残すは clip() globalCompositeOperation ShadowAPI TextAPI PixelAPI toDataURL(), getImageData() な感じです。 アニメーションデモ 今までは派手目なデモの紹介を控えてきましたが、そろそろ頃合…

資料追加

uupaa.js の設定方法について、スライドを作成しました。http://handsout.jp/slide/2341

Flashモードにベジェ曲線と画像描画のサポートを追加

ctx.bezierCurveTo(), ctx.quadraticCurveTo(), ctx.drawImage() を実装しました。http://pigs.sourceforge.jp/blog/20100219/demo/ Silverlight, VML, Flash の各モードで、画像の拡大/縮小方法が異なるため、並べてみるとなかなか面白い事になっています。

Canvasをレンダリングする3つのモード

タイトル変更しました今のところこんな感じです。Flashモードはアニメーションが高速に動作するようになりました。 http://pigs.sourceforge.jp/blog/20100217/demo/ (IEや他のブラウザで見てね)今日は「uupaa.js が実装している <canvas> をエミュレートする三つの</canvas>…

canvasをより速く(Flashもサポート)-Take4

このエントリは canvasをより速く(Flashもサポート) - latest log や canvasをより速く(Flashもサポート)-Take3 - latest log の続きです。今日も、Flashモードのレンダリングをちょっと速くしました。 送信部分の高速化 修正前 var _stack = []; var _lockS…

canvasをより速く(Flashもサポート)-Take3

latest log の続きですFlashモードのレンダリング速度をさらに改善しました。fpsが半分ぐらいに落ち込む問題も解決できたようです。 なにをしたか ExternalInterface のjs側のコードを要約し CallFunction() だけにする事で、最適化していた(つもりだった)の…

canvasをより速く(Flashもサポート)-Take2

latest log の続きですFlashモードのレンダリングを速くしてみました。boostも出来ます。boostすると、25fps → 60fps ぐらいに加速します。 AutoDetect Silverlight → Flash → VML 順にバックエンドを探索 Flash 優先 Flash → Silverlight → VML 順にバック…

canvasをより速く(Flashもサポート)

追記 2010-02-13: Flash モードを最新に差し替えました。boostも出来ます。 Flash 優先 Flash → Silverlight → VML 順にバックエンドを探索 本文 uupaa.js には uuCanvas.js のコードが入ってましたが、色々と書き直して、またちょっと速くなりました。 また…

Opera10.50でargumentsの挙動が修正されている

Opera10.10までは arguments instanceof Array → true Object.prototype.toString.call(arguments) → "[object Object]" Opera10.50からは arguments instanceof Array → false Object.prototype.toString.call(arguments) → "[object Object]" になっている…

Firefoxのin演算子がモッサリなので何とかしてみた

今日は「Firefox3.5+で、配列に対してin演算子を使うと、Firefox3に比べ5〜10倍モッサリする」という困った現象を、何とかする方法をご紹介します。 Firefox3 33 Firefox3.6 157 Firefox3.7a1pre 96 <body onload="bench()"><script> function bench() { var pure = [0, 1, 2, 3, 4, 5, 6, 7</body>…

uupaa.js 基礎知識なんちゃってマスター

uupaa.js 0.7 の概要を、1分でざざーっと分かるように書きました。 これ自体10分で書いてるので、ノープラン・ノーチェックでお届けします。 uupaa.js のビルド uupaa.js というファイルはありません。 必要な機能を組み合わせ、ユーザがビルドして作ります…

2010-01 まとめ(ホイミン風味)

元日。一緒に冒険する仲間が欲しくて、気が付いたら転職サイト登録してた ※ リクナビね でもテンプレ回答がメールで来ただけ。色っぽい展開とかは皆無だった もう転職サイトに期待するのは止めて、さむい洞窟でうずクマってた でも時々「転職」とか「転職」…