C/C++ゲーム製作総合スレッド Part6
■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。
2014/07/08(火) 19:30:19.51ID:J+zVqUil元スレ
DXライブラリ 総合スレッド その17
http://toro.2ch.net/test/read.cgi/gamedev/1383795645/
前スレ
C/C++ゲーム製作総合スレッド Part1
http://toro.2ch.net/test/read.cgi/gamedev/1337516528/
C/C++ゲーム製作総合スレッド Part2
http://toro.2ch.net/test/read.cgi/gamedev/1351015269/
C/C++ゲーム製作総合スレッド Part3
http://toro.2ch.net/test/read.cgi/gamedev/1357899040/
C/C++ゲーム製作総合スレッド Part4
http://toro.2ch.net/test/read.cgi/gamedev/1376262450/
C/C++ゲーム製作総合スレッド Part5
http://peace.2ch.net/test/read.cgi/gamedev/1389798031/
0026名前は開発中のものです。
2014/07/15(火) 10:30:27.70ID:bF6wBS740027名前は開発中のものです。
2014/07/15(火) 12:49:35.84ID:YEdbM4Lm腕と髪に剛体が仕組まれてて、腕の動きに剛体がついていく
腕の剛体が髪の剛体にあたると髪の剛体が動いて、髪の動きとなる
0028名前は開発中のものです。
2014/07/18(金) 00:32:45.27ID:RFAJhKUJ0029名前は開発中のものです。
2014/07/18(金) 18:24:17.00ID:HNYPZCeU例えば飛行船の上で戦うとか
キャラクターだから自立はできる、けど飛行船の揺れは影響させたいし、>>25の解説だけ聞くと物理エンジン内の空間ではキャラクターを表すオブジェクトが倒れそう
まぁ倒れないんだろうけど
0030名前は開発中のものです。
2014/07/18(金) 20:22:38.58ID:RFAJhKUJお前は物理シミュレータを作りたいのか?
それともゲームが作りたいのか?
0031名前は開発中のものです。
2014/07/18(金) 21:31:31.69ID:wz9t21HDこの認識が間違い
キャラクターは空間に固定されてアニメーションさせてるだけだから倒れたりバランスを失ったりすることはない
0032名前は開発中のものです。
2014/07/19(土) 09:04:53.45ID:MwsgZEhXんー・・・
例えば飛行船が急降下したとき、
乗ってるキャラクターは浮いたり偏ってる方に滑ったりする
この時、物理エンジン内で倒れていたら無理矢理起こす(固定?)という感じになるのか
0033名前は開発中のものです。
2014/07/19(土) 09:28:41.17ID:aecMKE4f普通、物理エンジンはキャラクターそのものには使わず
キャラクターの髪の毛とかスカートとかにしか使わない
> 「不安定な足場」を物理エンジンに任せようとする
っていうのが無理
http://www.gravitysensation.com/sumotori/index.php
極端な例だが、キャラクターの動きを物理エンジンに任せてしまうと、このゲームみたいに無茶苦茶になる
0034名前は開発中のものです。
2014/07/19(土) 11:45:17.81ID:ZZT3dE9z物理エンジンに丸投げと言っても、物理エンジンが自作コードから独立して動くわけじゃないし、
ゲームである以上、100%物理エンジン任せにすることはない。ガンガンプログラマが修正していく。
実際、メタッルギアソリッドのプログラマはその昔、
物理エンジンに任せることは多いが、そのままでは全くゲームにならないので「嘘」を入れていると言っていた。
例えば、人間キャラが自分より大きな物体(岩など)を押して動かす…などのギミックが使えないのだとか。
>>33
「キャラ自体に物理エンジンは反映させない」と言い切るのは、ちょっと乱暴じゃないかな?
実際それが楽なのは間違いないんだけどさ。
例えば、物理演算空間では単純な形状の剛体(直方体など)で登録しておいて、
位置情報だけキャラクターに反映させるとかさ。
0035名前は開発中のものです。
2014/07/25(金) 07:42:06.20ID:0cPiHr0B0036名前は開発中のものです。
2014/07/27(日) 14:09:28.81ID:S7CCeGik物理エンジン
0037名前は開発中のものです。
2014/07/27(日) 16:35:38.39ID:hDFrb6h9それとも1つのクラスにスクリプトか何かで頑張ってるの?
範囲攻撃だとか回復だとか防御だとかバフだとか色々あるけど、
今作ってるゲームで、スキルクラスを継承してプログラムで記述するか、
予めできるだけ多くのパターンを予想してパラメータを盛り込みまくるか
0038名前は開発中のものです。
2014/07/27(日) 16:39:07.72ID:hDFrb6h9近接攻撃クラスと魔法攻撃クラスとか
0039名前は開発中のものです。
2014/07/29(火) 04:04:42.63ID:AylXEMId基本的にはスクリプト。どんなスキルでも格納できる万能構造体を作れるならテーブル化するか、
SQLite なんかのデータベースを利用するって方法もある。
0040名前は開発中のものです。
2014/08/01(金) 19:58:25.02ID:HHwlbQuz0041名前は開発中のものです。
2014/08/02(土) 05:01:01.75ID:eOu4XZLT大人になってもSEとして奴隷労働確定。
目的のための手段なのか、手段のための目的なのか。
目的を達成することを第一義に置かないといけない。
0042名前は開発中のものです。
2014/08/02(土) 08:07:18.21ID:xbgScl0r大人になってもPGとして奴隷労働確定
どうすれば良くなるのか、良くする為にはどうすればいいのか
自己を成長させる事を第一義に置かなければならない
0043名前は開発中のものです。
2014/08/02(土) 12:00:37.08ID:lHwJwlEc0044名前は開発中のものです。
2014/08/02(土) 18:15:56.09ID:8HdFTJm8キャラクターが削除された直後に衝突リストを探索するときに特定の関数を呼び出すとフリーズする
ヌルチェックしてるし、キャラクターをdeleteしたポインタに次の行でNULL代入してるし、
そもそもフリーズする直前にそのインスタンスの別の関数は呼び出しても問題ない
フリーズする関数を呼び出す直前と、関数の最初にログを吐くと関数に入ってないようにみえる
意味がわからん
0045名前は開発中のものです。
2014/08/02(土) 19:25:04.15ID:TmM60CSLというか、錯誤により不具合を作り出してる張本人の、曖昧で、主観的な
供述のみからエスパーレスを引き出そうとしても解決にならないんじゃね
真剣な相談なら不具合を再現できる最小構成のソースコードを晒す
(これ用意する人はその過程で不具合の原因を突き止める確率高い。
つまり質問に至らない場合が多い)
0046名前は開発中のものです。
2014/08/02(土) 19:26:38.81ID:xbgScl0r大体の箇所わかってんならブレークポイントでぽちぽちしながら臭い所探せば
0047名前は開発中のものです。
2014/08/02(土) 19:59:07.91ID:bumse5jz0048名前は開発中のものです。
2014/08/02(土) 20:05:22.19ID:/jwwYoCrそのログ書き出しはちゃんとfflushしてるか?
強制終了させたらバッファに残ってるログは捨てられるよ
0049名前は開発中のものです。
2014/08/02(土) 20:50:36.25ID:dX02eCqqフリーズすることなんてしょっちゅうだ。
フリーズの原因なんて46の言うように無限ループに入ってることがほとんど。
しかも自分の思い込みで「ここで無限ループになんてなるはずがない」と思ってる部分だったりする。
だから逆に「ループの全ては無限ループできる」と探せば割りと早く見つかったりする。
まぁひとつひとつ調べていくのが結局は早い。
0050名前は開発中のものです。
2014/08/02(土) 22:07:42.24ID:juDjvEHG「全て中断」ボタンを押すかCtrl + Alt + Breakで無限ループの中に一時停止させて
F10押してループ判定を追っていけばいいんじゃね?
マルチスレッドでなければブレークポイント使って探るのは効率悪いと思うの
005144
2014/08/03(日) 05:08:34.12ID:jLtHhqBC別スレッドでアニメーション動かしてるからメインスレッド止まってもアニメーションは動くはずだし
でもAndroidNDKだからブレイクポイント使えない
0052名前は開発中のものです。
2014/08/03(日) 10:47:06.01ID:LcYcpDyVリストってことは、該当のポインタを削除するだけじゃなく
その前の要素にあるnextポインタも修正しなきゃならないわけだよな?
deleteだけじゃなく、その修正もしてるか?
してるなら、deleteと修正の間に、別スレッド(描画?)が参照してたりシないか?
0053名前は開発中のものです。
2014/08/03(日) 11:28:48.20ID:ygJOSsne>でもAndroidNDKだからブレイクポイント使えない
使えます。是非使ってください。本当にお願いします。
それと、既に指摘されてる問題部分の切り分けをして下さい。
最小構成でテストして下さい。出来ないならコードをうp
0054名前は開発中のものです。
2014/08/03(日) 11:31:35.11ID:DGgM8UM0操作前後でロックが必要だけどしてないんじゃね?
005544
2014/08/03(日) 13:03:28.60ID:Q2PG92NDごめんなさいstd::listではなくstd::vectorでダブルバッファリングしてます
更新ごとに入れ替わって、push_backされないオブジェクトはdeleteされてそのポインタにNULLが入ります
0056名前は開発中のものです。
2014/08/03(日) 13:39:34.89ID:pnMbsHQKレスしてる暇があるなら単体テストしなよ
0057名前は開発中のものです。
2014/08/03(日) 15:21:07.80ID:CNCHN1HK0058名前は開発中のものです。
2014/08/03(日) 23:21:55.40ID:X5LmADYNこういうメンバ関数ってどんな扱いになってるんですかね?
関数はデータじゃないので扱われないとすると都合いいんだけど、
ポインタだけで扱われてるのか、それともプログラムコードまで含まれるのか。
こんな説明じゃ分かりにくいですかね……。えーと。
以前から、「オブジェクトを生成するたびに、関数(のプログラムコード)も作られ、
オブジェクトごとにコードをそれぞれ持っている」なのか、それとも「関数のプログラムコードは
別のどこかに作られるだけで、オブジェクト内にはそこを示すポインタだけが作られてる」のか疑問だったんですが、
メンバ関数を修正してから修正前のデータを読み込んでみたところ、不正落ちするようになったもので
ひょっとして、前者なのかな? と思った次第でして。
0059名前は開発中のものです。
2014/08/03(日) 23:49:05.25ID:LcYcpDyVhttps://sites.google.com/site/boostjp/tips/serialize
0060名前は開発中のものです。
2014/08/03(日) 23:54:41.45ID:NYhfIPC5仮想関数使ってたらvtableのアドレスが格納されるから、それまで一緒にリストアすると落ちるんじゃないか?
0061名前は開発中のものです。
2014/08/04(月) 00:15:41.74ID:3huMrwYj0062名前は開発中のものです。
2014/08/04(月) 00:35:39.14ID:S6rlQ+o7http://www.microsoft.com/japan/msdn/vs_previous/visualc/techmat/feature/jangrayhood/
0063名前は開発中のものです。
2014/08/07(木) 12:24:04.59ID:t1Sego2o例えば一部の種類の敵は近くの自分と同じ種類の敵の数で動きが変わるとか、敵Bと敵Cが合体攻撃するとか、
ステージ内の他の敵の状態を参照する必要に駆られた時ってどうやってアクセスするべき?
敵のリストを持った敵管理クラスが敵の行動選択時に毎回敵のリストのポインタを投げるのか、
敵Bクラスがstaticで自身のクラスのリストを作っておいて、敵Bの情報が欲しいクラスがこれにアクセスするのか。
他にも地形によって移動が変わる(落ちないようにとか)場合の地形データのアクセス方法ってどうするべきなの?
0064名前は開発中のものです。
2014/08/07(木) 13:00:48.69ID:GofjvCIT必要に応じて管理クラスに問い合わせるという感じ
というか、何パターンか方法を考えているなら、適当にどれか試してみればいいと思うよ
動けばそれでいいし、問題があるなら直せばいいだけだし
006544
2014/08/07(木) 17:44:22.62ID:62RjpHCx敵が地形情報にアクセスできても不自然じゃないのでは
0066名前は開発中のものです。
2014/08/14(木) 01:20:33.31ID:McYBYG45SDLかcocos2dあたりになるのかな?
0067名前は開発中のものです。
2014/08/14(木) 14:25:37.69ID:KaQreIxk0068名前は開発中のものです。
2014/08/14(木) 19:21:35.91ID:tnMEEuh8日本語少なくて諦めてたけど、少しずつ揃ってきてるし、なによりDxLibで自作するようなクラスが
揃ってるのがありがたい
0069名前は開発中のものです。
2014/08/14(木) 23:14:33.68ID:hKNZ3m31プライベート関数を作るのって妙に抵抗があるんだよな
パブリックは明確に必要だなってわかるんだけど
0070名前は開発中のものです。
2014/08/15(金) 00:31:11.83ID:oe50SlNL無名名前空間使えばいいんじゃね?
0071名前は開発中のものです。
2014/08/15(金) 04:08:25.52ID:rUjRhF5gディレクトリでなんかやってるけど
不都合とかあるかな
0072名前は開発中のものです。
2014/08/15(金) 05:19:42.53ID:c/9kGC5uファイルをメモリのように扱う機能が既に存在していたでござる
0073名前は開発中のものです。
2014/08/15(金) 07:01:48.62ID:ohMMiKIE数十行もあるのなら、2回以上で関数にする
しないと、修正・テストを常にダブルでしないといけない
>>72
そもそもメモリの基本が、mmap(memory map)で、
確保したメモリを、どんなオブジェクトで使おうが自由
まあ一般的なもので、自分が思いつくようなものは、
たいてい誰かが作っているだろう
0074名前は開発中のものです。
2014/08/15(金) 09:58:24.44ID:c/9kGC5u0075名前は開発中のものです。
2014/08/15(金) 10:41:13.57ID:j6cgjhWqアクセス方法含めてファイルAPI使わない木構造コンテナならググれば色々ある
APIフックして自分しか見えないRAMドライブを作ったことあるけど行儀悪いから他でもみかけないな
0076名前は開発中のものです。
2014/08/16(土) 06:39:10.61ID:L92YcU8p0077名前は開発中のものです。
2014/08/16(土) 17:19:05.66ID:8Fs/dbncstd::vectorとかコンテナみたいなのに使うんですか?
ライブラリ作るときぐらいですか?
0078名前は開発中のものです。
2014/08/16(土) 17:29:23.54ID:FVHp6E5m大文字のTemplateって何か特別な意味がある言葉なの?
0079名前は開発中のものです。
2014/08/16(土) 18:04:48.11ID:8Fs/dbnc0080名前は開発中のものです。
2014/08/16(土) 19:19:43.39ID:KpuwMNAx0081名前は開発中のものです。
2014/08/17(日) 00:29:52.38ID:DxB78rur実際それくらいしか使ってないやってヒトも結構いると思う。
0082名前は開発中のものです。
2014/08/17(日) 01:22:39.68ID:ecqmGiuWその中身も用途も知らずに誰かに使われるだけですよね?
でなければポリモーフィズムとかで代用出来そうだし
0083名前は開発中のものです。
2014/08/17(日) 01:37:28.43ID:rcRtUElV基本的にはただの置き換えだが?
0084名前は開発中のものです。
2014/08/17(日) 02:35:54.03ID:DxB78rur0085名前は開発中のものです。
2014/08/17(日) 03:14:42.38ID:lY+LSruTコンテナ <int>
コンテナ <ユーザ定義クラス>
コンテナが、様々な型に対応できる
0086名前は開発中のものです。
2014/08/17(日) 10:03:56.33ID:ecqmGiuW要はtemplateの処理って誰かから値を貰って処理するのではなく
値を右から左に受け渡すだけで・・・
0087名前は開発中のものです。
2014/08/17(日) 10:13:42.02ID:rcRtUElVそれはソースを追えとしか言えんな。templateはその性質上、クローズド化が出来ないから。
0088名前は開発中のものです。
2014/08/17(日) 10:52:23.87ID:eh8TRovFSTLですらちょっとした記述漏れで出るエラーメッセージが適切じゃないんだよな
記述した行じゃなくてテンプレートソースの位置のエラーメッセージだし
0089名前は開発中のものです。
2014/08/17(日) 16:34:24.06ID:2LOHSTCb0090名前は開発中のものです。
2014/08/18(月) 12:06:43.86ID:/xfKqDtl0091名前は開発中のものです。
2014/08/18(月) 12:20:19.06ID:Amfk7YXr0092名前は開発中のものです。
2014/08/18(月) 17:33:11.61ID:/xfKqDtl0093名前は開発中のものです。
2014/08/18(月) 18:04:50.85ID:xxNYX8Uv0094名前は開発中のものです。
2014/08/19(火) 10:38:31.24ID:g/Td6fwvコロンがダメなのかい?
0095名前は開発中のものです。
2014/08/20(水) 12:24:47.31ID:vpc/8MHVstd見るとスネークケースだけどライブラリ見るとローワーキャメルケースだし
主流なオブジェクト指向で揃えたいのならJavaやC#みたいにアッパーキャメルケースだし
"ID"は両方大文字でもよかったり、HINSTANCEみたいにどこから意味のある単語なのかわかりづらいし
0096名前は開発中のものです。
2014/08/20(水) 17:29:53.86ID:zC8dBj+K0097名前は開発中のものです。
2014/08/20(水) 18:27:48.79ID:8ddmLszJ0098名前は開発中のものです。
2014/08/21(木) 12:39:31.06ID:cVduPEKK第一引数省略できたら最強なんだけどなぁ
MPLのgetはめんどくさすぎる
0099名前は開発中のものです。
2014/08/22(金) 08:08:31.76ID:np7Y3ytG0100名前は開発中のものです。
2014/08/22(金) 08:24:17.61ID:+/wZ7jnKいくら何でも世間をナメすぎwww
0101名前は開発中のものです。
2014/08/22(金) 13:04:18.40ID:GdbuT6p8知らなかったこんなのが普通にコンパイル出来た
int 関数(int ほげ, int はげ)
{
return ほげ + はげ;
}
0102名前は開発中のものです。
2014/08/22(金) 17:22:04.27ID:kNYnH0VP0103名前は開発中のものです。
2014/08/22(金) 18:16:28.30ID:tnjQY6BU漢字を使えるが
0104名前は開発中のものです。
2014/08/22(金) 20:27:56.63ID:knEiP0zptypedef int 整数
みたいな感じで型を日本語化して頑張ってた友達を思い出した
0105名前は開発中のものです。
2014/08/22(金) 21:01:32.45ID:+rbtpV8xさすがにこの条件で行く奴は居ないだろうと思うが……
と思ってよく見たらプランナーだった、紛らわしいな
0106名前は開発中のものです。
2014/08/23(土) 11:34:38.27ID:VlCYIhcaプランナーってそんな楽なお仕事なん?
0107名前は開発中のものです。
2014/08/24(日) 19:03:04.47ID:+YyUmjGHだから値段が安くても人は来ると
0108名前は開発中のものです。
2014/08/25(月) 12:46:11.86ID:13Ou/jq/0109名前は開発中のものです。
2014/08/25(月) 21:12:10.93ID:fIeVmxmzプランナーになってぼくのかんがえたさいきょうのげーむ作るんだ!
って人が多いイメージだわ
0110名前は開発中のものです。
2014/08/26(火) 02:42:29.32ID:zRu6Y76+0111名前は開発中のものです。
2014/08/26(火) 03:02:43.23ID:9nJGtRzs非エンジニアの人でも、ある程度形を作り上げられるっていう
0112名前は開発中のものです。
2014/08/28(木) 03:18:53.81ID:X8+LqzAg使った方が言われたのですが
MinGWのgccで使う方法はあるのでしょうか?
0113名前は開発中のものです。
2014/08/28(木) 12:27:05.34ID:IogRuqxm0114名前は開発中のものです。
2014/08/28(木) 14:45:11.67ID:fyv86xWh思った
0115名前は開発中のものです。
2014/08/28(木) 16:18:23.85ID:bFGeiPpWとコンソールで実行した時ループが遅くなるのはなんでですか?
目で追える速度でしか文字列を描画できないなら
計算だらけのゲームなんてまず作れませんよね?
0116名前は開発中のものです。
2014/08/28(木) 18:13:14.40ID:c3zFvuJr0117名前は開発中のものです。
2014/08/28(木) 18:25:00.80ID:kFtDpON/ファイル出力する記号 >でやったら画面表示より速いし、ゲームなんかで使う描写を、使えば速いし。
0118名前は開発中のものです。
2014/08/28(木) 18:34:21.79ID:p3a/rk2Rwindowsのコンソールの文字出力はCUIベースの補助的な表示がメインで、
コンソールの文字出力が遅いから早くしてほしいなんて誰も望まない
0119名前は開発中のものです。
2014/08/28(木) 18:35:31.68ID:cOy/jyaiと言うか、文字一つ出力するのに何バイトのデーターを画面に書き込む必要があるか考えてみ?
0120名前は開発中のものです。
2014/08/28(木) 18:45:56.07ID:cOy/jyaiあ、そう言えば昔、PC-98がdos/vよりも優位な点として文字出力速度が早い事を売りにしていたな
0121名前は開発中のものです。
2014/08/28(木) 19:17:50.59ID:izIKodD2DOS/Vにあるのかないのかは知らんけど。
0122名前は開発中のものです。
2014/08/28(木) 19:22:18.05ID:cOy/jyai0123名前は開発中のものです。
2014/08/28(木) 19:39:22.02ID:p3a/rk2R昔はコンソールは補助的なものじゃなかったし
今よりずっと遅い時代があったからでしょ
0124名前は開発中のものです。
2014/08/28(木) 20:10:27.78ID:lAEGR6jwいや、話のネタに思い出したからついでに書いただけだよ
昔はテキスト表示で画面をマスクしたりと、遅いマシンの
様々な機能をフル活用して使っていたみたいだね
0125名前は開発中のものです。
2014/08/29(金) 13:24:27.28ID:7LwoDteC目で追える速度に遅くしてるんじゃね
つ Ctrl+S
■ このスレッドは過去ログ倉庫に格納されています