トップページgamedev
1001コメント442KB

【Xbox360】 XNA Game Studio その5 【C#】

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2008/03/25(火) 13:57:55ID:DksURoh7
前スレ
【Xbox360】 XNA Game Studio その4 【C#】
http://pc11.2ch.net/test/read.cgi/gamedev/1198312422/

XNA Developer Center http://msdn.microsoft.com/directx/XNA/
XNA Game Studio Express http://msdn.microsoft.com/directx/xna/gse/
XNAをはじめよう! http://xna-studio.jp/

■ゲ製wiki
プログラミングガイドなど、基礎技術情報が豊富
http://www23.atwiki.jp/news4xna/

■ゲハwiki
フリーのライブラリ情報などが豊富
http://www16.atwiki.jp/xna360

■マインスイーパ
C#をすでに習得している人向け
http://www.microsoft.com/japan/msdn/vstudio/express/learn/xna/default.aspx
0195名前は開発中のものです。2008/04/05(土) 10:47:34ID:o9VivkWy
>>192
まずどういうことをしたいのか具体的にまとめる事から始めたほうがいいと思う
0196名前は開発中のものです。2008/04/05(土) 11:54:48ID:ElJWYWg0
パイの大きい事を書いてる奴は、賛同者の多さを確認したい程度の意味だとおもうん。
特にxnaじゃ、デバッガやってくれるCC会員がどうしても必要ってコミュニティができるんだろ?
来年の話だけどさ。


俺は、ゲ制作板で3Dやシェーダーやる奴が仲間を見つけるのがお門違いな事を把握した。
0197名前は開発中のものです。2008/04/05(土) 12:08:37ID:40Juq2eP
>>194
Gorgonちょっと見てみたけど良さそうな感じだね
やっぱりこの手のライブラリにはお約束で日本語は描画できないみたいだけど
それくらいは自前で用意すればいいか
フォント描画って一度自作したらあとはほとんど使いまわせて便利だね
0198名前は開発中のものです。2008/04/05(土) 13:11:16ID:ElJWYWg0
おぉ!良いジャンSlimDX。 MITライセンスで添付、再配布ができる。
これで、xnaメインでもパッドだけのために、MDXを入れるとか言わなくて良くなる。
Joystickのサンプルにtimer.Start();が入って無かったけど関係ないぜ。


 いちお聞きたいんだけど、サンプルに入って無いだけでパッドもデバイス消失する
事があるんで良いんだよな?
0199名前は開発中のものです。2008/04/05(土) 18:36:46ID:87cNRJJv
DynamicVertexBuffer使ってる人いる?
VRAMにある頂点を直接書き換えるとDrawUserPrimitiveより高速になるのかな?
0200名前は開発中のものです。2008/04/05(土) 19:19:31ID:/mAS7Xuj
>>198
ok
>>199
前スレにも載ってたが、360との関係でDynamicVertexBufferは非推奨らしい
0201名前は開発中のものです。2008/04/05(土) 19:59:39ID:87cNRJJv
>>200
非推奨のものが何故あるの?

Windowsでは使ったほうがいいんでしょ?
0202名前は開発中のものです。2008/04/05(土) 20:08:20ID:/mAS7Xuj
>>201
360で非サポートなんだよ

前スレで書いた人のソースはXbox 360 Programming Considerationsだと思うので、とりあえずそれ見とけ
0203名前は開発中のものです。2008/04/05(土) 20:10:00ID:lI6bL5jE
なんか最近の書き込みをみてると、XNAを環境というよりはツールとしてみなしている人が多いな。
自分の世界で、なんとかXNAの便利な部分をうまく利用できないか考えている・・・みたいな。

やっぱり、C#、Java始めたばっかとか、プログラミングすらおぼつかない人たちに「ゲーム作りどうよ?」と
支援した方がいいと思う。チュートリアル記事も全編ソースコード&コメント付きで。そのかわり
作るゲームも超単純でおまえらから非難浴びまくりのやつで。

すでにスキルのあるプログラマーを支援すれば結果を出してくれるのは早いけど、XNAへのロイヤリティーが
低そうだ。
0204名前は開発中のものです。2008/04/05(土) 20:25:13ID:87cNRJJv
>>202
だからWindows用にしか使わないんだってば
とりあえずサンクス
0205名前は開発中のものです。2008/04/05(土) 21:13:09ID:phB+nkDl
>>204
>だからWindows用にしか使わないんだってば
そんな前提どこにも書いてないのに何故噛み付く?
何様なんだ?
0206名前は開発中のものです。2008/04/05(土) 21:13:58ID:/mAS7Xuj
何故と聞かれたから答えたんだが
どうして文句を言われるのだろう(;_;)
0207名前は開発中のものです。2008/04/05(土) 21:17:10ID:lI6bL5jE
それだけWindowsをデフォとして考えている人が多いんだろうな
0208名前は開発中のものです。2008/04/05(土) 21:48:01ID:0uqKEkJi
Xbox 360 Programming Considerations
ttp://msdn2.microsoft.com/en-us/library/bb203938(MSDN.9).aspx

この情報は1.0 Refresh時のものだから古いぞ。
2.0でDynamicVertexBuffer/DynamicIndexBufferのOverwrite/Discardが
Xbox360でも動作するようになったようだ。速度は知らんがな。
俺も箱持ってねーから誰か検証よろ。
0209名前は開発中のものです。2008/04/05(土) 21:53:47ID:lI6bL5jE
>俺も箱持ってねーから誰か検証よろ。

