Pages

December 19, 2006

December WPF/E CTP: First Impressions

Updated: Some more details about WPFE and texture sampling issues.

So.... not bad.

I've been playing with the Microsoft WPF/E CTP a little over the last week-ish (its a slow time of year), and I thought I'd post some early thoughts. These are mostly a ramble - no particular point that I'm making, and it might not be entirely coherent.

Rendering
Appears to be a pure software rendering pipe (that is, there appears to be no Hardware acceleration in this CTP). Good antialiasing quality - appears to 4X oversampled in the y-direction and analytical in the X. As with GDI plus, I think they botched the texture sampling rules. Its a little better than GDI plus was, but still wrong (IMHO) for resolution independent UI - which of course, is a big part of the goal. Macromedia got this right (at least, starting with Flash 8). Although its a software rendering pipeline, it also looks like WPE/E employs a front-to-back display (or some form of overdraw prevention, at least), and performance is pretty decent - though I haven't stress tested complex shapes or the like yet (Updated: I tried, and failed, to load the simplest benchmark - must be a point limit, though I couldn't find any documentation/info on that).

And no 3D support.


Interactivity
No controls (buttons, menus, text edits, etc.) are present in this CTP - you get events, and you get shapes and images (textures), so... hard to say much about this yet. Startup time for the WPF/E plug-in appears good - the header of theWPFblog (appropriately) is WPF/E, for example, and loads nicely/quickly - WAAAAAY better than .NET 3.0/XBAP (e.g. try this sample).

Still, I think the packaging streaming model, although goofy in Flash, makes it much easier for developers to explicitly control and manage assets loading. It will be interesting to see how important this becomes in the real world for building larger scale applications - I think Microsoft is at major experience deficit in this one key area.

Animation is a bit odd still, and the property/element "." syntax rules still throw me a bit...

Samples/SDK
Documentation and SDK - really nice.
Samples? Laaaaaame.
Pretty much most of them could have been built trivially in Flash, or even DHTML. Even the Page-turn example is mostly about clever content (for example, the shading is a part of the ARTWORK). Not one example shows the expressiveness potential of the runtime. Most of these HTML samples are more inspirational. I realize this is just the first CTP - but *ONE* killer sample would have been nice.

Overall
The language is nice and expressive - its pretty easy to get started and build "rich" interactive content. If you're starting from scratch, much easier than Flash, Flex, or DHTML even. The browser integration and support for multiple platform (browser and OS) right out of the gate is a good move. CLR integration (and the release of the mini-CLR) is the big "FUD" thing we're all waiting for, I think. The code-behind model really leverages the excellent "first class" host DOM integration. Plug-in size and updating may be an issue, but its early enough that I'll reserve judgment on that. Currently, the IE control is 1.1 MB - the other variants (browser and OS) are quite a bit bigger.

All in all... a decent first CTP - looking forward to more... and some clearing up of the massive general confusion about how WPF, .NET 3.0, XBAP and WPF/E are supposed to fit. Everything I've seen so far seems to be after-the-fact rationalizing of internal competition and overlap.

