C# C# C♯ でゲームを作ろう Part2

■ このスレッドは過去ログ倉庫に格納されています
2010/11/21(日) 09:52:59ID:wlCDMEbr
C#でゲームを作ろうと思う人が情報を交換するためのスレです。
テーマはアクション、パズル、RPG等なんでもOK


C#ゲーム製作@wiki
http://www21.atwiki.jp/csharpgamedev/



前スレ
C# C# C♯ でゲームを作ろう Part1
http://hibari.2ch.net/test/read.cgi/gamedev/1212989813/
2011/06/21(火) 08:37:55.91ID:Saq3Hs51
>>243
通信
はdxlibのsocketやC#のsoketじゃなくて
lidgren使った方が楽だと思うよ
俺もC#dxlibで2DMMO作ってて
tcp越しのマップ移動とチャットまで作ったんだけど
後々の事考えてlidgrenで作り直してる
2011/06/21(火) 09:03:42.93ID:6C1+3RKX
>>247
すでにライブラリ化しちゃってるんだけどw
そのlidgrenてのはどんなん
ggってみたけどパッとわからんかった
249名前は開発中のものです。
垢版 |
2011/06/21(火) 09:27:19.64ID:wcOdQHj5
>>246
実行速度についてですけど
やっぱネイティブのC++とC#じゃ
JITで最適化されたコード吐いても
C++とそんなに差があるもんなんですか?

どっかにまったく同じメガデモみたいなもんの
C++版とC#版の比較とかないかな。
2011/06/21(火) 12:04:43.82ID:lgeltL/L
ゴリゴリの3Dじゃなきゃ分からんレベルに拘るな
2011/06/21(火) 12:41:09.97ID:xH1E1FY5
>>249
見本的なものは知らない。
C#にも得手不得手があるようで一概には言えないが、感覚的にC#は10%遅い感じ。(10秒が11秒に)
ただ配列アクセスはもっと遅い気がする。
あと描画ループ内だとC#からC++へのメモリ転送も馬鹿にならん。

まあ、コードの工夫でなんとかなるレベルだと思うから、どこにリスクを背負うかって話だな。
2011/06/21(火) 14:05:55.72ID:+SELv9I7
基本C#でどうしても遅い部分だけC++で作ればいいじゃん
でもFPS100の超絶弾幕シューティングを作るとかなら始めからC++でどうぞ
2011/06/21(火) 21:26:31.95ID:XXAmeKWk
でも思ったよりずっとC#は速い感じでよいですね。

まぁケースバイケースでやっぱり言語は
それぞれ使いどころがあるって事ですかね。
みなさんアドバイスありがとう。
2011/06/23(木) 04:55:10.49ID:Mg2577Eb
C#の勉強もかねてゲーム製作をがんばって見たいのですが、その場合、XNAよりSlimDXとかの方がいいですか?
もしくは、特別なライブラリは必要ないですか?
作りたいゲームは単純な2DのRPGやシミュレーションです
よろしくお願いいたします
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オンリーでこうゆうケースの描画で
速度だすには普通はどうすんの?
2011/06/23(木) 21:17:13.24ID:Mg2577Eb
>>255
レスありがとう
自分の場合は対してカッコイイ画面効果を予定していないから、スピードとかは気にならないかも
むしろ、プログラミング的にどのライブラリ使うのが(もしくは使わない)楽かの方が重要です
自分はDirectXの経験が完全にゼロだから迷うところ
2011/06/23(木) 22:12:52.66ID:nWcL2mex
MDXとSlimDX以外は使ったことないから、どれが楽かはわかんないけど
多分、このスレの人が書いたSlimDXのサンプルが
ttp://www21.atwiki.jp/csharpgamedev/pages/18.html
にあるから、そこのサンプルフレームワークとスプライトをみれば
楽にできそうか判断できるかもしれない。

スプライトのサンプルのOnRender()の部分でtextureからspriteにDrawしてるのが
描画のほぼすべてになるね、あとは準備とか後片付け。
まあ、あくまで描画だけだけど。
2011/06/23(木) 23:36:01.30ID:FgZSr0Ff
ただ作るだけならXNAが楽だと思うよ。
DirectXのめんどい部分は勝手にやってくれるし。
2011/06/24(金) 18:45:55.74ID:w2ahsluu
質問ばかりですみません
C#で作成されたゲームのソースコードを読みたいと思っているのですが、XNAとDirectXだと
どちらが読めるコードが多いですか?

