1 名前:名前は開発中のものです。 mailto:sage [2007/12/12(水) 23:06:39 ID:Ns2HwhRB] Cを習得した程度のスキルでも、 GUIのゲームを比較的容易に作成する事を可能にする、 「DXライブラリ」に関するスレッドです。 DXライブラリの詳細ついては homepage2.nifty.com/natupaji/DxLib/ を参照して頂きたい。 DXライブラリに関するテクニックなどの情報交換などを行う事で、 多くのDXライブラリユーザのスキルの向上に役立てたら幸いです。
135 名前:名前は開発中のものです。 [2008/02/15(金) 23:32:35 ID:XAXzf6Jj] >>127 、128 ありがとうございます。
136 名前:名前は開発中のものです。 mailto:sage [2008/02/16(土) 20:39:10 ID:yYTsC494] DXライブラリ3Dβを VisualC 6.0で やりたいのだが どうやればいいのか 教えてください。
137 名前:50 mailto:sage [2008/02/16(土) 21:12:15 ID:HZPD09Yw] 体調を崩し2日寝込んでいました。 まだ頭が上手く回りませんが・・。 >>129 さん そんなエラーが出るんですか? 良ければ開発環境を詳しく教えてください。 >>136 さん 6.0は使用経験が無いのでちょっと良く分からないです・・
138 名前:名前は開発中のものです。 mailto:sage [2008/02/17(日) 14:23:53 ID:XZCo5WTC] >>136 プロジェクトファイルをテキストエディタで開いて何がリンクされててどのソースが必要か 確認してそれをそのまま6.0のでやればいいよ
139 名前:名前は開発中のものです。 mailto:sage [2008/02/18(月) 16:14:11 ID:0NsXAvH0] >>137 129です。BETA8では、普通にコンパイル出来、うごいた。 エラーがでたやつをもう一度やってみたらコンパイル出来なかった なんでかな VC++ Express Edition2005 (はじめて使ってみた)
140 名前:126 mailto:sage [2008/02/18(月) 22:05:33 ID:2TWjsJUr] どうも、>>126 です。作るものにもよるとは思うのですが、実際にゲーム会社などでもDXライブラリを使っていたりするのでしょうか?? 自分は将来そういう仕事につきたいと思い勉強をしているのですが、気になったので・・・
141 名前:名前は開発中のものです。 mailto:sage [2008/02/18(月) 22:13:39 ID:Wl8axOrh] ゲーム会社では使わん
142 名前:名前は開発中のものです。 mailto:sage [2008/02/18(月) 22:56:39 ID:aRjMeg92] DX自体そういったプロ用途は一切考慮して作られてないし。
143 名前:126 mailto:sage [2008/02/18(月) 23:02:14 ID:2TWjsJUr] ではプロの方たちはどういったもので作っているのでしょうか??
144 名前:名前は開発中のものです。 mailto:sage [2008/02/18(月) 23:33:46 ID:Wl8axOrh] とりあえずDXライブラリを勉強してゲームを何本か完成させるといい。 ライブラリはたいした問題じゃないから。
145 名前:名前は開発中のものです。 mailto:sage [2008/02/18(月) 23:35:56 ID:7tiGy6L5] ゲームの作り方がわかればどうにでもなるもんだ
146 名前:名前は開発中のものです。 mailto:sage [2008/02/18(月) 23:46:50 ID:TpuEiTEb] 逆に聞きたいが、どの会社に入ってどんなゲームを作りたいんだ? まぁ、DXライブラリで作れるレベルのゲームなら ライブラリそのものから自作するのが普通だよな 3Dバリバリになってくると、ミドルウェアの購入を検討するかもしれんが… そもそも、PCゲーを作ってるのはファルコムかエロゲぐらいしかしらねぇ… あとはねとげか?
147 名前:名前は開発中のものです。 mailto:sage [2008/02/18(月) 23:53:41 ID:7tiGy6L5] 実はカプコンがすごい
148 名前:名前は開発中のものです。 mailto:sage [2008/02/19(火) 00:09:09 ID:z2VaPk26] プロの方々は基本自社の開発部門が作成したライブラリを利用します。
149 名前:名前は開発中のものです。 mailto:sage [2008/02/19(火) 00:10:33 ID:IcyEM27M] プロの方々はその場のノリと勢いで直接DirectXを利用します。
150 名前:50 mailto:sage [2008/02/19(火) 00:44:48 ID:Aqd0JPlI] >>139 さん 多分ベータ5以前の古いバージョンだったのでは無いでしょうか? それか>>134 さんの言うALT+F7で開くC/C++→コード生成→ランタイムライブラリが マルチスレッド(/MT)状態になっていたとか。。 (本家DXライブラリではこの設定にする必要がありましたが、 DXライブラリ3Dではこの設定にするとコンパイルできません。 でもデフォルトの設定のままでOKなので導入の手引きには掲載していないですが) まぁ動いているなら今更なので気にしなくて大丈夫だと思います。 >>140 さん アマチュアの意見なので参考程度にしておいて欲しいのですが、 私も1年半前にDXライブラリでゲームプログラミングに入門してそれを足がかりに 色々技術を吸収していったクチなので、ライブラリや使う技術は何でもいいので とにかく色々作品を作ってみるといいと思います。完成したら作品をオープンソースに するとソースコードがいつまでも頭に残りやすいのでさらにいいかもしれません。 もしまだ中学生とかなら少し遠回りしてHSPもいいのではと個人的に思ったりしていますが・・。 >>147 さん MTフレームワークとかいうやつでしたっけ?バイオ5とかの。 どんなのか一度くらい拝んでみたいです。
151 名前:名前は開発中のものです。 mailto:sage [2008/02/19(火) 08:12:59 ID:7nQF2ZwG] >>150 139です。 動かなかった方をマルチスレッド(/MD)に替えてみたら コンパイル通りました お騒がせしました。
152 名前:126 mailto:sage [2008/02/19(火) 12:43:37 ID:TX94i0/5] >>144 〜>>149 さん いろいろありがとうございます。とりあえず何か一つくらい作れるくらいになってみようと思います。また分からないことがあれば質問させてくださいね
153 名前:名前は開発中のものです。 mailto:sage [2008/02/20(水) 18:35:04 ID:2XUwUXxz] 前使ってたとき妙にCPU使用率が高くなると思ったんだけど どういう仕組みになってる?
154 名前:126 mailto:sage [2008/02/20(水) 23:48:36 ID:T3SELVJu] どうも。 こんな僕に、なにかオススメの本はないでしょうか?とりあえず学びながらゲームを作っていくことが出来る、というものがうれしいです。 ちなみに今は「アクションゲームプログラミング 藤田 和久」という本がいいのでは?と思っているのですが、必要なもの(アマゾンレビュー参照)にDirectX9 SDK・Platform SDKと、聞いたことの無いものがあるので悩んでおります・・・ どうかアドバイスをお願いします。
155 名前:名前は開発中のものです。 mailto:sage [2008/02/21(木) 00:03:03 ID:QvK3uI1X] >>150 MTフレームワークとは行かないけど、UnrealTournament3やらHalf-Life2・Crysis・Doom3・Call of duty4 等々の海外PCゲーならゲームさえ買えば拝めるぞ。実際にそれを元手にゲームを作って製品化された ケースもあるし。向こうの連中は、時間と根性と愛が凄い。 >>126 まぁ、DXライブラリは書籍まで出ているのでゲームライブラリとしては使いやすいと思う。 DXライブラリの制作者のHPにも載っていたが ・「14歳からはじめるC言語わくわくゲームプログラミング教室」 ・「14歳からはじめるC++ わくわくゲームプログラミング教室」 ・「14歳からはじめるリアルに動く!ゲーム物理プログラミング教室 C言語編」 初心者向けゲームライブラリ解説書としては出血大サービスしている様なレベル。
156 名前:名前は開発中のものです。 mailto:sage [2008/02/21(木) 00:07:50 ID:c8uZTMYe] >・「14歳からはじめるC++ わくわくゲームプログラミング教室」 これはCを使える前提で書かれてるから初心者はやめたほうがいい
157 名前:名前は開発中のものです。 mailto:sage [2008/02/21(木) 00:17:24 ID:QvK3uI1X] 書いた奴が言うのも何だが、C言語でも結構前提意識は強い方ですな。基本書は有る上勉強した方が良い罠。
158 名前:126 mailto:sage [2008/02/21(木) 01:57:17 ID:vC78HCyB] とりあえず自分は やさしいC++第2版という本で基本的な勉強をしています。 こういうのって似たような本がいっぱいあるんですね…当たり外れが多そうですね。
159 名前:50 mailto:sage [2008/02/21(木) 03:11:35 ID:d9wnlOLj] >>155 さん そうなんですか?いい情報をありがとうございます。 調べてみたら海外のゲームにはMODが存在するものが多いようですね。 今の私のPCじゃ推奨スペックに達していないのでいずれ触ってみようと思います。 >>158 さん それ1年ほど前に私も使ってました。C++の入門書は4冊ほど (やさしいC++、C++の絵本、明解C++、独習C++) 買って5:10:6:9位の割合で読んで、個人的には導入部はC++の絵本が 分かりやすかったかなと思ったりしています。でもやさしいC++もいい本だと思いますよ。
160 名前:126 mailto:sage [2008/02/21(木) 12:08:11 ID:vC78HCyB] >>159 さん たくさん持ってるんですね。絵本かぁ〜…なんか面白そうですね
161 名前:名前は開発中のものです。 mailto:sage [2008/02/23(土) 02:01:36 ID:n/EC8VLW] DXライブラリ3Dってどうなったの?
162 名前:名前は開発中のものです。 mailto:sage [2008/02/23(土) 02:54:22 ID:jbB5M8UJ] 「DXライブラリ3D」でこのスレ検索したらいいんじゃね?
163 名前:50 mailto:sage [2008/02/23(土) 05:43:13 ID:v30yPbpo] >>160 さん 規模の大きな古本屋とか図書館に行ってもいろいろ本が手に入ったりするので よさそうなのがあったら何でもトライしてみるといいと思います。応援しています。 >>161 さん 続いていますよ。詳しくはサイトの更新履歴にも今までの履歴を載せています。
164 名前:126 mailto:sage [2008/02/23(土) 17:37:54 ID:P0melG7o] >>163 ありがとうございます。頑張ります!!
165 名前:名前は開発中のものです。 [2008/02/23(土) 19:49:16 ID:dwAlKyqQ] いつの間にこのスレこんなにのびてんだよ・・・
166 名前:名前は開発中のものです。 mailto:sage [2008/02/23(土) 20:20:24 ID:n/EC8VLW] ありがとう神さま
167 名前:名前は開発中のものです。 mailto:sage [2008/02/23(土) 22:21:11 ID:t2RNXHyS] >>50 に期待カキコ。....〆(・ω・` )
168 名前:50 mailto:sage [2008/02/23(土) 23:47:51 ID:n/EC8VLW] >>167 どうもどうも
169 名前:名前は開発中のものです。 mailto:sage [2008/02/23(土) 23:56:49 ID:pfdSWKrQ] これは一体
170 名前:名前は開発中のものです。 mailto:sage [2008/02/24(日) 00:11:49 ID:8fPwe+HI] (´・ω・) 頭がカワイソス
171 名前:50 mailto:sage [2008/02/24(日) 05:29:34 ID:bAaCNQDb] 初の偽物ですね・・。 まぁトリップを付ける気はあまり起きないのですが。。 どれが偽物なのかは想像にお任せしますw
172 名前:名前は開発中のものです。 [2008/02/24(日) 09:42:19 ID:gPT1EW+g] 餌から釣り針が見えてますよ
173 名前:50 ◆GmgU93SCyE mailto:sage [2008/02/25(月) 20:30:02 ID:PBPhXVWX] 何か上を見るとカオスなことになってるので今更ながらトリップをつけることにしました。 >>167 さん どうもありがとうございます。
174 名前:126 mailto:sage [2008/02/25(月) 22:44:04 ID:J8Foetq/] どうも。質問させてください。一つ目のソースがエラーで出て、二つ目は問題ないです。しかしなぜかが分かりません。定義する場所でこんなに変わってくるものなのでしょうか? #include "DxLib.h" struct buta{ int x,y; }; buta pipu; pipu.x=320; pipu.y=240; char Key[256]; int PIPURU[16]; int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){ if( ChangeWindowMode(TRUE) != DX_CHANGESCREEN_OK || DxLib_Init() == -1 ) return -1; //ウィンドウ化と初期化処理 SetDrawScreen(DX_SCREEN_BACK); //裏画面に設定 LoadDivGraph("pipuru.png",16,4,4,32,32,PIPURU);//画像ピプル読み込み while(!ProcessMessage() && !ClearDrawScreen() && !GetHitKeyStateAll( Key ) && !Key[KEY_INPUT_ESCAPE]){ //↑メッセージ処理 ↑画面をクリア ↑キーボード入力状態取得 ↑ESCが押されると終了 if( Key[ KEY_INPUT_RIGHT ] == 1 ) //右ボタンが押されたら pipu.x++; DrawGraph(pipu.x,pipu.y,PIPURU[0],FALSE); ScreenFlip(); //裏画面を表に反映 } DxLib_End(); return 0; }
175 名前:126 mailto:sage [2008/02/25(月) 22:46:32 ID:J8Foetq/] #include "DxLib.h" struct buta{ int x,y; }; char Key[256]; int PIPURU[16]; int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){ if( ChangeWindowMode(TRUE) != DX_CHANGESCREEN_OK || DxLib_Init() == -1 ) return -1; //ウィンドウ化と初期化処理 buta pipu; pipu.x=320; pipu.y=240; SetDrawScreen(DX_SCREEN_BACK); //裏画面に設定 LoadDivGraph("pipuru.png",16,4,4,32,32,PIPURU);//画像ピプル読み込み while(!ProcessMessage() && !ClearDrawScreen() && !GetHitKeyStateAll( Key ) && !Key[KEY_INPUT_ESCAPE]){ //↑メッセージ処理 ↑画面をクリア ↑キーボード入力状態取得 ↑ESCが押されると終了 if( Key[ KEY_INPUT_RIGHT ] == 1 ) //右ボタンが押されたら pipu.x++; DrawGraph(pipu.x,pipu.y,PIPURU[0],FALSE); ScreenFlip(); //裏画面を表に反映 } DxLib_End(); return 0; } 長々と見にくいソースをすみません。何故ダメかを詳しく教えてくれればうれしいです。
176 名前:名前は開発中のものです。 mailto:sage [2008/02/25(月) 22:56:21 ID:x5b49b15] どこでエラーが出たかくらい書けるだろ 日本語が不明だからエスパーすると struct buta{ int x,y; }; buta pipu; ←これは宣言 pipu.x=320;←これは処理 pipu.y=240;←これも処理 わかるよな?
177 名前:名前は開発中のものです。 mailto:sage [2008/02/25(月) 23:02:24 ID:x5b49b15] buta pipu = { 320,240 }; 初期化したいならこうとでも書いておけ
178 名前:名前は開発中のものです。 mailto:sage [2008/02/26(火) 00:48:56 ID:FRQ5rRB+] >>174-175 butaをtypedefしてないとか? typedef struct buta{ int x,y; }buta; みたいな感じで。 よくソース読んでないから分からんけど。 因みに俺は構造体使うときは必ずtypedefしている。
179 名前:126 mailto:sage [2008/02/26(火) 01:11:41 ID:LnSY+BT3] ビルド?したときにエラーみたいになります。多分エラーはpipu.x=〜、pipu.y=〜のところだと思います。 >>176 さん …すいません。よく分からないです…。 >>177 さん 初期化したいというかよく分からないのですが、とりあえず基本となる値を決めたかったのですが…よく分からなくなってしまい…。 >>178 さん typedefですか〜。…typedefがどういうものなのか調べてみます…。 二つ目のソースなら問題なく動くのですが理由がわからないのは嫌だったので
180 名前:名前は開発中のものです。 mailto:sage [2008/02/26(火) 01:25:57 ID:WaIh8C19] >>178 C言語時代の化石乙 C++から、お前がやってるそれを自動的にしてくれるようになった >>179 pipu.x=320; pipu.y=240; この2行消せって事だ
181 名前:名前は開発中のものです。 mailto:sage [2008/02/26(火) 03:40:37 ID:opOCJbaI] 久しぶりに見に来たら、何やら面白そうな物作ってるみたいですね。 埃被ってるVS起動して、弄って遊んでみようかなぁー
182 名前:名前は開発中のものです。 mailto:sage [2008/02/26(火) 04:54:55 ID:Do4X3wBs] DXライブラリ3DはCPU使いすぎジャマイカ? SeleneとかIrrlichtは5%の内容を90%も使ってる 3Dにするなら簡単も重要だけど速いも重要だと思うんだ がんばれ
183 名前:50 ◆GmgU93SCyE mailto:sage [2008/02/26(火) 13:57:52 ID:Jpu7ixkL] >>182 さん サンプルは私の環境での実行速度を常に一番早い状態でテストするために実行FPSを かなり高めに設定しているので多くの場合私の環境でもPCが貧弱なのでどうしても処理が追いつかず CPU使用率はフル回転になってしまって100%近いのですが、mL.AdjustFPSのところの値を下げると 30%程度にはできます。 (そうした場合はモーションなどの増やす時間値もそれに合わせないとスローモーに見えてしまいますが) とは言え、おっしゃられる通り、簡単さを優先した仕様上、他のライブラリと同等の高速性を実現するのは 難しい面があるので、遅くなりすぎないようにはしようと思います。
184 名前:126 mailto:sage [2008/02/26(火) 14:18:49 ID:LnSY+BT3] >>180 さん なるほど。ありがとうございます
185 名前:178 mailto:sage [2008/02/26(火) 14:36:26 ID:FRQ5rRB+] >>180 >C言語時代の化石乙 >C++から、お前がやってるそれを自動的にしてくれるようになった 恥ずかしながら知らなかった。 が、言い訳させてもらうとそれは改悪だ。 JAVAなどでは変数を定義しただけで勝手に0クリアされる為、0クリアを忘れた場合でも正常に動作する場合がある。 しかし、そうした機能にプログラマが甘えることにより、ソフトウェアの品質が向上するかもしれないが、 その結果にプログラマの品質が低下してしまい、言語が変わっただけで使い物にならなくなる、 低品質なプログラマを量産する事になる。 (うちの大学教授の理論を引用。) ですから私はtypedef宣言が本来必要な場合には明記します。 それが「動くだけで良いプログラム」と「可読性の良いプログラム」の分岐点の一つとなる事でしょう。 だから>>179 はtypedefするニダ! 以上火病でした。
186 名前:名前は開発中のものです。 mailto:sage [2008/02/26(火) 21:38:30 ID:WaIh8C19] C++だと、コンストラクタあるから、POD型ならしゃーないにしても 非POD型は自動初期化に身を任せるしかないんだけどな… そこで、memsetなんか使った日にはvfptr潰してえらい目にあうぞ
187 名前:126 mailto:sage [2008/02/27(水) 00:09:17 ID:m5mBCwej] 何度もすみません・・・キャラが動いて、壁(hantei[]の1)より先には進めない、というものを作っているのですがどうしても左に移動したときがうまくいきません。 右の壁にいったときは問題ないのですが、左の壁の場合は歩く途中の動作中にキャラが止まってしまいます。ちなみにこの間でもFPS関数は動作しております。長すぎるので2回に分けて書き込ませていただきます。 #include "DxLib.h" struct buta{ int x,y,img,muki,flag; }; int RefreshTime; int count=0,FpsTime[2]={0,},FpsTime_i=0; int color_white; double Fps=0.0; char Key[256]; int kabe_e; int PIPURU[16]; int hantei[20] = { 1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1 } ; void SetColor(){ color_white=GetColor(255,255,255); return; } void FpsTimeFanction(){ if(FpsTime_i==0) FpsTime[0]=GetNowCount(); //起動〜1周目の時間 if(FpsTime_i==49){ FpsTime[1]=GetNowCount(); //1周目〜50周目の時間 Fps=1000.0f/((FpsTime[1]-FpsTime[0])/50.0f);//50周分の平均を出す FpsTime_i=0; //平均を出した後カウントをリセット }else FpsTime_i++; if(Fps!=0) DrawFormatString(565,460,color_white,"FPS %.1f",Fps);//FPSを表示 return; }
188 名前:126 mailto:sage [2008/02/27(水) 00:12:07 ID:m5mBCwej] int can_or_cannot(int x,int y,int muki){//進む方向が通れるか通れないかを判定 if(muki==2)//左向きなら if(hantei[x/32-1]==1)//通れないなら return 1;//エラー if(muki==1)//右向きなら if(hantei[x/32+1]==1)//通れないなら return 1;//エラー return 0;//正常 } int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){ if( ChangeWindowMode(TRUE) != DX_CHANGESCREEN_OK || DxLib_Init() == -1 ) return -1; //ウィンドウ化と初期化処理 buta pipu; pipu.x=320; pipu.y=256; pipu.flag=0; pipu.muki=0; kabe_e=LoadGraph("kabe.png"); SetDrawScreen(DX_SCREEN_BACK); //裏画面に設定 LoadDivGraph("pipuru.png",16,4,4,32,32,PIPURU);//画像ピプル読み込み
189 名前:126 mailto:sage [2008/02/27(水) 00:14:13 ID:m5mBCwej] while(!ProcessMessage() && !ClearDrawScreen() && !GetHitKeyStateAll( Key ) && !Key[KEY_INPUT_ESCAPE]){ RefreshTime=GetNowCount(); //今の時間を取得 FpsTimeFanction(); if(pipu.x%32==0&&pipu.y%32==0){ pipu.flag=1; if( Key[ KEY_INPUT_UP ] == 1 ) //上ボタンが押されたら pipu.muki=3; else if(Key[KEY_INPUT_LEFT]==1) pipu.muki=2; else if(Key[KEY_INPUT_DOWN]==1) pipu.muki=0; else if(Key[KEY_INPUT_RIGHT]==1) pipu.muki=1; else pipu.flag=0; } if(pipu.flag==1) //もし歩くなら if(can_or_cannot(pipu.x,pipu.y,pipu.muki)==1)//行き先が歩けないなら pipu.flag=0; //歩かないフラグを立てる。 if(pipu.flag==1){ if (pipu.muki==3) pipu.y--; else if(pipu.muki==2) pipu.x-=2; else if(pipu.muki==0) pipu.y++; else if(pipu.muki==1) pipu.x+=2; } すみません、4回になりそうです。ながながとすみません・・・
190 名前:126 mailto:sage [2008/02/27(水) 00:14:37 ID:m5mBCwej] pipu.img=PIPURU[(pipu.x%32+pipu.y%32)/8+pipu.muki*4]; DrawGraph(pipu.x,pipu.y,pipu.img,TRUE); ScreenFlip(); //裏画面を表に反映 count++; while(GetNowCount()-RefreshTime<17);//1周の処理が17ミリ秒になるまで待つ } DxLib_End(); return 0; }
191 名前:名前は開発中のものです。 mailto:sage [2008/02/27(水) 08:01:50 ID:tzifsiC4] x/32-1 が0になる条件は x=32〜63 つまり、x=63になった瞬間、もう0番目の壁にぶつかってるんだよ
192 名前:126 mailto:sage [2008/02/27(水) 13:48:20 ID:9wtxnZrA] >>191 [x/32ー1]の結果は、hantei[]の中身なので、例えば[x/32ー1]==1の計算の結果が8だとしたら、hantei[8]となるので、hanteiの八番目に1が入っているか?ってことです。…よね?間違ってたらすみません
193 名前:名前は開発中のものです。 mailto:sage [2008/02/27(水) 14:42:16 ID:r6hHH13Q] hentai[i]
194 名前:名前は開発中のものです。 mailto:sage [2008/02/27(水) 14:43:36 ID:2UlhBHC9] わからないならそーゆーコード組むなよ
195 名前:名前は開発中のものです。 mailto:sage [2008/02/27(水) 20:01:15 ID:tzifsiC4] >>192 63/32-1 がいくつになるのか表示してみろ
196 名前:126 mailto:sage [2008/02/27(水) 22:03:24 ID:9wtxnZrA] >>194 さん あるサイトを参考にしながらその通りにやっているはずなのですが、こうなっちゃいました…。 >>195 さん 多分0だと思います。
197 名前:名前は開発中のものです。 mailto:sage [2008/02/27(水) 22:32:11 ID:tzifsiC4] ソース丸々貼り付ける馬鹿は放置した方がいいんだろうが、まぁ暇なんで x/32-1 って部分ををx/32 に書き換えろ 1ドットめり込むが、今よりましだろ
198 名前:126 mailto:sage [2008/02/27(水) 23:17:08 ID:Lmz6Mp6I] >>197 さん ・・・無理でした・・・画像がサイズがおかしいのでしょうか・・分からない・・。右は問題ないのに左がってのがよく分からないです。 別の方法でやってみることにします・・・。手間をかけさせてすみませんでした。
199 名前:126 mailto:sage [2008/02/28(木) 23:34:59 ID:lrVcbRPz] どうも。結局 } の位置がおかしいだけでした・・・orz・・・ 書き込み3回目の16行目の}を19行目の後につけると上手くいきました。本当にご迷惑をおかけしましたm(_ _)m
200 名前:名前は開発中のものです。 mailto:sage [2008/02/28(木) 23:37:42 ID:lyjUYwSe] なんだそのオチwwwwww
201 名前:名前は開発中のものです。 mailto:sage [2008/02/28(木) 23:58:39 ID:FQsD2ZWz] #゜盆゜) チッ
202 名前:名前は開発中のものです。 mailto:sage [2008/02/29(金) 09:49:34 ID:22Ye9aiQ] だまれクソガキ!
203 名前:名前は開発中のものです。 mailto:sage [2008/03/01(土) 01:30:34 ID:jHbAeu6Y] ママのミソニをガツガツたべるのよ ママの
204 名前:名前は開発中のものです。 mailto:sage [2008/03/01(土) 23:51:58 ID:7W3pOYl3] 現在メニュー画面を作ってるんですが カーソルキーを押すとものすごい勢いで下の選択肢までいってしまいとても選択しにくいです; カーソルキーを押すと選択肢を1個ずつ選択したいのですが、どういう風に制御したらいいのでしょうか?
205 名前:名前は開発中のものです。 mailto:sage [2008/03/01(土) 23:56:18 ID:JAQ9m5p4] 前回のキーの入力状態を覚えておいて、 前回は押されてない、かつ、今回は押されている ならカーソルを移動 みたいにすれば?
206 名前:名前は開発中のものです。 mailto:sage [2008/03/01(土) 23:57:07 ID:op6e8BAL] キーを押したときにフラグを1にする キーを離したときにフラグを0にする フラグが0の時のみキー入力を受け付ける もしくは キーを押したときにカウンタをセットする カウンタが0の時のみキー入力を受け付ける カウンタが0以外の時は、常にカウンタが減少する
207 名前:名前は開発中のものです。 mailto:sage [2008/03/02(日) 00:12:44 ID:VhKgaVm5] >>205 ,206 ありがとうございました フラグ使えばよかったんですね^^;
208 名前:名前は開発中のものです。 mailto:sage [2008/03/02(日) 02:30:34 ID:VhKgaVm5] すみません; もう一つ質問です。 ソースファイルを2つ以上に分けたいのですが 元々のソースファイルで定義した変数などは二つ目以降のほうでは再定義しないと使えないのでしょうか?
209 名前:名前は開発中のものです。 mailto:sage [2008/03/02(日) 02:42:30 ID:fbxb/49s] それはここで聞くことじゃないだろう。 externでググってみろ。 ちなみに、「定義」は一回しかできない。だっけ?
210 名前:名前は開発中のものです。 mailto:sage [2008/03/03(月) 15:45:08 ID:EDwm2w/G] DXライブラリスレで聞くことじゃありませんでしたね>< ありがとうございます。
211 名前:名前は開発中のものです。 mailto:sage [2008/03/04(火) 04:23:07 ID:XzVTChSu] 最近プログラミングの勉強を始めたんですが、質問があります かなり黒に近い画像についてなんですが ウィンドウモードで起動したときは表示されるのに フルスクリーンモードで起動したときには表示されない(透明になってしまう)という現象が起きてしまいます SetGraphModeでカラービット数を16から32にしたところとりあえず解消されたんですが 理屈が気になって夜も寝られないので誰か教えてください あと直接関係の無いことなんですが 他のソフトに比べて自分の作ったソフトはやたら残像が気になります どういう条件だと残像がでやすい等、解る方がいたらご教授願えませんか?
212 名前:名前は開発中のものです。 mailto:sage [2008/03/04(火) 05:54:27 ID:vE/cGK1a] 16ビットだと一番近い色になるから透明色の黒と同じになるんだよ ウィンドウモードはいくら16ビット指定してても 画面モードが32ビットならそっちにひきづられる あと、教授する気はない
213 名前:名前は開発中のものです。 [2008/03/04(火) 15:11:44 ID:sCnHkz0D] おちんちんびろ〜ん
214 名前:名前は開発中のものです。 mailto:sage [2008/03/04(火) 16:13:23 ID:sCnHkz0D] 投稿先まちがえた すいませんでした
215 名前:名前は開発中のものです。 mailto:sage [2008/03/04(火) 22:29:59 ID:XzVTChSu] >>212 ありがとうございます 大体解りました
216 名前:名前は開発中のものです。 mailto:sage [2008/03/05(水) 00:07:48 ID:UpAWpF+1] >>211 60FPSじゃないから? 30とか20だと、3Dだと気にならないけど2Dだとかくかくする。 あるいは描画タイミングを考えてないのでは 垂直回帰線割り込み中に画像を更新しないと。
217 名前:名前は開発中のものです。 mailto:sage [2008/03/06(木) 13:20:46 ID:BuKXzo6D] >>216 レスありがとうございます 垂直回帰線割り込み中・・・ってのは正直よくわからないのですが、 FPSはScreenFlip()をループの最後に付けてリフレッシュレートと同じにしてあります DXライブラリ置き場のゲーム開発講座を参考にしてるので問題ないとおもいます
218 名前:名前は開発中のものです。 mailto:sage [2008/03/09(日) 00:57:39 ID:giCaDUuD] 1週間前からDXライブラリを始めた者です。 作っていて思ったのですが、画像を貼り付けるときにどのぐらいの数値を入れたら どこらへんに表示されるか、というツールがあればいいかなと思ったのですが そういうツールってありますか?
219 名前:名前は開発中のものです。 mailto:sage [2008/03/09(日) 01:31:47 ID:9NfoINcs] >>218 paint
220 名前:名前は開発中のものです。 mailto:sage [2008/03/09(日) 06:09:57 ID:EtSoXOKU] てか、仮にそんなツールがあったとしてもそれで調べて数値入力って手間が面倒 真ん中に表示したけりゃ x = (640 - width) / 2; y = (480 - height) / 2; って感じで計算式で書くほうが多いしな
221 名前:名前は開発中のものです。 mailto:sage [2008/03/11(火) 07:49:34 ID:AU7mnU6+] おれのちんちん3cm
222 名前:名前は開発中のものです。 mailto:sage [2008/03/11(火) 10:03:18 ID:aX3Pcn7r] もし解像度変わるフルスクリーンだとしたら、そもそもリフレッシュレートが低下してたりしないか
223 名前:名前は開発中のものです。 mailto:sage [2008/03/13(木) 18:08:40 ID:5nuIPPAq] ウインドウ出すだけのプログラムなのに デバッグするとPCフリーズする時がある 前はこんな事なかったのになあ
224 名前:名前は開発中のものです。 mailto:sage [2008/03/15(土) 20:21:52 ID:eLS9geKN] スレチかも知れないけどマップエディタのPlatinumの使い方が分からんorz 16ビットでパーツを指定したら2段目が数字がおかしくなる。 2段目の一番左が259番目・・・
225 名前:名前は開発中のものです。 mailto:sage [2008/03/18(火) 14:44:04 ID:xohZmW8l] パーツの番号が256*256で固定だからそれでいいんじゃなかったっけ
226 名前:名前は開発中のものです。 mailto:sage [2008/03/19(水) 19:30:36 ID:xnHHCjpL] 2段目の一番左は256の筈。 ウチでは問題なく動くよ。
227 名前:名前は開発中のものです。 mailto:sage [2008/03/20(木) 14:21:29 ID:A3AMVRXa] DirectX SDKというものを使いたくてダウンロードしようとしたのですが、種類がたくさんあるようでどれをダウンロードすればいいか分かりません。どなたか優しく教えてください。そもそもただのDirectXとどう違うのかも分からないです
228 名前:名前は開発中のものです。 mailto:sage [2008/03/20(木) 14:31:06 ID:tpvwQlhL] SDKは開発者向けのライブラリやファイル群。(DirectXSDK) Runtimeがエンドユーザー向けのファイル群。(DirectXRuntime) とりあえず、最新版・・・といいたいけどファイル削除されてたりするから。 指定されてる日付のSDKが無難。指定なければ最新版でいいと思う。
229 名前:名前は開発中のものです。 mailto:sage [2008/03/20(木) 20:21:03 ID:A3AMVRXa] 親切にありがとう
230 名前:名前は開発中のものです。 mailto:sage [2008/03/22(土) 22:07:35 ID:uQ9EOL6U] ビルドでエラーが出ても、そのままプログラムが起動して Run-Time Check Failure #3 - The variable 't' is being used without being initialized. というエラーが出る事があります(ウインドウモードの場合)。 フルスクリーンでこうなってしまうとキー入力を一切受け付けなくなって電源が切れなくなってしまいます。 どういう理由でこういう事が起こるのでしょうか?Microsoft Visual C++ 2008を使っています。
231 名前:名前は開発中のものです。 mailto:sage [2008/03/23(日) 00:28:36 ID:gXt17wxp] 適当な訳 変数tは初期化されずに使われているぜ 変数tを初期化してから使おうってこった。 なんでフリーズするかはソース見てないからしらね
232 名前:名前は開発中のものです。 mailto:sage [2008/03/25(火) 14:00:40 ID:K823BI6u] このライブラリ使ってるとstringクラス使えないことない?
233 名前:名前は開発中のものです。 mailto:sage [2008/03/25(火) 19:47:36 ID:h1ArVFrf] stl使うときは何たらとヘッダに書いてる
234 名前:名前は開発中のものです。 mailto:sage [2008/03/28(金) 11:39:34 ID:jiphjYhJ] int i ; for( i = 0 ; i < 300 ; i ++ ) { ClearDrawScreen(); // 裏画面のデータを全て削除 LoadGraphScreen( i, 0, "×××.png" , TRUE ) ; //裏画面へ画像を描写 ScreenFlip() ; // 裏画面データを表画面へ反映 } このようにして画像を動かす場合、動かすスピードを遅くする時はSleep関数を使用するのですが、 逆に速く動かしたい場合はどうすれば良いのでしょうか?
235 名前:名前は開発中のものです。 mailto:sage [2008/03/28(金) 12:16:50 ID:zqWlrSL1] >>234 え?ほんとにプログラマなのか?