箱の不人気ぶりにワロタorz
0210名前は開発中のものです。2008/04/05(土) 21:57:04ID:LqWkW3ty
日本で箱持つ=負け組の代名詞だからな
0211名前は開発中のものです。2008/04/05(土) 22:03:22ID:ElJWYWg0
>箱の不人気ぶりにワロタorz
そんな自分の世界に浸らなくても良いよ。
その話題は有料9800円ってループネタになるから言いたくないだけ。
0212名前は開発中のものです。2008/04/05(土) 22:12:31ID:40Juq2eP
箱が無くても,モダンな言語からDirectXが一通り簡単に使えて
まともなパフォーマンス出る環境は.NETくらいだし
0213名前は開発中のものです。2008/04/05(土) 22:20:07ID:0uqKEkJi
ごめん勘違いだったw

つーか、箱でゲームを動作させるまでの道程、敷居が恐ろしく高いことに絶望している。
LiveなんとかとかCreatorsClubとか、もうわけわかんねーよ。情報ねーし。
shader書いてるのが児戯同然に思える。
0214名前は開発中のものです。2008/04/05(土) 22:25:12ID:ritn/xe1
>>213
14日にセミナーがあるらしいでつよ。
そこで質問するのもありだとおもいます。
0215名前は開発中のものです。2008/04/05(土) 22:29:33ID:lI6bL5jE
マイクロソフトとしてはCreators Clubの値段をどう正当化しているんだろうね

おれの予想だけど、シェーダーモデル1.1程度(つまりXNA Game Studioが動く程度)のPCしか持っていなくて、
3Dゲームのデバッグが実行できない人にとっては、パソコンをわざわざ買い替えずに、リビングの箱
に9800円払えば簡単に3Dゲームの開発・実行環境手に入れられますよ〜みたいな感じ?
0216名前は開発中のものです。2008/04/05(土) 22:39:29ID:ElJWYWg0
>まともなパフォーマンス出る環境は.NETくらいだし
ライブラリとか多くて需要は多い気がするけど、まだ実感湧かないな。
実戦投入された事例とかあるの?

俺はゲーム作りながらC#とか勉強できてお得かな?ぐらいなんだけど。
あと、C#でパフォーマンスの話をするとハゲるぞと脅される。
0217名前は開発中のものです。2008/04/05(土) 23:33:55ID:bRS9F+4q
C#できるのが前提なので初心者はゲームで遊んでなさい
0218名前は開発中のものです。2008/04/06(日) 00:38:57ID:gipUzrtZ
そして誰もいなくなりましたとさ
おしまい
02194532008/04/06(日) 00:52:03ID:EWPwyVLH
>>215
9,800円で型落ちのビデオカード買う方がマシなんだが。

あなたのゲームが世界に認められる(かも)!というトークで夢の騙し売りだな。
外国語講座のセールスみたいだ。
0220hage2008/04/06(日) 00:58:51ID:/CKbXKSt
ILコードのインライン展開の所為で、ポリモーフィズムよりswitchの方が速いのには泣いたな。

 設計の肝は継承だろ。
 実装と設計は一致しないとかよく言うけどさ、
マイクロソフトがJITコンパイラの見栄えをよくする為に入れたマッチポンプ
に付き合わされてるんだよ。 おまえら。
気付けよ。
0221名前は開発中のものです。2008/04/06(日) 02:18:24ID:qlDLk7cP
Xbox360で遊ぶ有名人について語る2
http://namidame.2ch.net/test/read.cgi/ghard/1205759498/

芸能人に配ってないで、意欲のある開発者に配ればいいのにね
早く箱○買うだけで作ったゲーム動かせるようにならねーかなぁ

>>219
逆に「1から勉強します!」って初心者は騙されないよ
そこそこのアマチュアプログラマですら騙されないのに

XNAGSEは、ILなんて知らない、C#かじった程度の初心者が使うゆるい環境だよ
正直言って目糞鼻糞だね
0222名前は開発中のものです。2008/04/06(日) 02:26:07ID:W1YTBiBr
花やしきで本体配ってたらしいけどな
くじ引きの当選者かなんかに
ああいったイベントに訪れる人たちは潜在的開発者多いんじゃないだろうか
0223名前は開発中のものです。2008/04/06(日) 02:37:02ID:qlDLk7cP
×そこそこのアマチュアプログラマですら騙されないのに
○そこそこのアマチュアプログラマは騙されるけど
0224名前は開発中のものです。2008/04/06(日) 02:40:38ID:pMByTgdn
>ILコードのインライン展開の所為で、ポリモーフィズムよりswitchの方が速い

意味がよくわからんのだが、C++だって仮想関数使った時点でインラインはねぇだろ。
0225名前は開発中のものです。2008/04/06(日) 02:47:44ID:W1YTBiBr
機械語をマスターしろ
0226名前は開発中のものです。2008/04/06(日) 03:20:44ID:wPDV4BQo
そもそもなぜCとかC++が使えないんだ?速度クリティカルな所まで全部C#で書けとかただの拷問じゃね?
0227名前は開発中のものです。2008/04/06(日) 03:48:00ID:W/UfacKr
使えるとか前スレで言ってたよ
C++/CLIとか
0228名前は開発中のものです。2008/04/06(日) 04:09:07ID:gipUzrtZ
わさわざマーシャリングするなんて気が狂ってるとしか思えない
そうやっていつまでもがんばってね!
0229名前は開発中のものです。2008/04/06(日) 04:38:59ID:W1YTBiBr
>>226
> そもそもなぜCとかC++が使えないんだ?速度クリティカルな所まで全部C#で書けとかただの拷問じゃね?