自分は設計能力もまだまだなので、ライブラリのサンプル以外にゲーム全体のソースも
読みたいです

XNAとSlimDXをちょっと調べてみましたが、どちらも多少は勉強が必要で片方が圧倒的に
楽には思えませんでした
ですので、今回は勉強できるコードが多い方を使いたいと思っています

よろしく絵お願いいたします
2011/06/24(金) 19:49:20.12ID:vpIr/4FI
圧倒的にDirectXの方が多い
2011/06/24(金) 21:29:34.87ID:j8WTLCH/
XNAとDirectXならDirectXの方が情報は多い。
XNAとSlimDXならXNAの方が情報は多い。
2011/06/26(日) 20:24:29.87ID:kDU8FN7Y
なるほど
とりあえず、XNAを信じてみます
XNAが爆死したら、それはそのとき考えます
アドバイスありがとうございました
2011/06/27(月) 10:17:47.69ID:XmORyGJm
ほぼ全てのプログラムがソースコードにまでリバースエンジニアリング出来る事を考えると、
ネイティブ+DirectXで書かれたものよりXNAで書かれたものの方が読める機会は多い気がする
2011/06/29(水) 00:07:48.46ID:k3mpPKWN
そのレスだけだとわからないんじゃないか?
Reflectorっていう海外のツールがシンプルにC#exeファイルを覗けた。今ではリフレクターは有料ツールになってしまったけど確かに有能なツールだった。
2011/06/29(水) 08:59:25.49ID:k8ega+9c
ここで言うような事でもないけど、時計を今年の3月以前に戻すとまだ使えるんだぜ
2011/06/29(水) 09:34:20.48ID:k8ega+9c
いつのまにかILSpyなんてのが出来てたんだな。
見た目もReflectorとまったく変わらないしこれはいいわ。
2011/07/22(金) 17:25:02.19ID:grNpbW8x
unityではc#が使えるよ。
2011/07/22(金) 17:26:09.41ID:grNpbW8x
c#で書いてあるゲームのコードが載ってるとこしらないですか?
2011/07/22(金) 23:29:31.67ID:jWcHZAal
しらないです
2011/07/23(土) 02:29:55.89ID:U6kF4dml
>>268
ある程度やりたい事書いてくれれば、教えられる範囲でおしえるぞ
2011/07/23(土) 03:53:09.26ID:XfYGPnsY
FreeTrainがC#だったきがする
http://hibari.2ch.net/test/read.cgi/gamedev/1303913888/
スレ見ると今はグダってるみたいだけど、sourceforgeにソースあるはず
2011/07/23(土) 17:36:32.47ID:kEbjemIO
今はどうだかしらないけどリーダーがC#初心者なうえに痛い奴だったような気がする
2011/07/25(月) 10:01:31.50ID:k3N0XtxD
前スレでヘルプ求めてやって来た人がいたな。
あの人がリーダーだったん?
2011/07/27(水) 18:31:57.32ID:rtDjJBOt
>>270
unityで3DRPGを作りたいです。
デモンズソウルに近い仕様を目指します。
・武器の交換(ポリゴンモデルの変更含む)
・グラフィクユーザーインターフェース
この辺りを大体の仕組みを大まかに説明して頂けると嬉しいです。
2011/07/27(水) 19:27:13.33ID:PWOTNM6A
スレチ
2011/07/28(木) 10:08:18.40ID:2bUtDyJG
【3Dゲームエンジン】Unity 4
http://hibari.2ch.net/test/read.cgi/gamedev/1311799942/
2011/07/31(日) 21:52:48.74ID:RX3R5a7d
中川昭一まとめ
http://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
278名前は開発中のものです。
垢版 |
2011/09/02(金) 22:33:21.22ID:ML5gyu7o
C#で使える組み込みスクリプト言語ってどんなのがある?
やっぱりLuaが鉄板なのかな。
2011/09/02(金) 22:43:29.77ID:r3GL4ObA
IronPython、IronRuby、Boo とか。他にもググれば沢山出てくるぞ。
280名前は開発中のものです。
垢版 |
2011/09/03(土) 00:17:34.69ID:Xm2kSO6d
id
2011/09/03(土) 00:18:00.90ID:lADjbFc7
普通にC#でもいいけど
2011/09/20(火) 01:42:21.67ID:HyU39mW7
今のところアマチュアの俺には直接の関係はないが、
PlayStationRSuiteでC#採用するってのは明るいニュースだね。
http://www.scei.co.jp/corporate/release/110915b.html

