2ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

ゲ製作の観点で、データベースを利用するスレ

1 :名前は開発中のものです。:2008/09/03(水) 03:39:52 ID:wix3Ajo1
ム板などで話が進むような業務視点でのデータベース(以降・DB)の話ではなく、
「興味がある、使ってみたい。でもよくわからない」 という人まで含めた初歩的な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でも構いません。

2 :名前は開発中のものです。:2008/09/03(水) 03:40:41 ID:wix3Ajo1
さて、なんとなく立ててはみたものの・・・ 今日はもう寝る・・・・
眠い。


3 :名前は開発中のものです。:2008/09/03(水) 03:47:51 ID:wix3Ajo1
ちなみにSQLiteを利用したアプリケーションの事例で言うと、とりあえず身近な所では専ブラの Jane とか。
他、入門系については ttp://www.google.co.jp/search?q=sqlite ← こちらをどうぞ。 ・・・・おやすみなさい・・・


4 :名前は開発中のものです。:2008/09/03(水) 05:30:48 ID:K5sUxGx8
専スレの意義あんのかなあ

ゲ製の観点つってもな
毎フレーム叩けるストレージでもないし
MMO向けな視点で語るくらい?
オフゲのデータリスト管理にDB使う利点ってピンと来ないしな
ゲーム用データなんぞエクセルやCSVあたりのデータ読んで
必要なインデックス張る程度で済むと思うのだけども。

よほど柔軟な設計が要るか、オンゲでトランザクションややこしくなりそうなとき?

5 :名前は開発中のものです。:2008/09/03(水) 05:48:18 ID:wix3Ajo1
例えばMMOでも、そのサーバ側を作ってみたい人とかでもいいし。むしろ実地的な部分で。
例えばレン鯖でもMySQLが使える所もあるし、あと趣味や同人以外で、例えば学生ならスキルの範疇として
ついでに覚えたいって人もいるだろうし。

で、そういった思惑含めてのDB関係、特にSQLやその周辺となると、
それ自体がまた別の考え方なり、言語そのものも別になったりする訳だから、
普通のコーディング主体の製作スレだと、脱線気味になる可能性もあると思うんだよな。ありがちな展開として。

そう言う意味で、だからむしろ専スレ。 興味無ければスルーでも良い訳だし。
意義はあると踏んだ。

>よほど柔軟な設計が要るか、オンゲでトランザクションややこしくなりそうなとき?

うん、それでも。 あるいは単に使ってみたいだけでもおkかなと。 好きなジャンルを入り口とした、スキルアップ的な意味で。
あるいはもっとライトな視点でもいいかなと。

・・・・つうかまだ起きてる俺ヤバい。今日はもうこのまま行くわww

6 :名前は開発中のものです。:2008/09/03(水) 08:56:54 ID:AP8mwzk7
ローカルルールに違反してない?

7 :名前は開発中のものです。:2008/09/03(水) 09:09:36 ID:7NpUxjry
>>6
どの項目?

8 :名前は開発中のものです。:2008/09/03(水) 14:44:10 ID:bxbvneh7
SQLiteでローカルにファイルを置く、という点では
設定ファイルに使うのが考えられる。
WindowsだとWritePrivateProfileStringとか使ったり
レジストリ使ったりするし、オレも今まで両方(+独自フォーマット)使ってきたが、
SQL使い慣れてるとこっちのが楽だったりするんだわ。

9 :名前は開発中のものです。:2008/09/03(水) 18:34:50 ID:xEJ7j59t
今一どういうスレかわかんないんだけど

言語関係なくゲームで使うデータを外部に置く手法について話し合うスレか?

それともSQL以外はダメか?

10 :名前は開発中のものです。:2008/09/03(水) 19:05:52 ID:hXrSQ/XT
帰って来ました。レスありがとうです。

>>9 そういう意味だと、開発言語は関係無いとして DBは広い意味ではなく、SQLを使うDBの話です。
広い意味の「データベース的にファイルを扱う手法」みたいな外部にデータを置く手法、とかではなく。 分かり難くてスイマセン。

ちょうど >>8 さんが実体験的な部分を書いてくれたんですけど、要するに製作する上での選択肢の一つとして、
DBを使ってみるって話です。

で、実際にそれを選択肢として考えた時に、初心者の人とかだと 「具体的にどうすればいいの?」 って部分で
ハードルがあると思うので、それをサポートする的なスレのつもりです。 そういう意味で、視点の広がりにもつながるし、
興味がある事が大前提ですが、ゲーム製作の、製作する段階そのものも面白くなるかなぁと。 新しいチャレンジをしたい人にとっては。

なので、すでに仕事などで使っててわかってる人(例えば俺や他の方)も、「ググレ」ではなくて
色々話せたらなぁと思ったわけです。

11 :名前は開発中のものです。:2008/09/03(水) 19:15:21 ID:hXrSQ/XT
具体的には、例えばサンプルとして RPGのシナリオデータを考えた場合に、
 「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で取得して・・・ みたいな構成で作れるよね。 みたいな発想。
複雑なデータを一元的に集約して管理出来るから楽になるな、って言う発想。

・・・もちろん、製作する内容によっては必須じゃないし、そもそも他の手段で実現出来るからやらない(不要、ないし興味が無い)なら、
このスレに参加する必要は無いですが、 興味があって、また(おまけとして)将来仕事にしたい人がついでに覚えられたら
一石二鳥かもしれないな、と思った訳です。


12 :名前は開発中のものです。:2008/09/03(水) 19:18:29 ID:hXrSQ/XT
今日じゃないけど、なんかサンプル書きますね。・・・・こういうまったりスレでどこにうpしたらいいかアレなんですが。
C# + SQLite で、簡易RPG的なヤツ。