パフォーマンスを追及する人はフレームワークやらマネージドコードは卒業した方がいいんじゃない?
0230名前は開発中のものです。2008/04/06(日) 04:50:13ID:W1YTBiBr
Xbox,、PCやZuneなどのハードウェアの違いの隠ぺいとか移植性とかXNAのメリットにあやかる予定が
ないひとがXNA使ったら、そりゃ不満ばかりでるにきまっとる
0231名前は開発中のものです。2008/04/06(日) 08:11:52ID:gipUzrtZ
で?
あんたは何がしたいの
不満のある人全員を説き伏せたいわけ?
我慢しろと?妥協しろと?

どいつもこいつも馬鹿ばっか
0232名前は開発中のものです。2008/04/06(日) 08:17:26ID:ha9KheqG
不満のある人が不満のない、または意義を感じている人を説き伏せたいように
みえるんだが、そのせりふ自分にそのまま帰ってくるの分かってて言ってる
のかな。むしろ馬鹿にしてる空気出しているだけ性質が悪い。
0233ハコ太郎2008/04/06(日) 08:48:39ID:3LSxDEKu
黙ってコードうpれ
0234名前は開発中のものです。2008/04/06(日) 08:54:06ID:uCEw0SmW
>>203
http://creators.xna.com/

ここでいいんじゃね?
0からのサンプルよかここの日本語での解説ページ作ったほうが役に立つような気はする。

>>231
えらい情緒不安定だな。
なんかいやなことでもあったんけ?

つ旦
0235名前は開発中のものです。2008/04/06(日) 09:14:24ID:pMByTgdn
プロと同じ開発環境をフリーで寄こせっつってるようなもんだしなぁ。
PCさえあれば誰でも開発、配布も自由、その結果がただの混沌だけだったらどう弁解すんだろ。
年会費に関してはMSの広報のへぼさは言わずもがな、今の段階で何を約束できるわけでもなし、
趣味として払いたい人が払えばいいだけじゃん? なんか不満以前の邪推ばっか。

今はお試しとして暫定で入会させてくれればなぁ。
俺も年会費がネックで箱の購入に踏み切れない人間のひとりだし。
0236名前は開発中のものです。2008/04/06(日) 11:04:45ID:40Vp6nuk
入会しなくてもゲームは作れるからまず作ってね
0237名前は開発中のものです。2008/04/06(日) 11:59:56ID:5ljxdwAA
不満は大事だよ。
>20っぽくまとめて、ここに書かずに直接ここに書いた方がよい。
ttps://connect.microsoft.com/feedback/default.aspx?SiteID=226&wa=wsignin1.0

不満相手には、その程度のアドバイスしかできないハズだ。
良いところ、不満の賛同者を集めるぐらい。 安くなる手があれば大賛成だ。

 それでもケチを付ける奴は、ループな話題をさも自分が思いついたかの様に話してる
本当に頭が残念な人だろ。 なにも思いつかないならスルーしろ。


 俺としては、綺麗なILコードで書かれたAPIの追加や、綺麗なILコードを吐くサンプルを
creators.xna.comみたいな公式に載せて欲しい。
 現状のcreators.xna.comの奴らは、設計もパフォーマンスも糞。 行数で給料もらってるのか?ってぐらい。
単機能紹介は一般ユーザのブログで十分。
0238名前は開発中のものです。2008/04/06(日) 12:04:48ID:5ljxdwAA
>ここに書かずに直接ここに書いた方がよい。
うわぁぁぁぁぁぁ orz

スレに書かずに、フィードバックに書こうな。
0239名前は開発中のものです。2008/04/06(日) 12:06:30ID:btXnNLCW
まあSpacewarのMSガイドライン無視のList<T>継承はどうかと思う
0240名前は開発中のものです。2008/04/06(日) 13:27:33ID:Ao8ppYwE
ここに出た問題は、年会費が無くなる事で大体解決しそうだ。
0241名前は開発中のものです。2008/04/06(日) 13:51:21ID:OwHt2v0J
年に9800円のサービス(組合費みたいなもん?)が気に入らないなら相手にしなければいい。
部外者が文句言う筋合いはどこにも無い。
0242名前は開発中のものです。2008/04/06(日) 13:52:27ID:51I03wn8
年会費高い高いとか言うけど、4ヶ月の奴じゃ駄目なのかねぇ。
0243名前は開発中のものです。2008/04/06(日) 14:13:51ID:sxpcBZxr
>>235
年会費と箱は別に関係ないよ
0244名前は開発中のものです。2008/04/06(日) 14:24:32ID:+rwH5R2E
年会費が必須なのはxboxでゲームを配布販売したい人だけなんですよ。
「xbox360のゲーム」に関してのみだから。

つまりお前らには関係ないってこった。
0245名前は開発中のものです。2008/04/06(日) 15:54:13ID:gipUzrtZ
>>241
はい、相手にしてません

>>244
はい、関係ないです

ゲ製XNAスレ住人のほとんどがPC向けを想定してるのは泣けるねw