来春の正式ローンチで個人開発者でも使えるようになるといいな。
http://av.watch.impress.co.jp/docs/series/rt/20110916_477763.html
2011/09/20(火) 01:57:55.51ID:2ns/BLgC
絵みゅが出て終わるよ
2011/10/13(木) 14:07:45.35ID:y/z+Wlc2
あげ
2011/12/19(月) 13:01:21.92ID:iNpFDtuo
Silverlight5が来たね
XNAの機能が盛り込まれたり、色々ゲームに使えそう
少し挑戦してみるか


日本語SDKが出たらな!!
2011/12/22(木) 01:42:34.06ID:edwvGmuO
格ゲーのコマンド入力ってどう捌くべき?
2011/12/22(木) 09:29:30.41ID:mOrPedxd
イベント
2011/12/22(木) 11:13:31.01ID:FNysklry
直近の数秒間のキー状態を保存して置いて、Regexで技コマンドパターンとマッチングさせると言うのはどうだろう
2011/12/22(木) 21:16:03.45ID:HAGzfKIv
あんまり融通の効くような解析にするとグルグルポンで出るようになっちゃうし
悩みどころだよな
290名前は開発中のものです。
垢版 |
2011/12/24(土) 09:27:08.28ID:SLzNzNke
時間のアソビと、方向のアソビをもたせればいいだけだろ
291名前は開発中のものです。
垢版 |
2011/12/25(日) 03:24:08.92ID:/pQ3TQVq
うん
292名前は開発中のものです。
垢版 |
2011/12/27(火) 03:40:07.53ID:Yk/XjSQY
C#習得したくて作るならゲームがよくてWinAPIとかDirectXとか極力触りたくないんだけど
2011/12/27(火) 09:34:34.28ID:9w6EG7Fj
>>292
XNA一択
2011/12/28(水) 01:24:02.77ID:Zp8FtbbJ
そもそもDirectXとかXNAとかSlimDXとか触りたくなさそうな気配を感じる・・・

VisualStudioだとして、フォームにPictureBoxでも置いて、
その中に適当に絵を貼り付けて、PictureBoxを動かせば簡単なミニゲームは作れる。

ゲームを作るのが目的なら、そんなやり方勧められないけど、
C#を学ぶのが目的なら、その程度でいいんじゃないかなー
2011/12/30(金) 21:50:05.43ID:TIWqGbfI
>>292
OpenTKというのはどうだ
296名前は開発中のものです。
垢版 |
2011/12/31(土) 03:04:13.75ID:EZb1lWgj
>>292
Unityでいいんじゃね?
2012/01/01(日) 12:54:32.52ID:0PyEI2Oo
オンラインブラウザゲームって
なにからどうとっつけばいいかわからない

HTML触らずにSilverLightアプリ作成で、鯖とクライアント両方作れる?
先に鯖用
出来たら入出力分けてクライアント用?
全然わからん
2012/01/01(日) 12:56:34.74ID:0PyEI2Oo
普通にWebアプリ作って
処理の中身をユーザー分けして拡張していく感じか?
わけわからん
2012/01/01(日) 12:58:30.18ID:0PyEI2Oo
鯖データベース作って
各ユーザーごとに操作可能データ領域を区分けして
鯖はデータベースだけ見て常時処理していけばいいのか

わけわからん
2012/01/08(日) 11:43:26.19ID:HL/mVV1R
XNAでゲーム作ろうと思ったらグラボの性能が足りないのかエラー出たんだけどどうすればいいんですかね
2012/01/08(日) 13:31:52.65ID:ViJnsTP5
グラボ変える
2012/01/10(火) 21:23:42.42ID:omGre8X+
安いの買え
9600GTでもどうにかなるというのに
2012/01/11(水) 20:58:56.65ID:HOUjruQq
ドットキャラのパラパラアニメーター作った。
コードガリガリ書いて300行位でできたからC#ってすごいね。
2012/01/13(金) 10:53:03.89ID:OtdkujKw
C#がすごいんじゃないよ。
お前がすごいんだよ。
2012/01/16(月) 23:45:28.65ID:4/gfkBkU
>>304
そう言ってもらえると感激やわー!
2012/01/18(水) 15:10:20.96ID:RrDFsBvU
俺のほうが凄いけどな
2012/01/18(水) 15:11:52.74ID:EcoSYDxI
WindowsPhone7でゲーム作るわ
308303
垢版 |
2012/01/19(木) 02:04:31.14ID:Tw1c2s3W
気が向いたのであげてみる。一ヶ月位で消えるよ。
ttp://www1.axfc.net/uploader/File/so/74163.zip&key=2ch

