トップページgamedev
996コメント293KB

DXライブラリ 総合スレッド その10

レス数が950を超えています。1000を超えると書き込みができなくなります。
0001名前は開発中のものです。2011/08/18(木) 17:18:15.54ID:vXmrN4yD
Cを習得した程度のスキルでも、
GUIのゲームを比較的容易に作成する事を可能にする、
「DXライブラリ」に関するスレッドです。
DXライブラリに関するテクニックなどの情報交換などを行う事で、
多くのDXライブラリユーザのスキルの向上に役立てたら幸いです。

【公式】
http://homepage2.nifty.com/natupaji/DxLib/

【過去スレ】
DXライブラリ 総合スレッド
http://pc11.2ch.net/test/read.cgi/gamedev/1197468399/
DXライブラリ 総合スレッド 2008
http://pc11.2ch.net/test/read.cgi/gamedev/1224923873/
DXライブラリ 総合スレッド その3
http://pc11.2ch.net/test/read.cgi/gamedev/1238429676/
DXライブラリ 総合スレッド その4
http://pc11.2ch.net/test/read.cgi/gamedev/1249822550/
DXライブラリ 総合スレッド その5
http://pc11.2ch.net/test/read.cgi/gamedev/1259912953/
DXライブラリ 総合スレッド その6
http://hibari.2ch.net/test/read.cgi/gamedev/1267108154/
DXライブラリ 総合スレッド その7
http://hibari.2ch.net/test/read.cgi/gamedev/1286180687/
DXライブラリ 総合スレッド その8
http://hibari.2ch.net/test/read.cgi/gamedev/1301818631/
DXライブラリ 総合スレッド その9
http://hibari.2ch.net/test/read.cgi/gamedev/1310904069/
0977名前は開発中のものです。2011/11/30(水) 18:04:50.04ID:rLIwVb2D
「むしろ弄ってくれ」がスタンスなオイラはiniファイルにセーブ。
まあ、ハイスコアと隠しステージ出現フラグくらいしか無いけどな。

[Game]
HighScore=10000
SecretLevel=1
Debug=0

こんな感じで。
0978名前は開発中のものです。2011/11/30(水) 18:18:16.55ID:shPTgyIh
>>976
自分がプレイ中のゲームで厨房が改造の話を始めたりすると俺は萎えるけど
そもそも起動中プロセスのメモリいじくれば何でもできちゃうからなー
0979名前は開発中のものです。2011/11/30(水) 19:32:48.28ID:1kartXUk
四角をランダムに傾けたいのですが、どんな方法がありますか?
GetRand(360)と<math.h>をランダムに傾けたいのですがインクルードし、三角関数で頂点を求め・・・
というのは思いつきますが、かなり面倒です。

具体的には↓の動画(素人の実況なので、苦手な方はお手数ですがミュートをお願いします)
http://www.nicovideo.jp/watch/sm13480051
の6:17秒の標的をロックオンした時のエフェクトを作りたいと思っています。
0980名前は開発中のものです。2011/11/30(水) 19:47:24.87ID:rLIwVb2D
>>979
面倒なら、画像として用意しておいて DrawRotaGraph しちゃえば?
0981名前は開発中のものです。2011/11/30(水) 20:05:21.03ID:1kartXUk
>>980
あ、なるほど。こういう使い方ができるのですね
ありがとうございます
0982名前は開発中のものです。2011/11/30(水) 20:30:44.91ID:7fBGf6TY
>>979
ランダムと言うよりは、四角形を回転させながら縮小させている気がする。
位置とタイミングがずれてるのが重なってるからそう見えてるだけで。
0983名前は開発中のものです。2011/11/30(水) 20:38:21.81ID:1kartXUk
>>982
あ、ホントですね。こういうののほうがカッコイイのかなぁ
エフェクトは難しいですね
0984名前は開発中のものです。2011/11/30(水) 20:45:46.65ID:QKMdxPPN
>>979
四角のグラフィックを用意して、DrawRotaGraphで回転させれば良い感じになりそう。
0985名前は開発中のものです。2011/11/30(水) 20:53:00.87ID:OwyyYVWt
面倒って、一度関数化すればいいだけじゃ……?
0986名前は開発中のものです。2011/11/30(水) 23:25:41.92ID:F64/yx6U
>>979
正方形なんだからかなり面倒どころか一番単純じゃない?
現在三角関数がわからないから三角関数の理解が面倒臭いという意味かな?
ぶっちゃけ中心点からランダムなx方向、y方向の距離を取ってやって、
符号変えたりx方向とy方向を入れ替えてやったりすりゃ計算すらしないで正方形の頂点4つ作れるじゃん。