それにしても社員の擁護レスがひどい
本当に良いものかどうかはその開発者自身が一番わかっているはずなのに
少なくともXNAに興味を持ってこのスレにいるわけだし、
それをチームのためとか政治的な理由で擁護されても、ああそうですかとしか言えなくなるのがわからないのかな?

どいつもこいつも馬鹿ばっか
下手くそ
0246名前は開発中のものです。2008/04/06(日) 15:58:05ID:7J3511XK
>>245
ごめんなさい許して
まで読んだ。
0247名前は開発中のものです。2008/04/06(日) 16:06:12ID:gipUzrtZ
>>243のような社員がまずわかってないのは
このスレにいる奴が自分のゲームを動かせないのに箱買うわけないってこと
年会費必要だと知ったらそりゃ箱買うのも迷いますよ
市販のゲームがやりたくて欲しいわけじゃないんだからね

こういうところがわかってない馬鹿は本当に頭が悪くて救いようがないと思います
0248名前は開発中のものです。2008/04/06(日) 16:26:55ID:p8jq3fSx
>>247
だからゲハ板に帰りなよ…
0249ひげねこ ◆oxtErU/kVM 2008/04/06(日) 16:30:30ID:7BssmlpU
またきますた。っていうか、レス増えすぎ。
例によって例のごとく二時間ぐらい滞在します。
ネット接続の調子が怪しいので、突然落ちるかもしれません。
0250ひげねこ ◆oxtErU/kVM 2008/04/06(日) 16:53:16ID:7BssmlpU
>>69
>Randomクラスで0しか返ってこないバグがあるんだけど報告されてる?
もしかしてマルチスレッド間で使っていますか?もしそうなら、Randomクラスはスレッドセーフではないので
呼び出し側でスレッドロックする必要があります。この現象はXbox 360のみではなく.Net全般の症状です。
特にXbox 360や最近のマルチコアCPUではマルチスレッドが見かけ上ではなく、本当に同時に動作するので
マルチスレッドプログラムをするときには注意が必要です。

>>128
ネイティブコードは厳密にいうとx86のインストラクションのことで、NGenかますとILからネイティブコード変換が入り、
JITコンパイラをいちいち起動させずに済むので起動が速くなるし、CPUによってはSSE命令とか使ったりするという利点があります。
ただし、フルネームがついてるアセンブリファイルしか変換してくれないので、開発中の恩恵はあまりありません。

そしてC++/CLIを使った場合、通常のC++コンパイラとは違ってネイティブコードではなくILコードに変換されます。
ですから、C++/CLIのコードはネイティブコードではなく、アンマネージコードと呼ぶわけです。

C++/CLIの目的は.Net側から便利に使わせるための仕組みなので、どうしてもコード自体が煩雑になってしまいます。
もし、単にシンプルなAPI呼び出しで済むのだったら、C#側からP/Invokeを使うと楽ですよ。

>>161
私は一開発者に過ぎないので、門外漢の私に営業、しかもMSKK側の営業に関して言われても対処できませんので
直接、MSKKの方に意見してください。
0251名前は開発中のものです。2008/04/06(日) 16:55:45ID:gipUzrtZ
>>249
もう来なくていいですよ
毎回質問や要望に対して必死に言い訳するだけで
誰の役にも立ってないから
0252名前は開発中のものです。2008/04/06(日) 16:59:16ID:tOJ8RPAp
盛り上がってる空気を作るのに必死なんだよ、察してやれよ
こんなゴミ誰も触らないのにね
0253名前は開発中のものです。2008/04/06(日) 17:02:11ID:gipUzrtZ
XNAの中の人も大変だな
0254名前は開発中のものです。2008/04/06(日) 17:09:29ID:efNgAChw
ID:gipUzrtZ
0255名前は開発中のものです。2008/04/06(日) 17:24:54ID:gipUzrtZ
それが何か?
悔しくて反論もできないの?
ID書いて他の奴に賛同して欲しいんでちゅか?
文章が書けないゆとりはこれだから
0256名前は開発中のものです。2008/04/06(日) 17:48:42ID:efNgAChw
>>255
とりあえず自分のレスを全て見てみろ。
お前はこの場に相応しくない。
ここは"ゲ製作技術板の"XNAスレだ

板違いかどうかも判断できないやつがゆとりなんて言葉を口にするとは
世も末だな
0257ひげねこ ◆oxtErU/kVM 2008/04/06(日) 17:54:13ID:Lea5VsKe
>>169
4xMSAAはバックバッファ以外にも、RenderTarget2Dにも指定することができます。
ハード的にはバックバッファもレンダーターゲットもレンダリングする対象という意味ではどちらも同じように使われます。

すいません、ひにけにのサンプルではATI系のカードでQualityレベルが1しか帰ってこない場合には同じ問題が起こります。
コード内のQualityレベルの設定をする部分を

pp.MultiSampleQuality = 0;

の様に変えれば問題なく動作するはずです。

>>174
デバイスの生成はGame.Run内で一番最初に処理され、その後に登録されたコンポーネントのInitializeを呼ぶようになっています。
ですから、Graphics.PreparingDeviceSettingsイベントはコンストラクタ内で追加しないといけません。
確かに他のデバイス関連の初期化はLoadContentですることが奨励されていますが、このイベントはデバイス生成する時に
どんなデバイスを作りたいのかをゲーム側で判断できるようにする仕組みなので、コンストラクタ内で設定してください。

>>181
詳しくはここに書いてあります。
ttp://blogs.msdn.com/ito/archive/2007/11/19/xna-2-0-multiplayer.aspx

