2011年11月アーカイブ

本日、Flex 4.6 SDK と Flash Builder 4.6 が公開されたようです。

SDK のダウンロードは、

のどちらかお好きな方をお選びください。

Flash Builder のダウンロードはこちらです。

Flash Builder 4.6 は Flash Builder 4.5 の無償アップグレードです。そのため、Web Premium や MasterCollection のライセンスでも使用できます。

Apple の新しい iOS 5.0.1 ガイドラインでは、データ保管に関するガイドラインが変更されました。新しいガイドラインについてはこちらに説明があります。 (閲覧には開発者登録が必要です)

それに伴い、AIR の一部の機能の利用が制限されます。アドビのフォーラムに投稿されたポストによれば、この制限によりアプリが却下されると、以下のようなメッセージが届くそうです。

Rejection: 2.23 Apps must follow the iOS Data Storage Guidelines or they will be rejected

具体的には、以下の条件を満たす必要があるとのことです。 (正確な情報は、上のアップルサイトへのリンク先を参照してください)

  1. ユーザが生成した情報、またはアプリだけでは生成できない情報のみ /Documents ディレクトリ以下に保存し、自動的に iCloud にバックアップされる
  2. 再ダウンロード、あるいは再生可能なデータは /Library/Caches ディレクトリ以下に保管する
  3. 一時的な利用のためのデータは /tmp ディレクトリ以下に保存する。これらのファイルは iCloud にはバックアップされないが、余分な記憶領域を使用しないよう、不要になったら削除する

もう 2 ヶ月経ってしまいましたが、Pixel Bender 3D のプレビュー 3 が Adobe Labs に公開されています。 (Adobe Pixel Bender 3D Preview@Labs

Pixel Bender 3D は Pixel Bender を Stage3D 用に拡張したもので、Stage3D のシェーダの記述に使えます。AGAL は機械には分かり易い言語でも、人間が読んだり書いたりするのは困難です。Pixel Bender 3D を使えば、シェーダの開発も効率的になりそうです。

ところが、プレビュー 3 発表時のブログによると、現在のプレビュー 3 では、

  • コマンドラインでの操作が必要
  • Stage3D の制限を簡単に超えてしまう

などの問題があるものの、これ以上の Pixel Bender 3D の開発は、数ヶ月以内に、コミュニティからの強い要望が集まらない限り行われないだろうと書かれています。

現在の状況を鑑みて、プレビュー 3 以降が出てくることは期待薄にも思えますが、現バージョンでも十分に役には立つので、気を取り直して、そして開発の継続を期待して、Pixel Bender 3D のご紹介です。

Adobe Labs に、Flash Player 11.2 と AIR 3.2 のベータ 2 が 公開されました。引き続きどちらもデスクトップ版のみです。 (先日の発表によれば、AIR のデバイス版も出荷されるはずですが)

今回公開されたバージョンは、以下の通りです。

  • Flash Player
    Windows: 11.2.202.95
    Mac/Linux: 11.2.202.96
  • AIR
    3.2.0.1320

例によってベータ版ですので、テスト用の環境での利用をお勧めします。

今回は、Stage3D 利用時の考慮点をいくつか紹介します。

一般的な GPU プログラミングは、OpenGL や DirectX の提供する API を使います。この方法は、ほぼ直接 GPU の機能を利用できるため、最大限のパフォーマンス実現が期待できますし、最新の GPU の機能だって利用可能です。

一方、Stage3D を使う場合は、1 つレイヤーが増えるため、直接 OpenGL や DirectX を利用する場合よりも余分な負荷が発生します。また、利用できる機能も限定されます。パフォーマンスや機能性の面からは、Stage3D は不利な感じです。

その代わり、Stage3D アプリは、複数の環境でそのまま動作することになっています。これは、Stage3D が環境間の差異を吸収してくれるるからです。

という見方からは、Stage3D は少し遅くて機能の限定された "仮想の GPU" と考えることができそうです。そして、利用できる開発言語は Context3D や Program3D のような ActionScript の API と、シェーダ記述用の AGAL ということになります。

AIR のネイティブ拡張を利用することにした場合、ActionScript のデバッグは AIR の SDK を使って行えますが、ネイティブコードのデバッグはネイティブのツールを利用することになるでしょう。

iOS 用の ANE を XCode を使ってデバッグする方法が公開されていましたので、その内容をご紹介します。元のブログ記事はこちらです。 (Debugging Native Extensions for AIR iOS

---- ここから ----

ANE を含む IPA を ADT で生成する際、IPA と同じディレクトリに dSYM ファイルが生成されます。dSYM ファイルの名前は、アプリケーションバンドル名に .dSYM を付けたものになります。(アプリ名が MyApp.app ならば、MyApp.app.dSYM)

テクスチャマッピングは、テクスチャ (ビットマップ) を 3D オブジェクトの表面、すなわち 3 角形のメッシュに貼り付ける作業です。Photoshop 等で加工した画像を使って、オブジェクト表面に質感を与えることができます。

今回は、Stage3D でテクスチャマッピングを行う方法をご紹介します。

UV 座標

テクスチャマッピングの処理は、大雑把に表現すると、3 角形の上にビットマップを重ねて、3 角形内部の各ピクセルの色を、その上に位置するピクセルの色とする、というイメージです。

その際、ビットマップのどのあたりが 3 角形の上に重なるのか、という情報が必要になります。そこで、ビットマップ内の位置を指定するのに用いられる 2 次元座標が UV 座標です。

UV 座標では、ビットマップの左下が基準点として使われ、U は横方向、V は縦方向の座標です。UV 座標が (0, 0) なら左下の角、(1, 1) なら右上の角の指定になります。

アドビ本社の ADC に、アドビの戦略転換とそれに伴う Flash プラットフォームへの影響について、記事が公開されました。 (Adobe's strategic transformation and the Flash Platform

それによると、まず、アドビが抜本的な変革の最中であること、すなわち、ソフトウェアの入った箱を販売する従来のビジネスから、

  • クラウドベースのソリューション
  • タッチ操作の可能なデバイスの世界
  • どこにいてもソーシャルネットワークにつながる世界

に変わりつつあることが述べられています。

これらがどの位抜本的な変革なのかは意見のあるところでしょうが、アドビとしては今が革新の時期だと考えているようです。

先日お伝えした Flex チームから Flex の今後についてに、追加の Q&A が掲載されました。以下その内容です。

なお、今回は Flex の提供先として Apache Software Foundation を考えていることが明かされました。

1.アドビは何を提供しようとしているのか?

我々は Flex SDK と BlazeDS を Apache に提供するという提案を準備中です。Flex SDK のコア機能以外にも、以下の提供を考えています。

  • 未公開のものも含めた完全な Spark コンポーネント (ViewStack, Accordion, DateField, DateChooser, 拡張された DataGrid を含む)
  • サーバ側の Java リモーティング & メッセージング技術である BlazeDS
  • 次世代の MXML & ActionScript コンパイラで現在開発中の Falcon (2012 年に完成後に提供予定)
  • 実験的なクロスコンパイラで MXML & ActionScript から HTML & JavaScript に変換する Falcon JS
  • アドビが Flex の開発用に使用してきた品質確認用のテストツール

先日公開された Carousel に続き、6 つのタッチアプリが Android マーケットに公開されました。今回公開されたタッチアプリは以下の 6 つです。

  • Photoshop Touch - Photoshop の主要な機能をタブレット上で利用してイメージを編集
  • Adobe Collage - 写真、絵、テキストをまとめ。アイデアやコンセプトを具体的に表示
  • Adobe Debut - CS 製品で制作したデザインをまとめてプレゼンテーションに使用
  • Adobe Ideas - ベクター、レイヤー、カラーテーマを使ってどこにいるときもデザイン作成可能
  • Adobe Kuler - カラーテーマの作成、検索、ダウンロードでデザインプロジェクトを支援
  • Adobe Proto - Web サイトやモバイルアプリのインタラクティブなワイヤーフレームを作成

先日の記事でお伝えした、Flash Professional CS5 & CS5.5 に Flash Player 11 の設定を追加する機能拡張の日本語版を入手しました。

先日アドビを去ることになった Flash チームのメンバーから渡されたものです。

 

アドビのエバンジェリストとして Flash には十年来関わってきたマイクチェンバースが、今回の Flash Player を巡る決定の背景を説明する記事を書いています。

Clarifications on Flash Player for Mobile Browsers, the Flash Platform, and the Future of Flash

今日は、記事の翻訳ではなく、この記事の内容を元に、何故デバイス向け Flash Player 中止という決定がされたのか、勝手に考察してみます。

発表内容の再確認

マイクによると、先日なされた発表は、以下のような内容だったということです。

  1. Flash プラットフォームの中でも以下の領域に注力する
    • モバイル環境向けの AIR ベースのアプリケーション
    • デスクトップブラウザ内の Flash Player 上のリッチコンテンツ(特にゲームとビデオ)
  2. HTML5 関連のツール、ソリューション、ブラウザへの投資を増やす(お金も人も)
  3. モバイルブラウザ向けの Flash Player の積極的な開発を行わない

 

Flex 開発チームから、先日の発表に関連してコミュニティから寄せられた質問に対する回答が公開されました。 (Your Questions About Flex

例の発表後急いでまとめたようなので、取り急ぎお伝えします。

1.アドビはまだ Flex の開発を続けるのか?

はい。 我々は Flex がアプリケーション開発者にユニークな価値を提供できると信じています。また、アプリケーション開発を取り巻く環境が急速に変化し続ける中、我々の顧客がより技術に直接関わりたいと感じていることも知っています。そこで、我々は Flex SDK をオープンソース団体に提供することを計画しています。これは、PhoneGap が Apache にソースを提供した方法と同じような形になる予定です。

オープンソースプロジェクトの参加者は、Flex SDK エンジニアリングチームの開発者数名と、Flex コミュニティーの主要メンバー (Spoon プロジェクトや Flex の顧客企業からの参加者を含む)から構成されます。Flex SDK の機能の開発は、この新しい管理モデル下で行われ、アドビは Flex SDK の提供を継続することになります。

前回の記事 (Stage3D のシェーダのアップロードと AGAL の基本情報) までで、Stage3D で 3D モデルの形状とシェーダを GPU にアップロードする手順を紹介しました。後は、GPU に描画指示を出す手順だけ理解すれば Stage3D の基本は完了です。

Stage3D で描画をする場合、中心になるクラスは Context3D です。今までも、Context3D は、頂点バッファやインデックスバッファ作成のサンプルコードの中で登場してました。覚えてなければ、後で確認してみて下さい。

Context3D は、描画するリソースやその状態を管理します。GPU が利用できないとき、ソフトウェアの描画エンジンにフォールバックするのも Context3D の役割です。

これまで紹介してきた GPU 描画の仕組み、例えば、2 つのシェーダを描画処理パイプラインで使えること、常に 3 角形を使って 3D の形状を記述すること、2D 描画にも対応できること、なども、どれも Context3D の仕様です。

Flash Playe 11.1 と AIR 3.1 が正式に公開されました。

新しい Flash Player のバージョンは、デスクトップ版が 11.1.102.55、Android 版が 11.1.102.59 です。AIR のバージョンは 3.1.0.488 です。

昨日発表のあったとおり、Flash Player の Android 版はこれが最後のバージョンになると思われます。システム要件のページには、Android 4.0 の記述が無いのが、ページ更新が未だなのか、実際にサポートが無いのかは未確認です。

今回は、基本的にバグ修正のみのマイナーアップデートですが、デバイス向けには 2 つ追加機能があります。iOS と Andoird それぞれ 1 つずつです。

10 月の Adobe MAX 基調講演で発表された Creative Cloud について、追加発表がありました。

以下は、あくまでアメリカでの発表内容で、日本での発表時の内容はまだ不明です (例えば、新しく買収したサービスの日本語対応の予定とか)。 その点、留意してお読み下さい。

Creative Cloud に含まれるものは、

  • デスクトップアプリケーション;
    Flash Pro, Dreamweaver, Photoshop, Illustrator, InDesign 等の CS 製品、Adobe Edge や Muse といった新しい製品
  • タッチアプリ:
    MAX で発表された 7 つのタッチアプリ、Adobe Collage, Adobe Kuler, Adobe Carousel, Photoshop Touch, Adobe Debut, Adobe Proto, Adobe Ideas (今後更に発表予定あり)
  • サービス:
    タブレット向け電子出版を可能にする Digital Publishing Suite、サイト構築と管理機能を提供する Business Catalyst、クラウドベースのフォントサービス Typekit
  • コミュニティ:
    他のメンバーと制作物を共有する機能、コミュニケーション用のフォーラム

今後デバイス環境向けに Flash Player の新規開発は行わないという発表がありました。
Flash to Focus on PC Browsing and Mobile Apps; Adobe to More Aggressively Contribute to HTML5

要約すると、

  • PC 環境に対しては従来通り Flash Player の開発を継続する
  • デバイス環境に対しては AIR のみ開発を継続する
  • Flash Player が新しいデバイス用の OS に対応するのは Flash Player 11.1 が最後。
    ただし、既存の環境に対するサポートは継続

という内容で、それに伴い、HTML5 への投資を一層強化するとのことです。

前回 (Stage3D と 2 つのシェーダと頂点情報) は、3D モデル情報を Stage3D に渡す方法をご紹介しました。今回は、シェーダ関連の Stage3D の API の紹介です。

それから、AGAL (Adobe Graphics Assembly Language) も、少しだけ紹介します。

シェーダのアップロード

始める前に、今回ご紹介するサンプルでは、AGAL Mini Assembler というサンプルツールを使っています。今のところ、実行時に AGAL をコンパイルする機能を提供する正式なツールは提供されていないので、動作確認には、こちらをダウンロードしてお使い下さい。

早速ですが、以下が AGAL で記述された頂点シェーダと断片シェーダの例です。

// 頂点シェーダを記述
private const VERTEX_SHADER:String =
  "m44 op, va0, vc0    \n" +
  "mov v0, va1"
// 断片シェーダを記述
private const FRAGMENT_SHADER:String =
  "mov oc, v0";

コードを全く書かずに Web サイトをデザインして公開できるツール Muse のベータ 4 が公開されました。 (http://muse.adobe.com

最初に紹介したのが、約 3 ヶ月前ですが (新しい HTML ツール Adobe Muse プレビュー版公開)、ほぼ月 1 のペースで更新されていることになります。

今回から、AIR 3 が使われています。(そういえば Muse は AIR アプリでした) そのため、画像のサイズに関する制限が無くなったそうです。

また、今回から他言語対応が追加されました。 (日本語はまだのようですが) それに伴い、UI も一部変更されています。

その他、Muse が書き出す JavaScript コードが改善されたために、ウィジェットの読み込みと描画時間が改善されたのが主要な変更だそうです。細かな機能まで入れると、全部で 40 以上の機能拡張やバグ修正が行われたそうです。

だんだん使えるツールになってきてる感じもするので、サイト作るのにコード書きたくない、と思ってる人は試してみてはいかがでしょうか。

Muse のバッジが公開されています。Muse で作ったサイトを公開したら使って欲しいといことのようです。 (Made with Muse Badge

 

前回の記事 (Stage3D の裏側のお話) では、GPU (Stage3D) が 3 角形の描画を得意とすること、描画処理が大きく 2 つの段階に分けられ、それぞれの段階にシェーダと呼ばれるプログラムが必要となること、までカバーしました。

今回は、シェーダの役割をもう少し詳しく確認してから、シェーダに頂点情報を渡す Stage3D の API の使い方に話題を移します。

頂点シェーダと断片シェーダ

GPU 描画では、2 種類のシェーダが使われます。頂点シェーダと断片 (ピクセル) シェーダです。

実行される順序は、頂点シェーダ → 断片シェーダの順です。頂点シェーダが各頂点の位置を確定すると、断片シェーダが頂点の間の断片 (ピクセル) を色づけします。

下の図は、直方体を 2 種類のシェーダそれぞれが処理する様子を示したものです。

shaders.jpg

Flash Professional の製品マネージャ Richard が、CS5 と CS5.5 に Flash Player 11 の設定を追加する機能拡張を個人的に作成して公開しています。 (Adding Flash Player 11 support to Flash Pro CS5 and CS5.5) これを使えば簡単に Flash Player 11 の開発環境がつくれます。

残念ながらテスト環境の更新まではされません。そのため、cntrl-Enter / cmd-Enter では Flash Player 10 でのプレビューになります。動作確認は Flash Playe 11 のインストールされたブラウザで行うようにとのことで、F12 / cmd-F12 の使用が推奨だそうです。

近日中に日本語訳付きの MXP も公開予定らしいので、ダウンロードはそれまで待った方が良いかもですが、とりあえず、

これらの MXP をダウンロード & ダブルクリックして機能を追加すると、パブリッシュ設定に Flash Player 11 が追加されます。Stage3D のテスト用に “Flash WMODE direct” という名前の HTML テンプレートも提供されます。

追記:11/15日に日本語版公開しました。

 

Flash Player 11 から追加された Stage3D は、GPU を Flash コンテンツからフル活用するための機能です。

3D 描画だけでなく 2D 描画にも利用できるので、Stage3D という名前はいささか誤解を招くものかもしれません。従来の、CPU で描画される Stage との違いを明確にするには、StageGPU とかのほうが合っているような気がします。

で、どんなときに Stage3D が使えて嬉しいかと考えてみたときに、高度な 3D 描画を実現したい場合というのは分かり易い例かもですが、デバイス (スマホ/タブレット) 向けコンテンツのパフォーマンスを向上させたい場合の方が、もしかすると多くなるような気もします。

CPU 描画は、1 画素ずつ CPU で描画データを計算します。そのため、CPU のスペックが低くて、描画する画素数が多い環境は苦手とします。

そうすると、一般的なデバイスは PC より CPU のスペックが低い割には小さな画面でも高画素と、CPU 描画には厳しい条件を持っているようです。今後、CPU の性能が向上していくとしても、ディスプレイの精細度も向上するだろうと考えると、当面 CPU 描画に厳しい状況は続きそうです。

少し経ってますが、Adobe Labs に Proscenium のプレビュー版が公開されました。(Proscenium@Labs

Proscenium は Flash Player 11 / AIR 3 の新機能 Stage3D に対応した、アドビ製の 3D フレームワークのコードネームです。評価用のプロジェクトと位置付けられていて、具体的な製品化計画はまだ無いとのことです。

Proscenium のダウンロードはこちらです。(Labs Downloads/Proscenium) Proscenium を試すには Flash Player 11 / AIR 3 の開発環境が必要です。(Flash Professional CS5.5 で Flash Player 11 と AIR 3 を使う方法

なお、ビデオドライバーが古いとクラッシュするという報告があるようです。同様の症状に出会った場合はドライバーの最新版をインストールしてみて下さい。また、Windows では、DirectX のエンドユーザ用ランタイムが必要とのことです。

2014年1月

Sun Mon Tue Wed Thu Fri Sat
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
レンタルサーバー

月別 アーカイブ

Powered by Movable Type 4.261