デバッグはろくにやってないからそのつもりで。
俺は、幸、不幸に対する対価を要求しないつもりので、俺に責任を求めることは無いように!
UIがオカシイと思ったら直せばいいと思うよ。
使い方は、一応書いてあるけど、わからなかったら諦めろ!

そんな感じだ。

ちなみに300行っていうのは自分の手で書いた行数ね。
2012/01/19(木) 22:21:09.48ID:vX6PT/Iu
ウイルス入りか
2012/01/20(金) 01:00:43.55ID:bRk7D0Dt
>>309
え?
2012/01/20(金) 01:49:44.86ID:+SKmAGJd
>>309
え?
2012/01/20(金) 11:05:07.54ID:yGjTgAa9
>>309
え?
2012/01/20(金) 11:26:41.14ID:UVtTlChn
>>309
え?
2012/01/20(金) 15:27:16.06ID:b9XPHrQk
>>314
え?
2012/01/26(木) 21:11:18.69ID:SeuLpZa2
( ^ω^)おっ
2012/02/12(日) 21:57:59.48ID:gjfghICz
http://toro.2ch.net/test/read.cgi/tech/1329023778/
2012/04/18(水) 03:08:03.53ID:zzmnGwMP
単なる趣味でキャラ描いてパッドで動かして、うお、すげーと思いたいだけなんだけど
XNAのが楽かな?
M$のドキュメントも充実しているし、1から始めてもやっていけそうな感じ

SlimDXはインストールも、参照設定も楽だったが、1行目が書けなかったw
キーボードの入力をやってみようと思ったが、SlimDXのサンプルがなかったので
MDXで書かれたコードを真似したが、Deviceのインスタンスの作り方で詰まってしまった
おそらくC++&DirectXでの開発経験のある人が、軽い気持ちで作るにはいいのだろうけど
0からスタートするには無理な気がした
参考にするコードもおそらくC++で書かれているようなのをにらめっこしていくことになるだろうし
C++未経験だからかなり大変

XNAはM$のサンプルをコピペするだけでできそう
ただ、C#にしてもそうだけど、便利なライブラリがあるのはいいけど
そのせいで、OSやDirectXの本質部分をまったく理解できないんだろうなと思う
過去ログにもあるようにXNAが終わっちゃうと、それまで学んだことは活かせないんだろうなと
SlimDXがもし開発停止になっても、それで開発した知識は活かせそうな気がする
2012/04/18(水) 08:01:30.19ID:+PfVs1dT
できそうと思ってもやらずに長文書いてる奴には一生出来ない
2012/04/18(水) 12:02:36.32ID:u9fUrCgv
本質はテクニックを理解することだ
プラットフォームに振り回されちゃいけねえ
2012/04/18(水) 14:53:13.88ID:zzmnGwMP
Unityスレみたらすごく盛り上がっているなぁ
普段C#使ってない人も集まっているのかな

ちょこっと調べてみたが、FPSなどのアクションゲームみたいに
静的なマップで部分的にオブジェクトを操作するようなのは楽そうだけど、
マップ自体を動的に生成するような箱庭系を作るのはあんま向いてない感じかな
2012/04/20(金) 06:12:23.66ID:QtZyd8fk
C++とC#の違いってプリプロセッサとヘッダーファイルと、
newしたらdeleteなのと、ポインタやハンドル使うくらいでしょ?
ほとんどC#みたいなもんだよ
2012/04/20(金) 08:19:53.55ID:cSwGsiDe
ひどい釣りを見た
2012/04/26(木) 19:19:43.11ID:OEu7Wa4r
PlayStation Suiteプログラミング part 1
http://toro.2ch.net/test/read.cgi/gamedev/1330137413/