ゲーム製作自体は無料でできますが、現状ではGames for Windows、つまりインターネットを介したゲームを
プレイするにはXNA CCと、Liveゴールド会員である必要があります。
システムリンク、つまり同じサブネット内に居る場合には、そのどらも必要ありません。
0258名前は開発中のものです。2008/04/06(日) 17:55:59ID:pMByTgdn
ねこさんに質問。

少し前のレスにもあるDynamicVertexBufferって何? 
確か360ってアーキテクチャ的に動的頂点バッファが使えないと思ってたんだけど、
わざわざこのクラスが追加されたってことは360でも動的なのが使えるようになったの?
それともただのDirect3Dの動的頂点バッファと360上でのユーザーデータとの抽象レイヤ?
マニュアルには今時のPCならどのみちユーザーデータ使えばおkって書いてあるけど。

それとXAudio2+XWMAってXNAで使えるようになりそう? 
やっぱ音はもうちょい細かく制御したい。
0259名前は開発中のものです。2008/04/06(日) 18:35:24ID:gipUzrtZ
グダグダ言ってないでコード数行書けば済む話だろ
回りくどい奴だな

しかもコンストラクタで追加したら駄目だっつの
日本語読めますか?
0260ひげねこ ◆oxtErU/kVM 2008/04/06(日) 18:43:40ID:Lea5VsKe
>>258
DynamicVertexBufferはXNA1.0やDirectXでDYNAMICをフラグ指定していたものを明示的なクラスにしただけのものです。
Xbox 360はAGPメモリの無いUMAなのでDynamicVertexBufferもVertexBufferも全く同じに動作します。単にWindowsとの
コードレベルでの互換性を保つために宣言されているだけです。

前のスレにDynamicVertexBufferを作るとVRAMにアクセスすると書いてありますが、厳密にはAGPメモリを介してVRAMにアクセスする
という目的の為にあったのですが、最近はSLIなどの仕組みが登場してきたので、直接AGPメモリを返すのではなく、一旦システムメモリに
書いてもらってから、VRAMに転送するといった手法を使うようになってきたので、マニュアルにあるようにDrawUserPrimitive使うのと
性能的アドバンテージは無くなってしまいました。

それでも中にはDynamicVertexBufferを使った方が速度的に優位になるビデオカードがあるのでそれに対応するためのクラスでもあります。

>それとXAudio2+XWMAってXNAで使えるようになりそう? 
これに関してはコメントできませんが、今後の参考の為に具体的にどのような細かい制御をしたいのか教えてもらえると助かります。
0261名前は開発中のものです。2008/04/06(日) 18:53:00ID:gipUzrtZ
>RenderTarget2Dにも指定することができます。

だからその方法は?
マルチスレッドの定石は?
読者が知りたいのは実装方法なんだよ
オナニーフレームワークの解説は聞き飽きた
役に立たないってのはこういうところ
0262名前は開発中のものです。2008/04/06(日) 18:58:41ID:gipUzrtZ
>>260
そういうのは最初からマニュアルに書いておけ
DynamicVertexBufferとそうじゃないものの違いがわからないだろ
いちいちこのスレで質問しなきゃならんのか?
0263名前は開発中のものです。2008/04/06(日) 18:58:53ID:7J3511XK
>>261
マニュアル見ろと。
コンストラクタの引数にないか?
0264名前は開発中のものです。2008/04/06(日) 18:59:08ID:nzhbz0Go
>>260

ひげねこちゃん、
マインスイーパ第一回の終盤「ゲームの作成」の実装・コード(MineFieldクラス、
ImageManagerクラス、ImageNameクラス)をC#初心者のために書いてくれ。

http://www.microsoft.com/japan/msdn/vstudio/express/learn/xna/01.aspx
0265名前は開発中のものです。2008/04/06(日) 19:10:02ID:nzhbz0Go
>>252
> 盛り上がってる空気を作るのに必死なんだよ、察してやれよ
> こんなゴミ誰も触らないのにね


でもこの前のコンテストは70作品の応募があったそうな
0266名前は開発中のものです。2008/04/06(日) 19:11:11ID:pMByTgdn
>>260
>>コードレベルでの互換性を保つために宣言されているだけです
んー、大体予想どうりかぁ。紛らわしいから削除希望w

>>DynamicVertexBufferを使った方が速度的に優位になるビデオカードがあるので
そんだったらVertexBufferがLockRectの結果を直接返さないのっておかしくない?
SetDataじゃマネージ配列へのコピーが余分に発生するから
それこそDrawUser**に対するメリットが消えてしまうと思うんだけど。

>>具体的にどのような細かい制御をしたいのか
んー、まぁそりゃ生でPCMデータを扱えること全般かな。
例えば音主体のゲームなんかで動的にエフェクトを生成したい時とかあるじゃん。
再生ライン上のどこかで直接PCMにアクセスする手段は最低用意しとくべきだと思うの。
グラフィックデータだけプログラマブルなんて不幸平ッ。
0267名前は開発中のものです。2008/04/06(日) 19:22:48ID:/XxyvBzH
>>261
>マルチスレッドの定石は?
>読者が知りたいのは実装方法なんだよ

XNA/Xbox360固有の話を期待してるの?
それともマルチスレッド一般の定石をXNAで学びたいって話?