後エフェクトがかっこいいかどうかは少し突っ込みどころ。
0987名前は開発中のものです。2011/12/01(木) 14:08:24.04ID:Yep5bMoD
キーがどれか押されていると関数を実行ということをしたいのですが、
コードが冗長になって困っています
現在は↓のような感じです。

/*キー押下状態の配列*/
char Buf[ 256 ] ;
/*F8キーを押下 処理1*/
if( Buf[ KEY_INPUT_F8 ] == 1 )
{
syori1();
}
/*F7キーを押下 処理2*/
if( Buf[ KEY_INPUT_F7 ] == 1 )
{
syori2();
}
/*F6キーを・・・

これらをまとめたいのですが、何かいい方法はありますか?

/*理想*/
if(・・・ Buf[ KEY_INPUT_F7 ] == 1 || Buf[ KEY_INPUT_F8 ] == 1 || Buf[ KEY_INPUT_F9 ] == 1 ・・・ )
{
syorix();
}

・・・ Buf[ KEY_INPUT_F7 ] == 1 || Buf[ KEY_INPUT_F8 ] == 1 || Buf[ KEY_INPUT_F9 ] == 1 ・・・
の部分をまとめたいのです
それとも
syorix(Buf);
と言う風に配列を渡し、関数を毎回実行するものなのでしょうか
0988名前は開発中のものです。2011/12/01(木) 14:15:29.74ID:cOSg0SVs
関数ポインタ使えばなんとかなりそうじゃね?
0989名前は開発中のものです。2011/12/01(木) 14:26:41.93ID:Yep5bMoD
>>988
ありがとうございます
関数ポインタ挑戦してまみす
0990名前は開発中のものです。2011/12/01(木) 15:32:29.24ID:3DnzThw0
理想とする処理だとsyori1とsyori2の優先順位や両方とも実行させるのかが曖昧じゃね?
syorix(Buf)は最初の処理が関数化されただけかもしれないが結局は細かく分けると一番いい気がする
同じ優先度のキーコードと関数ポインタの構造体配列を作りループで回すと
斜めとか同時押し処理は面倒だけど綺麗にはなるのかも
0991名前は開発中のものです。2011/12/01(木) 22:52:49.54ID:8OKTnJs1
別ファイルにおいてあるキー取得関数がうまく反応しません。
どうしたらいいでしょうか?

Key[256];
int keyclip(){
char tkey[256];
GetHitKeyStateAll(tkey);
for(int i=0;i<256;i++){
if(tkey[i]!=0){
Key[i]++;
}else{
Key[i]=0;
}
}
}

int inputkey(char input){
return Key[input];
}

↑別ファイル
呼び出し
if(inputkey(KEY_INPUT_W)%=2){}

エラーで左側のオペランドが左辺値になってませんといわれます

KEY_INPUT_Wの定義がD_DIK_Wとかいう文字列?なんですが、これは一体どうしたら
0992名前は開発中のものです。2011/12/01(木) 22:57:41.66ID:b3NpsyN8
C言語の本を購入し、ファイル分割の項目を読み込む
0993名前は開発中のものです。2011/12/01(木) 22:58:44.68ID:AzCz4IDe
何がしたいのかはよくわかんないけど
エラーメッセージは %= の演算子は変数に対して使うものって言ってる
0994名前は開発中のものです。2011/12/01(木) 23:00:07.89ID:g6g3WWlu
=消せ
0995名前は開発中のものです。2011/12/01(木) 23:57:31.59ID:8OKTnJs1
イコール消したら治りました恥ずかしい

>>992
それはどういう・・・?
09969922011/12/02(金) 00:04:35.84ID:GWHZ+HBj
>>995
ごめん、= 見てなかっただから気にしないで
レス数が950を超えています。1000を超えると書き込みができなくなります。