トップページtech
1001コメント279KB

【新GUI FW】WPF(XAML,AVALON,.NET3.0)【重い?】

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2006/11/08(水) 10:43:18
あたらしいGUI FW、WPFについて語るすれ。

.NET3.0もリリースされて盛り上がってまいりますた。

WPF on MSDN
http://msdn2.microsoft.com/en-us/netframework/aa663326.aspx

.NET3.0
http://www.netfx3.com/blogs/news_and_announcements/archive/2006/11/06/.NET-Framework-3.0-has-been-released_2100_.aspx

WPF Mashup on YOUTUBE
http://www.youtube.com/watch?v=BUBOQFvh6yI

0472デフォルトの名無しさん2007/10/30(火) 17:08:17
WPFは素人を騙すデモアプリになら結構使えるよ
0473デフォルトの名無しさん2007/10/30(火) 17:29:01
何これプロパティウインドウでイベント選べないのかよ糞過!
とか思ってたのに慣れてくるとこっちの方が良く感じてくるから怖い
0474デフォルトの名無しさん2007/10/30(火) 18:15:17
>>471
VS2008に統合するって話じゃないか?
0475デフォルトの名無しさん2007/10/30(火) 18:56:12
>>474
WinFSは死なずにKatmaiに取り込まれる、みたいな建て前の話だろ
0476デフォルトの名無しさん2007/11/01(木) 01:35:01
ならいいじゃん
0477デフォルトの名無しさん2007/11/07(水) 03:38:17
WPFを勉強しようと思うんだが、お勧めの本ってある?
C#でそれなりなものが組めて、ベータを少しいじったくらいのレベルなんだけど?
0478デフォルトの名無しさん2007/11/07(水) 08:53:56
本なんて少ししか出ていないから、全部立ち読みしてみて選んだら良い。
0479デフォルトの名無しさん2007/11/07(水) 19:26:09
msdn2 の日本語訳版でも読めばいい
0480デフォルトの名無しさん2007/11/07(水) 21:38:56
>>477
ttp://adamnathan.net/wpf/
これがヨカッタ。
フルカラーだし。

0481デフォルトの名無しさん2007/11/08(木) 16:07:40
WPFだとD3Dデバイスの管理はCLRの中の人がやってくれてるんですか?
0482デフォルトの名無しさん2007/11/08(木) 16:11:33
WPF の中の人の構造はよく知らないけど、
使う方からみて D3D デバイス管理的なことは全くする必要ない。
0483デフォルトの名無しさん2007/11/11(日) 09:48:33
http://msdn2.microsoft.com/ja-jp/library/ms743714(VS.80).aspx

の下の方の図を見ると、
SessionEndingの後にExitが呼び出されるように見えるのですが、
皆さんの環境ではこの通りに動いてますか?