自分だけは失敗せずに最初から正解のコードしか書きたくないって気持ちは分からなくもないけど
そのアプローチで伸びた人知らないからなぁ。
0268名前は開発中のものです。2008/04/06(日) 19:30:43ID:qlDLk7cP
なんか物凄い荒んでる人がいるおwwwwwwww

ま、俺としては使い捨ての故障ハード買わせるなら年会費タダにしろよ
の一点張りだな
こんな糞ハード買う人がいないことは日本の需要見ればすぐわかるでしょ

ふと思ったんだが、ピアレビューって会員が動作検証とかすることになるんでしょ?
9800円でゲームやり放題だなwwwww
こりゃ破綻するわ
0269名前は開発中のものです。2008/04/06(日) 19:35:57ID:40Vp6nuk
>>264
XNAはC#初心者用ではありません
0270ひげねこ ◆oxtErU/kVM 2008/04/06(日) 19:41:05ID:OV1XFqJS
>>259
確かに、ご指摘の通りコード書いたほうが分かりやすいですね。
ひにけにの方を更新しておきました。
ttp://blogs.msdn.com/ito/archive/2008/03/08/tcr-for-fun.aspx

ちなみになんども言うようですがGraphics.PreparingDeviceSettingsイベントはコンストラクタ内でGraphicsDeviceManagerインスタンスを作った後に
追加しないと指定したデリゲートは呼ばれないので、コンストラクタ内に追加するようにしてください。

>>261
>だからその方法は?
ttp://msdn2.microsoft.com/en-us/library/bb195813.aspx
>マルチスレッドの定石は?
それだけで一冊の本が掛けてしまうので、どんな場合にマルチスレッドを使いたいかを具体的に教えてもらえれば
答えることができるかもしれません

>>262
マニュアルには一応違いは書いてあります
ttp://msdn2.microsoft.com/en-us/library/microsoft.xna.framework.graphics.dynamicvertexbuffer.aspx
本来であれば質問はMSDNフォーラムにお願いします
ttp://forums.microsoft.com/MSDN-JA/ShowForum.aspx?ForumID=1326&SiteID=7

>>264
C#初心者の位置づけを詳しく、C/C++はバリバリだけどC#は弄ったことない人なのか、プログラム自体が初心者というので
変わってくると思いますが
0271名前は開発中のものです。2008/04/06(日) 19:48:24ID:nzhbz0Go
>>270
> >>264
> C#初心者の位置づけを詳しく、C/C++はバリバリだけどC#は弄ったことない人なのか、プログラム自体が初心者というので
> 変わってくると思いますが

もちろん後者。

「ソリューションエクスプローラでプロジェクトを右クリックして、新しい項目の追加を選び、コードファイルを選択
し、〜というファイル名を指定してください。

以下のコードをコピー&ペーストしてください。

「ソリューションエクスプローラでプロジェクトを右クリックして、新しい項目の追加を選び、コードファイルを選択
し、〜というファイル名を指定してください。

以下のコードをコピー&ペーストしてください。

「ソリューションエクスプローラでプロジェクトを右クリックして、新しい項目の追加を選び、コードファイルを選択
し、〜というファイル名を指定してください。

以下のコードをコピー&ペーストしてください。

と書いてくれて、かつコードを解説してくれるとありがたい。
0272名前は開発中のものです。2008/04/06(日) 19:50:59ID:5ljxdwAA
>271
ニコニコ動画でOkじゃねーの? xnaで検索しろ。
ttp://www.nicovideo.jp/search/xna
0273名前は開発中のものです。2008/04/06(日) 19:59:11ID:gipUzrtZ
ttpなんてプロトコルは存在しないぞネラーか?

詳しく〜すれば対応します
具体的に〜すれば対応します
の常套句しか言ってんじゃないよ
0274名前は開発中のものです。2008/04/06(日) 20:00:38ID:5ljxdwAA
>267
 そういうのもあると思う。
 理想だけなら、More Effective C++を読み終えて一本
プログラムを書きたくなる様な好循環がC#で欲しいってぐらいなんだ。

あと、NGIDにレスするのは辞めろよ。
0275名前は開発中のものです。2008/04/06(日) 20:10:17ID:qlDLk7cP
盛り上がってまいりました!w

あ、俺アレ知りたい
ストレージコンテナを使ったセーブデータ読み書きのサンプル

の定石w
0276ひげねこ ◆oxtErU/kVM 2008/04/06(日) 20:48:50ID:OV1XFqJS
>>266
DynamicVertexBufferが追加された理由のひとつにフラグを設定するのが面倒くさいっていう意見があったのと、
昔のドライバのDrawUserPrimitiveはマネージ配列へのコピーに掛かる時間と桁違いに遅いものもあるので
削除するのは厳しいと思います。

動的エフェクトでしたら、XACTのRPCを使うとピッチとかボリュームとか、ドップラー効果とかをプログラマブルに変化させることができますし、
DSPエフェクトの各パラメーターも同様に変化させることができます。ここでいう動的エフェクトというのは、まったく素の状態から
音作りというのが目的なんでしょうか?
しつこいようで申し訳ないのですが、ここら辺がXAudioサポートするかしないかの分岐点になってしまうので、私としては
「XAudioが無いとこれができん、これがないとこのゲームが作れん」というより具体的な意見があるとプッシュし易いです。
今までは「生PCMが弄れると良いかもしれん」と言う時点で却下されていることが何度かあったので。

