ゲ製作の観点で、データベースを利用するスレ
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2008/09/03(水) 03:39:52ID:wix3Ajo1「興味がある、使ってみたい。でもよくわからない」 という人まで含めた初歩的なDBスレです。
一応、ゲ製作板と言う事で、ゲームに組み込むケースで、まったり考えたいと思います。
またそんな訳なので、初心者の人でも軽く質問できるような流れで、
概念やイメージ的な話よりも、具体的な利用方法に重きを置いて進められたらと思います。
(ぶっちゃけSQLとか)
とりあえず、ゲームなどアプリケーションに組み込みやすいDBMSと言う事で、ここでは
SQLite: ttp://ja.wikipedia.org/wiki/SQLite
ttp://www.sqlite.org/download.html
の利用を一つのデフォルトにしておきますが、別に MSDE: ttp://www.microsoft.com/japan/SQL/msde/default.mspx
等、他のDBMSでも構いません。
0002名前は開発中のものです。
2008/09/03(水) 03:40:41ID:wix3Ajo1眠い。
0003名前は開発中のものです。
2008/09/03(水) 03:47:51ID:wix3Ajo1他、入門系については ttp://www.google.co.jp/search?q=sqlite ← こちらをどうぞ。 ・・・・おやすみなさい・・・
0004名前は開発中のものです。
2008/09/03(水) 05:30:48ID:K5sUxGx8ゲ製の観点つってもな
毎フレーム叩けるストレージでもないし
MMO向けな視点で語るくらい?
オフゲのデータリスト管理にDB使う利点ってピンと来ないしな
ゲーム用データなんぞエクセルやCSVあたりのデータ読んで
必要なインデックス張る程度で済むと思うのだけども。
よほど柔軟な設計が要るか、オンゲでトランザクションややこしくなりそうなとき?
0005名前は開発中のものです。
2008/09/03(水) 05:48:18ID:wix3Ajo1例えばレン鯖でもMySQLが使える所もあるし、あと趣味や同人以外で、例えば学生ならスキルの範疇として
ついでに覚えたいって人もいるだろうし。
で、そういった思惑含めてのDB関係、特にSQLやその周辺となると、
それ自体がまた別の考え方なり、言語そのものも別になったりする訳だから、
普通のコーディング主体の製作スレだと、脱線気味になる可能性もあると思うんだよな。ありがちな展開として。
そう言う意味で、だからむしろ専スレ。 興味無ければスルーでも良い訳だし。
意義はあると踏んだ。
>よほど柔軟な設計が要るか、オンゲでトランザクションややこしくなりそうなとき?
うん、それでも。 あるいは単に使ってみたいだけでもおkかなと。 好きなジャンルを入り口とした、スキルアップ的な意味で。
あるいはもっとライトな視点でもいいかなと。
・・・・つうかまだ起きてる俺ヤバい。今日はもうこのまま行くわww
0006名前は開発中のものです。
2008/09/03(水) 08:56:54ID:AP8mwzk70007名前は開発中のものです。
2008/09/03(水) 09:09:36ID:7NpUxjryどの項目?
0008名前は開発中のものです。
2008/09/03(水) 14:44:10ID:bxbvneh7設定ファイルに使うのが考えられる。
WindowsだとWritePrivateProfileStringとか使ったり
レジストリ使ったりするし、オレも今まで両方(+独自フォーマット)使ってきたが、
SQL使い慣れてるとこっちのが楽だったりするんだわ。
0009名前は開発中のものです。
2008/09/03(水) 18:34:50ID:xEJ7j59t言語関係なくゲームで使うデータを外部に置く手法について話し合うスレか?
それともSQL以外はダメか?
0010名前は開発中のものです。
2008/09/03(水) 19:05:52ID:hXrSQ/XT>>9 そういう意味だと、開発言語は関係無いとして DBは広い意味ではなく、SQLを使うDBの話です。
広い意味の「データベース的にファイルを扱う手法」みたいな外部にデータを置く手法、とかではなく。 分かり難くてスイマセン。
ちょうど >>8 さんが実体験的な部分を書いてくれたんですけど、要するに製作する上での選択肢の一つとして、
DBを使ってみるって話です。
で、実際にそれを選択肢として考えた時に、初心者の人とかだと 「具体的にどうすればいいの?」 って部分で
ハードルがあると思うので、それをサポートする的なスレのつもりです。 そういう意味で、視点の広がりにもつながるし、
興味がある事が大前提ですが、ゲーム製作の、製作する段階そのものも面白くなるかなぁと。 新しいチャレンジをしたい人にとっては。
なので、すでに仕事などで使っててわかってる人(例えば俺や他の方)も、「ググレ」ではなくて
色々話せたらなぁと思ったわけです。
0011名前は開発中のものです。
2008/09/03(水) 19:15:21ID:hXrSQ/XT「20個の町、各町に5〜20人のNPC、一人あたりフラグ分岐で3つの台詞とそれに伴うアクション(フラグ変更など)」 があった時、
・[町テーブル] town_id、town_name、他
・[NPCテーブル] npc_id、npc_name、town_id
・[NPC属性テーブル] npc_id、player_flag、message、action_code
みたいにテーブルを構成して、そのデータ(DBではレコードと言う)をSQLで取得して・・・ みたいな構成で作れるよね。 みたいな発想。
複雑なデータを一元的に集約して管理出来るから楽になるな、って言う発想。
・・・もちろん、製作する内容によっては必須じゃないし、そもそも他の手段で実現出来るからやらない(不要、ないし興味が無い)なら、
このスレに参加する必要は無いですが、 興味があって、また(おまけとして)将来仕事にしたい人がついでに覚えられたら
一石二鳥かもしれないな、と思った訳です。
0012名前は開発中のものです。
2008/09/03(水) 19:18:29ID:hXrSQ/XTC# + SQLite で、簡易RPG的なヤツ。
アプローチの視点を広げる。 で、「このスレではその手段として」 DBを使う、って所です。 ゲーム製作に限定して。
0013名前は開発中のものです。
2008/09/03(水) 19:49:39ID:SwuTrgXRDBは仮想ファイルシステムとしてOSの制限を受けにくいってのがある
例えば、ファイルが同じフォルダに1万あるゲームだとする
そうなると読み書きが著しく遅くなる
独自の圧縮ファイルを使って1ファイルにする方法もあるけど、これはバグの温床になりそう
この場合は速度低下が少なく、多くの人に使われてるSQLiteのようなDBのほうがいい
で、俺もゲームに使ってみたい1生徒だ
サンプルに期待
0014名前は開発中のものです。
2008/09/03(水) 20:15:48ID:hXrSQ/XTそれ!そういう視点もあります。
・・・頑張って書きますwwww 軽いヤツですけどね。のんびり行きます
とりあえず今日から2週間程度を目安として、一回たたき台、ネタとしてうpしますね。
0015名前は開発中のものです。
2008/09/04(木) 13:31:37ID:13gY5jkEしかし>>11で目覚めて、初めて興味もった。
サンプル読んだら、話の筋は分かると思うので期待しています。
0016名前は開発中のものです。
2008/09/04(木) 16:02:49ID:1h5sfgmQLINQ to SQLite使って.NET3.5向けでやるの?それとも使わず.NET2.0向け?
似たような事をやろうと考えてた者として、たたき台のサンプルが気になるw
0017名前は開発中のものです。
2008/09/04(木) 21:57:49ID:y06BVEoySQLiteはやっぱいいね
0018名前は開発中のものです。
2008/09/04(木) 22:04:11ID:+yCX+fSv>>15 おお!いいですね。慣れると面白い&楽ですよ!・・・とりあえず今は先入観無しで待ってて下さい。
>>16 おお、じゃあ是非そちらもサンプルを何かww てか、本当に簡素な内容にしますよ?
多少実地的にはするけど、余計な事やりすぎて、要点がぼやけたりしないようにしますね。 あと、
対象はとりあえず 2.0でいきます。 System.Data.SQLite で。 その方がノウハウの分岐が一段階少ない=シンプルなハズなので。
※コーディングの手間としてのシンプルさではなく、 手順として覚えやすいシンプルさ。 DB直球でいきますww
その方が把握しやすいと思うので
0019名前は開発中のものです。
2008/09/04(木) 22:08:13ID:+yCX+fSv>>17 お、XNAですか! 俺XNAは手出そうか迷いつつ、なんか放置していつも通り手描きしてます
SQLite って、最初にユーザ作成も無いし GrantもDB作成も無いから、導入したばっかの頃って、なんか笑えますよねww
楽すぎて
0020名前は開発中のものです。
2008/09/06(土) 23:56:40ID:zPiUsQ0/0021名前は開発中のものです。
2008/09/08(月) 09:46:23ID:dLS/wPVcまあ点数だけならいらんけど、プレイ時間とか取得アイテム数とか
いろんな記録を保存するのに、そのまま入れていって取り出すときに加工できる。
0022名前は開発中のものです。
2008/09/11(木) 01:14:12ID:0s39J10I0023名前は開発中のものです。
2008/10/13(月) 17:40:56ID:xR7aPqOSDBは有用かもしれないね
0024名前は開発中のものです。
2008/10/25(土) 21:25:52ID:gEYuHHY20025名前は開発中のものです。
2008/10/25(土) 22:44:07ID:BpP5MoN40026名前は開発中のものです。
2008/10/25(土) 23:39:43ID:D0VGcJWz0027名前は開発中のものです。
2010/01/06(水) 15:27:56ID:ZZLCJ+W2めっちゃ使いやすい
0028名前は開発中のものです。
2010/01/06(水) 20:52:48ID:vQ5+qNONそもそもSQLが使いにくい
0029名前は開発中のものです。
2011/01/07(金) 04:14:25ID:aU6CfoLdRPGで「HP1以上で行動不可でない敵味方を素早い順にリストアップ」とか
これが一発で終わるのはホント楽
0030名前は開発中のものです。
2011/01/10(月) 16:35:36ID:kcT+hn5M後者が優位に立てるかってのが問題だな。
そもそもゲームは複雑な構造がいらないので、DBの出番は
あまりない。というか有効活用できない。
0031名前は開発中のものです。
2011/06/26(日) 16:55:04.73ID:amHxKTjq最近多いブラウザゲームはDBが大部分を占めてる
■ このスレッドは過去ログ倉庫に格納されています