こちらの環境でログオフを行うと、SessionEndingが呼び出された後、
Exitが呼び出されずにそのままアプリケーションが終了してしまいます。
0484デフォルトの名無しさん2007/11/20(火) 23:30:49
WPFでチャート描きたいときって
Windows.Formsと同じで標準ではチャートコントロールないよね?
WPF用でなにか定番のソフトとかってある?
0485デフォルトの名無しさん2007/11/20(火) 23:38:49
とりあえずWindowsFormsHost使ったら
0486デフォルトの名無しさん2007/11/21(水) 08:06:13
ttp://www.infoq.com/jp/news/2007/11/ironruby-silverlight
XAMLんが短いけどな。
なんつーか良くも悪くもRubyだ。
0487デフォルトの名無しさん2007/11/21(水) 11:20:47
階層構造書くのは XML な XAML の方が見やすいと思うんだけど。
ほんと、良くも悪くもだなぁ。
0488デフォルトの名無しさん2007/11/21(水) 17:09:34
静的に定義できる部分はXAMLで
動的にやりたい部分はRubyで書けるのかな。
0489デフォルトの名無しさん2007/11/21(水) 18:12:18
>>488
Silverlight 1.1 はそれが出来るように作ってるはず。
IronRuby、Silverlight でぐぐればそういう話が出てくる。
0490デフォルトの名無しさん2007/11/21(水) 18:29:49
1.0でもaddメソッド使えば動的に要素追加できるんだと思ってたけど駄目なの?
0491デフォルトの名無しさん2007/11/21(水) 22:45:17
JScriptでいいなら出来る
0492デフォルトの名無しさん2007/11/21(水) 23:35:09
実行中のプログラムウインドウのレイアウトをxamlに書き起こすメソッドってありますか
0493デフォルトの名無しさん2007/11/22(木) 13:48:59
つ XamlWriter.Save
0494デフォルトの名無しさん2007/11/22(木) 19:50:46
>>493
うおお、まさにこれです、ありがとうございました!
0495デフォルトの名無しさん2007/11/24(土) 12:14:35
WPF重すぎてつかえねぇよ・・・
何年経てば実用的な速度で動くようになるんだろうな
0496デフォルトの名無しさん2007/11/24(土) 12:41:01
3Dでアニメーションはまだ、実用的な速度は出ないよ。
2Dアニメーションや静止画3Dなら使える。
0497デフォルトの名無しさん2007/11/24(土) 13:05:45
だな、2Dも実は重いんだろうけど見た目でなんとなく誤魔化せる
0498デフォルトの名無しさん2007/11/26(月) 17:07:31
xamlでgifアニメーション動かせます?
静止画としてしか表示できないのかな
0499デフォルトの名無しさん2007/11/26(月) 17:35:22
>>495
CPUのクロックが10GHzに到達するころじゃない?
あっという間だね^^
0500デフォルトの名無しさん2007/11/26(月) 18:24:08
当分来ないなw
0501デフォルトの名無しさん2007/11/26(月) 21:52:51
>>498
xamlだけじゃ無理のはず。
何とかしてgifアニメのインターバルを取得してこないといけない。
0502デフォルトの名無しさん2007/11/26(月) 22:15:18

なんでWPFなのにCPUクロックの話になるんだ
0503デフォルトの名無しさん2007/11/27(火) 01:21:20
WPFというか、グラフィックス関連に無知識なやつがCPU速度と騒ぐんだよな。
フレームバッファとかスクリーンバッファも知らないやつじゃないか?
0504デフォルトの名無しさん2007/11/27(火) 02:58:57
ほとんどCPU描画な件
0505デフォルトの名無しさん2007/11/27(火) 09:40:16
>>504

ボトルネックがどこにあるか調査してから断言してますか?
ソフトウェアレンダリングの場合はVRAMが一番影響大きいのだが?
0506デフォルトの名無しさん2007/11/27(火) 09:50:15
それこそまともな3D描画ならともかく
WPFのネックがフィルレートだとでも?
0507デフォルトの名無しさん2007/11/27(火) 10:01:43
なんでソフトレンダでVRAMの影響が大きくなるの?
メインメモリ上で処理して、VRAMに渡すのなんて最後だけでしょ?
0508デフォルトの名無しさん2007/11/27(火) 11:20:05
おまえらプロファイラ使えよw
0509デフォルトの名無しさん2007/11/27(火) 11:42:50
それも微妙だったりして。
0510デフォルトの名無しさん2007/11/27(火) 13:02:03
そのうち「WPFアクセラレーター」なんて拡張カードが出てきたりして
0511デフォルトの名無しさん2007/11/27(火) 13:53:28
とりあえず、調査してから文句言った方がいい、恥かくことになるから。
http://dodgson.org/omo/t/?date=20060922
0512デフォルトの名無しさん2007/11/27(火) 16:52:56
趣味でWPFを始めてみました
質問なんですけど、ストーリーボードで人(アバター)を歩かせるアニメーションをしたいのですが、
画像の切り替えはどうすればよいのでしょうか?
EllipseGeometryでPointAnimationを使って移動はできたのですが、歩くモーションのため、
数枚の画像を順に切り替えたいのです
0513デフォルトの名無しさん2007/11/27(火) 18:22:11
不透明度の変更でできるんじゃない?
0514デフォルトの名無しさん2007/11/27(火) 21:22:03
WPFの重さって、UpdateWindow相当の処理が存在しないのが原因じゃないだろうか?

描画処理だけなら60FPS近く出る場合でも
UIスレッドで重い処理を行うと、
優先度の低い画面更新処理がすっ飛ばされて、全然画面更新されなくなる。