>グラフィックデータだけプログラマブルなんて不幸平ッ
確かに、サウンド関係って昔から軽く見られてる部分はありますね。臨場感を出すためには非常に重要なファクターなんですけどね。


>>CC年会費について
費用が高いか低いかは人によってそれぞれだと思いますが、個人的には体験版無しで払うには勇気のいる金額だと思います。
もし体験版があったとしたら、どれぐらいの試用期間が欲しいでしょうか?
年会費についてはここで聞くと絶対タダという意見に偏りそうなので遇えてスルー。
0277名前は開発中のものです。2008/04/06(日) 21:11:03ID:WYbtuXiz
というか、情報と、作成したソフトウェアの共有については無料にして、
販売を目的とする物だけロイヤリティを発生させればいいのではないかと思うわけですよ。
使えるか使えないかわからない物の情報を得る為だけに年会費を要求してるから全然普及しないのではないかと。
この一年ぐらいかかっても使う人がいないことが証明してるのでは?
0278名前は開発中のものです。2008/04/06(日) 21:15:15ID:FLcVno4x
>>ひげねこ氏
Windows Mobile に XNA が対応する予定はありますか?
Zune 対応するなら WM も対応しないかなぁ、と淡い期待を抱いているんですが。
0279名前は開発中のものです。2008/04/06(日) 21:20:27ID:7J3511XK
>>276

> 試用期間
2〜5週間ぐらいじゃないかなぁ。XNA をある程度使えるまで (小さなゲームのようなモノを1から作れる) ぐらいの期間は欲しいかも。

> XAudio
誰かが海外フォーラムで言ってたエミュレータってのは別にいいとして、(ファミコン程度なら XACT だけで作れるし)
オーディオで凝ったエフェクトをやりたい時に便利だとは思う。(LPF とか HPF とか歪みとかかけたり。)
ゲームの (サイドエフェクト的な) 効果音とか BGM だけならそれなりに使えるんだけど、
サウンドに偏重したゲームを作るときにはちょっと機能不足感が。
その点からは、最低でもカスタムの (例えば HLSL のような形での) DSP が使えると嬉しい。
0280名前は開発中のものです。2008/04/06(日) 21:31:20ID:pMByTgdn
>>276
>>フラグを設定するのが面倒くさい
そんなんでホイホイとクラス増やすのはどーなのヨ……。

>>マネージ配列へのコピーに掛かる時間と桁違いに遅いものもあるので
今時の環境ならユーザーデータ決めうちでデメリットは無いし、
実際に動的頂点バッファの効果が期待できる環境ならマネージ配列のコピーコストなんぞ
無視できるので、明確なインターフェイスのみを採用したってこと?

>>「生PCMが弄れると良いかもしれん」と言う時点で却下されている
そんなぁ……。駄目な理由を逆に聞きたいっちゅーの。
最小限の音源でゲーム環境のレスポンスからシンセ的なことやろうとすると
XACTではスケーラビリティに欠けると思うんだけどなぁ。
まぁぶっちゃけXACTはあんまし真面目に向き合ってないんで、
何かガツンと言ってやれることを考えてくるぜ。

あぁハードウェアで作動するプログラマブルオーディオDSPの時代は何時来るの〜。
0281ひげねこ ◆oxtErU/kVM 2008/04/06(日) 21:37:05ID:OV1XFqJS
>>271
と、いうと「できるXNA」みたいな感じですか?そこまで行くと文を読むよりチュートリアルビデオみたいな形式の方が良いと思うのですがどうでしょう?
また、プログラム全くの初心者の場合、最初にどんなゲームを作ってみたいのでしょうか?「できるXNA」はモグラたたきでした。

他にもいろいろと聞いてみたいのですが、ザッとまとめると
1:どのように講座(?)が進行するのか(1講座あたりを読む、見るのに掛かる時間と、その回数)
2:プログラム以外にもコンテントの作り方も含めるべきか?
3:ターゲットプラットフォームは?(Windows重視、Xbox360重視、両対応)

質問ばかりでサーセン。

>>275
>ストレージコンテナを使ったセーブデータ読み書きのサンプル
ひにけにのネタ帳に追加しておきました。パッと思いつくのはXNAでセーブデータにアクセスする時の基本、
例えばスコアデータの保存と読み込み程度ですが、差分セーブの仕方とか、クラッシュ耐性のあるセーブの仕方とかもやったほうが良いですかね?

>>277
情報に関しては現状でも殆どのものに関しては無料で入手することができます。逆にそれがCC会員の優位性を下げている原因にもなっているのですが
Xbox 360で動作させることができる、コミュニティゲームの評価することができる(ようになる)といった以外に優位性が無い現状は確かに良くないですね。

>>278
ノーコメントですが、要望が多ければ将来的にサポートするのではないでしょうか?
0282名前は開発中のものです。2008/04/06(日) 21:46:11ID:pMByTgdn
考えてみれば、会員登録が一時的に無料になったところで
360はちゃんと買わなきゃならんのだよな。