アプローチの視点を広げる。 で、「このスレではその手段として」 DBを使う、って所です。 ゲーム製作に限定して。


13 :名前は開発中のものです。:2008/09/03(水) 19:49:39 ID:SwuTrgXR
おお、いいスレができたもんだな
DBは仮想ファイルシステムとしてOSの制限を受けにくいってのがある

例えば、ファイルが同じフォルダに1万あるゲームだとする
そうなると読み書きが著しく遅くなる
独自の圧縮ファイルを使って1ファイルにする方法もあるけど、これはバグの温床になりそう
この場合は速度低下が少なく、多くの人に使われてるSQLiteのようなDBのほうがいい

で、俺もゲームに使ってみたい1生徒だ
サンプルに期待

14 :名前は開発中のものです。:2008/09/03(水) 20:15:48 ID:hXrSQ/XT
>独自の圧縮ファイルを使って1ファイルにする方法もあるけど、これはバグの温床になりそう

それ!そういう視点もあります。
・・・頑張って書きますwwww 軽いヤツですけどね。のんびり行きます
とりあえず今日から2週間程度を目安として、一回たたき台、ネタとしてうpしますね。


15 :名前は開発中のものです。:2008/09/04(木) 13:31:37 ID:13gY5jkE
DBとか興味もなかって、いまいち把握できない俺がいる。。
しかし>>11で目覚めて、初めて興味もった。
サンプル読んだら、話の筋は分かると思うので期待しています。

16 :名前は開発中のものです。:2008/09/04(木) 16:02:49 ID:1h5sfgmQ
C#でSQLiteって事は、System.Data.SQLite使うのかな。
LINQ to SQLite使って.NET3.5向けでやるの?それとも使わず.NET2.0向け?

似たような事をやろうと考えてた者として、たたき台のサンプルが気になるw

17 :名前は開発中のものです。:2008/09/04(木) 21:57:49 ID:y06BVEoy
ああ、ちょうど今XNAでSQLite使ってるところ
SQLiteはやっぱいいね

18 :名前は開発中のものです。:2008/09/04(木) 22:04:11 ID:+yCX+fSv
こんばんは!

>>15 おお!いいですね。慣れると面白い&楽ですよ!・・・とりあえず今は先入観無しで待ってて下さい。

>>16 おお、じゃあ是非そちらもサンプルを何かww てか、本当に簡素な内容にしますよ?
   多少実地的にはするけど、余計な事やりすぎて、要点がぼやけたりしないようにしますね。  あと、
   対象はとりあえず 2.0でいきます。 System.Data.SQLite で。 その方がノウハウの分岐が一段階少ない=シンプルなハズなので。

   ※コーディングの手間としてのシンプルさではなく、 手順として覚えやすいシンプルさ。 DB直球でいきますww
    その方が把握しやすいと思うので



19 :名前は開発中のものです。:2008/09/04(木) 22:08:13 ID:+yCX+fSv
あ、リロードしたらww

>>17 お、XNAですか! 俺XNAは手出そうか迷いつつ、なんか放置していつも通り手描きしてます
    SQLite って、最初にユーザ作成も無いし GrantもDB作成も無いから、導入したばっかの頃って、なんか笑えますよねww
    楽すぎて

20 :名前は開発中のものです。:2008/09/06(土) 23:56:40 ID:zPiUsQ0/
ほs

21 :名前は開発中のものです。:2008/09/08(月) 09:46:23 ID:dLS/wPVc
ハイスコアの記録なんかにも使えるかもね。
まあ点数だけならいらんけど、プレイ時間とか取得アイテム数とか
いろんな記録を保存するのに、そのまま入れていって取り出すときに加工できる。

22 :名前は開発中のものです。:2008/09/11(木) 01:14:12 ID:0s39J10I
ほs

23 :名前は開発中のものです。:2008/10/13(月) 17:40:56 ID:xR7aPqOS
シミュレーションのような膨大なデータを管理する必要のあるゲームには
DBは有用かもしれないね

24 :名前は開発中のものです。:2008/10/25(土) 21:25:52 ID:gEYuHHY2
サンプル制作は進んでるのかな……?

25 :名前は開発中のものです。:2008/10/25(土) 22:44:07 ID:BpP5MoN4
ゲ製では脈絡なく十日以上放置されてたら見限った方がいいよ

26 :名前は開発中のものです。:2008/10/25(土) 23:39:43 ID:D0VGcJWz
10日以上放置されてるスレなんて沢山あるだろw

27 :名前は開発中のものです。:2010/01/06(水) 15:27:56 ID:ZZLCJ+W2
SqliteいいよSqlite
めっちゃ使いやすい

28 :名前は開発中のものです。:2010/01/06(水) 20:52:48 ID:vQ5+qNON
SQLiteが便利なのは同意だが
そもそもSQLが使いにくい

29 :名前は開発中のものです。:2011/01/07(金) 04:14:25 ID:aU6CfoLd
データ検索と同時にソート処理ができて楽だよな

RPGで「HP1以上で行動不可でない敵味方を素早い順にリストアップ」とか
これが一発で終わるのはホント楽

30 :名前は開発中のものです。:2011/01/10(月) 16:35:36 ID:kcT+hn5M
「メモリ上で処理ゴリ押し」と「DB側に任せる」で、どの程度で
後者が優位に立てるかってのが問題だな。

そもそもゲームは複雑な構造がいらないので、DBの出番は
あまりない。というか有効活用できない。

31 :名前は開発中のものです。:2011/06/26(日) 16:55:04.73 ID:amHxKTjq
そんなのゲームによるだろ
最近多いブラウザゲームはDBが大部分を占めてる

11 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.02.02 2014/06/23 Mango Mangüé ★
FOX ★ DSO(Dynamic Shared Object)