UIスレッドで重い処理をするなと言われればそれまでだけどさ、
WinFormsなら、キーが押される時等の早いレスポンスが求められる時には
UpdateWindowが呼び出されてるんだから、
WPFにも同じような機構が欲しい。
0515デフォルトの名無しさん2007/11/27(火) 22:28:01
WPFには、XNAみたいにフレーム更新のスキップ機能がほしい。
途中のアニメーションをすっ飛ばしてレスポンス返す方がいい。
0516デフォルトの名無しさん2007/11/27(火) 23:21:12
>>511
Avalonだとか言われていた時代、既にAppleはQuatz Exteremeという
近代的なデスクトップシステムを作り上げていたのだなぁ
0517デフォルトの名無しさん2007/11/28(水) 00:10:53
おいおい・・・
0518デフォルトの名無しさん2007/11/28(水) 00:11:17
MSは98年ごろにデモで3Dデスクトップ環境を披露していたが
0519デフォルトの名無しさん2007/11/28(水) 00:15:12
まあ板的に肝なのは主にXAMLだ
0520デフォルトの名無しさん2007/11/28(水) 00:22:04
XAMLはいいかげんさが足りない
0521デフォルトの名無しさん2007/11/28(水) 00:34:12
でも面白いよなXAML
0522デフォルトの名無しさん2007/11/28(水) 01:31:03
でも、実際はタグでWeb開発してる奴にとっては珍しくないんだよ。
問題は内部ロジックがどの程度進化していくかが重要。
今の処理ではアニメーションが重すぎる。
0523デフォルトの名無しさん2007/11/28(水) 10:45:17
XAMLって汎用的なオブジェクト生成、設定マークアップランゲージだろう。またそうやってかけるのがナイスなんだが。
自分でXAML相当のもの作るとしたらどういうスキーマをクラス情報から生成すればいいんだろ。attributeの辺りとかよくわからんです。
WPFこれから調査するけどなんか思い・・・
MSの人がXPだとハードウェアアクセラレーション書きかないバグがあってフィックスがどうたらとかいってたけど知ってるエロイ日といますか?
0524デフォルトの名無しさん2007/11/28(水) 20:15:22
アニメーションはいらん機能だな・・・。
XAMLの一番のメリットはコントロールインスタンスの生成と
レイアウトの手間が省ける点だと思ってる。
それと、XAML+C#コードビハインドで、言語レベルでMVCのV,C切り分けができるのがいい。
まぁ、コードビハインドなんて言葉も、web屋のほうから来たのかもしれないが。
ついでに言うと、.net2.0 のDataProvider + DataSet + XML関連クラス もいい感じに'M'を
扱いやすくしてくれてていい感じだ。

とにかくXAMLはUIレイアウトとユーザーイベントオブザーバーとしての機能だけを充実させて
ほしい。変にプログラマブルな方向へは進んでほしくない。
0525デフォルトの名無しさん2007/11/29(木) 00:28:43
もう進まないんじゃないかって思ってるんだが。
0526デフォルトの名無しさん2007/11/29(木) 00:57:38
>プログラマブルな方向
むしろこれからが本番じゃない?

Expression Designとの連携を考えなければ、無駄だらけの機能なんだし。