よし、逆にしよう。
会費払うから、360を、俺に頂戴(笑)
0283名前は開発中のものです。2008/04/06(日) 21:48:19ID:W/UfacKr
XboxはUMAだから、動的バッファに優位がないというよりも
静的バッファにペナルティがないと言った方が正しい訳か
だったら、やはり今まで通りフラグでよかった気が駿河
0284名前は開発中のものです。2008/04/06(日) 21:52:29ID:wPDV4BQo
PCとかZuneとか正直どうでもいい
XboxでアセンブラやC/C++で書いたコードが走らせられるなら嬉しいんだけどなぁ
ネイティブコード動かせるのってやっぱPCだけなのかな?このスレでXboxターゲットにしてる人少数派?
0285名前は開発中のものです。2008/04/06(日) 21:57:18ID:51I03wn8
XDK一般販売したらこのスレで大人気ですね。
0286名前は開発中のものです。2008/04/06(日) 22:03:05ID:qlDLk7cP
>>281
>クラッシュ耐性のあるセーブの仕方
そういうことまで考えないといけないのかぁ
暇な時書いてくださいw
0287ひげねこ ◆oxtErU/kVM 2008/04/06(日) 22:08:15ID:OV1XFqJS
>>279
一応XACTのDSPパラメーターには、Hi EQ CutやGainといったパラメーターがあります。
>その点からは、最低でもカスタムの (例えば HLSL のような形での) DSP が使えると嬉しい。
確かに、それは良いアイディアかもしれません。要望として出しておきます。

>>280
>>そんなんでホイホイとクラス増やすのはどーなのヨ……。
DX9のフラグは非常に複雑になっていて、フラグの組み合わせが無効になっているのも多く、その全てを把握するのは大変です。
これはXNAフレームワークを使っている人に限ったことではなく、DirectXを使っている人達からも文句の多い部分でした。
それがDX10に変わってからは基本的にCPUからRead/Writeするの二つだけのフラグに簡略化され、将来的にDX10サポートも視野に入れて
そういったレガシーな部分を取っ払うといった意味合いもありました。

>>「生PCMが弄れると良いかもしれん」と言う時点で却下されている
>>そんなぁ……。駄目な理由を逆に聞きたいっちゅーの。
一言で言うと法的問題です。メディア再生がサポートされた時にDRM付きの曲のPCMデータが見えてしまうと……。
ですから、逆にシェーダーライクなDSPがサポートされれば、法的問題もDSPが作りたいとい両方の問題が
解決するかもしれませんね。

>>282
それは良いアイディアかも、ただし携帯の様に「3年契約必須」みたいな但し書きがつくとw
でも、実現できたら意外にいけるかも?

>>284
えー、仕事で嫌になるくらいC/C++弄って、アセンブラ直は少なくなったけど擬似関数とかの使い方に頭悩ませてるので、
家に帰った後くらいは楽してコーディングしたいと思うんですけど。私だけ?

>>286
りょーかい
0288ひげねこ ◆oxtErU/kVM 2008/04/06(日) 22:17:06ID:OV1XFqJS
はう、こっちはもう日曜の朝6時。
もう寝ます。一週間空けると、レスが多くなるので日本時間の日曜午後と、水曜のお昼ぐらいに来るようにします。
そんな訳で次は水曜日のお昼頃に来ます。

ではでは
0289名前は開発中のものです。2008/04/06(日) 22:20:23ID:7J3511XK
>>287
DSP については良い回答を貰えてうれしいけど、
生 PCM はできれば出力だけでもできたら嬉しいな。

>>288
ではでは。
日記更新も楽しみにしております :P
0290名前は開発中のものです。2008/04/06(日) 22:30:18ID:wPDV4BQo

はぐらかしたような答えになってるってことは
隠しでネイティブコードが使えるようになってたりするのかねぇ
繰り返すがXboxでのC#強要は拷問の一種だと思う
0291名前は開発中のものです。2008/04/06(日) 22:33:40ID:pMByTgdn
>>一言で言うと法的問題です。
ふ、ふーん? コンシューマ機だもんなぁ。
俺にゃよくわからんが、そんなのがあってもおかしくねぇのか。

>>ただし携帯の様に「3年契約必須」みたいな但し書きがつくとw
イイ……イイぞぅ、俺に金を払わせるまであと一押しだwww
まぁ360頂戴は冗談にしても、ゲーム作成方面から360に興味を持つ
ホビイストのために何か一工夫欲しいやね。

>>288
ハイお疲れさん。回答ありがとござんした。
0292名前は開発中のものです。2008/04/06(日) 22:33:51ID:unaweOFc
別に無理しなくてもいいが
0293名前は開発中のものです。2008/04/06(日) 22:35:38ID:/XxyvBzH
>>279
>その点からは、最低でもカスタムの (例えば HLSL のような形での) DSP が使えると嬉しい。

WindowsならXAPOでできたと思うけどXbox 360では無理なの?
あんまり詳しく知らんのだが。
0294名前は開発中のものです。2008/04/06(日) 22:57:28ID:nzhbz0Go
>>281
> >>271
> と、いうと「できるXNA」みたいな感じですか?そこまで行くと文を読むよりチュートリアルビデオみたいな形式の方が良いと思うのですがどうでしょう?
> また、プログラム全くの初心者の場合、最初にどんなゲームを作ってみたいのでしょうか?「できるXNA」はモグラたたきでした。
>
> 他にもいろいろと聞いてみたいのですが、ザッとまとめると
> 1:どのように講座(?)が進行するのか(1講座あたりを読む、見るのに掛かる時間と、その回数)
> 2:プログラム以外にもコンテントの作り方も含めるべきか?
> 3:ターゲットプラットフォームは?(Windows重視、Xbox360重視、両対応)
>
> 質問ばかりでサーセン。


そんな駄文書いてくれなんて一度も言ってない。>>264もう一度読め。
■ このスレッドは過去ログ倉庫に格納されています