78 comments:

  1. Looks like 3D is around the corner...

    http://www.codeplex.com/3DTools/Release/ProjectReleases.aspx?ReleaseId=577

    -JR

    ReplyDelete
  2. I don't think so - that's WPF, not WPF/E (hence the confusion...)

    ReplyDelete
  3. Ah... right your are.... heh

    -JR

    ReplyDelete
  4. >> As with GDI plus, I think they botched the texture sampling rules.

    What specifically do you think is wrong with the texture sampling rules?

    ReplyDelete
  5. Specifically, when you scale an image up, the texels and pixels are aligned according D3D rules (I think - maybe its opengl), which is to say that 0,0 in pixel space is .5, .5 (er, in the middle of the "first" texel)

    I should post a shot, but the result is this. If I have an image with a 1 pixel border around it, and 1 pixel grid covering it, all lines have the same visual thickness at 100%, but not at > 100%.

    GDIPlus was similar, but also treated the left and top different than the right and bottom.

    ReplyDelete
  6. GNQFHP The best blog you have!

    ReplyDelete
  7. RC4Pcr Hello all!

    ReplyDelete
  8. Please write anything else!

    ReplyDelete
  9. Hello all!

    ReplyDelete
  10. actually, that's brilliant. Thank you. I'm going to pass that on to a couple of people.

    ReplyDelete
  11. actually, that's brilliant. Thank you. I'm going to pass that on to a couple of people.

    ReplyDelete
  12. 9ZOyGB write more, thanks.

    ReplyDelete
  13. Thanks to author.

    ReplyDelete
  14. Wonderful blog.

    ReplyDelete
  15. Thanks to author.

    ReplyDelete
  16. Wonderful blog.

    ReplyDelete
  17. Wonderful blog.

    ReplyDelete
  18. actually, that's brilliant. Thank you. I'm going to pass that on to a couple of people.

    ReplyDelete
  19. Please write anything else!

    ReplyDelete
  20. Thanks to author.

    ReplyDelete
  21. Nice Article.

    ReplyDelete
  22. Nice Article.

    ReplyDelete
  23. All generalizations are false, including this one.

    ReplyDelete
  24. Please write anything else!

    ReplyDelete
  25. Beam me aboard, Scotty..... Sure. Will a 2x10 do?

    ReplyDelete
  26. Calvin, we will not have an anatomically correct snowman!

    ReplyDelete
  27. Please write anything else!

    ReplyDelete
  28. If ignorance is bliss, you must be orgasmic.

    ReplyDelete
  29. Suicidal twin kills sister by mistake!

    ReplyDelete
  30. Give me ambiguity or give me something else.

    ReplyDelete
  31. Build a watch in 179 easy steps - by C. Forsberg.

    ReplyDelete
  32. Calvin, we will not have an anatomically correct snowman!

    ReplyDelete
  33. Energizer Bunny Arrested! Charged with battery.

    ReplyDelete
  34. A lot of people mistake a short memory for a clear conscience.

    ReplyDelete
  35. Give me ambiguity or give me something else.

    ReplyDelete
  36. Lottery: A tax on people who are bad at math.

    ReplyDelete
  37. Lottery: A tax on people who are bad at math.

    ReplyDelete
  38. Wonderful blog.

    ReplyDelete
  39. When there's a will, I want to be in it.

    ReplyDelete
  40. What is a free gift ? Aren't all gifts free?

    ReplyDelete
  41. I don't suffer from insanity. I enjoy every minute of it.

    ReplyDelete
  42. Lottery: A tax on people who are bad at math.

    ReplyDelete
  43. Please write anything else!

    ReplyDelete
  44. 640K ought to be enough for anybody. - Bill Gates 81

    ReplyDelete
  45. Beam me aboard, Scotty..... Sure. Will a 2x10 do?

    ReplyDelete
  46. Friends help you move. Real friends help you move bodies

    ReplyDelete
  47. Suicidal twin kills sister by mistake!

    ReplyDelete
  48. Beam me aboard, Scotty..... Sure. Will a 2x10 do?

    ReplyDelete
  49. Suicidal twin kills sister by mistake!

    ReplyDelete
  50. Change is inevitable, except from a vending machine.

    ReplyDelete
  51. C++ should have been called B

    ReplyDelete
  52. Lottery: A tax on people who are bad at math.

    ReplyDelete
  53. Beam me aboard, Scotty..... Sure. Will a 2x10 do?

    ReplyDelete
  54. When there's a will, I want to be in it.

    ReplyDelete
  55. Friends help you move. Real friends help you move bodies

    ReplyDelete
  56. A lot of people mistake a short memory for a clear conscience.

    ReplyDelete
  57. Nice Article.

    ReplyDelete
  58. Oops. My brain just hit a bad sector.

    ReplyDelete
  59. The gene pool could use a little chlorine.

    ReplyDelete
  60. actually, that's brilliant. Thank you. I'm going to pass that on to a couple of people.

    ReplyDelete
  61. Calvin, we will not have an anatomically correct snowman!

    ReplyDelete
  62. Lottery: A tax on people who are bad at math.

    ReplyDelete
  63. Calvin, we will not have an anatomically correct snowman!

    ReplyDelete
  64. All generalizations are false, including this one.

    ReplyDelete
  65. 風俗情報【風俗ナビ】は全国の新風俗営業法をクリアした、-ソープ(ソープランド) ファッションヘルス ホテヘル(ホテルヘルス) デリヘル(デリバリーヘルス)イメクラ、性感・エステ、セクキャバ等の風俗店情報やフードル企画が盛り沢山。西船橋 風俗 風俗 浦安 池袋駅西口 風俗 風俗 池袋駅東口 多摩 風俗 相模原 風俗 巣鴨 風俗 府中 風俗 国分寺 風俗 厚木の風俗店 千葉 風俗 柏 風俗 松戸の風俗店 秋葉原の風俗店 新橋の風俗店 蒲田の風俗店 上野の風俗 新小岩 風俗 大塚の風俗店全国のデリバリーヘルスを中心とした風俗店の紹介。地域別、業種別に検索。 ... 風俗コミュニティはYahoo!JAPAN掲載サイトです. 上記のポータルサイトに風俗店の情報を無料で掲載することができます。 携帯サイト(メールで送信)

    ReplyDelete
  66. マルチエックス
    マッチングZ亀丸 圭一郎
    ブサイクでもモテる森王拓海
    マルヴァフットボールアカデミー
    マルヴァフットボールアカデミー
    しろありヤンヤン20L
    アラジン
    FX-FLEX-TRADING
    社労士試験合格法
    IEMRank
    mixi逆ナンパ
    株の税金
    ビリヤード上達法
    かわいい店員を落とす方法
    会社設立
    メールテクニック
    マッチングサイト
    プラチナブランダー
    ポイント交換システム
    ピンポイント・キック
    堀田式3点分析投資法
    情報教材
    Right Click Riches
    離婚3倍お金
    投稿キングSP
    パーフェクトストライク上達法
    公立入試最短合格
    難聴改善
    毎日チャリチャリ ナンバーズ3予想
    ヴァルカン vulcan
    マジック225ライト
    2週間で最強バッター栗嶋
    便秘解消術
    日経225先物
    eroger
    完全ヒモマニュアル
    情報起業トップマーケティング
    究極のNNTトレーニング
    Web-Lab Edition
    クラーケン kraken
    人気ブログ
    初心者起業コンプリートパック・
    ピンポイント・キック
    堀田式3点分析投資法
    堀田式3点分析投資法
    Right Click Riches
    情報教材
    投稿キングSP
    公立入試最短合格
    ナンバーズ3予想
    マジック225ライト
    便秘解消術
    eroger
    かわいい店員
    社労士試験合格法
    奥村流ビリヤード上達法
    情報起業トップマーケティング
    Web-Lab Edition
    マジックキャンドル10
    離婚3倍お金
    日経225先物
    ヒモマニュアル
    究極のNNTトレーニング
    クラーケン kraken
    初心者起業コンプリートパック
    矢島純一パーフェクトストライク上達法
    難聴改善
    ヴァルカン vulcan
    栗嶋流最強バッター
    川又選手
    近藤雅世 金投資手法
    LOVEマシーン
    高校受験 勉強法
    ジャグバカの攻略法
    アキバ系外国人ガイドブック
    高良俊礼 高野 雲 ジャズ入門
    初ジャズ
    α225-Bronze
    1億円稼ぐ方法 投資の本質
    ブログ 人生を変える 吉田和彦
    厳選商品館
    宇宙技術 ナノウォーター
    TOC Buyer's NET
    オリレワ OORILEWA
    にっぽんe物産市
    ピーターラビット検索ツールバー
    VPSstock
    東京視力回復センター
    爽快生活サプリ
    生命保険 比較
    生命保険 比較 口コミ
    生命保険 比較 女性
    生命保険 比較 終身
    生命保険 掛け捨て 比較
    生命保険 掛け捨て 比較
    生命保険 掛け捨て 終身
    生命保険 掛け捨て 積み立て
    生命保険 掛け捨て 貯蓄
    【野球】ベスト・ピッチング
    パーフェクトアドセンスツール
    情報教材ASPカート販売
    Ribbon Ad Generator
    在宅パートで1日 13000円の副収入
    ヴァイラル ダウンローダー
    he FX Evolutional Trade
    ハゲタカ債券投資法
    実践特許出願虎の巻
    トップセールス自己暗示法
    不妊症 自然妊娠 赤ちゃん 授かる方法
    トップ・エグゼクティブ・コース
    発毛進化論
    FXの税金・節税・確定申告
    DTIブログ版
    株式損失 投資戦略2009
    越智隼人 サッカー上達法
    第3次アフィリエイト大戦
    若返り妊娠術
    夢オートFX
    包茎
    仮性包茎
    仮性包茎
    真性包茎
    真性包茎
    カントン包茎
    カントン包茎
    子供の包茎
    包茎 いじめ
    クリトリス包茎
    包茎 フェラ
    包茎手術
    手術包茎
    包茎手術
    包茎手術病院
    包茎手術
    包茎手術
    包茎治療
    生命保険 掛け捨て
    掛け捨て生命保険比較
    60歳から生命保険比較
    医療保険比較女性
    終身医療保険比較
    医療保険比較価格
    医療保険比較 おすすめ
    生命保険 医療保険比較
    子供医療保険比較
    医療保険 終身 比較
    医療保険 終身 定期
    女性 医療保険 終身
    医療保険 終身 掛け捨て
    医療保険終身60歳払い済み
    医療保険終身払込
    医療保険比較 女性
    医療保険女性独身
    医療保険女性人気
    医療保険女性おすすめ
    医療保険女性終身
    入院保険比較
    入院保険女性
    子供入院保険
    入院保険終身
    入院保険掛け捨て
    生命保険定期保険比較
    生命保険死亡保障
    死亡保障掛け捨て
    死亡保障比較
    死亡保障終身
    死亡保障金額
    終身保険比較
    終身保険比較かんぽ
    定期保険終身保険比較
    生命保険終身保険
    死亡保険比較
    死亡保険掛け捨て
    死亡保険終身
    年金保険入院保障
    3大疾病保険
    三大疾病保険
    生命保険三大疾病特約
    生命保険3大疾病特約
    年金保険比較
    年金保険おすすめ
    退職年金保険
    年金保険終身
    個人年金保険比較
    個人年金保険終身
    個人年金保険一時払い
    個人年金比較
    個人年金終身
    個人年金比較一時払い
    収入保障保険比較
    収入保証保険比較
    収入補償保険
    定期付終身保険見直し
    定期付き終身保険
    生命保険定期付終身
    こども保険比較
    こども保険学資保険
    子供保険比較
    生命保険節約
    保険節約
    家計節約保険
    家計節約生命保険
    生命保険見積もり比較
    生命保険必要保障額
    必要保障額計算
    必要保障額試算
    生命保険選び方
    生命保険選び方夫婦
    生命保険選び方女性
    医療保険選び方
    医療保険必要
    子供医療保険必要
    死亡保障必要額
    生命保険死亡保険
    個人年金保険選び方
    生命保険格付け
    生命保険格付け一覧
    生命保険格付け最新
    生命保険格付けランキング
    学資保険比較
    学資保険おすすめ
    学資保険比較一覧
    生命保険見直しポイント
    保険相談無料
    保険相談窓口
    保険相談見直し
    保険相談店舗
    ネット生保比較
    生保格付け
    医療保険比較共済
    家事代行
    家事代行料理
    家事代行文京区
    家事代行・足立区
    家事代行・荒川区
    家事代行・板橋区
    家事代行・江戸川区
    家事代行・大田区
    家事代行・葛飾区
    家事代行・北区
    家事代行・江東区
    家事代行・品川区
    家事代行・渋谷区
    家事代行・新宿区
    家事代行・杉並区
    家事代行・墨田区
    家事代行・世田谷区
    家事代行・台東区
    家事代行・千代田区
    家事代行・中央区
    家事代行・豊島区
    家事代行・中野区
    家事代行・練馬区
    家事代行・港区
    家事代行・目黒区
    ベビーシッター・キッズシッター
    家政婦・料金
    家政婦派遣
    家政婦紹介
    家政婦時給
    家政婦相場
    お手伝いさん派遣
    住み込み・お手伝いさん
    お手伝いさん・相場
    お手伝いさん・紹介
    お手伝いさん
    ハウスキーパー
    ハウスキーパー料金
    ハウスキーパー派遣
    ハウスクリーニング
    ハウスクリーニング料金
    ハウスクリーニング料金相場
    ハウスクリーニング比較
    病院付き添い
    病院付き添いヘルパー
    入院付き添い
    子供入院付き添い
    食事介助
    高齢者食事介助
    介護食事介助
    通院待機
    通院介助
    入浴介助
    介護入浴・介助
    高齢者入浴介助
    排泄介助
    介護・排泄介助
    移乗介助
    車椅子・移乗介助
    介護・移乗介助
    乗降介助
    車椅子・介助
    見守りサービス
    高齢者見守りサービス
    高齢者・見守り
    付き添い看護
    付き添いサービス
    付き添い婦
    付添婦
    付添婦・看護
    病院・付添婦
    病院・付添
    入院・付添
    付添介護
    体位変換
    介護・体位変換
    看護・体位変換
    口腔ケア
    高齢者・口腔ケア
    介護・口腔ケア
    話し相手が欲しい
    老人・話し相手
    話し相手・バイト
    話し相手がいない
    話し相手サービス
    高齢者・話し相手
    お話し相手
    買い物代行
    高齢者・買い物代行
    買い物代行・バイト
    買い物代行・アルバイト
    庭の手入れ
    庭の手入れ・雑草
    庭木の手入れ
    引越し準備
    引越し準備・荷造り
    結婚・引越し準備
    引越し片付け
    家事全般
    重介護
    ヘルパー・通院介助
    通院介助・待ち時間
    身の回りの世話
    送迎
    子供・送迎
    幼稚園・送迎
    保育園・送迎
    ベビーシッター送迎
    幼稚園・送り迎え
    保育園・送り迎え
    子供・送り迎え
    小学生・送り迎え
    ベビーシッター・送り迎え
    塾・送り迎え
    習い事・送り迎え
    子供の世話
    子供の面倒
    介護
    子供・遊び相手
    留守番
    留守番サービス
    お留守番
    お留守番サービス
    療養中・介助
    掃除屋
    お掃除屋
    入院中・家事
    出産・入院中
    育児中・家事
    一時帰宅中・介護
    認知症・介護
    認知症・介護・家族
    認知症・介護・ストレス
    旅行中・水やり
    旅行中・水遣り
    旅行中・植物
    旅行中・防犯
    旅行中・洗濯
    草むしり
    庭の草むしり
    雑草の草むしり
    炊事
    料理代行
    お料理代行
    おまかせさん・家事代行
    やさしい手・おまかせさん
    ビリヤード動画
    ビリヤード・プロ
    ビリヤード・プロ・動画
    ビリヤード・プロ・ブログ
    ビリヤード・プロ・賞金
    ビリヤード・プロ・女性
    ビリヤード・テクニック
    ビリヤード・テクニック・マッセ
    ビリヤード初心者
    ビリヤード初心者・練習
    ビリヤード初心者・キュー
    ビリヤード初心者・テクニック
    ビリヤード初心者・フォーム
    ビリヤード練習
    ビリヤード練習方法
    ビリヤード練習・初心者
    ビリヤード練習・自宅
    ビリヤード練習・家
    ビリヤード・ブリッジ
    ビリヤード・ブリッジ・組み方
    ビリヤード・キュー
    球撞(たまつき)
    玉突き
    撞球(どうきゅう)
    billiard
    ダーツ投げ方
    ダーツ投げ方・コツ
    ダーツ投げ方・基本
    ダーツ投げ方・動画
    ダーツ投げ方・グリップ
    ダーツ投げ方・押し出す
    ダーツ投げ方・回転
    ダーツ投げ方・プッシュ
    ダーツ投げ方・手首
    ダーツ投げ方・肘
    ダーツ投げ方・効き目
    ダーツ投げ方・利き目
    ダーツ動画
    ダーツ動画プロ
    ダーツ動画フォーム
    ダーツ動画・投げ方
    ダーツ・ルール
    ダーツ・ルール・距離
    ダーツ・ルール・クリケット
    ダーツ・ルール・カウントアップ
    ダーツ・ルール・初心者
    ダーツ初心者
    ダーツ初心者おすすめ
    ダーツ初心者・重さ
    ダーツ初心者・購入
    ダーツ初心者セット
    ダーツ初心者・投げ方
    ダーツ初心者・バレル
    ダーツ初心者・練習
    ダーツ初心者・カウントアップ
    ダーツ初心者・オススメ
    ダーツ通販ランキング
    ダーツ通販・初心者
    ダーツショップ
    ダーツショップ店舗
    ダーツショップ通販
    ダーツ通販・ケース
    ダーツ通販・激安
    ロングボード
    フォーム作成
    スイングプレーン
    崖っぷち恋愛
    金持ちサラリーマン
    変性意識
    外国語学習法
    軸馬
    バナー
    ppcライティング
    ヤフオク横流し
    大川慶次郎・THE.TABOO
    楽店
    ホームページ作成
    TOEFL iBT
    アドセンスPAP
    山本伸一の日経225先物
    HyperBlogger
    文章暗記法
    モバイルSEO対策
    ハーベスト情報起業戦略
    AdSense systematic package
    パチンコ初心者
    90日間 マイトレ
    超魔術マジック
    即販プレミアムパック
    FXスキャルピングメソッド
    60日間の簡単発毛
    少年A
    キャバクラの帝王
    英検1級2次試験対策
    心理誘導メール
    超速英語脳育成
    登録くん
    GOGO携帯アフィリエイト
    ADQ System
    Count Down Booster
    ツインズ 辻ちゃん
    ただ痩せる方法
    MTテンプレートZERO2
    本は定価で買うな
    彼氏持ちの可愛い女の子
    店員ゲットの帝王
    マーベリック式デイトレ
    フランス語超速マスター
    TOEFL iBT 最速攻略
    ブレイク2008
    シークレットV
    ナンパトークテクニック
    adult affiliate
    TabDeCapture
    就職活動完全攻略
    中古車ビジネス開業
    トリプルマグナム馬券術
    携帯アフィリエイトビデオマニュアル
    ニッチアダルト
    セフレをゲット
    たたき上げ中国語学習法
    悪魔のステップメール
    儲かる商品リスト
    わらをもすがる
    日米格差 儲ける イーベイ ヤフオク
    風俗嬢を落とす
    プロフィットキング
    T式音読法
    ランまる
    90日でかなえる3つの方程式
    恋愛商材大百科
    3分間出会い量産
    コメントホワイトハット
    ロングボードとは
    ロングボード・テクニック
    サーフィン・ロングボード
    サーフィン・ロングボード・初心者
    サーフィン・ロングボード・長さ
    ロングボード・フィン

    ReplyDelete