Expression Designをバージョンアップさせて色々と思いついたMSが
あれもこれもと機能を追加しそうな気がする。
0527デフォルトの名無しさん2007/11/29(木) 02:14:17
まあ、VSそのものはそれほど進化してないからな。
Blendとか他の製品で新しい機能がほしいとユーザから来て追加だろう。
0528デフォルトの名無しさん2007/11/29(木) 10:37:53
アニメーションが重いのがネックだったら、
Storyboard使わずに自前のコードで20fpsぐらいで動かしたらどうだろ?
0529デフォルトの名無しさん2007/11/29(木) 11:21:06
いや、アニメーションが重いというよりも全体が重い気がする。
XPだとハードウェァアクセラレーションできないって話があるがマジですか?
0530デフォルトの名無しさん2007/11/29(木) 13:26:01
  / ̄\   プラグイン必須だし     / ̄\
  |/ ̄ ̄ ̄ ̄\           / ̄ ̄ ̄ ̄\|
 |   /V\\\         |  /V\\\
  | / /||  || |          | //|   || |
  | | |(゚)   (゚)| |          | | (゚)   (゚) /|
 ノ\|\| (_●_) |/          \| (_●_) |/|/\ ウィンのIEしか動かないの
 彡、   |∪|  、` ̄ ̄ヽ    /彡、   |∪|  ミ  \
/ __ ヽノ   Y ̄) |    ( (/    ヽノ_ |\_>
(___)      Y_ノ    ヽ/     (___ノ
     \      |       |      /
      |  /\ \     / /\  |
      | /   ) )     ( (    ヽ |
      ∪   ( \    / )    ∪
           \_)  (_/


     / ̄\
    |/ ̄ ̄ ̄ ̄\
  (ヽノ// //V\\|/)
  (((i)// (゜)  (゜)||(i)))  そのうえ動作はカ・ク・カ・ク☆
 /∠彡\| (_●_)||_ゝ\
(___、   |∪|    ,__)
    |    ヽノ  /´
    |        /
0531デフォルトの名無しさん2007/11/29(木) 13:32:21
↑何と勘違いしてるんだろ?
0532デフォルトの名無しさん2007/11/29(木) 13:33:40
>>529
これのこと?
http://forums.microsoft.com/MSDN-JA/ShowPost.aspx?PostID=1987079&SiteID=7
0533デフォルトの名無しさん2007/12/01(土) 19:24:34
>>529
ついでにこれも。
ttp://blogs.msdn.com/hiroyuk/archive/2007/11/30/6604954.aspx
0534デフォルトの名無しさん2007/12/03(月) 17:50:53
【コラム】 パソコンが「重く」なるのはなぜ?不調の理由は? 解決法はある?
http://news.ameba.jp/r25/2007/12/9073.html
0535デフォルトの名無しさん2007/12/04(火) 05:44:27
>>534
>メモリ内を掃除する「メモリクリーナー」系のソフトが効果的かも。
こんなこと書いてるよ。だめだめだろそれ。
0536デフォルトの名無しさん2007/12/04(火) 06:25:20
>>535
メモリのフラグメンテーションが進んでいる状況を解決するという点では
全く意味がない訳ではないので
長時間実行している状況という前提の中では一応問題ないと思うぞ
0537デフォルトの名無しさん2007/12/04(火) 09:30:12
一度もリストアもしないで数年使い続けたノートでは役に立ったよ。
数日動かしてると激重になるけど再起動するのも面倒だからメモリクリーナーで急場をしのぐ。
0538デフォルトの名無しさん2007/12/04(火) 19:07:23
http://itpro.nikkeibp.co.jp/article/NEWS/20071203/288650/
>MEET eJournalPlusは,現在はまだ評価版の段階である「.NET Framework 3.5」をベースに開発されており,
>文書フォーマットとしては「XPS」を採用して,メタデータの保存などを行っている。
>また,学生間や学生・講師間でのデータ共有には,.NET Framework 3.0で追加された通信機能である
>「Windows Communication Foundation」を使用している。

ソース公開するらしい
0539デフォルトの名無しさん2007/12/04(火) 19:23:56
>刷新 「.NET アーキテクチャーセンター」

絶えずアーキテクチャー刷新ですね。

ありがとうございましたorz
0540デフォルトの名無しさん2007/12/04(火) 23:38:30
MEETをNEETと読み違える奴多数?
0541デフォルトの名無しさん2007/12/06(木) 23:13:13
勤労を批判的に見る訓練
0542デフォルトの名無しさん2007/12/07(金) 14:30:02
こういうオサレなWPFアプリ作ってみたいもんだが、どうしても重くなっちゃうな。むずい
ttp://www.thirteen23.com/work/denounce/index.html
0543デフォルトの名無しさん2007/12/07(金) 23:15:01
まずもってデザインセンスがない俺
0544デフォルトの名無しさん2007/12/08(土) 01:23:16
Yahoo! Messenger for Vista
ttp://japan.cnet.com/news/media/story/0,2000056023,20362702,00.htm
ttp://messenger.yahoo.com/windowsvista.php
0545デフォルトの名無しさん2007/12/08(土) 01:48:16
うおおお
今度は落ちにくくなってるのかな
0546デフォルトの名無しさん2007/12/08(土) 22:46:28
MSが使わずYahooが使っているという・・・
0547デフォルトの名無しさん2007/12/09(日) 00:46:50
使ってみたけど結構悪くないよ
ただ絵文字がきもくなった
0548デフォルトの名無しさん2007/12/11(火) 01:33:06
あれから1年:Vistaのキラーアプリケーションはどこにある?
http://japan.zdnet.com/sp/feature/07microsoft/story/0,3800083079,20362838,00.htm
0549デフォルトの名無しさん2007/12/11(火) 08:39:37
おっしゃるとおりでございます。
リンク先のブログに書いてあるこれに期待するしかないな。
Update: I’ve heard some indication that Yahoo Messenger and presumably WPF
runs better in Vista SP1.
0550デフォルトの名無しさん2007/12/11(火) 08:45:01
XPのときにキラーアプリなんかあったか?
0551デフォルトの名無しさん2007/12/11(火) 09:05:03
98/Meから乗り換えたユーザーにとってはXP自体がキラーアプリだったような。
当時2000ユーザーってそんなに多くなかったし。
0552デフォルトの名無しさん2007/12/11(火) 13:36:25
WPF用のXAMLのスキーマってどっかに転がってますか?(´・ω・`)
0553デフォルトの名無しさん2007/12/11(火) 20:10:16
>>552
ttp://www.venkatarangan.com/blog/XAMLSchema.aspx
こんなん見つけましたけど(゜▽゜)
0554デフォルトの名無しさん2007/12/13(木) 04:07:59
>>551
2000 を使っていた身としては通知領域のカスタマイズで
表示しているアイコンを選ぶことができるようになったのが大きかったな

