C/C++ゲーム製作総合スレッド Part6at GAMEDEV
C/C++ゲーム製作総合スレッド Part6 - 暇つぶし2ch122:名前は開発中のものです。
14/08/28 19:22:18.05 cOy/jyai
PC-98は漢字ROMにフォントデータが入ってるから早いんだよ

123:名前は開発中のものです。
14/08/28 19:39:22.02 p3a/rk2R
>>120
昔はコンソールは補助的なものじゃなかったし
今よりずっと遅い時代があったからでしょ

124:名前は開発中のものです。
14/08/28 20:10:27.78 lAEGR6jw
>>123
いや、話のネタに思い出したからついでに書いただけだよ
昔はテキスト表示で画面をマスクしたりと、遅いマシンの
様々な機能をフル活用して使っていたみたいだね

125:名前は開発中のものです。
14/08/29 13:24:27.28 7LwoDteC
>>115
目で追える速度に遅くしてるんじゃね
つ Ctrl+S

126:名前は開発中のものです。
14/08/29 17:27:19.27 PQKddMMr
struct Aiu{
int hoge;
};

Aiu* aiu = new Aiu();
ってした時
Aiu aiu2 = *aiu;
ってした場合、aiuの寿命が切れた後もaiu2に保持されるんでしょうか?
コピーコンストラクタは定義してないです

127:名前は開発中のものです。
14/08/29 17:35:13.67 I0DNX3OS
自分で試したほうが早いだろ

128:名前は開発中のものです。
14/08/29 18:05:40.44 B+gnwrXf
>>126
その Aiu aiu2 = *aiu; はメンバの値が複製されるだけだから、その後にaiu->hogeを書き換えてもaiu2->hogeは変わらない
だからaiuの指す先がdeleteされようがaiu2に影響はない

129:名前は開発中のものです。
14/08/29 19:30:47.56 +jt7R30F
class Stack
{
 int a;
}

class Heap
{
 Stack stack;
}

void main()
{
 Heap* heap = new Heap();
}

っていうプログラムの場合、int aはメモリ内のどこにあるのでしょうか?
そもそもヒープ領域のオブジェクトの中のスタック領域の場合ってメモリ的にはどうなるのでしょうか?

130:名前は開発中のものです。
14/08/29 19:53:53.39 B+gnwrXf
普通にヒープ

131:名前は開発中のものです。
14/08/30 18:37:32.98 5AIFhixX
picojsonというjsonパーサー使ってるんですが、
Eclipseの言ってるエラーが意味不明で困っています
どうしたら結果が得られますか?
エラー内容:expected primary-expression before ')' token

あとテンプレートにポインタやらちょっと組み合わせると全く入力補完してくれないんですがなんなんですか

void hoge::hoge1(picojson::object* jsonObject){
picojson::array& jsonArray = jsonObject->get<picojson::array>();

for (picojson::array::iterator it = jsonArray.begin(); it != jsonArray.end(); it++){
picojson::object& o = it->get<picojson::object>();

int unit_num = atoi(o["unit_num"].get<std::string>().c_str());
int unit_id = atoi(o["unit_id"].get<std::string>().c_str());
}

}

132:名前は開発中のものです。
14/09/01 11:52:34.58 NxW8u5cB
BlenderとかMayaで作ったモデルファイルとかモーションファイルって
C++erならやっぱり自分でパーサー作って読み込むの?

133:名前は開発中のものです。
14/09/01 17:34:00.00 7vpWhfmF
>>132
Assimp

134:名前は開発中のものです。
14/09/02 14:27:36.03 PUVCbn2i
DirectXも使えるの?

135:名前は開発中のものです。
14/09/02 17:26:57.05 tdHhEDHk
>>133
これ良さげやね
BSDライセンスだし色々出来そう
スレッドセーフなのもポイント高い

136:名前は開発中のものです。
14/09/06 11:58:19.59 khJXlvEe
>>131
これ誰かわかりませんか?

137:名前は開発中のものです。
14/09/06 18:09:59.56 AxxHSbmN
expected primary-expression before ')' token 意味
で検索してみた?

138:名前は開発中のものです。
14/09/07 11:10:43.48 s9vhQEyf
>>137
()内に値があるとかなんとかとか・・・
でも引数のエラーは別にあるし、全く同じ文(変数名は違うけど)をコピペしてきたものだし・・・

139:名前は開発中のものです。
14/09/08 21:02:33.10 tesqRk+d
ずっとDXライブラリのwhileの中でやってきたせいで(ビジーウェイトっていうのかな?ポーリング?)
GUIライブラリとかのイベントドリブンでゲーム作る方法が全くわかんないぜ

DXライブラリでは1フレームごとの処理をupdateメソッドの中でやってたから、
アクションゲーム上のキャラクタなどがゲーム内時間での同期が簡単だったんだけど

イベントドリブンだと、そういう「メイン時間軸」による制御がないから
ゲーム内時間で厳密に同期が取れないとこが気持ち悪い

例えば、前者では1フレームごとにキャラクターの速度ずつ動いて、衝突判定も一斉にできるけど、
後者だとライブラリ側が(おそらく裏で㍉秒単位でポーリングしてて)『ボタン押されたよ!』って判断するから、
用いる時間の粒度が、自分が定めたいゲーム内時間じゃなくなってしまうという・・

イベントドリブンを用いる手前、1フレごとにupdateイベント起こすなんて二度手間はやりたくないし・・
(Unity3Dはupdateとイベント併用型らしいけど、どうやってるんだろ)

140:名前は開発中のものです。
14/09/08 21:18:20.61 tYyDmrPQ
別に必要ならUpdate相当のイベント起こしたっていいじゃない
Windowsとか普通のアプリでアニメーションしたいならWM_TIMERとか別スレッドのタイマーで処理してから
描画のWM_PAINTを間接的に呼び出してるわけだし
描画のイベントを約16msで起こして内部で状態更新すれば60フレームのゲームだ

141:名前は開発中のものです。
14/09/09 01:28:32.21 iF9Myub/
俺もDXライブラリしか使ったことないからわかんないんだけど描画ループとゲーム内処理のループって分けてマルチスレッドにするもんなの?
ダブルバッファってのもなんか、全ての描画リソースを2倍持つって結構勿体無いなとか思うんだけど

ネトゲでよく200fpsとか表示されててなんじゃこりゃとか思ったことあるけどゲーム内処理ループの事だよね?

142:名前は開発中のものです。
14/09/09 03:36:37.22 C1Zjzm8i
無限ループの中で定期的にPeekMessage関数を呼んで
受信しているウィンドウメッセージを処理するようにするようにする方法が一つある
(DxLibで言えばProcessMessage関数みたいなもんだと思いねぇ)


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch