- 1 名前:デフォルトの名無しさん [05/02/25 05:10:53 ]
- ※回答する人も、質問する人も必ず読んでください
【 回答してくださる方 】 ・ できるだけ優しく質問に答えてあげてください。 ・ 優しく教えるのが嫌でしたら、解決するためのヒントだけでも結構です。 「ググれ」以外の回答でおながいします。 ・ 神ですら理解不能な質問は無視して下さい。 【 質問する香具師 】 ・ どんな事で躓いているのか明確にしる。 ・ 長くならないなら躓いている部分のコードを晒してみれ。 ・ 解決した場合、お礼を言うのは当然だが、何をどうしたら解決したかを明確に書け。
- 837 名前:名前は開発中のものです。 mailto:sage [2008/03/21(金) 20:21:50 ID:ZTMinpqE]
- 自前でガベコレ作れるのがC++。
まあ、STL使えれば十分なんだけどな、大概のケースでは。
- 838 名前:名前は開発中のものです。 mailto:sage [2008/03/22(土) 23:20:05 ID:4IZtFb4c]
- 確かに最初はmallocもどこから確保してくるのか不思議に思った。
- 839 名前:名前は開発中のものです。 mailto:sage [2008/03/26(水) 02:06:12 ID:ldqMhhG3]
- なんという歴史スレ
- 840 名前:名前は開発中のものです。 mailto:sage [2008/03/26(水) 11:22:54 ID:F88bQWhP]
- >>839
つまり、mallocやnewがメモリーをどんなアドレスで取得してるか、 といった事を調べる話題になるわけだな?
- 841 名前:名前は開発中のものです。 mailto:sage [2008/03/26(水) 12:06:51 ID:EIOlO8Pg]
- >>838
それ言い出すと、ファイルハンドルが何処から発生するか気にするか? といった話にすらなりかねん。
- 842 名前:名前は開発中のものです。 mailto:sage [2008/04/28(月) 17:01:51 ID:RhBkZtBI]
- Basicから入ったから、Cで明示的にメモリ確保するのが気持ち悪かった
その後、Delphiやってたから、C++でメモリ確保しないクラスが気持ち悪かった
- 843 名前:名前は開発中のものです。 mailto:sage [2008/05/08(木) 23:18:51 ID:SrRQ+rts]
- 今作っているゲームはWM_CREATEでけっこうな量のファイルを読み込んでいるので、
Windowが表示されるまでにそれなりに時間がかかってしまいます。 誤って何度も起動してしまわないように、Nowloadingと表示させてから読み込みたいのですが、どのように書けばいいのでしょうか?
- 844 名前:名前は開発中のものです。 mailto:sage [2008/05/09(金) 00:49:24 ID:haEAxt1Y]
- WM_CREATEじゃなくてゲームループで嫁
- 845 名前:名前は開発中のものです。 mailto:sage [2008/05/09(金) 01:00:00 ID:PjWlUEdO]
- >>843
WM_CREATE PostMessageで適当なメッセージ(WM_USERとか)を投げる WM_PAINT 初期化フラグが立っていなかったらNowloadingとだけ表示する WM_USERとか 読み込み処理をする、適度にInvalidateRectとUpdateWindowを何度も実行する ただ、必須スペックに想定してるマシンで5秒以上かかるようなら ちゃんとイベント処理をこなせるようにしといたほうがいいよ メイン処理が別スレッドならそれを先に開始するとか、タイマー系イベントでちょっとづつ読み込むとか
- 846 名前:843 mailto:sage [2008/05/09(金) 11:55:14 ID:hS3O5d5Q]
- 参考にして作ろうと思います。
ありがとうございました。
- 847 名前:名前は開発中のものです。 mailto:sage [2008/05/10(土) 23:33:42 ID:3aq7UNCV]
- WM_USERよりもWM_APPがおすすめされている。
いずれにせよ、#define WM_INIT (WM_APP + 0)のように名前つけろよ。
- 848 名前:名前は開発中のものです。 mailto:sage [2008/05/15(木) 22:42:04 ID:YwFUHQF5]
- というか、初期には簡単な画像読み込んでLoading画面表示して
フラグ管理して処理すれば別に問題なくね?
- 849 名前:名前は開発中のものです。 mailto:sage [2008/05/16(金) 03:17:36 ID:LjZKGE9Y]
- WindowsXPのPC(メモリ256)で製作中のゲームをVista(メモリ1G)で動作テストしてみたのですが、
なぜかアニメーションの処理速度が半分ぐらいにまで落ちてしまいました。 WindowsAPIのタイマーを使ってアニメーションさせているのですが、これが原因なのか否かも良くわかりません。 なにか思い当たる点が有りましたら、ぜひ教えてください。お願いします。
- 850 名前:名前は開発中のものです。 mailto:sage [2008/05/23(金) 22:33:50 ID:jPx0XBwI]
- VistaだとGDIが完全にソフトウェア処理になるから
描画速度自体は確実に落ちるよ
- 851 名前:名前は開発中のものです。 mailto:sage [2008/05/23(金) 22:56:52 ID:7QUeOTrk]
- DDB使ってなけりゃ関係ねぇよ
- 852 名前:名前は開発中のものです。 mailto:sage [2008/05/24(土) 09:35:06 ID:WyL1Uf6E]
- >>851
- 853 名前:名前は開発中のものです。 [2008/08/03(日) 23:47:04 ID:eUp/hKRM]
- C++とDirectXでゲームを作っています。
音楽と効果音の再生をDirectSoundでやろうと思ったんですが、 調べているとVistaはDirectSoundに対応していないと書いてたんですが、 XPとVista両方に対応させたいとしたら、音は何で鳴らせばいいでしょうか。
- 854 名前:名前は開発中のものです。 mailto:sage [2008/08/04(月) 03:26:18 ID:Zbdzki70]
- ハードウェア固有のサウンドエフェクトとか考えなけりゃ普通にDirectSoundでおk
もしくは最近のSDKに追加されたXAudio2とか検討してみ。 ゲーム用途ならこっちの方が使いやすいと思う。
- 855 名前:853 mailto:sage [2008/08/04(月) 22:34:14 ID:ro4/+LzM]
- どうもありがとうございます。
全く音が鳴らないというわけではないんですね。 使う機能はパンとボリュームと再生位置の通知だけなので、 このままDirectSoundを使うことにします。 XAudio2も時間があるときに見てみます。
- 856 名前:名前は開発中のものです。 mailto:sage [2008/08/07(木) 18:45:06 ID:6PyoA3BU]
- C++でゲームを作っています。
爆弾をセット、一定時間後に爆発 という動作をさせたいんですがどのように表現すればいいのでしょうか? 一定時間後に、という部分がいまいちうまくいかなくて・・・よろしくお願いします
- 857 名前:名前は開発中のものです。 mailto:sage [2008/08/07(木) 19:20:43 ID:jIGgrvQE]
- メインループの中で一定時間をカウントして、イベントを起こす。
- 858 名前:名前は開発中のものです。 mailto:sage [2008/08/07(木) 21:31:09 ID:afI3YDNl]
- GetTickCount( )というPC起動から何ミリ秒経過したかを返すAPIがある。
爆弾をセットした時に時間を取得し、爆発時間を加える。 GetTickCount( )で取得した時間が爆破時間を過ぎたら爆発。
- 859 名前:856 mailto:sage [2008/08/08(金) 15:38:46 ID:czGsvGYo]
- お早いアドバイス、ありがとうございます。
やはりタイマー関数のようなものを使わないといけませんか・・・ いまいち使い方がわからないのでifやforを駆使していました。 タイマー関数のようなものを使わないというのはやはり勧められないものでしょうか。
- 860 名前:名前は開発中のものです。 mailto:sage [2008/08/08(金) 16:32:11 ID:w2HHE1WB]
- 俺ならキャラごとにカウンターもたせて、1フレームごとにカウントさせるなぁ。
タイマー使ったら、例えば処理落ちしたときとかに爆発タイミング変わったりして困るんじゃない?
- 861 名前:名前は開発中のものです。 mailto:sage [2008/08/08(金) 17:31:57 ID:79kn61a7]
- 作るゲームにもよる
例えば等速処理したいときとかどうする
- 862 名前:名前は開発中のものです。 mailto:sage [2008/08/08(金) 21:56:47 ID:w2HHE1WB]
- ああなるほど。
処理落ちしても、ゲーム速度は変わらない設計なら当然タイマー使用のほうになるのか。
- 863 名前:名前は開発中のものです。 mailto:sage [2008/08/10(日) 14:19:34 ID:u1XmHl+X]
- 俺もやりたいんだけど1フレームごとにカウントってどうやるの?
- 864 名前:名前は開発中のものです。 mailto:sage [2008/08/10(日) 18:37:29 ID:EcZynTEp]
- while (1) {
ゲームループ実行(); VSYNCを待つ(); カウント変数++; } 基本的にはこれだけ
- 865 名前:名前は開発中のものです。 mailto:sage [2008/08/10(日) 23:22:09 ID:u1XmHl+X]
- >VSYNCを待つ();
ってなんですか?
- 866 名前:名前は開発中のものです。 mailto:sage [2008/08/11(月) 18:10:04 ID:g7MMOmCL]
- もうwindowsプログラミング以前の低次元のことだから他のスレいきなよ
|

|