アプリ追加でやるのと標準で付くのは差が大きい
0555デフォルトの名無しさん2007/12/13(木) 21:14:26
http://msdn2.microsoft.com/en-us/library/ms771362.aspx

ここにサンプルがあるのだけれども、2008Express Editionだと
app.manifestがありません言われてビルドすらできない罠

プロジェクトからapp.manifestを削ったら今度はwindows1.xamlが
見つかりませんとかIOExceptionが出るし…

もうだめぽ
05565552007/12/13(木) 21:27:59
[Window Title]
Microsoft Windows

[Main Instruction]
WPFCalculator2 は動作を停止しました

Vista Home Basicじゃ動かないのか…
05575552007/12/13(木) 22:40:31
Re: VS 2008 crash while rendering xaml - MSDN Forums
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2390828&SiteID=1&pageid=0#2390828

はずれ

Locbaml doesn't work - MSDN Forums
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=298036&SiteID=1
>in your debug folder you have a folder named 'en-US' and within is a dll named YourApp.resources.dll.

近づいた
リフレクタで診るとwindow1.bamlがあやしいのでぐぐる

WPFサンプルプログラム「AvalonCalculator2」が実行できない - MSDN フォーラム
http://forums.microsoft.com/MSDN-JA/ShowPost.aspx?PostID=526730&SiteID=7

WPFCalculator2.csprojの
11行目 <UICulture>en-US</UICulture> を削除したら
動きました…

[WPF] - 匣の向こう側 - あまりに.NETな
http://d.hatena.ne.jp/akiramei/searchdiary?of=7&word=*%5BWPF%5D
WPFサンプルコード その1 - MSDN フォーラム
http://forums.microsoft.com/MSDN-JA/ShowPost.aspx?PostID=494231&SiteID=7

あまりいじってるひといないのね…メモぐらい残そうよ
0558デフォルトの名無しさん2007/12/14(金) 01:02:49
> UICulture

超常識なんだが。
0559デフォルトの名無しさん2007/12/14(金) 09:38:40
そうか常識を超えてるのか…
0560デフォルトの名無しさん2007/12/14(金) 12:33:25
UMA = Unidentified Mysterious Animal

未確認動物 - Wikipedia
http://ja.wikipedia.org/wiki/%E6%9C%AA%E7%A2%BA%E8%AA%8D%E5%8B%95%E7%89%A9
05615552007/12/14(金) 15:01:39
>>558
情報が2006年の4、6月あたりで止まってる感があるのだけど

SdkViewer - Google Search 19件
http://www.google.co.jp/search?hl=en&q=SdkViewer&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=lang_en
SdkViewer - Google 検索 3件
http://www.google.co.jp/search?hl=ja&lr=lang_ja&q=SdkViewer

なにこの情報の少なさ加減は…
0562デフォルトの名無しさん2007/12/14(金) 15:23:02
IOException: Cannot locate resource app.xaml - WPF in Visual Studio 2008 Beta 2 - Guy Burstein [MVP]
http://blogs.microsoft.co.il/blogs/bursteg/archive/2007/08/02/Cannot-locate-resource-appxaml.aspx

I had this error when running SdkViewer in VS.NET 2005, tried putting "MSBuild:Compile" as
the Custom Tool for SdkViewerApplication.xaml, but it didnt work..

2005で走らせようとしたらエラーが出た。SdkViewerApplication.xamlのカスタムツールとして
"MSBuild:Compile"を設定した。でも動かなかった

so I decided to open in VS.NET 2008 and after the project got upgraded, the app finally ran..
"MSBuild:Compile" was already set from the earlier trial with VS.NET 2005

そこで2008で開いてプロジェクトのアップデートを試みた。ようやくデモが動いた…
"MSBuild:Compile"はさっき2005でやろうとしたときに設定してあったと思う

so not sure if that did they trick, but will keep this in mind if I see this error again.. thanks.

なのでそれが功を奏したかはわからない。けどまたエラーが出た時のためにそのことを
気に留めておこう、ありがとう
--------------------------------------------------------------------------------

たぶんこれだな…。あぁ tried putting "MSBuild:Compile" as the Custom Tool のくだりのところが
さっぱりわからん orz
05635552007/12/14(金) 15:35:50
ああ、[プロジェクト]-[SdkViewer.VisualStudioのプロパティ]から
.csproj を設定できるようになってるのか。それをカスタムツールと呼称すると。

[ビルド]タグを開いて[全般]-条件付コンパイルシンボル(Y):のテキストボックスに
MSBuild:Compileを入力しろと。>tried putting "MSBuild:Compile" as the Custom Tool

うん。見通しは悪くは無いね。シンプルだ
0564デフォルトの名無しさん2007/12/15(土) 00:23:36
WPFで画像ビューアなんかを作った場合、VA側のVRAMが許す限り画像分メインメモリを消費しなくて済みますか?
オンボなので確認のしようがない・・・
0565デフォルトの名無しさん2007/12/15(土) 00:24:32
VA側じゃなくてVGA側でしたorz
0566デフォルトの名無しさん2007/12/15(土) 11:44:08
意味が分からない
0567デフォルトの名無しさん2007/12/15(土) 11:45:55
ついでにいうとオンボードの場合まず間違いなくメインメモリを流用するわけだが
0568デフォルトの名無しさん2007/12/15(土) 15:01:30
たぶん答えはNoでしょ。
WPF使っても、画像ビューアーの内部で持ってるイメージデータが
VRAMに保存されることはない。
イメージごとに独立した別ウィンドウにすればVRAMに確保されるけど、
バックアップとしてメインメモリにも同じデータが確保されるから消費量は2倍以上になる。
そもそもWPF&WDMのしくみや目的を誤解してると思う。
0569デフォルトの名無しさん2007/12/15(土) 18:49:53
>>566-567
すいません、DirectX自体良く分かってません
>>568
例えばImageコントロールを使えばそうなるのかな思ってたのですが、
VRAM上のデータはメインメモリ(上にあるテクスチャ)のキャッシュとして使われるってことですか?
0570デフォルトの名無しさん2007/12/15(土) 19:58:20
>>569
その辺については「dwm.exe」でググると(WDMじゃなかったorz)
わかりやすい説明が見つかると思うよ。
とにかくWPFとは直接関係ないことだから、VRAMのことは忘れたほうがいい。
0571デフォルトの名無しさん2007/12/15(土) 23:27:51
>>570
vistaじゃないと駄目なんですね
■ このスレッドは過去ログ倉庫に格納されています