そこそこ盛り上がってるんで一応貼っておくよ
2012/05/03(木) 14:08:21.52ID:vWkkRME1
XNAでViewport.Project関数を使ってワールド座標をスクリーン座標に変換してるんだけど
カメラの後ろにある物の座標まで変換されてしまうよ。
これを防ぐ方法無いですか?
325324
垢版 |
2012/05/03(木) 14:15:09.18ID:vWkkRME1
質問が変だった。
あるワールド座標がカメラの後ろにあるか前にあるか判定する方法ないですか?
2012/05/04(金) 13:35:07.62ID:hXAHeYah
カメラの座標を基準にして
カメラの視線ベクトルと、該当座標へのベクトルの
内積をとって見てはいかがだろうか

勘で答えてるけど
2012/05/04(金) 18:57:39.05ID:ZvD1zdGw
あ?ベクトルの内積だの外積だのわかんねーよ
2012/05/04(金) 19:57:29.37ID:53Z6cEF1
>>327
じゃあまず俺にベクトルを教えなさいよ
2012/05/07(月) 00:06:10.55ID:KJS5MJfQ
高校数学の教科書でも読んでろよ
数学Bだぞ
2012/07/02(月) 06:50:24.80ID:7ucfM42S
ベクトルと行列なしに3Dは無理だろ
2012/07/02(月) 21:56:15.96ID:6Jmylpw0
16個の数字が〜なんて考えるから駄目。
行列なんざ
「拡縮回転移動変形なんでもござれの万能データ型」
みたいな理解でいいんだよ、極端な話(極端すぎるか?)
332名前は開発中のものです。
垢版 |
2012/09/08(土) 22:48:24.83ID:USByJtAS
C++のコードにスクリプト言語としてC#を組み込みたいんだが、日本語で何か良い資料無い?
2012/09/09(日) 00:02:26.48ID:NqOVDYbG
意味不。C#スクリプトに使うくらいなら全部C#使えよ。
334名前は開発中のものです。
垢版 |
2012/09/09(日) 00:24:11.91ID:KwdyowjZ
C#は重いしタイマーの精度も悪い。
あと、最近の英語圏でのアマチュア向けのゲームエンジンでは、
本体がC++でスクリプトがC#という組み合わせが当たり前とも聞いたが?
335名前は開発中のものです。
垢版 |
2012/09/09(日) 00:28:26.98ID:KwdyowjZ
ちなみにコッチのスレで聞いた話だが

推薦図書/必読書のためのスレッド in ゲ製作技術5
http://toro.2ch.net/test/read.cgi/gamedev/1261811596/
2012/09/09(日) 01:28:16.11ID:aLq+mN6t
つ Unity
2012/09/09(日) 03:37:13.25ID:r2Gs41k9
>>334
CLR ホスト環境でぐぐれ
2012/09/09(日) 08:40:14.70ID:KwdyowjZ
>>337
ありがとうございます。求める資料が見つかりました。
339332
垢版 |
2012/09/09(日) 10:48:34.06ID:KwdyowjZ
重ねて質問します。
CからC#を呼び出した後、さらに元となった実行ファイルのCの関数をC#から呼び出したいと考えているのですが、どのような方法があるでしょうか?
2012/09/09(日) 19:08:49.94ID:r2Gs41k9
P/InvokeかC++/CLIでラップ
2012/09/11(火) 19:55:02.11ID:4nOYAXXy
dllじゃないと出来なくね?
2012/09/11(火) 20:21:17.32ID:ro2nDT1L
exeでもシンボルエクスポートしておけばdll同様呼べるで
あまりお行儀の良い方法じゃないが、そういうアプリもたまに見かける
2012/09/11(火) 20:37:56.20ID:4nOYAXXy
Thanks!やってみるは。
344名前は開発中のものです。
垢版 |
2012/10/28(日) 23:34:00.35ID:6JqZeaGJ
VS2010でデバッグ実行時に、 ***.pdb が出てうざいんですけど
これが作成されない様にできないですか?
2012/10/29(月) 01:09:30.71ID:hOaqTjMg
それ、デバッグ時に必要だから。
2012/11/13(火) 01:50:16.89ID:SxvCXsyg
当たり判定とかマルチスレッドで2つとか4つに分けて処理させたら
マルチCPU環境だと早くなる?
スレッドは2だけど1つしかCPU使わないとかありえる話?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況