- 1 名前:名前は開発中のものです。 mailto:sage [2008/10/09(木) 20:13:28 ID:0XIZWRlM]
- 疑問に思うことがあれば、スレを立てずに、まずはココで質問。
スレッドを立てる前にはローカルルールを読みましょう。 pc11.2ch.net/gamedev/ ※ >>980 を踏んだ人は次スレ立てをお願いします。 【アップローダ・避難所・Wiki】 ゲーム製作技術板公式Wiki gamdev.org/w/ ゲーム製作技術板公式アップローダ gamdev.org/up/ ゲーム製作技術板公式掲示板避難所 bbs.gamdev.org/gamedev/ ゲーム製作技術板予備 yy13.kakiko.com/gamdev/ アップローダー予備 gamdev.hp.infoseek.co.jp/ gamdev.orgが落ちるたびにあげてみるスレ pc11.2ch.net/test/read.cgi/gamedev/1107022166/
- 616 名前:614 mailto:sage [2009/01/22(木) 08:31:57 ID:LSrgduCg]
- >>615
C++と書き忘れていました。そして助言ありがとうございます。 早速お勧め頂いたサイトを見させて頂いています。 しかし2つ疑問が。コンストラクタ内の関数(処理)なのですが、 1.参考資料ではfor文中で、newで何度も何度も呼び出されていたのですが、これは問題無いのでしょうか? 2.メンバ関数ではなくわざわざコンストラクタで行う意味が何か有るのでしょうか? 追加質問で申し訳ありません。ご助言頂けると幸いです。
- 617 名前:名前は開発中のものです。 mailto:sage [2009/01/22(木) 09:34:41 ID:NpXbtZQJ]
- >>616
1. ちゃんとnewに対応した数だけdeleteしてるなら何にも問題ない。 その数だけインスタンスが作られるだけだ。 2. 仮にとあるユーティリティクラスCUtilがあるとしようか。 そのクラスを使うために必ず必要な初期化処理があったとして、 それをコンストラクタで行ったCUtilAと、 init()というメンバ関数で行ったCUtilBがあるとしようか。 そのクラスを使うときに、 CUtilA myUtilA; //←これだけで済むのと、 CUtilB myUtibB; myUtilB.init(); //←毎回これを記述せにゃいかんのと // どっちが楽だえ? // ましてやおまいさんは毎回記述忘れしない // 自信があるかえ?
- 618 名前:名前は開発中のものです。 mailto:sage [2009/01/22(木) 14:55:11 ID:P249I5A7]
- >>614
なんだろ。アクセス修飾子(privateとかpublic)を書いてないとか? C++のクラスは自由性が高すぎたり文法が冗長だったり逆に省略できる所が辺にあるからわかりにくいんだと思う。 …そういやC++のクラス一度も使ったことないな。
- 619 名前:616 mailto:sage [2009/01/22(木) 20:36:57 ID:ngykBX6I]
- >>617
わかり易い説明ありがとうございます。しかし少し疑問が。 1.new毎にインスタンスが作られると、メンバ関数よりも負担にならないでしょうか? 2.そして例を見てふと思ったのですが、 myUtibB(); 等と関数的な表記をしなくても、 CUtilB myUtibB; //←ここでコンストラクタの関数が一度処理される? myUtilB.init(); という事なのでしょうか? それとも処理の無いコンストラクタだけでしょうか。 3.そもそもこの呼び出し方の myUtilB はどういう存在なのでしょうか? 一度呼び出せばその関数内では使えるみたいですが、別の関数に飛ぶと再度 CUtilB myUtibB; しないと myUtilB.init(); は使えないみたいですし。 (これを2度するとエラーが出るのは、2重にnewした意味になってしまっているのでしょうか?) 変数のように送るなり、どこでも使えるように宣言できれば・・と思うのですが、 これが何者なのかわからず、その手段が解りません。 連続で質問ばかりしてすみません、 お勧めした頂いたサイトを読み進めてもっと正しくC++を理解して行きたいと思います。 >>618 さんもありがとうございました。
- 620 名前:名前は開発中のものです。 mailto:sage [2009/01/22(木) 20:53:17 ID:G+zC51lf]
- C++以前に変数のスコープが分かってないじゃん
ある関数内で宣言した int x ; のxが他の関数で使えませんって言ってるようなものだぞ 2度するとエラーがでるってのは一つの関数内で int x ; int x ; って書いたらエラーが出るのは当たり前だよね?
- 621 名前:名前は開発中のものです。 mailto:sage [2009/01/22(木) 21:07:36 ID:IhANlxha]
- 現在ノベルツールを作ろうとしており、禁則処理に悩んでいます。
色々と検索して禁則処理を調べて、以下のようになると考えました。 これは正しいのでしょうか? 禁則処理の知識をお持ちの方、アドバイスをお願いします。 行頭禁則文字 "%),:;]}。」゙゚。,、.:;゛゜ヽヾゝ" "ゞ々’”)〕]}〉》」』】°′″℃¢%‰" 行頭禁則文字(弱) "!.?、・ァィゥェォャュョッー・?!ーぁぃぅぇぉっゃゅょゎァィ" "ゥェォッャュョヮヵヶ" 行末禁則文字 "\\$([{「‘“(〔[{〈《「『【¥$£" 一文字加えると右端を越えると確定した時に… ・最後に描画したのが行末禁則文字ではない and これから描画するのが行頭禁則文字でない ・行頭禁則文字(弱)が連続していない ・これから描画するのが禁則文字ではない and 確実に右端を越える ↓ 普通に改行 ・最後に描画したのが行末禁則文字である or これから描画するのが行頭禁則文字である ・行頭禁則(弱)が連続している場合 ↓ 禁則処理
- 622 名前:名前は開発中のものです。 mailto:sage [2009/01/22(木) 21:36:22 ID:bwn6GYvR]
- >>619
あせらないで、じっくり理解してください。 1. インスタンスは一つだけではなく、メモリが許すかぎり何個でも作れます。 CutilBのインスタンスにしろ、たくさん作れます。 そして、それぞれのインスタンスが独自のパラメータを持てるので、 インスタンスごとに初期化が必要になります。 newでやろうとinit()みたいなメンバを自分で用意しようと構いませんが、負担(?)は変わりません。 2. コンストラクタはインスタンス生成時に自動的に呼び出されます。 CUtilB myUTilbB; // この時点で CUtilB()で初期化されたインスタンスが作られている。 3. >>620 の言うように、「スコープ」というものが関わってきます。 C++では関数内で宣言した変数はスタックフレームに、 グローバル領域で宣言した変数は???(シラネ)に、 newやmallocで宣言した変数はヒープに作られます。 関数内で宣言した変数は、(通常は)関数に入ったときに作られ、処理が関数を抜けた時点で消失します。 だから、いつでも存在しているというわけでは無いのです。 どこでも使えるようにするにはグローバル変数を宣言する必要がありますが、 名前領域が混乱したり、いつどこが書き換えたかわからなくなるなど、不評が結構あります。 >>621 某オフィスソフトでさえ禁則処理をカスタマイズできるところを見ると、 禁則処理に「これが正しい」なんてのは無いと思う。 例えば、 「俺ってすげーーーーーーーーーーー ーーーーーーーーーー ーーーーやつなんだぜっっっっ っっっっっっっっっっっっっっっっっっわーおッ!!」 って書こうとしても、>>621 の規則だとうまく書けない気がする。
- 623 名前:616 mailto:sage [2009/01/22(木) 21:44:33 ID:z1jEpoVh]
- >>620
何か思い切り勘違いをしていた様で・・。 構造体の時は同じ呼び方でも、それぞれの名前でそれぞれ別物とわかっていたのですが クラスのメンバ、メンバ関数は只1つの存在だという思い込みから、 根本的な勘違いをしていた様で、お恥ずかしい限りです・・。 クラスも別名は別のインスタンスという事なのですね。 本当にすいませんでした。 orz
- 624 名前:名前は開発中のものです。 mailto:sage [2009/01/22(木) 21:51:38 ID:xj+gOJtF]
- とりあえず、デバッグバージョンで行頭行末禁則を検知したらマーク出して
手動でスクリプトを書き換えさせるのが手っ取り早いんでない。 622見たいな例とか、定式化する方が無駄な努力に思える。
- 625 名前:616 mailto:sage [2009/01/22(木) 22:44:39 ID:z1jEpoVh]
- >>622
気付くのが遅れてすいません。 丁寧な説明、本当にありがとうございます。 思い込みから「特別な文法なのだろう」と盛大な勘違いをしていましたが 正しく理解しなおせたと思います。 しかしこれをグローバルで宣言すると色々危険が伴うのですね。 今後は変な勘違いを起こさない様に注意します。 ありがとうございました。
- 626 名前:621 mailto:sage [2009/01/22(木) 23:53:27 ID:IhANlxha]
- >622
レスありがとうございます、「正しい」ものがないのは知っているのですが 「大勢が正しいと認めてくれる」ものがないかなと(いわゆるデファクトスタンダード) ちなみに上に挙げた禁則処理は、吉里吉里から抜粋したものです。 「俺ってすげーーーーーーーーーーー ーーーーーーーーーー ーーーーやつなんだぜっっっっ っっっっっっっっっっっっっっっっっっわーおッ!!」 なら、 「俺ってすげーーーーーーーーーー(改行)ー ーーーーーーーーー(改行)ー ーーーーやつなんだぜっっっ(改行)っ っっっっっっっっっっっっっっっっっっわーおッ!!」 みたいな感じになるんじゃないかなと。 ただ、この処理だと「禁則処理を行うと前後に関係なく必ず一文字(余裕があっても)次行にずれこむ」 という現象が起こるわけで………。それを綺麗だとか正しいだとか言えるのかな、と悩んでおります。 >624 レスありがとうございます、確かに無茶苦茶な例まで想定すると定式化は不可能ですね。 手動で改行を入れるのや禁則文字を設定する命令なども準備した方が良さ気ですね。 デバッグで検知は思いつきませんでした、アイデア提供ありがとうございます。
- 627 名前:名前は開発中のものです。 mailto:sage [2009/01/23(金) 21:04:00 ID:jZfkhvtW]
- fps(Frame Per Secondの方)について質問なんですが、
例えばあるゲーム内においてfpsを表示するとして、 Aの環境では60fps、Bの環境では20fpsと表示された場合の意味するところは、 ・BのゲームスピードはAの3倍遅い、ということでしょうか、それとも、 ・Bの画像はAの3倍ぶつ切りに見える、ということでしょうか。
- 628 名前:名前は開発中のものです。 mailto:sage [2009/01/23(金) 21:06:21 ID:ZTkLrTiP]
- FPSは一秒に何回画面が更新されたか、だからAでもBでもゲームスピードは変わらない。
だから後者かな、BはAの(体感的なことだから適当ではないが)三倍がくがくであるということ。
- 629 名前:627 mailto:sage [2009/01/23(金) 21:11:45 ID:jZfkhvtW]
- 素早い回答ありがとうございます。
スピードとは関係なかったのですね。fpsが低いとどうも動作が遅い気がするという 思い込みがあって、今まで勘違いしていました。 レスありがとうございました。
- 630 名前:名前は開発中のものです。 mailto:sage [2009/01/23(金) 21:12:52 ID:x47URXne]
- 作り方によりけり。
物によって違うんだから断定出来ない。
- 631 名前:名前は開発中のものです。 mailto:sage [2009/01/23(金) 21:22:34 ID:jVMRAIJo]
- 60fpsと20fpsだと、60fpsのPCが3倍処理速度が速い。
そこで、その結果がどうなるかは、コードの書き方によって異なる。 通常は60fpsなので基準とすると、20fpsが能力が不足しているとする。 60fpsが出るのが当たり前と考えて設計されたコードは 60fpsを超えても同じ処理を行う、60fps未満は処理落ちとして表れる。 アニメだとすると、フレームの後半が途切れる フレームレートの変動を考慮して設計されたコードの場合は フレームレートに従い処理内容を増減させる、未満は劣化として表れる。 アニメだとすると、間引きで表示され最後まで表示される。 コードの複雑さと小さいならがCPU負荷がかかる。
- 632 名前:627 mailto:sage [2009/01/23(金) 21:46:32 ID:jZfkhvtW]
- >630 >631
レスありがとうございます。 そうです、60fpsが基準で20fpsが性能不足のことでした。 なるほど、fpsが低い場合は内容を間引くことで帳尻を合わせる手法があったのですね。 そして間引かない場合の不足分を処理落ちというのですか。目から鱗でした。 精進します。ありがとうございました。
- 633 名前:名前は開発中のものです。 mailto:sage [2009/01/23(金) 22:42:59 ID:n3RDpWj+]
- ソースコードを良い感じに印刷するにはどうしたらいいですか。最低限行番号の挿入と色付けの機能が欲しいと思っています。
- 634 名前:名前は開発中のものです。 mailto:sage [2009/01/24(土) 00:05:42 ID:tUPUGwAk]
- >>633
用途に拠る所が・・
- 635 名前:名前は開発中のものです。 mailto:sage [2009/01/24(土) 08:18:32 ID:D/BSdHrU]
- テキストに対してそういう操作を行うプログラムでも作ってみるとかw
- 636 名前:名前は開発中のものです。 mailto:sage [2009/01/24(土) 21:33:53 ID:z8WswGtF]
- そういえばソースコードをWeb用にHTML変換するフリーソフトとか見かけたことあるな
使ったこと無いから具体的な提案はできんけど
- 637 名前:名前は開発中のものです。 mailto:sage [2009/01/25(日) 01:57:15 ID:QRbZQ3CH]
- その手の事が出来るテキストエディタならぽろぽろ見つかるが…
- 638 名前:名前は開発中のものです。 mailto:sage [2009/01/25(日) 02:30:33 ID:U9yhjxE1]
- 頑張っている人を教えて下さい。
職種というか、何の担当をしているかは関係なしで。 とにかく暇さえあれば努力してるような、そういう人のお話は無いでしょうか。
- 639 名前:名前は開発中のものです。 mailto:sage [2009/01/25(日) 02:35:49 ID:HfneyXPQ]
- イチローとか
- 640 名前:名前は開発中のものです。 mailto:sage [2009/01/25(日) 02:52:38 ID:U9yhjxE1]
- 彼がどのような努力をしたのかが分かりません。
表に出ているものも、信憑性がありません。と思います(実際に本を読んだりはしてないですが)。 よって、話がないです・・・
- 641 名前:名前は開発中のものです。 mailto:sage [2009/01/25(日) 11:52:02 ID:5Jat8uVP]
- ここはゲ作だが?
- 642 名前:名前は開発中のものです。 mailto:sage [2009/01/25(日) 14:38:08 ID:Lu1EDWN5]
- すごい釣り針だな。
釣れるのか?
- 643 名前:名前は開発中のものです。 mailto:sage [2009/01/25(日) 15:04:37 ID:QRbZQ3CH]
- 釣られたら負けだろ
- 644 名前:633 mailto:sage [2009/01/25(日) 22:29:08 ID:CRFwFGnY]
- enscriptで完璧に印刷できたぜこの無能どもが
- 645 名前:名前は開発中のものです。 mailto:sage [2009/01/25(日) 22:49:49 ID:QRbZQ3CH]
- これもまたでっかい釣り針だな
- 646 名前:名前は開発中のものです。 mailto:sage [2009/01/29(木) 03:30:52 ID:cgflAQ/9]
- aaa
- 647 名前:名前は開発中のものです。 mailto:sage [2009/01/29(木) 14:08:33 ID:JWp0UiOu]
- 私は実数を扱うときはdouble型ではなくfloat型を使うのですが(floatの扱える桁数で問題ないと思っているし、サイズが小さいため)
math.hなどで使えるsinやcosなど引数がdouble型ものに float型やint型を入れるのや、 float型の変数にint型を入れたり、int型の変数にfloat型をいれるのはは止めたほうがいいのでしょうか? もちろんint型にfloat型を入れるときは小数点以下を切り捨ててもいいと思っているときのみです。 コンパイル時に doubleからfloatに切り詰めます。 floatからintへの変換ですデータが失われる可能性があります。 などと大量に出てくるので心配です…
- 648 名前:名前は開発中のものです。 mailto:sage [2009/01/29(木) 14:11:11 ID:fhG6PhzU]
- 問題ないと判断して渡してるんなら、明示的にキャストすれば?
- 649 名前:名前は開発中のものです。 mailto:sage [2009/01/29(木) 15:24:34 ID:JWp0UiOu]
- >>648
ありがとうございます。 やはりキャストを行わないと、なんらかのマイナス要素が発生すると言うことでしょうか?
- 650 名前:名前は開発中のものです。 mailto:sage [2009/01/29(木) 16:02:35 ID:fhG6PhzU]
- 単にコンパイラが親切心で、本当にこの型でいいのか教えてくれるだけ。
明示的にキャストしなくても、結局キャストが挿入されるから差異はない。
- 651 名前:名前は開発中のものです。 mailto:sage [2009/01/29(木) 16:03:49 ID:fhG6PhzU]
- 警告を出さないために、ってことで648
- 652 名前:名前は開発中のものです。 mailto:sage [2009/01/29(木) 19:35:59 ID:CuQqSvM/]
- 俺の環境ではintもfloatも4バイトだから、floatをintにキャストするときは小数点以下を捨てるときだけだなぁ。
ちなみにdoubleは一切使ってないw
- 653 名前:名前は開発中のものです。 mailto:sage [2009/01/29(木) 19:42:00 ID:Lzu7Dsvi]
- 昔はfloat指定しても内部で全部doubleにされて
変換する手間の分だけfloatのが無駄だったが 最近はGPUとかもあるしなあ
- 654 名前:名前は開発中のものです。 mailto:sage [2009/01/29(木) 21:15:48 ID:JWp0UiOu]
- >>650-653
ありがとうございます。理解できました。 >>653の書き込みは気になります。 私がdoubleではなくfloatを使っている理由は容量が少なく済むし、floatでも十分正確な計算が出来るからと思っているのですが、 doubleの方が内部の手間がなく良いというのなら書き換えようかなと… どうなんでしょうか?
- 655 名前:名前は開発中のものです。 mailto:sage [2009/01/29(木) 21:41:40 ID:MylekVJD]
- まったく知識ないんだが、作りたいゲームの構想だけある
最終的には3Dで作りたいんだがどうやったらゲーム作れるようになるの? プログラミングとか必要なものとかマジで何もわからないんです
- 656 名前:名前は開発中のものです。 mailto:sage [2009/01/29(木) 21:52:29 ID:TuUYMBb3]
- とりあえず画面にウィンドウを表示することからはじめたら
- 657 名前:名前は開発中のものです。 mailto:sage [2009/01/29(木) 21:58:08 ID:MylekVJD]
- >>656
それはプログラミングからやれってことですか? どの言語がいいですか?
- 658 名前:名前は開発中のものです。 mailto:sage [2009/01/29(木) 22:07:27 ID:hTXtAxgP]
- 一番難易度が高く、しかし一番多くをできるのが
C言語→C++→Win32+DirectX それなりのものをそれなりに作りたいなら C#→XNA まぁ、とりあえずなにか動いてるものを作る JAVA
- 659 名前:名前は開発中のものです。 mailto:sage [2009/01/29(木) 22:10:50 ID:xirprjZ5]
- 3Dのゲームは作ったことないけど、
もしやる機会があるなら言語はC++, 3DライブラリにIrrlichtとかOGREとか。 補助ライブラリとしてboostとか入れるかもしんない。 3Dモデルの作成にはBlender、2Dの画像にはGIMP を使うかな。 絵師と呼ばれる人達はphotshopとかsaiを使うのかな。 爆発画像は発色弾で自動生成したものとかを使おーっと(2Dだけど(笑)) 効果音はマッチメイカァズでいいか。 とか思ったけどめんどい
- 660 名前:名前は開発中のものです。 mailto:sage [2009/01/29(木) 22:35:27 ID:Umf7MVrF]
- このレベルの質問にそれは高度すぎる
「構想だけ」とかふざけたこと抜かして調べもしない中高生は ツクール買ってとりあえずなんか作るところから始めろ 煽りだけど本気な
- 661 名前:名前は開発中のものです。 mailto:sage [2009/01/29(木) 22:50:17 ID:MylekVJD]
- >>658
ありがとうございます 調べたら良さ気な本見つかりました >>659 3Dライブラリ…3Dモデル…なんとなくわかりました >>660 分かります それも考えたんですけどゲームのオリジナリティってシステムだと思うので(キリッ 自分のアイディアを試すにはいいかもしれませんね 色々ググッたんですがなんとなくしか分からないんで本買って読んでみます 具体的なこと機器に来るかもしれないのでそのときはよろしくお願いします ありがとうございました
- 662 名前:名前は開発中のものです。 mailto:sage [2009/01/29(木) 23:32:15 ID:GDwRlD2Z]
- >>661
取りあえず、そのレベルだと○○○でゲームを作る〜みたいな本は意味無いからな そもそもが言語を知ってる前提なので、「わからないです><」なんて言わないように その前にまず、ゲームに全然関係ない言語だけの本(入門書+ちょっと応用本+リファンレス用があるといい)で勉強する必要がある 他にもモデリング音楽効果その他、一人でやるなら簡単じゃないことを思い知るだろう だからって仲間集めるのも考えもんだけどね 旗振り役がプログラマじゃないと、大概空中分解か自然消滅する
- 663 名前:名前は開発中のものです。 mailto:sage [2009/01/30(金) 01:56:54 ID:A1IlBgib]
- >>655
お金を払って他人に作ってもらうって選択肢もあるぞ。 何も知らないなら時間や費用を考えると 作れるようになるまでのコスト>>>作ってもらうコスト になると思うしな。
- 664 名前:名前は開発中のものです。 mailto:sage [2009/01/30(金) 11:19:07 ID:JU7A2l7H]
- 思うに、初心者の「なんとなくわかった」は何にもわかってないんじゃないか?
それっぽいこと聞いてわかったつもりになっているだけで
- 665 名前:名前は開発中のものです。 mailto:sage [2009/01/30(金) 12:34:18 ID:LMISzlYz]
- いきなりそれを作ろうとせずに
いろいろ勉強しつつ、ちまちま細かいものを作ってったらいいよ >>664 でもそういうとこから始めるしかないわけで、それは仕方がないんじゃね?
- 666 名前:名前は開発中のものです。 mailto:sage [2009/01/30(金) 20:00:03 ID:Va8ajfmF]
- >661
PS3のリトルビッグプラネットの動画なんかを見てて思うんだけど 制約の多いツールでも、工夫次第で色んなことをやれたりするもんだぜ。 テトリスや計算機を作ってた人もいたくらいだし。 >664 相手を「何となく分かった気にさせる」って、1つのテクニックだよな。
- 667 名前:名前は開発中のものです。 mailto:sage [2009/01/30(金) 22:54:16 ID:nlwTeGQx]
- 自分で雪を降らすエフェクトを作りたいんですが
どうしてもふわふわ感が出せません。 ttp://www.nicovideo.jp/watch/sm5857175 の最初の場面ぐらいやりたいです。こういうのってどんな風に処理をして 動かしているんでしょう?
- 668 名前:名前は開発中のものです。 mailto:sage [2009/01/30(金) 23:05:33 ID:pyMeoElc]
- スノウのパーティクルにパラメータを設定するだけの簡単な作業。
- 669 名前:名前は開発中のものです。 mailto:sage [2009/01/30(金) 23:12:35 ID:L+eMQ8vf]
- 1.雪を作る
2.出現位置と移動パターン及び移動速度を設定 3.描画 基本はこれだけでしょ
- 670 名前:名前は開発中のものです。 mailto:sage [2009/01/31(土) 01:20:04 ID:vZh4GSBD]
- >>667
リバースエンジニアリングするなら雪の軌跡をデータ化して 法則を見出すしかないんじゃないか? >>663 お金を払ったからって自分が思った通りの物になるとは限らない
- 671 名前:名前は開発中のものです。 mailto:sage [2009/01/31(土) 02:00:46 ID:XuJ0eU6U]
- そしたら、もっとお金を払えばいいじゃない
- 672 名前:名前は開発中のものです。 mailto:sage [2009/01/31(土) 02:04:06 ID:vZh4GSBD]
- スポンサー:「金さえ払い続ければいつかは思い通りのゲームが作れる」
開発者:「スポンサーの思い通りのものさえ作らなければ永遠に金づる」
- 673 名前:名前は開発中のものです。 mailto:sage [2009/01/31(土) 03:54:34 ID:XuJ0eU6U]
- うわあああ
- 674 名前:名前は開発中のものです。 mailto:sage [2009/01/31(土) 06:06:34 ID:0mjGsJLC]
- 「RPGツクーラーのためのPHP講座」
ってページ作ってるんだけど、PHPに興味ある?
- 675 名前:名前は開発中のものです。 mailto:sage [2009/01/31(土) 07:37:07 ID:VFmqHc1O]
- ここで聞いても仕方ない気がする…
- 676 名前:名前は開発中のものです。 mailto:sage [2009/01/31(土) 08:42:55 ID:vZh4GSBD]
- RPGツクールとPHPってどう関係あるの?
- 677 名前:名前は開発中のものです。 mailto:sage [2009/01/31(土) 09:32:31 ID:0mjGsJLC]
- >>676
(1)みんなで集まれる場所を作れる (2)ファイルのアップロードとか、チームワーク作業とかを 支援するサイトが作れる (3)オンラインゲームっぽいのとか、CGIゲームとかを作れる
- 678 名前:名前は開発中のものです。 mailto:sage [2009/01/31(土) 10:43:31 ID:p4gnaDmU]
- >>677
(1), (2) を作るくらいなら、最初からSourceForgeでも使った方がいいんじゃね。
- 679 名前:名前は開発中のものです。 mailto:sage [2009/01/31(土) 13:49:45 ID:M3YtMvhG]
- Web系は一つくらい出来るに越したことはないけどね
そんな難しくないし
- 680 名前:名前は開発中のものです。 mailto:sage [2009/01/31(土) 15:08:00 ID:XuJ0eU6U]
- 何でツクールに限定しているんだろう
- 681 名前:名前は開発中のものです。 mailto:sage [2009/01/31(土) 19:36:58 ID:M3YtMvhG]
- ツクールで確かRubyっぽいのが使えるんじゃなかったっけ?
- 682 名前:名前は開発中のものです。 mailto:sage [2009/01/31(土) 19:40:35 ID:PkzcGBxU]
- schiphol.2ch.net/test/read.cgi/gameama/1230630063/
- 683 名前:名前は開発中のものです。 mailto:sage [2009/02/01(日) 15:35:11 ID:6Wa2YdYb]
- すみません。vectorのについてなのですが、
vector<ClassA*> classa; という風にクラスを指定した場合の配列の要素は、 そのクラスのメンバ変数が全てが入ったりするのでしょうか? それとも別のものが入るのでしょうか?
- 684 名前:名前は開発中のものです。 mailto:sage [2009/02/01(日) 15:37:13 ID:RNpTO/BH]
- <ClassA*>としているなら
それはあくまでそのクラスへのポインタなのでまだインスタンスは無い
- 685 名前:683 mailto:sage [2009/02/01(日) 18:41:46 ID:6Wa2YdYb]
- >>684
となるとこのvectorは、 何かコンストラクタ時の数値を記録するなんて話ではなくて、 クラスを参照する為のポインタをまとめる為の配列という事だったんですね。 ありがとうございました。
- 686 名前:名前は開発中のものです。 mailto:sage [2009/02/01(日) 21:22:36 ID:JoEoH7pX]
- 現在ドラクエ風の戦闘シーンを作っているのですが、
敵をランダムに出現させる方法が分かりません。 どういう方法がありますか?
- 687 名前:名前は開発中のものです。 mailto:sage [2009/02/01(日) 21:24:25 ID:YYAC/mDX]
- ゲームより先に、さいころの目を出すプログラムから始めろ
- 688 名前:名前は開発中のものです。 mailto:sage [2009/02/01(日) 21:26:11 ID:Q9avwPg/]
- 1歩進むごとに、敵が出現するかどうか確率で決める。
- 689 名前:名前は開発中のものです。 mailto:sage [2009/02/01(日) 21:33:12 ID:4GW5oqAr]
- 出現させる方法が分からないのに戦闘の部分作れるのか
一体どうなってる
- 690 名前:名前は開発中のものです。 mailto:sage [2009/02/01(日) 21:35:13 ID:aSSQCH01]
- >>688アタックサブ(いや冗談)に付け加えるなら
出現確率のマップを作成するのが普通だな。 何を出現させるかもマップによったり、その時の主人公の強さによったり それがゲームの個性ってもんだけど。
- 691 名前:名前は開発中のものです。 [2009/02/01(日) 22:06:34 ID:hFLQd1BR]
- C++とDXライブラリでRPG作ろうとしてるんですけど、
マップエディタの使い方がイマイチよくわかりません。 www.hyperdevice.net/のを使ってみましたが、どうやったら 画面に出力できるのか、が謎です。俺のVC++2008ではサンプルを読み込んでくれなかった。 今は0と1の世界でやってるんですけど限界ですた。 >>689 俺は最初スペースキー押したら戦闘開始とかやってたが。そのほうがデバッグ楽だし。 >>688がどうだかは分からないけど。
- 692 名前:691 mailto:sage [2009/02/01(日) 22:08:12 ID:hFLQd1BR]
- >>688じゃなくて>>686だった。
スマソ
- 693 名前:名前は開発中のものです。 mailto:sage [2009/02/01(日) 22:17:11 ID:Sr2n+wRX]
- 自分でエディタ作っちゃえばいいじゃない
C#辺りだと早いよ多分
- 694 名前:667 mailto:sage [2009/02/01(日) 22:23:07 ID:ao/Ervoe]
- >>668-669
いや、移動処理の作り方は・・?
- 695 名前:名前は開発中のものです。 mailto:sage [2009/02/01(日) 22:43:46 ID:TNRvinV2]
- とりあえず落下速度や左右の移動が
ランダムでいつも変わるとか そんなんから考えてみたらどうよ?
- 696 名前:名前は開発中のものです。 [2009/02/02(月) 06:29:26 ID:DZcQBLug]
- C#でSRPG作りたいんですが
描画ってどう実現するのがスマートなんでしょうか?
- 697 名前:名前は開発中のものです。 mailto:sage [2009/02/02(月) 08:57:16 ID:DZcQBLug]
- クォータービューのアルゴリズムを知りたいんですが
詳細に解説している資料あったら教えてください. よろしくお願いします.
- 698 名前:名前は開発中のものです。 mailto:sage [2009/02/02(月) 10:22:54 ID:TpS+hfIe]
- Windowsでゲームなどアプリケーション作りたいと言えば
VBとVCなどいろいろとありますが何の言語を勉強したら良いですか? プログラミング経験は MSX時代にBASICとマシン語でゲーム作って投稿したりしていました。
- 699 名前:名前は開発中のものです。 mailto:sage [2009/02/02(月) 10:56:13 ID:XOQcrq1e]
- アプリケーションはC#
ゲームは、本気手作るならC++一択
- 700 名前:名前は開発中のものです。 mailto:sage [2009/02/02(月) 14:55:24 ID:0174Jt/P]
- C# + XNAが楽
- 701 名前:名前は開発中のものです。 mailto:sage [2009/02/02(月) 15:13:54 ID:anYw4bKV]
- >>698
最初は ゲームはDarkBASIC、 汎用アプリはHSP WindowのDirectX開発環境に充分慣れたら、C++に移行する。 ゲーム開発環境が莫大に大きく膨れ上がった、 最初から頂点を目指すと必ず折れる。 段階を経て順番に登るのを薦める。
- 702 名前:名前は開発中のものです。 mailto:sage [2009/02/02(月) 18:44:56 ID:DZcQBLug]
- 全マップデータからプレイヤー座標周辺のデータを切り出して
MDXを用いてクォータビューで描画してみたんですが,とってももっさりしてます. プレイヤーが移動するとまた周辺切り出して描画してます. このあたりもっさりしなくなるようにするにはどういう設計にすればいいんでしょうか?
- 703 名前:名前は開発中のものです。 mailto:sage [2009/02/02(月) 19:36:42 ID:anYw4bKV]
- クォータビューですか、
どのような処理内容かわかりませんけど 2Dクォータビューの描画は軽い処理なので ボトルネックは切り出し部分だろうと思います。 基本的に、ボトルネック(重い原因)を突き止めて対処するだけです。 オンメモリの実行だと 2DRPGと同じなので負荷が大きいとは思えない。
- 704 名前:名前は開発中のものです。 mailto:sage [2009/02/02(月) 21:06:05 ID:XxkEgYNN]
-
ttp://hakuhin.hp.infoseek.co.jp/main/as/collision.html#COLLISION_00 ここのサイトの、レイと線分のあたり判定で 『とりあえず下の式で t が求まります。 var d = -(ax * nx + ay * ny); var t = -(nx * x + ny * y + d) / (nx * dx + ny * dy);』 という式が書いてあるのですが、 どうしてそういう計算式になるのかわかりません…orz どなたか、理由を教えて頂けませんでしょうか?
- 705 名前:名前は開発中のものです。 mailto:sage [2009/02/02(月) 21:37:07 ID:0174Jt/P]
- 青色のベクトル「法線」の方向の距離と速度を求めて、時間=距離/速度
- 706 名前:名前は開発中のものです。 [2009/02/03(火) 03:25:00 ID:zVUS/3Hu]
- バージョン管理システムって何を使っていますか?
個人規模のゲームの場合も、Subversionでしょうか?
- 707 名前:名前は開発中のものです。 mailto:sage [2009/02/03(火) 07:10:01 ID:VNIevx27]
- Subversion でいいんじゃない
一人なら分散型いらないしょ
- 708 名前:704 mailto:sage [2009/02/03(火) 11:36:29 ID:NCOElOQl]
- >>705
この式は、時間を表していたんですか!! といわれても、正直理解できていませんが…orz ttp://www.cam.hi-ho.ne.jp/strong_warriors/teacher/chapter06.html このサイトに書いてある 『平面の方程式N・P+d=0に直線の方程式P=A+Vtを代入して媒介変数tを求めます。』 とは関係ないんですね…
- 709 名前:名前は開発中のものです。 mailto:sage [2009/02/03(火) 13:11:26 ID:PEArFOwo]
- >>703
どうもありがとうございます. 書き直してみたんですが, あんまり改善されません. マップのデータ(高さのデータ)をアプリケーションの起動時に読み込んで BeginScene();からEndScene();までの間に毎回マップデータの高さに対応するチップを選んでテクスチャとして貼ってます 1枚絵として用意しておくものなんでしょうか? サンプルもそれほど多くなくてなかなか苦労しています.
- 710 名前:名前は開発中のものです。 mailto:sage [2009/02/03(火) 13:23:55 ID:MNe27pDh]
- >クォータビュー
サンプルコードはこれ www.sbcr.jp/books/products/detail.asp?sku=4797330465
- 711 名前:名前は開発中のものです。 mailto:sage [2009/02/03(火) 13:41:41 ID:Q2dPlDpQ]
- >>706
俺もSubversion使ってるな。ついでにtrac(バグトラッキングシステム)も使ってる。
- 712 名前:名前は開発中のものです。 mailto:sage [2009/02/03(火) 15:03:25 ID:dxGO6tf5]
- >>709
参考までに。自分のノートPC(CPU Core Solo1.4G、オンボード)では MDXのSpriteを利用したSpriteDrawの描画なら、同一の16*16のスプライトは3000個程度まで描画しても60pfs保てたよ。 考えられるのは・・・ ・Direct3Dデバイスの初期化が最適化されてない。 ・下手にSpriteを使わず自前でスプライト描画を実装して、かえって提供されているSpriteより遅い。 ・描画とか関係なし。thread.Sleep()精度問題。 もともとよほど変な計算をしない限り、描画以外の部分が重い、ってのが原因とは思えないよ。 適当にSystem.Diagnostics.Stopwatchクラス使って一連の処理の適当な場所の時刻を取得して、 それらの差をとった時間を見ればどこで時間を費やしてるか分かるんじゃね?
- 713 名前:名前は開発中のものです。 mailto:sage [2009/02/03(火) 15:58:59 ID:SqITY2nA]
- >>708
704の媒介変数が時間(フレーム)の次元を持ってて、 708の媒介変数が無次元なだけ。 704の「移動量」ベクトルが 距離/フレーム なのに対して、 708のベクトルVが 距離 なだけ。
- 714 名前:名前は開発中のものです。 mailto:sage [2009/02/04(水) 03:39:45 ID:Y3FwXutk]
- >>707
>>711 やっぱりSubversionですか。ちょっと大げさかと思いましたが、大は小を兼ねるってことですね。 どうもありがとうございました。 tracのほうも調べてみます。
- 715 名前:名前は開発中のものです。 mailto:sage [2009/02/04(水) 10:38:41 ID:jaD59MDA]
- >>710
ありがとうございます 探してみます. >>712 よくよく見たらループ内で毎回インスタンス作ってました・・・ 描画もっさりなのは何とかなったんですが, サイズが32x32の画像と32x48の画像を読み込んでスプライト表示しようとしているんですが, 32x32の画像を敷き詰めたあとにその上に32x48の画像を貼ると32x48の画像が伸びた感じになるんですが これってきちんと書けてないだけなんでしょうか?
- 716 名前:名前は開発中のものです。 mailto:sage [2009/02/04(水) 11:13:33 ID:x17R+mbN]
- >>715
ネイティブなDirectX、MDXどちらの場合でも、ほとんどのビデオカードがこういう制約をしてるからそうなる。 ・普通テクスチャは2^n乗の辺を持つ画像しか正常に読み込まない。 ・最大サイズは2048*2048 だから48とかは無理。32*64とか64*64とかで作って読み込み、実際に描画するときに使用する範囲を32*48と設定すればいい。 他にテクスチャに関する情報だと。 ・アルファブレンド情報つきbmpであるddsファイルにすると楽。ddsはDirectXSDKに付属するDirectX Texture Toolで作れる。 ・一つの画像に複数の画像をまとめる場合、まったく異なる画像が接触しないようにする。 (拡大縮小処理をする場合、元画像の最も近い4マスを利用して計算する。 例えば草原のマップチップの隣に雪原のマップチップが隣接してると、接触側に白緑っぽい筋が表示される。)
|

|