- 1 名前:名前は開発中のものです。 mailto:sage [2007/12/12(水) 23:06:39 ID:Ns2HwhRB]
- Cを習得した程度のスキルでも、
GUIのゲームを比較的容易に作成する事を可能にする、 「DXライブラリ」に関するスレッドです。 DXライブラリの詳細ついては homepage2.nifty.com/natupaji/DxLib/ を参照して頂きたい。 DXライブラリに関するテクニックなどの情報交換などを行う事で、 多くのDXライブラリユーザのスキルの向上に役立てたら幸いです。
- 598 名前:名前は開発中のものです。 mailto:sage [2008/08/04(月) 00:33:29 ID:0yRulxuI]
- >>596
あーもしかしたらそうなってるかも。 大まかなソース↓ (enemy_move) typedef struct{ int enx; //敵 x座標 int eny; //敵 y座標 int flag; //フラグ int counter; //カウンター } ENEMY; ENEMY move01 = {100,1,0}; (略) void enemy_move_02(){ //x100から左寄りのsin波移動 move02.enx+=sin(PI*move02.eny/80)*5; move02.eny+=1.5f; enemy_img = LoadGraph("date/img/enemy.bmp"); DrawGraph( move02.enx , move02.eny , enemy_img , TRUE ) ; DeleteGraph( enemy_img ) ; } ↑こんな感じのコードをexternでmain.cppの方で動かしてる、main.cppではwhileでこれらをループしてて、エスケープを押すとブレイクするようになってる。 竜神録のサイトを参考にして丸写しじゃツマランから自分で考えて作ってるんだけど、難しいな。
- 599 名前:名前は開発中のものです。 mailto:sage [2008/08/04(月) 00:38:34 ID:7CBzeKTD]
- それだと動かすたびに読み込んで削除してを一々やってる
ゲームループの前に1回だけ読み込んで不要になったら削除
- 600 名前:名前は開発中のものです。 mailto:sage [2008/08/04(月) 00:49:06 ID:0yRulxuI]
- >>599
となると、while文が入る前にexternなりなんなりで読み込みだけを済ませるほうが良いって事? というか全部の使う素材は全部ゲームループする前にメモリに読み込ませた方が良いって事だよね? それだと俺大幅な修正が必要になりそうw
- 601 名前:名前は開発中のものです。 mailto:sage [2008/08/04(月) 01:02:17 ID:SorplbiK]
- >>600
やりたくないんならやらなければ良いよ。学校の授業じゃないんだから。 多分分かってるんだろうけど>>599の言ってる事(内容)は適宜だよ。 修正が必要なら修正するだけだろ 戦わなきゃ現実と
- 602 名前:名前は開発中のものです。 mailto:sage [2008/08/04(月) 01:10:24 ID:Vp8LYTR0]
- >>600
外部ファイルの関数を使うときは、普通はexternを使わないで、プロトタイプ宣言を使うらしいよ。 あと、enemy_imgをNULLで初期化されてるなら、 if ( enemy_img == NULL ) { enemy_img = LoadGraph("date/img/enemy.bmp"; } という怪しげな応急処置で済ますことも可能。
- 603 名前:名前は開発中のものです。 mailto:sage [2008/08/04(月) 03:17:57 ID:2eoeRGcN]
- >>598
龍神録プログラミングの館見て解らない事あるんなら、 そこの掲示板で聞けば ttp://l.huu.cc/board/ 館の質問に限らず何にでも答えてくれるし
- 604 名前:名前は開発中のものです。 mailto:sage [2008/08/05(火) 16:26:30 ID:oHDI2BWt]
- 320x240ドットのゲームの画面出力を640x480のサイズのウィンドウに表示したいのですが、
それをDXライブラリでやる一般的な方法ってありますか? って質問を書いてたらちょうどマニュアルで int SetWindowSizeExtendRate( double ExRate ) ; を見つけられました。 本当にありがとうございました。
- 605 名前:名前は開発中のものです。 mailto:sage [2008/08/05(火) 19:38:02 ID:EpXD5UKo]
- 縦横比をどうにかできる方法があれば凄いんだけどね・・・。
4:3モニタの時代は終わったのかな。 最近ワイドモニタ多すぎ。特にノート。 テストしてもらった知り合いのPCが殆どワイドだったのに驚愕した。
- 606 名前:名前は開発中のものです。 mailto:sage [2008/08/05(火) 20:28:53 ID:CKp+IHYO]
- 歩留まりがいいらしいからね
- 607 名前:名前は開発中のものです。 mailto:sage [2008/08/05(火) 20:57:36 ID:31D+/5a6]
- 横シューを作れという事じゃなかったのか。
- 608 名前:名前は開発中のものです。 mailto:sage [2008/08/05(火) 21:12:24 ID:YYddeISL]
- >>604の方法で拡大すると320*240非対応のディスプレイでフルスクリーン化出来ないし
うちの環境だとアンチエイリアスがかかって見難くなるんで @320*240のサイズで描画 A空のグラフィックハンドルに@を取得 B640*480に拡大して貼り付け ってやってるんだがCPU使用率が跳ね上がる おとなしくSetWindowSizeExtendRateで拡大したほうが良いんだろうか
- 609 名前:名前は開発中のものです。 mailto:sage [2008/08/05(火) 22:32:25 ID:vtCV6T3y]
- 横シューよりドラゴンバスターみたいなアクションがやりたい
- 610 名前:名前は開発中のものです。 mailto:sage [2008/08/06(水) 00:20:08 ID:+mP1DFYH]
- >>608
hpcgi2.nifty.com/natupaji/bbs/patio.cgi?mode=view&no=583
- 611 名前:名前は開発中のものです。 mailto:sage [2008/08/06(水) 20:46:19 ID:e8apu092]
- >>610
かなり改善されたわ dクス
- 612 名前:名前は開発中のものです。 mailto:sage [2008/08/07(木) 21:27:43 ID:BMBqvRRu]
- マップチップ画像を分割で読み込んだ後、それを複数枚横に並べた画像を“描画せず”に1枚の画像としてメモリに格納するにはどうすればいいのでしょうか?
具体的には、たとえばこんな5×3のマップがあるとします(0=山、1=川とする) 0,1,1,1,0 1,1,1,1,1 0,0,0,0,0 この1列目の0,1,1,1,0を描画した結果の絵、つまり「山川川川山」という画像をGHandle[1]に格納(描画せずに)させたいんです。 もしマップチップ1枚の画像サイズが縦横32*32だとすれば、160*32の画像を1枚作ることになります。
- 613 名前:名前は開発中のものです。 mailto:sage [2008/08/07(木) 21:49:24 ID:qrl05lIa]
- >>612
MakeGraph使うんじゃないの?
- 614 名前:名前は開発中のものです。 mailto:sage [2008/08/07(木) 21:51:26 ID:IbgkXEDA]
- 裏画面に描画して、ってやり方じゃダメかな。
何の意味があるのか知らないけど。
- 615 名前:名前は開発中のものです。 [2008/08/07(木) 21:52:01 ID:O800tzRD]
- 普通にLoadGraphでいいじゃん
- 616 名前:名前は開発中のものです。 mailto:sage [2008/08/07(木) 22:09:30 ID:BMBqvRRu]
- やりたいことは・・・ロードランナーでいうと、完全なサイドビューではなく、レンガの上面(キャラクターが乗って触れてる面)も見えるようなビューにして奥行きを出したいんです。
上面を描くのに、まず完全サイドビュー視点のマップ画像を一列分つくって、それを台形のように変形させて(高さも潰して)対応させようかと思いました。
- 617 名前:名前は開発中のものです。 mailto:sage [2008/08/07(木) 22:16:01 ID:BMBqvRRu]
- 普通はレンガの上面はみえないけど・・・
www7.ocn.ne.jp/~bacube/oldgame01/load2_3.gif レンガの上面も見えるようなビューにして奥行きを出したい www7.ocn.ne.jp/~bacube/oldgame01/load2_2.gif 斜め画像を用意しておくのも手ですが、それをせずに済ませたいんです。
- 618 名前:名前は開発中のものです。 mailto:sage [2008/08/07(木) 22:16:51 ID:sPTbyZsz]
- 3D
- 619 名前:名前は開発中のものです。 mailto:sage [2008/08/07(木) 22:24:23 ID:BMBqvRRu]
- あ、上面だけでなくサイドの面も描く必要があるか。
自分の方法だと面倒だな・・・ >>618 たしかに3Dのほうが楽かもしれないですね。 こっちにしようかな 無駄な質問をしてしまったようでみなさん申し訳ないです。
- 620 名前:名前は開発中のものです。 mailto:sage [2008/08/07(木) 22:47:55 ID:qrl05lIa]
- >>612
MakeGraphで作ったグラフィックをSetDrawScreenで指定して書き込めば良いのではないかと思ったけれど、 「3D機能をOFFにしなければいけない」とか「ロックしないといけない」っていうのがあって、めんどくさいな。
- 621 名前:名前は開発中のものです。 mailto:sage [2008/08/08(金) 00:18:40 ID:k2u31CRe]
- 普通にドット絵を描けばいい気がする。
- 622 名前:名前は開発中のものです。 mailto:sage [2008/08/09(土) 21:19:32 ID:5H+GkDR5]
- 画面に描画した内容をまっさらに直したいというだけなら、
ClearDrawScreen()の代わりにDrawBox()などを使用しても問題ありませんか? また、問題ないのでしたら、このふたつは処理速度上、どちらが有利でしょうか?
- 623 名前:名前は開発中のものです。 mailto:sage [2008/08/09(土) 21:38:06 ID:AID2npSx]
- 自分で試せば済む事でしょう。
- 624 名前:名前は開発中のものです。 mailto:sage [2008/08/09(土) 21:44:53 ID:5H+GkDR5]
- >623
動作は確認したのですが、ClearDrawScreen()には、何か目に見える動作意外にも、 役割があるのではと思いまして…
- 625 名前:名前は開発中のものです。 mailto:sage [2008/08/12(火) 00:53:34 ID:F3VDNdY9]
- SetDrawBlendModeの
DX_BLENDMODE_INVSRC が使えないんだけど 俺だけかな・・・ バージョンふるいのかなあ
- 626 名前:名前は開発中のものです。 mailto:sage [2008/08/12(火) 15:36:18 ID:mn/79eK/]
- >>625
使えないって定義がされて無いといわれるんでしょうか? もしそれならヘッダファイルのDX_BLENDMODE_....に あたる部分を探してみては?
- 627 名前:名前は開発中のものです。 mailto:sage [2008/08/12(火) 22:39:16 ID:yxG5mAbd]
- C#でDXライブラリを使っているのですが、画像や音楽の保存場所がわからなく困っています。
初歩的な質問と存じますが、アドバイスをお願いします。 開発環境 Visual C# 2008 Express Edition
- 628 名前:名前は開発中のものです。 mailto:sage [2008/08/12(火) 23:02:09 ID:kcKrfT4b]
- カレントディレクトリに置いたらいいよ。
- 629 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 08:48:19 ID:yFX3V9Dg]
- C#でも使えるのか
すごいなぁ 業務アプリや科学計算ばっかりでゲームとか作ったことないけど 俺もパズルゲーム作ってみようかな
- 630 名前:627 mailto:sage [2008/08/13(水) 11:08:10 ID:7NjPpTlV]
- 教えていただき、ありがとうございます。
カレントディレクトリって、作業中のフォルダですよね? C#の場合ですと、[WindowsFormsApplication1]フォルダでいいのでしょうか? 何度も申し訳ありませんが、よろしくお願いします。
- 631 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 11:22:56 ID:FyPLvjSN]
- C#がどんなのか知らないけどな。
カレントディレクトリってのが作業中のフォルダって認識は合ってる。 ただ「なんの作業中か」を誤解している可能性がある。 例えば、貴方がゲームを作って、そのプログラムが「game.exe」というファイル名で作成されたとしよう。 当然、そのゲームをするにはその「game.exe」を実行するわけだが、 その時、まさにその「game.exe」のあるフォルダが「作業中のフォルダ」になるわけだ。 要するに「カレントディレクトリに置いたらいいよ」ってのは 「実行ファイルと同じとこに置いとけ」という意味だ。
- 632 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 11:42:08 ID:ZEZwt305]
- いやー、その説明はどうかと。
- 633 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 11:42:13 ID:BbNVLc2o]
- ショートカット経由で起動した場合はショートカットの場所がカレントになるだろ
- 634 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 12:10:59 ID:ZEZwt305]
- まあとにかく、リソースの類はファイル埋め込むかEXEの場所に。
カレントをあてにせず、EXEの場所を調べてアクセスするのがいいかな。 書き込む場合はEXEの場所じゃないほうがいい。
- 635 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 12:21:47 ID:yFX3V9Dg]
- カレントディレクトリは、OpenFileDialogを使ったりすると
読み込み先のフォルダに変わったりするから注意した方がいいと思うぞ それが原因で詰まったこともあるから
- 636 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 17:09:46 ID:RJ+2pmNA]
- 適当にカレントディレクトリに置けばいいとか言った。反省はしている。
相対パスでアクセスしたいってことだよね? それとも絶対パスでも画像とかが動かないの? 後者だとお手上げ。 前者なら、多分bin/Debugフォルダが作られてるから、そこに置けばいいよ。
- 637 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 17:31:59 ID:yFX3V9Dg]
- DXライブラリゲームプログラム開発講座を全部読んでみたけど、
すごーーーーーーーく初心者向けの解説だなw まぁこれで十分なのかも知れないけど、 もう少し詳しい中級者レベルのはないのかな
- 638 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 17:40:55 ID:gDnH2Ick]
- 中級者なら自分で考えるか、他の方法知ってる前提なんだろ
- 639 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 18:56:43 ID:R5DuEQYn]
- >>637
DXライブラリについて勉強したいならココダロー l.huu.cc/g/ 龍神録プログラミングの館まで全部理解出来れば相当使いこなせるようになるかと
- 640 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 19:00:40 ID:yFX3V9Dg]
- >>639
おおありがとう こっちはもう少し実践的だね
- 641 名前:627 mailto:sage [2008/08/13(水) 20:13:52 ID:7NjPpTlV]
- 皆さん、教えていただいてありがとうございます。
画像をbin/フォルダの下にあるDebugフォルダに入れたのですが、表示されませんでした。 某サイトのソースをコピーしたのですが、記述が間違ってるのでしょうか・・・ -- ソース -- DX.LoadGraphScreen(0, 0, "char.png", DX.TRUE); 申し訳ありませんが、アドバイスをお願いします。
- 642 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 20:18:45 ID:v0IoKL7W]
- LoadGraphScreen(0, 0, "char.png", TRUE);
- 643 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 23:34:45 ID:ZpXLkfXI]
- >>641
それで、問題が解決できる奴がいたとしたら、そいつはエスパーだよ・・・・・ まさか、それでソースが全部なわけないよな。
- 644 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 23:49:59 ID:RJ+2pmNA]
- >>641
確認したいんだけど、画面は真っ黒になってる? なってなかったらそもそもDXライブラリがちゃんと動いてない。 でも一応動いてるみたいだからそれはないかな……。 あとchar.pngを一回絶対パスで指定してみて。
- 645 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 23:50:43 ID:CMyXDagd]
- >>641
表示されないというのが「エラーが出た」なのか、「何も起きない」なのかすら わからないので、無限の可能性が広がります。 1. ファイル名が間違っている 2. 画像に使ってる色が透過色になってる 3. ファイルが存在しない 4. 画像がセーブできてない(セーブに失敗している) 5. パスの指定がうまくいってない 6. そもそもDXライブラリを初期化できていない 7. ウィンドウが出てない 8. 裏画面に書いたままFLIPしてない 9. メモリが足りない 10. コンパイルしてない、あるいはエラーが出ている 11. 実は環境がMac 12. ライブラリをインストールしてない 13. 使用しているディスプレイ、グラボの仕様/設定上表示できない色を使っている 14. 某サイトのソースにバグ 15. (CPUの)速さが足りない
- 646 名前:名前は開発中のものです。 mailto:sage [2008/08/13(水) 23:52:44 ID:k9pinPn+]
- Releaseフォルダも試してみたら
- 647 名前:名前は開発中のものです。 mailto:sage [2008/08/14(木) 00:10:37 ID:7xrMXFtW]
- プロジェクトファイルだっけ?←拡張子がdspのやつ
とりあえずあれを含んだサンプルを拾ってきて、動くかどうか試してみる。 動くのを確認してからソースをオリジナルに書き換え、フォルダに画像を置いて動作確認。 というのはどうだろう?
- 648 名前:名前は開発中のものです。 mailto:sage [2008/08/14(木) 03:20:37 ID:s4dRQS6A]
- 「横スクロールアクション」を作ってる最中なんだが、
同じカーソルキー二度押しでダッシュさせるサンプルコードを探してるが見つからない。 二度押し判定の仕方を教えてほしいの
- 649 名前:名前は開発中のものです。 mailto:sage [2008/08/14(木) 03:33:41 ID:4cx2dJb5]
- それくらい自分で考えてみようぜ
フラグやカウンタを使えばできる
- 650 名前:名前は開発中のものです。 mailto:sage [2008/08/14(木) 10:06:19 ID:E3jqMQR0]
- >>641
とりあえず動かしたいんだよな? まず、プロジェクトの全部のフォルダにその画像全部コピーして実行してみろよ。 で、表示されたら1つずつ消して実行してみて、どれ消したら出なくなるか試してみるんだよ。 本当はカレントがどこか調べたり、フルパス指定したりするんだけど最初のためしなんだろうから、 それでやってみ。たぶんDebugの一つ上がカレントじゃないかと思う。
- 651 名前:名前は開発中のものです。 mailto:sage [2008/08/14(木) 10:08:06 ID:E3jqMQR0]
- ってbinができてるなら2008じゃなくて2005なのかな。
だったら別の場所かもしれん。
- 652 名前:名前は開発中のものです。 mailto:sage [2008/08/14(木) 12:42:31 ID:E3jqMQR0]
- って、、、、よく見たらC#なのか。
これC#から使うにはちょっとあれだが・・・ bin\Debug に入れたら動いたぞ。 (うちはVista64なんで正確にはbin\x86\Debug)
- 653 名前:名前は開発中のものです。 mailto:sage [2008/08/14(木) 12:45:51 ID:E3jqMQR0]
- ついでに、全ソース。
using System; using DxLibDLL; namespace WindowsFormsApplication1 { static class Program { [STAThread] static void Main() { DX.ChangeWindowMode(DX.TRUE); DX.DxLib_Init(); DX.LoadGraphScreen(0, 0, "char.png", DX.TRUE); DX.WaitKey(); } } }
- 654 名前:名前は開発中のものです。 mailto:sage [2008/08/14(木) 16:59:16 ID:E3jqMQR0]
- しかしDXライブラリを初めて使ってみたが、Vistaと相性悪い?
- 655 名前:名前は開発中のものです。 mailto:sage [2008/08/14(木) 19:47:10 ID:Lwdz3ZLP]
- そもそもVistaだったらDirect3D使うべき
- 656 名前:名前は開発中のものです。 mailto:sage [2008/08/14(木) 22:28:58 ID:husrYnDZ]
- >>654
そんなことないと思うけど。なんか問題あったか???
- 657 名前:名前は開発中のものです。 mailto:sage [2008/08/14(木) 23:20:36 ID:E3jqMQR0]
- あー、入門向けの説明してる画像ずらして表示するやつ、キー入力待ちまで何もでないんだよね
まあ通りがかりに質問見つけてためしに動かしてみただけなので、もうちょっと見てみないと何とも言えないけど。 でもこの龍神録の解説はいいね。xnaに移植してみたくなった
- 658 名前:名前は開発中のものです。 mailto:sage [2008/08/15(金) 10:04:50 ID:c3xnj8Q3]
- >>648
14歳〜、のアクションゲームサンプルに 「ジャンプ時にジャンプキーを受け付けないようにする」って解説がある、参考にしてみては?
- 659 名前:627 mailto:sage [2008/08/16(土) 02:31:00 ID:IJByLJ4E]
- ソースを組み直したら表示されました。
単純なミスをしてたみたいでした。お騒がせしました。 画像ファイルはbin/debugに置くことで表示されました。 皆さん、アドバイスありがとうございました。
- 660 名前:名前は開発中のものです。 mailto:sage [2008/08/16(土) 09:26:28 ID:tLttBDTG]
- >648
入力をキューなりリングバッファなりに貯めて コマンド成立判定の結果で状態遷移なりフラグなり変更
- 661 名前:名前は開発中のものです。 mailto:sage [2008/08/16(土) 10:14:52 ID:QpDIrmnH]
- 「カーソルキー二度押し」とはどういう状況の事なのか、を
考えてみれば自ずと答えは出るだろう。
- 662 名前:名前は開発中のものです。 mailto:sage [2008/08/16(土) 23:31:10 ID:7gLPM7hz]
- DXライブラリで、STLって使えない?
クラスの配列を実装するのにコンテナのvectorを使いたいんだけど、 エラーを吐かれる。 >>232-233で、ヘッダに何か書いてある、と書いてあったから DxLib.hをSTLでテキスト検索掛けたけど (STLを半角にしても全角にしても)引っかからない。 本家掲示板過去ログ↓でそれらしき記述を見つけたけど、 ttp://hpcgi2.nifty.com/natupaji/bbs/patio.cgi?mode=past&no=560 #define DX_USE_VISUALC_MEM_DEBUG ってどこにもないんだよね。 DxLib.hの147行目当たりに DX_USE_VISUALC_MEM_DEBUG があったから それを含む数行のコメントアウトを外してみたけど反応は変わらないし。
- 663 名前:名前は開発中のものです。 mailto:sage [2008/08/16(土) 23:42:01 ID:O36Whzxu]
- >>662
オレは何の問題もなく使えてるよ
- 664 名前:名前は開発中のものです。 mailto:sage [2008/08/16(土) 23:54:42 ID:3Mm4zQJB]
- >>662
(出来る範囲で)エラーメッセージを晒せば、詳しい人がトラブルシュートしてくれるかもよ。
- 665 名前:名前は開発中のものです。 mailto:sage [2008/08/17(日) 01:34:05 ID:ewUKCOWb]
- >>663-664 ありがとう。
>>663 何の問題も無く、とは、DxLib.hをいじったりしないで、ってこと? とりあえず、最低限で組んだソースを晒してみる。 ------ #include "DxLib.h" #include <vector> int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow){ if(DxLib_Init() == -1){ return -1; } SetDrawScreen(DX_SCREEN_BACK); vector<int> x; x.push_back(1); while(CheckHitKey(KEY_INPUT_ESCAPE)==0 && ProcessMessage()==0){ DrawFormatString(0,0,GetColor(255,255,255),"x[0] = %d",x[0]); ScreenFlip(); } DxLib_End(); return (0); } ------
- 666 名前:名前は開発中のものです。 mailto:sage [2008/08/17(日) 01:34:45 ID:ewUKCOWb]
- 長くなったので連投失礼。
>>665のソースで吐かれるエラーは、 ------ \main.cpp(10) : error C2065: 'vector' : 定義されていない識別子です。 \main.cpp(10) : error C2062: 型 'int' は不要です。 \main.cpp(11) : error C2065: 'x' : 定義されていない識別子です。 \main.cpp(11) : error C2228: '.push_back' の左側はクラス、構造体、共用体でなければなりません 型は ''unknown-type'' です。 \main.cpp(14) : error C2065: 'x' : 定義されていない識別子です。 ------ 以上。 あ、環境書いてなかった。 VC++2008Ver9.0の、DXライブラリVer 2.24cです。
- 667 名前:名前は開発中のものです。 mailto:sage [2008/08/17(日) 01:40:34 ID:tqDU34tR]
- >>649,>>658,>>661
とんくす 何となく理解した
- 668 名前:名前は開発中のものです。 mailto:sage [2008/08/17(日) 04:10:10 ID:mR8Ia0CQ]
- >666
俺そんなに詳しいわけでもないんだけど、 std::vector<int> x; これでどうだろう
- 669 名前:名前は開発中のものです。 mailto:sage [2008/08/17(日) 07:39:51 ID:GOwvXjh7]
- >>665
答えは>>668が書いてくれてるけど、 問題の切り分けができるようになった方が良いよ。
- 670 名前:名前は開発中のものです。 mailto:sage [2008/08/17(日) 11:45:33 ID:ewUKCOWb]
- >>668
cinとcout使わないからstdネームスペースを宣言していなかった。 ありがとう。 (っていうか「C++ vector」でググったら最初のページに『vectorはstdという名前空間内にあります。』って書いてあるじゃないか…) >>669 精進します><
- 671 名前:名前は開発中のものです。 mailto:sage [2008/08/17(日) 12:35:36 ID:vVpxXEty]
- using namespace std;
はいつもしとけば
- 672 名前:名前は開発中のものです。 mailto:sage [2008/08/18(月) 13:02:21 ID:BAHHLEa/]
- >>671
ヲイヲィ・・・・ 使わないところで、そうやってnamespace使っちゃだめだろ。 なんのために名前空間なんて概念取り入れてると思ってるんだよwww
- 673 名前:名前は開発中のものです。 mailto:sage [2008/08/18(月) 13:43:37 ID:XHbUdQA2]
- 逆にいつも使わなければ、この手のエラーは最初に食らってて変なとこ探したりしなかっただろうに。
- 674 名前:名前は開発中のものです。 mailto:sage [2008/08/18(月) 15:29:16 ID:IR1SAisJ]
- std名前空間なんて別にusingしといても問題ねーよ
- 675 名前:名前は開発中のものです。 mailto:sage [2008/08/18(月) 21:22:08 ID:XHbUdQA2]
- 今回の質問者には問題あったみたいだがw
- 676 名前:名前は開発中のものです。 mailto:sage [2008/08/19(火) 01:06:47 ID:HNGx9BRt]
- ループ毎に、ClearDrawScreenで画面をきれいにしてから描画していると、
画面の1/3に及ぶ大きなちらつきが出てしまうのですが…解消するには どういった方法がありますか?
- 677 名前:名前は開発中のものです。 mailto:sage [2008/08/19(火) 02:28:18 ID:H5en/Vi4]
- それは本当にClearDrawScreenのせい?
- 678 名前:名前は開発中のものです。 mailto:sage [2008/08/19(火) 03:17:38 ID:HNGx9BRt]
- >677
すみませんでした。グラフィックボードの性能不足のようでした。 スレ汚し失礼しました
- 679 名前:名前は開発中のものです。 mailto:sage [2008/08/19(火) 09:03:29 ID:Ck7KpSlS]
- >>678
本当のグラフィックボードの性能のせい? 裏画面に描画してflipすれば治る類のものかもよ。
- 680 名前:名前は開発中のものです。 mailto:sage [2008/08/19(火) 14:41:54 ID:HNGx9BRt]
- >679
すみません、SetDrawScreenの位置がおかしいのが原因でした。 ありがとうございました。
- 681 名前:名前は開発中のものです。 mailto:sage [2008/08/19(火) 15:45:05 ID:Pc0No+Vn]
- 本当のSetDrawScreenの位置のせい?
(ry
- 682 名前:名前は開発中のものです。 mailto:sage [2008/08/19(火) 20:42:56 ID:H2/ZmzLf]
- お茶吹いたじゃねぇか!
- 683 名前:名前は開発中のものです。 mailto:sage [2008/08/20(水) 03:18:08 ID:bLtEJeoI]
- 同じプログラムを、
解像度1024*768 32bitcolor,フルスクリーン 解像度1024*768 32bitcolor,ウインドウ の両条件で実行したところ、ウインドウモードではfpsが平均して68以上だったのに対し、 フルスクリーンではせいぜい59.8程度で、60を超えることはありませんでした。 さらにSleep(20)のハンデを課して両条件で実行したところ、処理自体はフルスクリーンモード の方が速いということがわかりました。 フルスクリーン時のfpsが頭打ちになっていたのは、垂直同期というのに関係があるんでしょうか?
- 684 名前:名前は開発中のものです。 mailto:sage [2008/08/20(水) 04:09:13 ID:rRA8J1RI]
- うん
- 685 名前:名前は開発中のものです。 mailto:sage [2008/08/20(水) 04:13:55 ID:bLtEJeoI]
- >>684
ありがとうございました!
- 686 名前:名前は開発中のものです。 mailto:sage [2008/08/20(水) 09:29:37 ID:e8oi3kIG]
- 「画面のプロパティ」の「設定」→「詳細」のあたりにリフレッシュレートの設定があると思う。
おそらく60になってるだろうけど、それを70とかに変えて試してみると勉強になるかも。 (ディスプレイやグラフィックボードによっては対応してない場合もあり) あと、↓の命令を使って垂直同期信号待ちを切ってみるのも勉強になるかも。 どうして垂直同期信号待ちが必要とされる場合があるのか解るかもよ。 SetWaitVSyncFlag ScreenFlip関数実行時にCRTの垂直同期信号待ちをするかのフラグセット
- 687 名前:名前は開発中のものです。 mailto:sage [2008/08/20(水) 09:43:38 ID:xrtLaobQ]
- CRTのときは、60と70の差が大きすぎてすぐにリフレッシュレート上げてたけど、
液晶は見た目変わらんから60のまま、なことも多いなあ。
- 688 名前:名前は開発中のものです。 mailto:sage [2008/08/20(水) 18:57:24 ID:bLtEJeoI]
- >686
ありがとうございます。 色々勉強になります。しばらく色々設定いじってみます
- 689 名前:名前は開発中のものです。 mailto:sage [2008/08/25(月) 03:13:19 ID:DGfm1VSy]
- ニュートラル調べればいいだけだと思うよ
- 690 名前:名前は開発中のものです。 [2008/08/28(木) 13:33:11 ID:m65IXGpQ]
- DXライブラリ3Dを使っています
メタセコイアでXファイルをつくりUVマッピングなどチェックをして保存しました LoadModelでそのXファイルを読み込み DrawModelで表示させるようにしましたが 起動すると LoadModel 0番目のテクスチャ C:\...................... TEST.bmp が見つかりませんと でます 対処方法を教えてください
- 691 名前:名前は開発中のものです。 mailto:sage [2008/08/28(木) 13:38:24 ID:TltG6Uz7]
- C:\...................... TEST.bmp はあるの?
- 692 名前:名前は開発中のものです。 [2008/08/28(木) 13:49:15 ID:m65IXGpQ]
- >>691
同じフォルダ内にあるんだけど 他の、サンプルにある Sky1.X は、テクスチャも貼られ表示できました ちなみに Xファイルを開いて、TextureFilename のところを C:\.........TEST.bmp から TEST.bmp に変えると表示されました
- 693 名前:名前は開発中のものです。 mailto:sage [2008/08/28(木) 17:26:33 ID:BAQFIkd7]
- >>692
マルチバイト文字を使用する設定を確認してみてはどうか。 携帯からエスパー。
- 694 名前:名前は開発中のものです。 [2008/08/28(木) 18:50:54 ID:JopJTyIq]
- というかドライブから指定するもんか?
- 695 名前:名前は開発中のものです。 [2008/08/28(木) 21:28:08 ID:dfxzS5Cd]
- 実行されたディレクトリを取得して
そこからの相対パスで書いとくのがいいんじゃないかな
- 696 名前:名前は開発中のものです。 [2008/08/29(金) 18:08:45 ID:f6mFLVdV]
- 結局自力解決したのかどうなのか
- 697 名前:名前は開発中のものです。 [2008/08/29(金) 18:38:30 ID:HzuC4F0t]
- >>696
手直しでファイル名を指定することにしました めんどいね
- 698 名前:名前は開発中のものです。 mailto:sage [2008/08/29(金) 18:41:09 ID:smutsiJt]
- そもそもxにフルパスで書かれるのはどうなんだ?
うちの環境じゃそうならないが・・・
|

|