C# C# C♯ でゲームを作ろう Part2
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2010/11/21(日) 09:52:59ID:wlCDMEbrテーマはアクション、パズル、RPG等なんでもOK
C#ゲーム製作@wiki
http://www21.atwiki.jp/csharpgamedev/
前スレ
C# C# C♯ でゲームを作ろう Part1
http://hibari.2ch.net/test/read.cgi/gamedev/1212989813/
0002名前は開発中のものです。
2010/11/21(日) 09:54:01ID:wlCDMEbr連載 改訂版 C#入門
http://www.atmarkit.co.jp/fdotnet/csharp_abc2/index/index.html
C# によるプログラミング入門
http://ufcpp.net/study/csharp/
[書籍]
プログラミングC# 第5版
http://www.oreilly.co.jp/books/9784873113968/
ゲームプログラマになる前に覚えておきたい技術 ※C#で書かれてないので注意※
http://www.shuwasystem.co.jp/gpro-sp/index.html
Microsoft XNA Unleashed グラフィックスとゲーム開発
http://www.borndigital.co.jp/book/detail.php?id=66
Microsoft XNA ガイドブック XNA ゲームプログラミングの基礎
http://www.borndigital.co.jp/book/detail.php?id=67
XNA Game Studioではじめるゲームプログラミング
http://www.o-kagen.gr.jp/release.html
[関連スレ]
【Xbox360】 XNA Game Studio その6 【C#】
http://pc11.2ch.net/test/read.cgi/gamedev/1210637248/
0003名前は開発中のものです。
2010/11/22(月) 00:09:39ID:oKx5EFj20004名前は開発中のものです。
2010/11/25(木) 18:26:53ID:GJphgLC60005名前は開発中のものです。
2010/11/29(月) 23:07:26ID:fXig7dWV0006名前は開発中のものです。
2010/12/13(月) 00:30:30ID:x5Ag+32d0007名前は開発中のものです。
2010/12/14(火) 01:36:41ID:k4+E2CwQ0008名前は開発中のものです。
2010/12/14(火) 04:00:31ID:PtnILlYCゲーム作成ツールを作るほうがいいわけか
0009名前は開発中のものです。
2010/12/14(火) 04:16:50ID:IN5+AAstゲームにおいては邪魔になるんだよなぁ
それでGCが起こらないようにとメモリの管理に手を出すと
あれ?こんなんするならC++でよくね?
ってなっちゃう
0010名前は開発中のものです。
2010/12/14(火) 10:17:59ID:Z/MBXr4C0011名前は開発中のものです。
2010/12/14(火) 17:05:29ID:yiT76n5O0012名前は開発中のものです。
2010/12/14(火) 18:57:57ID:u2vbGV0C参考までに教えてほしいんだけど、例えばどんなときに邪魔になるの?
自分は邪魔になったことないので、興味がある。
0013名前は開発中のものです。
2010/12/14(火) 21:03:41ID:2ATBqPCFでぐぐる
ちょっと改造して、噴飯物の杞憂に過ぎない事を確認する
以上
0014名前は開発中のものです。
2010/12/14(火) 21:17:27ID:IN5+AAstわりと負荷のかかるGCが働くとコマ落ちやラグがおきやすい
特にシューティングやアクションなんかのリアルタイム性が重要なゲームだと邪魔になる。
RPGやノベルゲームなら多少コマ落ちしても気にならないだろうし
ちゃんとGCの動作まで考えてプログラミングすれば邪魔にはならないとは思うけど、
自分はそこまでするならC++でいいやってなった。
0015名前は開発中のものです。
2010/12/14(火) 22:41:40ID:u2vbGV0Cなるほど、回答さんくす。
ゲーム製作でC#が使われないのは、個人的には環境依存度が
C++と比較して大きいからだと思う。
.NET必須、かつXNAやSlimDX等でランタイムが必要で、
配布方法や対象者に制限が付くとなると嫌がる人も多いのでは。
0016名前は開発中のものです。
2010/12/14(火) 22:57:31ID:2ATBqPCFうちじゃ3msぐらいで収まってるな
余所の環境だと違うだろうけど、ちょっとこれで試してみ
ttp://99hagelo.net46.net/up/img/low392.zip
ソリューションロードして、F5押して、画面が表示されたらEnterキーを一回
要PS1.1
0017名前は開発中のものです。
2010/12/14(火) 23:31:03ID:0rAUYZNK0018名前は開発中のものです。
2010/12/15(水) 00:14:56ID:ipHv9sbIメモリが足りなくなったときしか働かないイメージがw
0019名前は開発中のものです。
2010/12/15(水) 00:27:25ID:pQJTLtMMオタ豚が真っ赤な顔して正しいことを調べ廻ってくれるから
スゲー 便利www
0020名前は開発中のものです。
2010/12/15(水) 01:47:12ID:OOrbYoZ/0021名前は開発中のものです。
2010/12/15(水) 16:57:51ID:znPdNwQjまぁそれはそれとして、GCの頻度は割とこまめ。
STGで大量に玉をnewで飛ばし続けてタスクマネージャで使用目盛り見たら、予想に反して増える気配がなかったのでかなりこまめにGCしてると思われる。
0022名前は開発中のものです。
2010/12/15(水) 17:54:50ID:pQJTLtMM円周率=3ぐらい痛々しい
0023名前は開発中のものです。
2010/12/15(水) 17:59:01ID:d+SueuXUコンソールアプリ
コマンドプロンプトで、文字ベースのアプリケーション
Windows Formsアプリ
一般的なGUI。Windows95からの「Windowsっぽいアプリケーション」
XNAアプリ
ゲーム用のアプリ。グラフィックの表示、ゲーム用コントローラーからの入力、サウンドなどをサポート
WPFアプリ
GUI。Windows Formより高性能だが、処理が重い。
0024名前は開発中のものです。
2010/12/16(木) 00:30:49ID:G422t28F・.NET CLRのGCは効率的な世代別GCを採用している
・CLRはメモリをG0/G1/G2(G=Generation)/LOH(Large Object Heap)の4つの領域で管理する
・〜.NET3.5:同時実行GC .NET4/Silverlight4:バックグラウンドGC
・同時実行GC:Full GCの実行中にG0/G1のGCが実行できない。
新たな割り当てができなくなった段階で、Full GCの終了まで中断される。
・バックグラウンドGC:Full GCが実行中でもG0/G1のGCが実行できる。
中断される回数が大幅に減少し、中断された場合でも中断時間が短くなる。
.NET4でコンパイルするか、App.configで.NET4対応にするだけで改善が期待できる。
>>19-22
掲示板に書ききれない話が行間に山ほど含まれてるので、一度調べてみるといいよ。MSDNマガジンの関連記事読むだけで全然違う。
>タスクマネージャで使用目盛り見た
せめて、管理ツールのモニタツール使ってパフォーマンス カウンタ見てくれ…。もっと踏み込むならメモリ プロファイラ使いたい。
>>23
Silverlightも入れてよ。次期リリースの5はもっと凄くなるよ。
Immediate Mode Graphics SupportでGPUを活用できるようになって3D(光源、テクスチャマッピング、アルファブレンディング)がサポートされる。
0025名前は開発中のものです。
2010/12/16(木) 01:44:28ID:1jVCL3Xf0026アジェグ4倍 ◆4xAJeG.COM
2010/12/16(木) 10:13:47ID:QtGXpLv7newをやっちゃダメだよ。
0027名前は開発中のものです。
2010/12/16(木) 16:54:03ID:4Vhu2VWFforeachとか駄目なんでしょ?
0028名前は開発中のものです。
2010/12/16(木) 19:07:42ID:kONXhBxi何がどうダメなのか具体的に
0029名前は開発中のものです。
2010/12/17(金) 00:44:40ID:1SX4G+z6.NET CLR:世代別GC(.NET Framework/Silverlight)
.NET CF CLR:マーク&スイープGC(Xbox360/Zune)
.NET CF CLRはGCのコストが桁違いに大きいため、徹底的にGCを排除すると大きくパフォーマンスが上がる。
.NET CLRでは>>16>>25の言うようにG0/G1のGCのコストが小さいので、全部最適化するだけの労力に見合った効果が得られない。
.NET CLRはG2の発生が抑制されていてG0の発生頻度が1フレームより長ければ問題ない。
この状態を保てている範囲なら1フレーム未満の寿命しかないインスタンスを作り捨ててもいい。
もっと長い寿命を持つインスタンスの生成は、G2ヒープ/LOHにどのくらいのペースで積まれるかによって上限が決まるので、
プロファイルをとってヒープに積まれたインスタンスの生成元を調べて、最適化の効果が大きく簡単に改善できる個所から手を入れましょう。
これ以上の最適化は手段と目的が逆転するが大丈夫か?
0030名前は開発中のものです。
2010/12/17(金) 00:52:07ID:zbyqlefyこれはIEnumeratorを吐く関数を作ればいい
0031名前は開発中のものです。
2010/12/18(土) 02:37:41ID:jHzAZ+Pm0032名前は開発中のものです。
2010/12/18(土) 17:03:01ID:OVvsO5Q50033名前は開発中のものです。
2010/12/18(土) 17:35:19ID:UzXWUqS60034名前は開発中のものです。
2010/12/20(月) 00:09:43ID:zPc622SOようになっとる
結構ぬるぬる動く
0035名前は開発中のものです。
2010/12/20(月) 13:50:11ID:wBI9+2iY0036名前は開発中のものです。
2010/12/20(月) 14:32:52ID:1s3rp6hXIE以外だと
GeckoにはActiveX版があってC#からも呼んで使える。でも↓の方が便利。
GeckoFX(ActiveXを使わず直接使ってる。あと開発者のアンドリューさんは日本語ちょっと話せるらしいw)
完成したらWebkit.NETも有望そう。
マークアップ ランゲージ(ML)でUI定義したいならWPFのXAMLがまさにそれ
WinForms用ならWFML(http://windowsclient.net/articles/wfml.aspx)あたりだろうか?これは使ったことない。
>>34
なにそれkwsk
0037名前は開発中のものです。
2010/12/20(月) 14:38:54ID:wBI9+2iYどれが使えるかわからんから、いろいろ調べてみるよ
ありがとう
0038名前は開発中のものです。
2010/12/20(月) 15:55:15ID:zPc622SOXNAの有料チュートリアルだった
補完のあるボーンアニメーションやパーティクル
木構造のデータ管理、AIなどが一通りそろっている
割と平易
XNAやC#以外でも使えると思われ
なにより軽い
0039名前は開発中のものです。
2010/12/20(月) 19:06:39ID:zPc622SOC#を使っているために処理が重いのは
このグラフの左端のたった平均2msの部分
↑の人達はこの処理が重いからC#はダメだ(笑)
とか宣っていたんだから
今どんな気持ち?
宦Q__宦@
♪ | ノ ⌒ ⌒ヽハッ
/ (●) (●)
| ( _●_) ミ
___ 彡 |忿 ミ
ヽ___ ヽノ、`\
/ /ヽ <
/
0040名前は開発中のものです。
2010/12/20(月) 19:27:22ID:utdIzmpZそのPCのスペックは?
0041名前は開発中のものです。
2010/12/20(月) 19:50:10ID:zPc622SO宗教的理由でC#のソースをコンパイルすると死ぬんですね
わかります
P4 2.80
メモリ 1G
0042名前は開発中のものです。
2010/12/20(月) 19:54:13ID:Vc2LMPvW0043名前は開発中のものです。
2010/12/20(月) 20:00:01ID:zPc622SOあたり前だ
なんで実装してまで調べる必要があるんだ?
頭の中のお花畑ぐあいをちょっと聞かせ
てくれないか?
0044名前は開発中のものです。
2010/12/20(月) 20:40:29ID:1s3rp6hXC#自体の速度は最適化してないC++並みって知らない人は置いとくとして
意図しないタイミングでのGCは避けるべきだけど、(PCでは)極端に忌避する必要はないって話に落ち着いてたでしょ
>>38
ロボットゲームってまんまRobot Gameなのかw
試してみるthx
0045名前は開発中のものです。
2010/12/20(月) 20:50:42ID:czZepkU00046名前は開発中のものです。
2010/12/20(月) 21:49:42ID:1s3rp6hXってとこからC#のメモリ管理について延々と語れるけど、それをやるには掲示板は狭すぎる。
世代別GCは一般に思われているより高速。
(何倍も時間かけて)C++で作ればC++の方が早い。
どの言語で作っても結局は描画にかかる時間が大半を占める。
0047名前は開発中のものです。
2010/12/21(火) 01:12:58ID:HIfOIzlrC#+DirectXで作っちゃった・・・
でも、苦労はあんまり変わらないような・・・
0048名前は開発中のものです。
2010/12/21(火) 01:20:04ID:HIfOIzlrC#は混沌としてるな
0049名前は開発中のものです。
2010/12/21(火) 01:48:06ID:7nmvHqyX0050名前は開発中のものです。
2010/12/21(火) 01:50:42ID:IUyb5141Managed Xとか…
釣りやなw
C++/CLIでツール作成ならまだ疑う余地
もあったけど
0051名前は開発中のものです。
2010/12/21(火) 06:58:33ID:QhXoH/nz0052アジェグ4倍 ◆4xAJeG.COM
2010/12/21(火) 09:16:03ID:kS4ld1Hr言語がなんであろうと以下略。
0053名前は開発中のものです。
2010/12/21(火) 13:04:31ID:589aNUurインタプリタが遅くてnew自体のコストなんか誤差になるような言語処理系は
スクリプト言語ではわりとある
0054名前は開発中のものです。
2010/12/21(火) 17:39:24ID:7nmvHqyXやっちゃダメ>>26と、管理されていればやってもいい は全然違う。
それだけの開発コストを投入するに値する根拠ってあるの?
C#はインタプリタでもスクリプト言語でもない。
newのコストは誤差(C++より速い)の範囲内。動作速度はJITされるため一度動き出せば最適化していないC++並み。
で、GCのコストをどう見積もってどこまで対策するのかって話なんだが…
0055アジェグ4倍 ◆4xAJeG.COM
2010/12/21(火) 20:24:12ID:co1xIq2s知ってると思うが、new ってのは mallocなんだぞ。
メモリの消費状況によっては、そこでスワッピングなどの
ディスクアクセスが発生する恐れもあるんだからさ。
で、ガベージが作動すりゃ、freeなわけだから、
そこでまたディスク沙汰に、なりかねないわけだ。
ソノヘンがわかってりゃ、例えば敵の弾の発生時にnewなんて
恐ろしくて恐ろしくて・・・
描画時のnew Color とかnew Fontなんてのにも注意しないと。
だから new は、ループに入る前とか、別のスレッドでやるとかがセオリー。
0056名前は開発中のものです。
2010/12/21(火) 21:42:50ID:ByL+MADM見積もりを検討するなら、プロトタイプ組んで実測すりゃ済む話だろ。
全部アセンブリで書くならまだしも、C#やらC++で書いたゲームのソースコードだけ見て、事前に精密な見積出せるわけない。
そんなもん、言語仕様以前のレベルの話だ。
なのに、事前に脳内で結果が分かって当然って前提を置こうとしている時点で、>>54は全くゲームのコード書いたことが無い、脳内クリエイターかなんかなんだろうよ。
どうせ、C#の方が簡単そうだけど絶対性能で負けるなら何となく格好悪いから使いたくない、とかその程度の発想でウダウダ食い下がってるだけだと思うぞ。
0057名前は開発中のものです。
2010/12/21(火) 21:55:38ID:7nmvHqyXG0/G1ヒープがスワップアウトってどんな環境だw
敵の玉やFontなんて真っ先に
>最適化の効果が大きく簡単に改善できる個所
として槍玉にあがるとこじゃん。
プロファイルに基づかない最適化は害でしかない。
まぁ、終わりのない自己満足の最適化ゲームやりたいなら止めないけど
>>56
>事前に脳内で結果が分かって当然
主張しているのは真逆の事。誤読乙
0058名前は開発中のものです。
2010/12/21(火) 21:59:22ID:XhDhH52e0059アジェグ4倍 ◆4xAJeG.COM
2010/12/21(火) 23:38:07ID:co1xIq2sガベージがドーノコーノなんて話が出てくる必要もないわけで。
変なタイミングでnewするから、変なタイミングでガベージが動くんだぞ。
最初に書いたように、フレームループの中でnewしないように注意なんてのは、
プロファイルとやらがドーコー言う以前の、技術の基礎だからな。
0060名前は開発中のものです。
2010/12/21(火) 23:50:24ID:IUyb5141クラス設計 特に継承を使った設計が
頭の中にないと なんでnew禁止が辛いのか
理解できないので
会話にならない
0061名前は開発中のものです。
2010/12/22(水) 00:17:59ID:MbCuhdtTと、息巻いてる奴に限って
英語コンテンツは一切目をとうさず
シェーダーも使えない
悲しい現実
0062名前は開発中のものです。
2010/12/22(水) 01:02:04ID:lDvG2hsHあんなすごい技術を使ってても可愛い女の子の1人も出てこない向こうのゲームってなんなんだろうな?
って俺はいつも思うんだ
0063名前は開発中のものです。
2010/12/22(水) 01:47:45ID:87uiMMNXnewの使いどころをわきまえる為に、.NET CLRのGCの特性を理解して使いましょうって話をしてるんだよ。
必死に無駄な最適化をしている君は実に馬鹿だなぁ
無駄な努力をするのは別にいいけど、誤った知識を広めて人に迷惑かけんなよ。
0064名前は開発中のものです。
2010/12/22(水) 03:50:48ID:jdovR8NX脳が腐ってる気もするけど、同意。なんだろう、ロリコンって少ないのか?他の国じゃ。
0065アジェグ4倍 ◆4xAJeG.COM
2010/12/22(水) 10:24:58ID:msb7iRfo多くの場合、Addの直前にnewしてるんだろうけど。
フレームループの中で有効件数が変わるような配列(敵の弾とか)は、
最大値を設けてあらかじめその数だけ取っとくなりしないと。
0066名前は開発中のものです。
2010/12/22(水) 10:56:22ID:1bNr51j3簡単なパズルゲー、ノベルゲーなら多少フレーム落ちてもたいして問題ないし。
0067名前は開発中のものです。
2010/12/22(水) 11:46:54ID:8WY0reJeList<T>の内部配列のサイズはオーバーするたびに2倍になる。Removeされても縮小は行われない。
なので、そのせいでフレームレートが落ちるようなことは100%ありえない。
0068アジェグ4倍 ◆4xAJeG.COM
2010/12/22(水) 12:18:18ID:msb7iRfoまあ、パズルやノベルなら、確かにさほど気にせんでもいいが。
おれが今作ってるのは音楽ゲー系(Javaだけど)だから、
タイミングにはイロイロとシビアでねぇ。
0069名前は開発中のものです。
2010/12/22(水) 12:20:16ID:8WY0reJeごく一般的な動的配列の実装なんだけどな
上でもnew ColorがGCに影響するとかnewがmallocとか見当違いのこと言ってるし
0070アジェグ4倍 ◆4xAJeG.COM
2010/12/22(水) 12:45:03ID:msb7iRfoここの連中のおれへの反論を見ると、
そう思っちまうねぇ。
0071名前は開発中のものです。
2010/12/22(水) 12:59:52ID:a/rzg/Ro0072名前は開発中のものです。
2010/12/22(水) 13:11:33ID:MbCuhdtTむしろ事前初期化ぐらいしかやる事なさそ
0073アジェグ4倍 ◆4xAJeG.COM
2010/12/22(水) 13:21:41ID:msb7iRfoそのMIDI関連の調査には、チョットばかし苦労したねぇ。
最近はソノヘンの資料が少なくてねぇ。
何とかならんのかねぇ、あの叩いてから音が出るまでの遅延。
マックならそれほどひどくもないんだが・・・
0074名前は開発中のものです。
2010/12/22(水) 13:21:53ID:8WY0reJe値型を定義できないしジェネリックも飾りでボックス化が発生しまくるからゴミも多発しやすい
インデックスの更新ってほんとにそんなものがボトルネックになったことあるのか?
知りもしない調べもしない測りもしない
0075アジェグ4倍 ◆4xAJeG.COM
2010/12/22(水) 13:32:07ID:msb7iRfoそういうリスクを未然に防ぐ作り方を心がけてるから、
知りもしないでいいし調べもしないでいいし測りもしないでいい。
おれがおれのやりかた。
0076名前は開発中のものです。
2010/12/22(水) 13:35:51ID:MbCuhdtT0077名前は開発中のものです。
2010/12/22(水) 16:16:47ID:87uiMMNX通りで理詰めで説明しても通じないわけだ。
>必死に無駄な最適化をしている君は実に馬鹿だなぁ
>無駄な努力をするのは別にいいけど、誤った知識を広めて人に迷惑かけんなよ。
0078名前は開発中のものです。
2010/12/22(水) 18:35:42ID:1bNr51j3思慮に値しない戯言だったって事だな
0079名前は開発中のものです。
2010/12/22(水) 18:52:03ID:YXiGsK9q0080名前は開発中のものです。
2010/12/22(水) 19:51:48ID:87uiMMNXまぁ、実際に問題なくゲーム(Robot Game)が動くのが何よりの証拠。お前の目は節穴か。
0081名前は開発中のものです。
2010/12/22(水) 19:54:10ID:XMfWOza80082名前は開発中のものです。
2010/12/22(水) 20:01:53ID:4NXPbAbv純粋に.NETの知識としては特定の人以外はそんなに間違ってはいない
0083名前は開発中のものです。
2010/12/22(水) 20:03:19ID:Wg8SNA4z0084名前は開発中のものです。
2010/12/22(水) 20:08:02ID:YY2LjFIA最近の流れはヲチとしては面白い。
0085名前は開発中のものです。
2010/12/22(水) 20:15:47ID:MbCuhdtT何の話しする?
どうして いきなり興奮してるの?
教えて 84
0086名前は開発中のものです。
2010/12/22(水) 20:44:11ID:MbCuhdtTはい これ繰り返し言ってみなさい
ね、 落ち着いたでしょ
0087名前は開発中のものです。
2010/12/23(木) 01:28:50ID:OCYjdJohSlimDXやXNAの話題は専用スレもあるし、
このスレの価値はこれらのライブラリを比較することと、C++に根本的にない文法で実装した方法紹介ぐらいしかないような気がする。
0088名前は開発中のものです。
2010/12/23(木) 02:25:47ID:GtUoPrZHReflection.Assembly.LoadFrom
シリアライズ
効果
相手は死ぬ
0089名前は開発中のものです。
2010/12/23(木) 07:11:33ID:7ot6aP0i配列へのforeach(最速)に比べりゃ遅いが
コンパイラが生成するクラスと動作を知ってれば大したコストはないと分かりそうなもんだが
>>84>>87
こういう最適化絡みの取るに足らない罵り合いはム板じゃできんよ。
あっちでやったら"誤差の範囲"と一蹴されて終わってしまう。
0090名前は開発中のものです。
2010/12/23(木) 10:33:35ID:77raTIZwforeachでガベージが発生してパフォーマンスが落ちるとか騒がれてたくらいだからな
yieldも構造体じゃなくてクラスなのでwindowsではまず問題にならないけど360では問題になるのかも
0091名前は開発中のものです。
2010/12/23(木) 12:02:54ID:vF4GDpDyDebugで実行するとReleaseの1000倍以上遅くなった
Debugで実行すると30分たっても終わらないのに
Releaseで実行すると5秒もしないうちに終わったりする
C#も似たような面がある
Debugで実行すると不安になるぐらいおっそいの
でもReleaseで実行すると問題ないぐらい早く動くの
debugで実行して遅い遅いいってない?(って開発の妨げになることはなるけど)
0092名前は開発中のものです。
2010/12/23(木) 12:10:58ID:77raTIZw描画がボトルネックになってるとほとんど関係ない気が
0093名前は開発中のものです。
2010/12/23(木) 12:15:02ID:GtUoPrZHマイクロスレッド yield return
でぐぐるとよい
良かったね 知らない事がひとつ減って
>>91
音ゲーくんのことはもういいよ
音ゲーってそんなもんだ
0094アジェグ4倍 ◆4xAJeG.COM
2010/12/23(木) 12:37:31ID:9G5RY3Zbまあガベージコレクション自体、ソノヘンが欠けた技術者?の為の機能だからな。
0095名前は開発中のものです。
2010/12/23(木) 13:29:08ID:GtUoPrZHツッコミが怖くて技意味のある発言ができなくなっとる
まぁ 嘘臭いからツッコまれるのだがw
0096名前は開発中のものです。
2010/12/23(木) 13:31:49ID:y5spn/N8なのになぜC#スレにくるのか…
0097アジェグ4倍 ◆4xAJeG.COM
2010/12/23(木) 14:17:35ID:9G5RY3Zb技術味のある発言なんて始めからしてないし。
new に関する話なんて基礎の基礎だから、
技術味なんてご大層なレベルじゃないもん。
0098名前は開発中のものです。
2010/12/23(木) 14:26:58ID:GtUoPrZH俺より強い奴はみんなチート
俺よりゲーム開発詳しい奴はみんなゲーム作ってない new
0099名前は開発中のものです。
2010/12/23(木) 19:00:16ID:y5spn/N80100名前は開発中のものです。
2010/12/24(金) 11:05:04ID:t+N1XtKXマイクロスレッドなら最初からそう書けよwアホかw
0101名前は開発中のものです。
2010/12/24(金) 11:37:59ID:n1/ru3epって事を書かないと
負け犬の遠吠えですぜ
0102名前は開発中のものです。
2010/12/24(金) 11:55:56ID:t+N1XtKX>Reflection.Assembly.LoadFrom
>シリアライズ
>
>効果
>相手は死ぬ
>>93はこの並びにyield returnが入ってる理由の説明になってない。
yield returnはマイクロスレッドの事だって後付けにも程がある。後付けしたせいで「相手は死ぬ」との関連性が不明瞭になった。
最初から間違っていたのか、後付けしたために自己矛盾を抱えることになったのか、日本語が不自由だったため誤解を与えたのか。別にどれでもいいか。
>>101
俺は詳しくない。技術的には理解してても
あんまり上手く使いこなせてないから詳しいなら教えてほしい。
とは言っても設計に絡んだ事は自分で頑張るしかないだろうね。
0103アジェグ4倍 ◆4xAJeG.COM
2010/12/24(金) 11:59:47ID:dJK+lbCf0104名前は開発中のものです。
2010/12/24(金) 12:03:36ID:t+N1XtKXつまり自分の書き込みには技術的価値は無い と
分かってるじゃん。
0105アジェグ4倍 ◆4xAJeG.COM
2010/12/24(金) 12:12:03ID:dJK+lbCf技術者なら当然知っているべき、基礎の基礎だからな。
前にも書いたが、価値なんていうほどのもんじゃない。
でも、それさえ知らんとなるとねぇ・・・
0106名前は開発中のものです。
2010/12/24(金) 12:19:11ID:QYPADZMz>>102 C#をスクリプトっぽく使いたいんじゃね
yield returnをコルーチンとして使ってゲームのシナリオスクリプト書いたりしてて
そういうのはdllとして分離して動的に参照したいと
シリアライズはまあセーブに使うんだろう
ところでセーブってシリアライザ使うのが一般的なの?
XmlSerializerやDataContractSerializerはともかく、
他のはバージョン管理がうざいから嫌いなんだけど
0107名前は開発中のものです。
2010/12/24(金) 12:21:34ID:n1/ru3ep3っつ並んでるのを
変に思い悩んじゃったんだね
うぜー
0108名前は開発中のものです。
2010/12/24(金) 13:06:13ID:t+N1XtKX>>107
誰かと勘違いしてるだろw
0109名前は開発中のものです。
2010/12/24(金) 13:26:19ID:n1/ru3ep0110名前は開発中のものです。
2010/12/24(金) 16:03:06ID:c59ct/TR0111名前は開発中のものです。
2010/12/25(土) 10:23:42ID:ekX5bmeQいろいろな考えあって勉強になる
0112名前は開発中のものです。
2010/12/26(日) 03:16:46ID:k+BPickKもうXNAやらC#のゲームとか、普通に出回ってるな
で、ちょっとだけのつもりでリフレクしちゃったんだけ
2chで言われってる事は嘘ばっかりだな
嘘で去勢はるのにこんだけ熱心になるとか
マジキチガイだよお前ら
0113名前は開発中のものです。
2010/12/26(日) 10:43:37ID:KkuDmqCl0114名前は開発中のものです。
2010/12/26(日) 10:46:25ID:hn07w6Cz日本語でおk
0115名前は開発中のものです。
2010/12/26(日) 10:54:17ID:awOm0khxそんなに難しいことはここまでひとつも書かれてないよ
0116名前は開発中のものです。
2010/12/27(月) 03:34:23ID:vJm0vazkお前らと言うからには他にも沢山あるんだろうが、具体的にどれがどう間違ってんの?w
>>114
リフレクするって言い方は馬鹿っぽいと思うけど、普通に考えて.NET Reflectorだろ。.NET使った開発での定番ツールの一つ。
>>112が平気でライセンス違反するような屑だという疑惑が出てくるが、そんな事は別にどうでもいいや。
0117名前は開発中のものです。
2010/12/27(月) 08:43:43ID:is3ZHvvL新しい話題がでてもこの一手先が読めない猿が
偉そうにオナニー講釈するだけで終わりだな
0118名前は開発中のものです。
2010/12/27(月) 11:09:37ID:e7NS5L10このスレには、C#ゲームを現在のPCで動かすことを前提とした人と、XNAで動かすことも見越した人がまずいる。
それとは別に、流れがどういうスタンスか考えずにとりあえず持ってる知識で相手を否定したがる人が数名。
速度を過剰に云々語る人は、まぁ十中八苦アマチュアではないよなーとは思う。
まったく作ったことがないか、それとも過去の歴史にしがみつつ、わかってても少し警笛をならしたい老人か。
あとこのスレやJava関連で語るのに適した話題として、データ構造やアルゴリズム設計なんかもあるかもね。
シーンをどう定義してどう管理してるとか、メニューを作るとか。
まぁここら辺はちゃんと仕様書がきってあって、変更されにくいポイントだと言う前提なら、ハードコードしてもいいんだが。というかさっさと最速で実装するべきだが。
・・・ん、背伸びしてレスしてもいいことないな・・・
みんなそんなことよりゲーム作ろうぜ
0119名前は開発中のものです。
2010/12/27(月) 11:39:22ID:e7NS5L10>yield return
本来は確かforcach文を実現するために使われる文法の1つ。
匿名メソッドとかラムダ式とかと似たような感覚で、主に既存の文法を省略表記できるように、とっぴな記述を実現できるようにしたやつらの一人。
列挙子あるいは反復子(英語だとイテレータだっけ?デザパタとかとは別で、C#の用語・文法に存在する)とよばれる、
特定の自作クラスをfreeach文で利用する可能にするための一連の記述内で登場する。
実際の動きがマイクロスレッドやファイバーと呼ばれる機構そのままを実現してる。
ゲーム屋はそういう用途で使いたいときに使うことも可能。自分はやったことないけど。
>Reflection関連
メタデータから強引にあれこれしたいときに使う。通常用途はプラグイン機能を実現するための機能。
ここら辺をうまく使うと、理論上C#プログラムのスクリプト言語にC#を選択できるみたいだけど、知らん。C#仮想マシンってそもそも簡単に使える状態で公開されてるの?
実現すればかなり有効な気はしないでもないが、動的コードの読み込みと再起動を実現したいためにスクリプトを使う場合は、情報の多いLua仮想マシンを利用する手段に落ち着く傾向ががが。
0120名前は開発中のものです。
2010/12/27(月) 11:55:53ID:M20BTjY4現状では無理がある。一度読み込んだらアンロードできないからAppDomainを分けない限りメモリリークする。
CLRには、ILを動的に生成して実行できて生成されたコードはGC対象になるという
LCGと呼ばれるとっても便利な機能があって
IronPythonなどはそれを使ってるから問題ないんだけど、C#コンパイラは対応してない。
0121名前は開発中のものです。
2010/12/28(火) 00:15:05ID:w6osm0oX0122名前は開発中のものです。
2010/12/28(火) 01:48:16ID:RS4PyatJ×XNAで動かす/○XNAで作ってXbox360で動かす なら頑張ってGC抑制するしかないってのもずっと上の方で結論出てるじゃん。
ぐぐれば出てくる基礎的な話で、知ってるからといって威張れるような話ではない。でも知らずに書くと上の例のように周りから笑われてしまう。その程度の話。
>まったく作ったことがないか、それとも過去の歴史にしがみつつ、わかってても少し警笛をならしたい老人か。
Javaで作ってると主張してるのに、newがmallocと思ってて、ListのAddとRemoveで都度長さが変わると思ってるJavaの基礎の基礎ができてない人が
間違った知識で講釈垂れ流そうとしたあたりから話がおかしくなった。
>このスレの板的知名度も大分上がったんだなーとかふと思う。
Part1の過疎っぷりを思うと胸が熱くなるな。
みんなそんなことよりゲーム作ろうぜ
0123名前は開発中のものです。
2010/12/28(火) 04:11:28ID:kmbjQwMU詳しい情報サンクス。
うふふ、うひゃひゃ寝る暇ねー。。。。また・・・また・・・体験版を刷らなきゃいけないのか・・・
リプレイの機構見直さないとうまく動かないや・・・
0124名前は開発中のものです。
2010/12/29(水) 00:31:16ID:FINczj2t突っ込みがあったら容赦なくplz.
0125名前は開発中のものです。
2010/12/29(水) 01:05:46ID:OFv+y9dvIEnumerableは途中で変更されない一連の動作をさせるには便利っぽいんだけど
どうも使い所が見つからないw
0126名前は開発中のものです。
2010/12/31(金) 15:18:47ID:VyXa73Toプログラムから送信するってできる?
ボタンが押されていなくても、押した事にするという感じで。
getじゃなくてsetというイメージ。
0127名前は開発中のものです。
2010/12/31(金) 15:30:12ID:6eev3oNeInputManagerみたいなクラスを作って、コントローラーの入力を直接取得するのはそのクラスだけにする。
他のクラスは常にInputManagerを経由して入力を取得するようにする。
そうしておけば、InputManagerを使って自由に入力を偽装できる。
0128名前は開発中のものです。
2011/01/03(月) 23:59:18ID:+Us08eHKとりあえず自分で作ったポリゴンモデル動かしたいだけなんだけど、
DirectX + C++でやるのとXNAでやるのは生産性全然違うって認識でいいの?
0129名前は開発中のものです。
2011/01/04(火) 00:04:16ID:vxp4EKHnたくさんコード書くならC#の方が遥かに楽だけど
0130名前は開発中のものです。
2011/01/04(火) 00:24:09ID:ysUfWyLyIrrlicht.NET by SWIGはどう?
実用に耐える?
0131名前は開発中のものです。
2011/01/04(火) 00:28:52ID:zGzKnjbPmikumiku dance
が多分お望みの物だな
d3dx.hを使わないで済ませられれば飛躍的に楽になる
同様にXNAのSkinnedEffectも忘れた方がいい
結局mikumiku dance for XNAを読むハメになった
0132名前は開発中のものです。
2011/01/04(火) 00:52:44ID:ysUfWyLySkinnedEffect使わなくても、easy3Dかなんかでは簡単に同様の事ができたり?
その二つも検討してみるよ、ありがとん
0133名前は開発中のものです。
2011/01/04(火) 18:20:35ID:IVa0KycjコンストラクタでIEnumeratorを受け取るようにすればテンプレートメソッドにする必要がなくなるんじゃね?
あとActionを返す反復子を作ってみたら結構使えそうだった
0134名前は開発中のものです。
2011/01/04(火) 23:24:49ID:zGzKnjbPC++と比較したい訳では無かったのか。
読み返すと全く話が解ってないまま回答してしまった。
とりあえず解決したっぽいし、良いか。
0135名前は開発中のものです。
2011/01/05(水) 18:12:52ID:4nw3q9lq0136名前は開発中のものです。
2011/01/05(水) 20:05:41ID:WpE5qgLi0137名前は開発中のものです。
2011/01/05(水) 22:40:12ID:mBota3aS0138名前は開発中のものです。
2011/01/06(木) 01:19:29ID:3qyNRZkyファイルからIOしたいわけですよ
0139名前は開発中のものです。
2011/01/06(木) 01:23:27ID:3qyNRZkyKeyboard.GetState().IsKeyDown(Keys.Right)とLeftが押してもないのにtrue返しやがる・・・
もうわけわかめ
0140アジェグ4倍 ◆4xAJeG.COM
2011/01/06(木) 09:28:24ID:QYGetP1Nそういや使ったこと無いな。
KeyDownとKeyUpのイベントがあれば、そこでフラグをセットだけして、
使用時にそのフラグを見るようにするのがよかろう。
0141名前は開発中のものです。
2011/01/06(木) 17:06:58ID:wjpby+MQでもそんなバグがあったら今までに見つかってないわけがないので、
君の環境がおかしいか使い方が間違ってる可能性が高い。
バグだというなら再現する最小限のコードをMSに提出。
ファイルについてだけど、Windowsなら普通にFileStreamでも使えば読める。
Texture2D.FromStreamで画像読み込んだりすることもできる。
上の人は無視で。
0142名前は開発中のものです。
2011/01/06(木) 17:26:13ID:uXXSOax90143名前は開発中のものです。
2011/01/06(木) 19:45:49ID:3qyNRZky良く見たら同じメソッドがパッドからの入力で呼ばれてたよ
寝ぼけばがらやるもんじゃないね、迷惑かけた
0144名前は開発中のものです。
2011/01/07(金) 01:46:29ID:/mL8TiWEWindows.FormでXNAが使えるなんて思わなかった
モデルの読み込みが激重だけど・・・
0145名前は開発中のものです。
2011/01/07(金) 10:25:58ID:GqCoKInr公式のサンプルあるよ
0146名前は開発中のものです。
2011/01/08(土) 13:59:26ID:f8whFlFu「フィルからIO」ってなんだろ。意味が分からない・・・。
0147名前は開発中のものです。
2011/01/10(月) 09:11:51ID:POFYwAz5もちつけ
0148名前は開発中のものです。
2011/01/17(月) 22:09:49ID:5lTPbuLE未だにボーンモデルが使えない周回遅れって
生きてて恥ずかしく無いの?
0149名前は開発中のものです。
2011/01/17(月) 22:32:20ID:Ycj63+Du何を勘違いしてるの?
0150名前は開発中のものです。
2011/01/18(火) 20:05:15ID:wAcnWAak0151名前は開発中のものです。
2011/01/20(木) 11:35:14ID:E0RqosUy0152名前は開発中のものです。
2011/01/22(土) 08:48:10ID:nHDGDD4u日付を見れば釣りな事がわかるw
0153名前は開発中のものです。
2011/02/07(月) 12:27:36ID:cGOhPdzX0154名前は開発中のものです。
2011/02/07(月) 13:04:44ID:t3vECL+OXNA?
0155名前は開発中のものです。
2011/02/07(月) 23:52:04ID:pYcP+EtY非プログラマ視点に立つと
XNA + SlimDXのDirectInputラッパ
XNA + MDXのGamePad
とかが非商業ゲームでよくある
だけど、2ch内ではSlimDXオンリーや
P/InvokeでjoyGetPos()を使わないと
火病を患う奴が多いので注意
俺、コレ書いたらしばらく潜伏するw
0156名前は開発中のものです。
2011/02/08(火) 00:04:35ID:h0yfeQKCできれば余計な依存を増やしたくないっていうのは普通の感覚だよ
プログラム書いてりゃ誰でもそれで痛い目見てきてるから
0157名前は開発中のものです。
2011/02/10(木) 00:09:07ID:ysLsR0ku日本では流行ってないよね?
0158名前は開発中のものです。
2011/02/10(木) 03:51:31ID:ysLsR0ku0159名前は開発中のものです。
2011/02/10(木) 06:21:30ID:G/eJJ3Sw0160名前は開発中のものです。
2011/02/10(木) 14:12:41ID:ctXKdQ7j割と日本語のドキュメントがある
0161名前は開発中のものです。
2011/02/12(土) 10:06:59ID:VbHC53Xo無茶言うなしw
初代スレからいるけどこのスレは毎日ポーリングしてないよw
同人ではXNAで開発してるらしい話はちらほら聞くけど、実際には見たことないなー。
0162名前は開発中のものです。
2011/02/12(土) 10:26:52ID:uk7PegRF大丈夫俺を信じろ
0163名前は開発中のものです。
2011/02/12(土) 15:33:12ID:V9TWB1jtDLSiteとかで活動する、ピコとかいわれそうなところ
0164名前は開発中のものです。
2011/02/15(火) 01:55:11ID:X2LWHu5J残念ながら、自分は終わった技術で作り続けてるその人だ。
正直に言えば、あと2年でDirect11、あと4年でローカルアプリとの脱却でWeb GL&JavaScriptの時代が来ると思ってる。
0165名前は開発中のものです。
2011/02/15(火) 09:33:13ID:9K+hWZ6i0166名前は開発中のものです。
2011/02/16(水) 01:23:38ID:EzQI8Jrb0167名前は開発中のものです。
2011/03/01(火) 21:04:41.42ID:GILaQf+20168名前は開発中のものです。
2011/03/01(火) 22:15:43.12ID:79tG48e20169名前は開発中のものです。
2011/03/02(水) 07:43:56.62ID:YWVCcHDfGC.Collect(2);
にするとモアベター。
0170名前は開発中のものです。
2011/03/02(水) 18:28:36.73ID:At54eAAT0171名前は開発中のものです。
2011/03/06(日) 01:40:04.45ID:S2Vj1+g20172名前は開発中のものです。
2011/03/06(日) 23:33:15.89ID:axL4KEH30173名前は開発中のものです。
2011/03/12(土) 20:32:56.36ID:gPTtXzoi0174名前は開発中のものです。
2011/03/13(日) 11:28:25.72ID:eZ3TbRil0175名前は開発中のものです。
2011/03/13(日) 21:25:08.53ID:1vvl0CSEウィンドウズアプリで開始するのと
ウィンドウズゲームで開始するのとでは
最初に窓が出来てるか、出来ていないかの違いでしかないです?
0176名前は開発中のものです。
2011/03/13(日) 21:31:37.91ID:VL4JDMZiウィンドウズアプリのプロジェクトで始めてもXNAアプリケーションは作れなくはないが
コンテントパイプライン使えないし設定も面倒なだけ
0177名前は開発中のものです。
2011/03/17(木) 07:29:39.44ID:A2r4YYAM0178名前は開発中のものです。
2011/03/17(木) 16:26:25.73ID:zQfrxT1aすばらしいな
人柱頼む
0179名前は開発中のものです。
2011/03/17(木) 21:27:02.00ID:vP/VmGWH0180名前は開発中のものです。
2011/03/19(土) 21:37:08.61ID:xxhE9gnX0181名前は開発中のものです。
2011/03/20(日) 02:32:02.44ID:gu1AUvPw将来何とかしたいかも??ってかいてあるみたい。
0182名前は開発中のものです。
2011/03/20(日) 22:57:52.14ID:uMpFfzYG0183名前は開発中のものです。
2011/03/27(日) 22:47:40.50ID:frcUHFPsプログラム初心者ですC+でハローワールドくらいしか書いたことありません
サンプルプログラムを幾つかDLして覗いてみましたが
ちんぷんかんぷんというほどでは無いですが理解できないところがいっぱいなので
0184名前は開発中のものです。
2011/03/27(日) 23:26:32.72ID:NKpFxiipそれとVisualC#のチュートリアル的な本も一冊
0185名前は開発中のものです。
2011/03/27(日) 23:29:10.63ID:frcUHFPs0186名前は開発中のものです。
2011/04/09(土) 15:21:17.52ID:w+/XeNyT0187名前は開発中のものです。
2011/04/09(土) 16:53:15.18ID:OGsCmTBQ0188名前は開発中のものです。
2011/04/10(日) 11:14:46.90ID:mGq4DXIT0189名前は開発中のものです。
2011/04/16(土) 01:21:13.95ID:xWBZkRYP0190名前は開発中のものです。
2011/04/16(土) 01:23:33.64ID:xWBZkRYPSilverlight5でXNA互換3D/2DAPIサポートだぞ
シェーダもいけるっぽい
.NETのインストール要らんし今後C#ならコレ一択じゃね?
0191名前は開発中のものです。
2011/04/16(土) 02:00:49.97ID:CQuyXIbr0192名前は開発中のものです。
2011/04/20(水) 02:02:25.75ID:WuxOdsPnBlue Angelsのデモ見ると可能性を感じずにはいられないな。
シェーダはShader Model 2.0までサポートされる。SM3.0が使えたらもっと素晴らしいんだけどね。
試しに使ってみようと思ったけど、Balder(SL5対応版)が動いてくれない。
XAMLで記述する方はまだSL5に未対応なのだろうか。
Balderのロードマップにはスキニングも実装するって書いてあったから将来が楽しみ。
仕方ないからしばらくは↓を弄って遊ぶよ!
http://www.andybeaulieu.com/Home/tabid/67/EntryID/216/Default.aspx
0193名前は開発中のものです。
2011/04/20(水) 22:24:52.80ID:tBzD47lIbasicEffectではできないの?
0194名前は開発中のものです。
2011/04/20(水) 22:34:05.83ID:hIlOrlrk0195名前は開発中のものです。
2011/04/20(水) 23:42:52.10ID:tBzD47lIHLSLとかカスタムエフェクトとかその辺使うってことかな?
結構難しそうなんだけど
もっとイージーでスイートなやり方はないものですか
0196名前は開発中のものです。
2011/04/21(木) 00:08:33.09ID:dhwQS3ud点光源に限らず、3Dゲームを素のXNAで作るのは相当大変だよ
0197名前は開発中のものです。
2011/04/21(木) 00:49:14.34ID:iLLJkwOE分かりました
探してみます
0198名前は開発中のものです。
2011/04/21(木) 01:40:50.98ID:HYfx9Zsp0199名前は開発中のものです。
2011/04/21(木) 16:09:43.63ID:/jnMsrS80200名前は開発中のものです。
2011/04/26(火) 05:17:46.89ID:9g9auydXVisualStudio2010とXNAでゲーム作って見たいのですが、PCのスペックはどのくらい必要でしょうか?
私のPCはペンティアム4時代のCeleron3.06Gとメモリ1.5Gなのですが、2010動かすのは厳しいですか?
VisualStudio2008はインストールしてあるのですが、多少動きがもっさりした感じです
また、Eclipseはそれなりにサクサク動作してます
よろしくお願いいたします
0201名前は開発中のものです。
2011/04/26(火) 05:53:43.55ID:XiOjNLeO0202名前は開発中のものです。
2011/04/26(火) 21:16:31.01ID:9g9auydX情報ありがとうございます
とりあえず、2010とXNA入れて、サンプルのソースコードを勉強してみます
0203名前は開発中のものです。
2011/04/27(水) 17:48:43.97ID:eF9o/F1bおお、自分も今ちょうど同じように始めた感じ
とりあえずフリューセルのサンプルで勉強しつつシェーダーはまだよく分かってないけど、かなり開発しやすいと思ってる。
0204名前は開発中のものです。
2011/05/02(月) 15:28:38.96ID:wiiybJSP絵とか音楽どうすんだって感じ
0205名前は開発中のものです。
2011/05/02(月) 16:59:57.49ID:v21dPLGC0206名前は開発中のものです。
2011/05/02(月) 17:33:36.08ID:ZHlWWP/c0207名前は開発中のものです。
2011/05/02(月) 23:05:02.74ID:RKPWheS70208名前は開発中のものです。
2011/05/02(月) 23:24:05.40ID:mpibUaL10209名前は開発中のものです。
2011/05/08(日) 16:22:35.13ID:Rjbpxm0d自分はルール重視の戦闘シミュレーションが作りたいので絵は○とか△とその色違いで済ませるつもり
音楽はなし
しかし、肝心のプログラム能力がダメダメなので一生懸命勉強中orz
0210名前は開発中のものです。
2011/05/10(火) 22:51:06.49ID:aJrcvWTB0211名前は開発中のものです。
2011/05/15(日) 03:10:16.42ID:KOgh+eiI一人で作業してると心が折れそうになる
http://iup.2ch-library.com/i/i0308937-1305396341.png
0212名前は開発中のものです。
2011/05/15(日) 08:55:41.25ID:cWGwnlsz0213名前は開発中のものです。
2011/05/16(月) 15:20:46.73ID:idEwrwo+クリックワンスすごいっす。
配布は問題なさそう。
0214名前は開発中のものです。
2011/05/21(土) 00:44:02.10ID:+xCEjFhY0215名前は開発中のものです。
2011/05/21(土) 01:27:06.75ID:nGyznNsYPCの謎の場所にインストールする
エクスプローラーとかからは普通に実行ファイルにアクセスできない
開発側としては更新とか楽なんだけど、
使う側はあれ抵抗ないのかな
0216名前は開発中のものです。
2011/05/22(日) 07:45:03.73ID:ZPaRN2+khttp://www1.axfc.net/uploader/He/so/324881.zip
0217名前は開発中のものです。
2011/05/23(月) 01:46:47.97ID:LjrhP/zz0218名前は開発中のものです。
2011/06/20(月) 20:17:08.41ID:g+vFh1dUC++でDirectX使ったのと比べて
利点と欠点ってなんすかね?
両方の知識ある人は是非教えてください。
0219名前は開発中のものです。
2011/06/20(月) 21:48:24.38ID:yFHe78U6結局Dispose()しないとだめだしC++と大して変わらんとか
思う人もいるかもしれないが、やっぱC#のほうが色々楽
・C++の方が(DirectX使う場合)Webとかで検索しやすい
MDXとSlimDXをちょっとしか使ったことないけど、
実際は使い方ほとんど同じなのでC#でも問題ないと
思う人は多いかもしれん
・C++の方が速い
個人的にはいちいち比べないけど、速度を気にしてコード書けば
C++のほうが速いんじゃないかな? 俺はC#使うときは
速度気にせずに書いてるから問題ない。
むしろ、C++だと色々気になってなかなか進まん。
・C#の方がコンパイル速い
C++だとテンプレートいっぱい使うと遅くなる、気にならない人や
マシンスペック余裕ですな人はどうでもいい話。
個人的にはVisualStudioでの開発環境でC#だとサクサクコード
かける気はする。C++はやっぱめんどい、.hと.cppでファイル分かれてるのも
めんどくなってくる。
でも、結局好きな方で書いた方がいいと思うよ。
0220名前は開発中のものです。
2011/06/20(月) 22:44:22.86ID:g+vFh1dUレスありがとうございます。
言語的にはC#の方が便利(少ない記述で簡単に書けそう)な気はしますね。
あと、将来的にはどうなのかな。
XNA Framework でしたっけ?ああいうので
ずっと汎用性が高いコード書けそうな気も。
(他環境で元のコード弄らず実行出来る可能性があるのはかなり魅力)
速度もどうなんでしょうか?
これもインスコ時に一度だけJITで
環境毎に最適化されたコード吐けば
かなり質の良いものになりそうな気も。
将来的にはどんどん性能も上がりそうですし。
そしてマシンスペックを限界まで引き出して
カリカリチューンしたコードでも書くのでなければ
やっぱC#の方が合理的な選択なのかなぁと最近すっごく思ってしまいますね。
うーんでも迷うなぁ。
0221名前は開発中のものです。
2011/06/20(月) 22:51:06.77ID:ua6BuKlh仕事にしたいならC++
特に理由がないならC#はお勧め
なにより>>219が言う通り開発が早い
生産性を考えると何倍も違う
あとここ最近のJITは性能が向上してるので、
ググれば意外に速いのがわかる
ただXNAは個人的にはお勧めできないw
0222名前は開発中のものです。
2011/06/20(月) 22:54:45.12ID:g+vFh1dUやっぱりC#の生産性の高さは魅力ですよね。
サクっとプログラミング出来る環境は魅力です。
それと、XNAが勧められない理由というのはなんでしょうか?
もしよろしければ参考にしたいのでおしえて頂けませんか?
0223名前は開発中のものです。
2011/06/20(月) 23:15:33.56ID:Detm2EZT趣味でやるなら文句は無い
0224名前は開発中のものです。
2011/06/20(月) 23:46:27.92ID:g+vFh1dUXNAは継続して開発されないという事でしょうか?
それだったら止めた方が良い気がしますね。
0225名前は開発中のものです。
2011/06/20(月) 23:47:49.02ID:ZCsxQmCP0226名前は開発中のものです。
2011/06/21(火) 00:03:07.78ID:wcOdQHj5自作のラッパークラス群などを作るという事ですか?
確かにそれなら中身を書き換えるだけでよいですね。
0227名前は開発中のものです。
2011/06/21(火) 00:15:39.00ID:hcAIHp8f0228名前は開発中のものです。
2011/06/21(火) 00:32:17.84ID:wcOdQHj5SlimDXが良いのかなとも思いましたが。
まぁゲーム本体のコードはC++とC#で迷うにしても
ツール類は絶対これからC#で書いた方が
合理的な気がしますね…
昔みたいにMFCとVC++で作るのはほんとツラいので…
0229名前は開発中のものです。
2011/06/21(火) 00:49:32.83ID:hcAIHp8f0230名前は開発中のものです。
2011/06/21(火) 00:52:49.52ID:wcOdQHj5あれってC#で使えましたっけ?
C++だととっても良いライブラリだと思うんですが。
0231名前は開発中のものです。
2011/06/21(火) 01:07:11.31ID:hcAIHp8f0232名前は開発中のものです。
2011/06/21(火) 01:11:14.99ID:GJAfiv7E0233名前は開発中のものです。
2011/06/21(火) 01:20:59.68ID:wcOdQHj5おーそうだったんですか。
あのライブラリって随分有名になりましたよね。
>>232
自分はC++で、自分のDirectXラッパーライブラリの
DirectXのバージョンアップするのが面倒だったので
内部だけdxlibで書き換えた事ありましたよ。そういえば。
ツークッションみたいな状態ですがw
0234名前は開発中のものです。
2011/06/21(火) 03:52:38.80ID:6C1+3RKXおじさんは寂しいよw
directxのラッパーなら
slimDX
dxlib
かね
いずれにせよフレームワーク部分は自作しないとだけど
そこは自作のほうがええだろうし
0235名前は開発中のものです。
2011/06/21(火) 04:08:11.83ID:wcOdQHj5確かにゲーム自体のフレームワークは自作しなきゃですね。
でも、dxlibの作者とかも言ってるように
自分の思想を極力押し付けないライブラリにしたい
というのはすっごく共感できましたけどね^^
0236名前は開発中のものです。
2011/06/21(火) 04:10:12.18ID:IZIeuRiB土日スレとかだと意外と見かける。
公式のC#インターフェースがイケてないのは少し残念だけど
あの手軽さは他ではなかなか得られないと思う。
日本語資料も多いし。
0237名前は開発中のものです。
2011/06/21(火) 04:19:02.81ID:wcOdQHj5DirectX7-8とかの頃触ったことがあっただけなので
知りませんでした。
0238名前は開発中のものです。
2011/06/21(火) 04:22:01.84ID:3afCOWYU0239名前は開発中のものです。
2011/06/21(火) 04:34:17.83ID:wcOdQHj5シロウト目には、XBOXは、普通のゲー専用ミニPCでも良いと思うんですけどね。
0240名前は開発中のものです。
2011/06/21(火) 06:15:09.12ID:P6unZyCi0241名前は開発中のものです。
2011/06/21(火) 06:15:25.68ID:wcOdQHj50242名前は開発中のものです。
2011/06/21(火) 06:31:36.94ID:wcOdQHj5単純に考えて、ゲーム以外の用途を殆ど削って
内部パーツの一部を交換可能な設計にして
OSもゲーム動作させる為だけの完全にPC用と互換あるものに
しててくれれば、どんなに良かったかと思ったんですが。
0243名前は開発中のものです。
2011/06/21(火) 06:39:07.79ID:6C1+3RKXhttp://hibari.2ch.net/test/read.cgi/gamedev/1286984730/
にC#+DXlibのソース投下したんで興味あったらどんぞ
あんま参考にならんかったら許しておくれw
0244名前は開発中のものです。
2011/06/21(火) 06:47:17.05ID:P6unZyCi利用者にはそれがベストなんだが各チームプライドがあるから無理だろう
0245名前は開発中のものです。
2011/06/21(火) 07:32:43.94ID:wcOdQHj5後で見させてもらいますね。
>>244
それとなんかビジネス絡みの大人の事情っぽい事も色々ありそうな気が…
0246名前は開発中のものです。
2011/06/21(火) 08:18:08.73ID:xH1E1FY5メリットは
1.実行速度がでる
2.ゲームエンジンはC#版でも結局C++のラッパだからC++のほうがデバッグしやすい。
3.C#からC++を呼ぶ手段はいろいろあるが、その逆は少ない。
0247名前は開発中のものです。
2011/06/21(火) 08:37:55.91ID:Saq3Hs51通信
はdxlibのsocketやC#のsoketじゃなくて
lidgren使った方が楽だと思うよ
俺もC#dxlibで2DMMO作ってて
tcp越しのマップ移動とチャットまで作ったんだけど
後々の事考えてlidgrenで作り直してる
0248名前は開発中のものです。
2011/06/21(火) 09:03:42.93ID:6C1+3RKXすでにライブラリ化しちゃってるんだけどw
そのlidgrenてのはどんなん
ggってみたけどパッとわからんかった
0249名前は開発中のものです。
2011/06/21(火) 09:27:19.64ID:wcOdQHj5実行速度についてですけど
やっぱネイティブのC++とC#じゃ
JITで最適化されたコード吐いても
C++とそんなに差があるもんなんですか?
どっかにまったく同じメガデモみたいなもんの
C++版とC#版の比較とかないかな。
0250名前は開発中のものです。
2011/06/21(火) 12:04:43.82ID:lgeltL/L0251名前は開発中のものです。
2011/06/21(火) 12:41:09.97ID:xH1E1FY5見本的なものは知らない。
C#にも得手不得手があるようで一概には言えないが、感覚的にC#は10%遅い感じ。(10秒が11秒に)
ただ配列アクセスはもっと遅い気がする。
あと描画ループ内だとC#からC++へのメモリ転送も馬鹿にならん。
まあ、コードの工夫でなんとかなるレベルだと思うから、どこにリスクを背負うかって話だな。
0252名前は開発中のものです。
2011/06/21(火) 14:05:55.72ID:+SELv9I7でもFPS100の超絶弾幕シューティングを作るとかなら始めからC++でどうぞ
0253名前は開発中のものです。
2011/06/21(火) 21:26:31.95ID:XXAmeKWkまぁケースバイケースでやっぱり言語は
それぞれ使いどころがあるって事ですかね。
みなさんアドバイスありがとう。
0254名前は開発中のものです。
2011/06/23(木) 04:55:10.49ID:Mg2577Ebもしくは、特別なライブラリは必要ないですか?
作りたいゲームは単純な2DのRPGやシミュレーションです
よろしくお願いいたします
0255名前は開発中のものです。
2011/06/23(木) 18:29:43.45ID:nWcL2mex>作りたいゲームは単純な2DのRPGやシミュレーションです
以前、C#2.0の頃にビットマップの描画速度がどの程度なのか調べたことがある。
2DのRPGとかでよくある16x16とかのビットマップを画面に何個も転送して
一画面描画するようなテストプログラムを書いた。
Win32APIだと16x16のビットマップの集まりのビットマップファイルを読み込んで
それをメモリDCに入れて、そこから画面のDCへ転送する形になるのだが
.NetFrameworkだとメモリDCの作り方がわからなかった。
しかたがないので何だったか忘れたがBitmapクラスかなにかでビットマップを読み込み
それから画面に描画したのだが非常に遅かった。
うろ覚えであまり参考になりそうになくて申し訳ないが、ようするに
なんかのライブラリがあった方がいいんじゃね?
とゆーことである。
まあ、そんときはメモリDCつくれないんでクソだろって思ってMDXつかった。
Win32APIでもよかったけど、MDXでもそんなに手間かかんないだろって思って。
実際のところ、C#つーか.NetFrameworkオンリーでこうゆうケースの描画で
速度だすには普通はどうすんの?
0256名前は開発中のものです。
2011/06/23(木) 21:17:13.24ID:Mg2577Ebレスありがとう
自分の場合は対してカッコイイ画面効果を予定していないから、スピードとかは気にならないかも
むしろ、プログラミング的にどのライブラリ使うのが(もしくは使わない)楽かの方が重要です
自分はDirectXの経験が完全にゼロだから迷うところ
0257名前は開発中のものです。
2011/06/23(木) 22:12:52.66ID:nWcL2mex多分、このスレの人が書いたSlimDXのサンプルが
ttp://www21.atwiki.jp/csharpgamedev/pages/18.html
にあるから、そこのサンプルフレームワークとスプライトをみれば
楽にできそうか判断できるかもしれない。
スプライトのサンプルのOnRender()の部分でtextureからspriteにDrawしてるのが
描画のほぼすべてになるね、あとは準備とか後片付け。
まあ、あくまで描画だけだけど。
0258名前は開発中のものです。
2011/06/23(木) 23:36:01.30ID:FgZSr0FfDirectXのめんどい部分は勝手にやってくれるし。
0259名前は開発中のものです。
2011/06/24(金) 18:45:55.74ID:w2ahsluuC#で作成されたゲームのソースコードを読みたいと思っているのですが、XNAとDirectXだと
どちらが読めるコードが多いですか?
自分は設計能力もまだまだなので、ライブラリのサンプル以外にゲーム全体のソースも
読みたいです
XNAとSlimDXをちょっと調べてみましたが、どちらも多少は勉強が必要で片方が圧倒的に
楽には思えませんでした
ですので、今回は勉強できるコードが多い方を使いたいと思っています
よろしく絵お願いいたします
0260名前は開発中のものです。
2011/06/24(金) 19:49:20.12ID:vpIr/4FI0261名前は開発中のものです。
2011/06/24(金) 21:29:34.87ID:j8WTLCH/XNAとSlimDXならXNAの方が情報は多い。
0262名前は開発中のものです。
2011/06/26(日) 20:24:29.87ID:kDU8FN7Yとりあえず、XNAを信じてみます
XNAが爆死したら、それはそのとき考えます
アドバイスありがとうございました
0263名前は開発中のものです。
2011/06/27(月) 10:17:47.69ID:XmORyGJmネイティブ+DirectXで書かれたものよりXNAで書かれたものの方が読める機会は多い気がする
0264名前は開発中のものです。
2011/06/29(水) 00:07:48.46ID:k3mpPKWNReflectorっていう海外のツールがシンプルにC#exeファイルを覗けた。今ではリフレクターは有料ツールになってしまったけど確かに有能なツールだった。
0265名前は開発中のものです。
2011/06/29(水) 08:59:25.49ID:k8ega+9c0266名前は開発中のものです。
2011/06/29(水) 09:34:20.48ID:k8ega+9c見た目もReflectorとまったく変わらないしこれはいいわ。
0267名前は開発中のものです。
2011/07/22(金) 17:25:02.19ID:grNpbW8x0268名前は開発中のものです。
2011/07/22(金) 17:26:09.41ID:grNpbW8x0269名前は開発中のものです。
2011/07/22(金) 23:29:31.67ID:jWcHZAal0270名前は開発中のものです。
2011/07/23(土) 02:29:55.89ID:U6kF4dmlある程度やりたい事書いてくれれば、教えられる範囲でおしえるぞ
0271名前は開発中のものです。
2011/07/23(土) 03:53:09.26ID:XfYGPnsYhttp://hibari.2ch.net/test/read.cgi/gamedev/1303913888/
スレ見ると今はグダってるみたいだけど、sourceforgeにソースあるはず
0272名前は開発中のものです。
2011/07/23(土) 17:36:32.47ID:kEbjemIO0273名前は開発中のものです。
2011/07/25(月) 10:01:31.50ID:k3N0XtxDあの人がリーダーだったん?
0274名前は開発中のものです。
2011/07/27(水) 18:31:57.32ID:rtDjJBOtunityで3DRPGを作りたいです。
デモンズソウルに近い仕様を目指します。
・武器の交換(ポリゴンモデルの変更含む)
・グラフィクユーザーインターフェース
この辺りを大体の仕組みを大まかに説明して頂けると嬉しいです。
0275名前は開発中のものです。
2011/07/27(水) 19:27:13.33ID:PWOTNM6A0276名前は開発中のものです。
2011/07/28(木) 10:08:18.40ID:2bUtDyJGhttp://hibari.2ch.net/test/read.cgi/gamedev/1311799942/
0277名前は開発中のものです。
2011/07/31(日) 21:52:48.74ID:RX3R5a7dhttp://www.youtube.com/watch?v=P0W7OY9UwYs&feature=related
http://www.youtube.com/watch?v=BmAwvXS8ixs
http://www.youtube.com/watch?v=8gnDd6UxwtM&feature=related
http://www.youtube.com/watch?v=uFulFETdHzA&feature=related
0278名前は開発中のものです。
2011/09/02(金) 22:33:21.22ID:ML5gyu7oやっぱりLuaが鉄板なのかな。
0279名前は開発中のものです。
2011/09/02(金) 22:43:29.77ID:r3GL4ObA0280名前は開発中のものです。
2011/09/03(土) 00:17:34.69ID:Xm2kSO6d0281名前は開発中のものです。
2011/09/03(土) 00:18:00.90ID:lADjbFc70282名前は開発中のものです。
2011/09/20(火) 01:42:21.67ID:HyU39mW7PlayStationRSuiteでC#採用するってのは明るいニュースだね。
http://www.scei.co.jp/corporate/release/110915b.html
来春の正式ローンチで個人開発者でも使えるようになるといいな。
http://av.watch.impress.co.jp/docs/series/rt/20110916_477763.html
0283名前は開発中のものです。
2011/09/20(火) 01:57:55.51ID:2ns/BLgC0284名前は開発中のものです。
2011/10/13(木) 14:07:45.35ID:y/z+Wlc2■ このスレッドは過去ログ倉庫に格納されています