検索結果 428 件

by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: 異なる種類の敵はクラスを分けるべきか
返信数: 9
閲覧数: 6640

Re: 異なる種類の敵はクラスを分けるべきか

一例ですが、敵クラスにどのLua関数を呼び出すかのデータを整数値か、あるいは別の形式で持たせ、
そのデータを使ってLua関数にアクセスする、あるいは呼び出すようにします。
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: 異なる種類の敵はクラスを分けるべきか
返信数: 9
閲覧数: 6640

Re: 異なる種類の敵はクラスを分けるべきか

私ならば、敵の動きに関する処理はLuaやその他のスクリプト言語で記述すると思います。 敵の種類や挙動は大量のパターンが必要ですし、直接記述をすればその分C++のコードは肥大します。 そうなれば調整やデバッグの際のリコンパイルにかかる時間も馬鹿にならなくなる(かもしれない)でしょう。 スクリプトなどの外部ファイルに投げることによって、リコンパイルなしに敵の挙動やゲームの進行を変更することが出来ます。 >以下は本編とは…… 以前このフォーラムでみたSTGのクラス設計に関する質問です。 http://dixq.net/forum/viewtopic.php?f=3&t=13591 クラス関連の質問は...
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: 東方のボス戦のような背景を歪ませる処理について
返信数: 5
閲覧数: 3992

Re: 東方のボス戦のような背景を歪ませる処理について

こちら参考になるかもしれません。
※注 リンク先niconico
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: Platinumの透明パーツについて
返信数: 5
閲覧数: 2876

Re: Platinumの透明パーツについて

>自分の使っている画像より大きな番号をつかうところが透明パーツに設定できない
"自分の使っている画像より大きな番号"の部分がよくわかりません。
これは一体何を、あるいはどんな状況をさした言葉なのでしょう?
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: 連射
返信数: 6
閲覧数: 3343

Re: 連射

ショットが固定速ならば
時間経過で再び上に進むようにすれば良いと思います。
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: 'bool' 型の使用方法を安全にする方法
返信数: 6
閲覧数: 3545

Re: 'bool' 型の使用方法を安全にする方法

>if(one.x + THREE_BLOCK > Mouse_x >one.x && one.y +50 > Mouse_y > one.y )
条件分岐の文法が間違ってます。
C/C++では
a>b>cといった条件の書き方が出来ません。
(コンパイルは出来ますが実行結果は望まれたものではないでしょう)

a > b && b > c
と言った感じに書きなおす必要があります。
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: 【DXライブラリ】アクションゲームにメモ機能を実装したい
返信数: 4
閲覧数: 4679

Re: 【DXライブラリ】アクションゲームにメモ機能を実装したい

MakeScreenでもいけるような気がします。 ※以下は想像で書いているので、実際に動作をするかはわかりません。 MakeScreenでマップと同じ大きさのスクリーンを作る。 マウスのスクリーン座標をマップ内での絶対座標に変換する。 ↑の座標を使い、スクリーンに描画をする。 スクリーンを描画する。 [追記] 以下のコードで試した見たところ、 要望のものは実装できたように思えます。 #include <DxLib.h> int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) { ChangeWindowMode(true); if(DxLib_...
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: memmoveで配列の中身をずらしたい
返信数: 1
閲覧数: 4526

Re: memmoveで配列の中身をずらしたい

21行目の第一引数 struct_data + sizeof(StructData) が間違っているように感じます。 http://wisdom.sakura.ne.jp/programming/c/c22.html 上のリンク先にある程度の説明があったので、細かくは省きますが、 &struct_data[1]はstruct_data+1と同値なので、これらのうちのいづれかに変更すれば動くのではないでしょうか? printf("%p,%p,%p\n", &struct_data[1], struct_data+1, struct_data+sizeof(StructData)); を出力してみ...
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: 球面上を歩くRPG
返信数: 1
閲覧数: 1745

Re: 球面上を歩くRPG

スーパーマリオギャラクシーなどそれに近いと思います。
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: プログラム
返信数: 3
閲覧数: 2005

Re: プログラム

ファイルを右クリック
プロパティ
[全般]タブの上から3番目辺りの項目、[プログラム]の右側にあるボタン[変更]からプログラムをVC++に変えれば良いと思います
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: 自作:描画クラスについて
返信数: 24
閲覧数: 9214

Re: 自作:描画クラスについて

メンバ関数の名前が非常にわかりづらいと思います。 usaoさんの仰っているDrawSystemもそうですが、GS~というのは特にわかりにくいです。 これは個人的な好き嫌いなのですが、 getterとsetterはそれぞれGet~, Set~とした方がいいと思います。 あと、気になったのは、実際にこのクラス群を使うにあたって、 コードの描画部に、それぞれ GSX(posX); GSY(posY); GSSize(size); GSAngle(angle); GSTurn(false); ... ... というふうにsetterを並べることに成るのでしょうか? これでは不便ではありませんか?
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: box2d
返信数: 4
閲覧数: 2530

Re: box2d

私が以前Box2Dを使った際は
http://ncj-blog.blogspot.jp/2010/04/blog-post_20.html
http://blog.livedoor.jp/franksheep/arch ... 33391.html
この辺りを参考にしました。

結構調べたのですが、これ以上はあまりめぼしい情報は見つからなかったので結構苦労しました。

Box2D自体の使い方は公式のリファレンスと
http://gihyo.jp/dev/feature/01/box2d/0001
ここを参考にしました。
C++ではないですがほとんど違いはないので特に問題はないと思います。
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: 課題
返信数: 25
閲覧数: 10207

Re: 課題

>へにっくすさん
No:7の追記のとおりです。

環境依存かもしれないということで
>コンパイルした環境はVC++2010EE コマンドラインからです。
>オプションは特には設定していません。
>また、他の環境やコンパイラでは確認ができていません。
このように書き足してもいます。
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: ポインタ演算とconstについて
返信数: 4
閲覧数: 2446

Re: ポインタ演算とconstについて

おそらくはその認識で間違いないと思います。
>アドレスの中身も
より正確に言うならば、アドレスの指す位置にある数値、といったところでしょうか?
この辺りの用語や言葉にはどうにも疎いので、誰か補足をいただけると幸いです。
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: ポインタ演算とconstについて
返信数: 4
閲覧数: 2446

Re: ポインタ演算とconstについて

1つ目. コンストラクタに"abcd"のアドレスのコピーが渡される。 get_Lengにssのコピーが渡される(="abcd"のアドレスのコピーが渡される)。 sはssのコピーなので、sのアドレスが前置インクリメントで進められても、ssは変更されない->以上のような実行結果に。 (get_Lengやarr_Copyの引数はconst char*型にしたほうが良いかと) 2つ目. 1つ目より、メンバ変数が変更されることはない。 ポインタ周辺はやはり複雑ですね。 ここいらの感覚を身につけるのは私も苦労した覚えがあります。 ダブルポインタ(ポインタへのポインタ)や、参照などの概念に触れると少し理解し...
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: 課題
返信数: 25
閲覧数: 10207

Re: 課題

課題が無くなったということなので、
念のため、一応確認のために書いたソースコードを上げておきます。
(表示の方法については特に指定がなかったためputs()を使用しています。)
※解決ならば解決チェックをお願いします。

コード:

#include <stdio.h>
int main(){
    char a[7] = "Fukuoka";
    puts( a );
}
コンパイルした環境はVC++2010EE コマンドラインからです。
オプションは特には設定していません。
また、他の環境やコンパイラでは確認ができていません。
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: 課題
返信数: 25
閲覧数: 10207

Re: 課題

6でも7でも小さいです。
8以上の数である必要があります。
[追記]
char a[7] = "Fukuoka";

char a[7] = { 'F', 'u', 'k', 'u', 'o', 'k', 'a', '\0' };
と同義であるためです。
なので、上下とも配列の添字の数をオーバーしているのでコンパイルエラーが出ます。
[更に追記]
すいません、上の情報は誤りでした。
コンパイルエラーにはなりませんでした。
しかし、終端文字'\0'が欠けるため、表示はまともにはできませんでした。
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: 乱数が同じ
返信数: 6
閲覧数: 2697

Re: 乱数が同じ

標準関数のrandは擬似乱数です。
なので乱数の種を設定しなければなりません。
srandで検索をするといいと思います。
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: 課題
返信数: 25
閲覧数: 10207

Re: 課題

>a[3]=”Fukuoka”
明らかに要素数があってないのですが、
これは元の問題文そのままでしょうか?
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: 2Dゲームでの画像の数やデータ量
返信数: 4
閲覧数: 3126

Re: 2Dゲームでの画像の数やデータ量

あくまで個人的な感想なのですが、 本当に2048*2048のような大きなデータ必要なのか、というところに疑問を感じました。 ゲームのウィンドウは限られていますし、 実際のゲーム画面が640*480なのか1280*720なのか、はたまた1920*1080なのかはわかりませんが、 明らかに一つのキャラクタにつき2048*2048というサイズは不要のように思えます。 実際に、表示させる際には縮小をするのでしょうが、それならば、予め 作成した画像を適当な大きさに圧縮し、それをゲームでロードし、表示させるようにすれば、幾分かコードも簡単になりますし、 ロード時間も少しは短くなるでしょう。 もちろん作成し...
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: オブジェクトの宣言
返信数: 16
閲覧数: 6215

Re: オブジェクトの宣言

>staticとはどこで宣言しても宣言後でそのプログラム内ならどこでも使えるという意味でしょうか?
いいえ、定義の場所によります。

細かいところを省略して簡単に言いますと、
関数内であればその関数内のみ、
関数外であればそのファイル内のみ、です。
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: ちょっと質問(^ω^)
返信数: 6
閲覧数: 2832

Re: ちょっと質問(^ω^)

まずはフォーラムルールに目を通してくださいね。
http://dixq.net/board/board.html

そこにある通り、まずは名前を統一してください。
そして、マルチポストなので相互リンクをして下さい。

さらに、h2so5さんのおっしゃるとおり、
チートなどに関する質問は答えることができません。
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: scanf関数が実行されない
返信数: 8
閲覧数: 9694

Re: scanf関数が実行されない

#include <stdio.h> int main(){ char str[256]; char c; // 読み込み scanf( "%s", str ); scanf( "%c", &c ); // 表示 printf( "%d\n", c ); printf( "%d\n", '\n' ); } --入力 str --出力 10 10 まず初めにscanfを使ってstrへ文字列が入力されます。 この際、入力バッファの中には、 's','t','r' , '\n' このように"str"とエンターを押した際に入力される(?)改行コード'\n'が入ります。 このうち、初めの3文字がstr...
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: scanf関数が実行されない
返信数: 8
閲覧数: 9694

Re: scanf関数が実行されない

入力バッファに残っていた改行コード'\n'が37行目のscanfのあとに残り、それが読まれたのではないでしょうか
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: 荷物を指定の場所に運ぶあのゲームについて
返信数: 18
閲覧数: 7571

Re: 荷物を指定の場所に運ぶあのゲームについて

一応「ゲームプログラマになる前に覚えておきたい技術」はC言語やC++についての最低限度の知識を持っていることが前提である、というようなことを、
まえがきの当たりに書かれていたはずです。
ですので、C言語についての知識(最低列挙体やポインタの簡単な使い方、クラスの基礎)程度はできていないと難しいと感じるはずです。

一度C言語の基礎について学ぶことをオススメします
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: 座標の計算
返信数: 5
閲覧数: 6199

Re: 座標の計算

質問が抽象的すぎて答えようがない状況です。
画像の下の中心、少し離れた下の中心とは一体どこを指しているのでしょう?
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: キャラ同士の重なりについて
返信数: 105
閲覧数: 52210

Re: キャラ同士の重なりについて

ビット操作によるフラグ管理はどうでしょう? それぞれのキャラクタに カテゴリーを表すビット値と どのカテゴリーと衝突できないか(衝突できるか)を表すビット値 をunsigned型などで与え、 前者をマップの要素にコピーします。 衝突しようと動いた(動こうとした)キャラはマップからビット値を取得し、 ビット操作で接触可能か調べればいいのです。 例(unsigned shortでデータを与えた場合), Player( 0x0001, 0x0003 ) -- 0x0001カテゴリーで0x0001および0x0002とは接触できない Event( 0x0002, 0x0000 ) -- 0x0002カテ...
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: オンラインゲーム作成
返信数: 6
閲覧数: 2420

Re: オンラインゲーム作成

まずはオフラインで(一人で)遊べるようなFPSもしくはTPSを作ったほうが良いかと思います。
知識が伴っていない状態でオンラインのリアルタイムなゲームを作るのは少し厳しいかと思います。
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: error LNK1169: 1 つ以上の複数回定義されているシンボルが見つかりました。
返信数: 2
閲覧数: 7500

Re: error LNK1169: 1 つ以上の複数回定義されているシンボルが見つかりました。

Blue さんが書きました: ヘッダファイルのほうにexternを付けて、1番目のファイルか2番目のファイルのどちらかで
unsigned int stateKey[256];
を定義してみてください。
この場合はstateKeyにアクセスするための関数が使われているので、
グローバル変数にせずに
ファイルローカルのstatic変数にしたほうが良いかと思います。
なので、
ヘッダーから
unsigned int stateKey[ 256 ];
を消し、
int GetHitKeyStateAll_2()の前に
static unsigned int stateKey[ 256 ];
を記述するほうがベターかと思います
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: 2Dでの座標移動について質問です
返信数: 16
閲覧数: 5298

Re: 2Dでの座標移動について質問です

ここが参考になるかと思います
http://dixq.net/g/04_04.html
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: 2Dでの座標移動について質問です
返信数: 16
閲覧数: 5298

Re: 2Dでの座標移動について質問です

始めに掲示頂いたコードでは
BODY_PLAYER_t::x及びyはdouble型となっていますが、
アップロードされたコードではint型になっています。
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: 龍神録21章について
返信数: 3
閲覧数: 2105

Re: 龍神録21章について

CheckStatePadはボタン、またはキーの押されているフレーム数を返します。
この場合、pushに代入されるのは
上下左右キーの押されているフレーム数の合計です。

このあとには
if(ch.cnt>60 || (ch.y<FIELD_MAX_Y-20 && push))
このような条件文が記述されていますが、最後のpushは、0以外であるときに真になります。

pushが0であるときは上下左右のいずれも押されていないときなので、
pushが0以外であるときは上下左右のうち1つ以上が押されていなるときとなります。
by nil
10年前
フォーラム: C言語何でも質問掲示板
トピック: 2Dでの座標移動について質問です
返信数: 16
閲覧数: 5298

Re: 2Dでの座標移動について質問です

こちらの方で省略したコードを書いてみましたが正常な動作を確認致しました。 #include <DxLib.h> int WINAPI WinMain( HINSTANCE, HINSTANCE, LPSTR, int ){ ChangeWindowMode( true ); if( DxLib_Init() != 0 || SetDrawScreen( DX_SCREEN_BACK ) ) return -1; struct{ double x, y; double speed; } player = { 320.0, 240.0, 3.0 }; while( ProcessMessage()...
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 2Dでの座標移動について質問です
返信数: 16
閲覧数: 5298

Re: 2Dでの座標移動について質問です

各方向への移動を場合分けして行なっているようですが、 非常に冗長な上、バグが生まれやすいです。 自分であればこう書く、というのを載せておきますので、 良ければ目を通してください。 void playermove(){ // 変数定義 int moveX = 0; int moveY = 0; double speed = 任意の値; // 入力の取得 if( Key[ KEY_INPUT_LEFT ] ) moveX -= 1; if( Key[ KEY_INPUT_RIGHT ] ) moveX += 1; if( Key[ KEY_INPUT_UP ] ) moveY -= 1; if( ...
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: GetResourceIDStringの使い方
返信数: 4
閲覧数: 2262

Re: GetResourceIDStringの使い方

>LoadGraphやLoadSoundMem関数で取得したサウンドハンドル、グラフィックハンドルから >ファイル名を取得することです。 網羅したわけではありませんが、ざっと見た感じでは非公式関数一覧にもそのような関数などは見当たりませんでした。 またグラフィックハンドルからファイル名を取得する、という行為の必要性についても少し疑問に感じます。 http://wisdom.sakura.ne.jp/system/winapi/win32/win72.html GetResourceIDStringは、 リンク先を参考にしていただきたいのですが、 実行ファイル内に含められたデータ=リソース、その...
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: GetResourceIDStringの使い方
返信数: 4
閲覧数: 2262

Re: GetResourceIDStringの使い方

TCHARは
Unicode設定でコンパイルするとwchar_t
マルチバイト設定でコンパイルするとcharにそれぞれ置き換えられます。
要は文字列のポインタなのでprintfDxで出力できるのではないでしょうか。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: レポート課題です。(提出期限切れなのであせってます。)
返信数: 20
閲覧数: 6896

Re: レポート課題です。(提出期限切れなのであせってます。)

>コジコジさん
文字列については理解なさっていますか?
また、配列を用いて書く、とのことですが、コジコジさんは配列についてどの程度の知識を持ってらっしゃるのでしょうか?
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: DXライブラリで作成したソフトをバックグラウンドでも動作させる方法
返信数: 5
閲覧数: 3746

Re: DXライブラリで作成したソフトをバックグラウンドでも動作させる方法

SetAlwaysRunFlag( true );
をDxLib_Init()の前あたりに挿入するといいかもしれません。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: オブジェクトの定義とSTLについて
返信数: 5
閲覧数: 2631

Re: オブジェクトの定義とSTLについて

その1 new Project(~~)はおっしゃるとおりポインタを返すため、 実体であるpush_back()の引数には渡せないからです。 これは int i = new int( 10 ); がエラーになるのと同じ理由です。 std::list<Project*>とすればnew Project(~~)をpush_backの引数に渡せます。 Project(~~)は実体を返すためpush_back()の引数に渡せます。 その2 質問の意図をはかりかねたのでどのような動作を望んでいるのかの補足をお願いします。 こちらについては当方の知識の範囲外のため、 正確な回答をすることが出来ませんでした。 ...
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: Platinumの使い方 パーツ画像について
返信数: 12
閲覧数: 5983

Re: Platinumの使い方 パーツ画像について

>旧バージョンは、デフォでは空白で埋められていたので
空白で埋められていたのではなく、255、つまりは一番右下のマップチップで埋められていたのです。
土門さんの場合255にはチップ画像が割り当てられておらず、
透過されていただけです。

解決策としては
0番を空白のマップチップにする。
始めにペンキツールを使って255で埋める。
といったところでしょうか
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: LoadGraph~DrawGraphで画像が表示されません。
返信数: 8
閲覧数: 6797

Re: LoadGraph~DrawGraphで画像が表示されません。

printfDxあたりで画面にHandleの中身を出力し、
正常にロードが完了しているかどうか確かめてみてください。

Handleが-1であれば失敗していますので、
ファイルが正しい位置にあるかを再度確かめてください。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 外部ファイルから二次元配列に格納出来ません(T T)
返信数: 7
閲覧数: 2422

Re: 外部ファイルから二次元配列に格納出来ません(T T)

現在は基底クラスのデストラクタはこれといった役割を持っていないようですが、
それでも一応virtualにしておいたほうがいいと思います。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 「3.11章 セーブデータの作り方」のエラーについて
返信数: 2
閲覧数: 1714

Re: 「3.11章 セーブデータの作り方」のエラーについて

プロジェクトの設定がコンソールアプリケーションになっていません。

類似する質問
time_tを使ったソースをコンパイルできません
http://dixq.net/forum/viewtopic.php?f=3&t=13021
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: [C]分割コンパイルを用いたファイルの読み込み
返信数: 4
閲覧数: 2255

Re: [C]分割コンパイルを用いたファイルの読み込み

FileRead_scanfの引数はポインタです
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: time_tを使ったソースをコンパイルできません
返信数: 7
閲覧数: 3690

Re: time_tを使ったソースをコンパイルできません

プロジェクト作成の時にウィンドウズアプリケーションに設定したのではありませんか?
もう一回コンソールアプリケーションでプロジェクトを作成しなおしてみてください。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 各桁の和
返信数: 9
閲覧数: 4330

Re: 各桁の和

6~9行目です。
10行目は文法的に全く正しくありません。
なので文法を勉強したほうが良いとh2so5さんは仰ったのです。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: メニュー画面にて
返信数: 3
閲覧数: 1732

Re: メニュー画面にて

この問題を解決するにはだいたい二種類の方法があります。 1つ目はキーの押されているフレーム数を記録する、 カウントが1の時が押された瞬間なのでそれを検知すればいいわけです。 2つ目は前フレームのキー状態を保存し、現在の状態と比較する、 前のフレームでは押されておらず、現在押されているならば押された瞬間ということになります。 これ自体よくある質問なので、過去トピックを上から探していけば類似したものが結構見つかります。 ついでに、一つ目の方式は 新ゲームプログラミングの館 2.9 全てのキーの入力状態を取得する http://dixq.net/g/02_09.html にサンプルプログラムが載って...
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: getchar関数について
返信数: 14
閲覧数: 6590

Re: getchar関数について

おそらくなのですが、 入力 01 であった際、 scanf関数が読み取るのは 01 のみであり、 入力ストリームには'\n'が取り残されているようで、 getchar関数がその残された'\n'を読んでしまうため、 該当の動作になるようです。 以下追記 このように少しコードを改変した結果、 int main(void) { char read[40] ; int word ; printf( "40文字以内の半角文字でなんか書いてね\n入力欄→:" ); scanf( "%s",read ); printf( "はいはい、%sですねーっと。\n",read ); printf( "\nその中に特...
by nil
11年前
フォーラム: 作品お披露目掲示板
トピック: イコライザ アルファ版
返信数: 8
閲覧数: 13363

Re: イコライザ アルファ版

OS: Windows 7
CPU: Intel Pentium P6200 2.13GHz
問題なく60FPSを維持できています。
CPU使用率はおよそ20%です。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: ウィンドウが出てこない
返信数: 2
閲覧数: 1576

Re: ウィンドウが出てこない

何らかのエラーが発生したままメッセージループが実行されてゴースト化しているのではないでしょうか?
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: D3D9を使ったゲームプログラムエラー
返信数: 3
閲覧数: 2340

Re: D3D9を使ったゲームプログラムエラー

ライブラリをリンクできていないのではないでしょうか?
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 関数に関数名を渡す際の記述の仕方について教えてください。
返信数: 6
閲覧数: 2693

Re: 関数に関数名を渡す際の記述の仕方について教えてください。

char*に暗黙のキャストをするよりも 関数ポイントとして引数を定義したほうが明示的でわかりやすいと思います。 int plus(int); void func(int *,int,int (*p)(int a)); int main(void) { int i; int x[5]={0,1,2,3,4}; func(x,5,&plus); for(i=0; i<5; i++){ printf("x[%d]=%d\n",i,x[i]); } return 0; } int plus(int a) { return a+10; } void func(int *a,int b,int (*p)(...
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 汎用なコードが書きたい
返信数: 33
閲覧数: 10158

Re: 汎用なコードが書きたい

横から失礼します。 >具体的にいうとC++、Advanced Windowsを読破するだけで今年が終わってしまいます。 >アプリ作りはそれからということなので、 別に書籍を読み漁った後でなければコードを書けないわけではないのですし、 むしろプログラミングの合間に参考書を読む、 また、参考書を読む合間にプログラムを書く方が効率はいい気がします。 Aをした後でなければBをしてはいけないという事はありませんし 寧ろ基礎となる知識をつけると同時に実用的なコードを書く練習にもなります。 >Cはすでに学んだので、今流行りのオブジェクト指向を身につけるためにC++学んでます。 オブジェクト指向を学びたいのな...
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 【C】Fibonacci数列を100桁表示
返信数: 3
閲覧数: 3354

Re: 【C】Fibonacci数列を100桁表示

いわゆる多倍長整数ですね。 フィボナッチ数列ならば多倍長整数同士の足し算、それから計算結果の出力さえ出来れば問題ないはずなので、 足し算の処理について考えて見ることにします。 #include <stdio.h> #define N (32) // 多倍長整数同士の足し算 void Add( char a[N], const char b[N] ){ int x, i; x = 0; for( i=0; i<N; i++ ){ x += a[i] + b[i]; a[i] = x%10; x /= 10; } } int main(){ int i; char a[N] = { 1,2,3,4...
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: ホーミングについて。
返信数: 1
閲覧数: 928

Re: ホーミングについて。

丸投げは禁止です。フォーラムルールをご覧ください。

まず神霊廟霊夢のホーミング弾の特徴を上げて見ます。
1.速度の遅い定速弾
2.画面上方向に発射される
3.徐々に近くの敵に向かって進行方向を変える

簡単な所で言えばこのような感じでしょうか。
あとはこの条件に沿うようにプログラムを組めばよいのです。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 【雑談】ノートPCのキーボードが1つだけとれた場合
返信数: 6
閲覧数: 4629

Re: 【雑談】ノートPCのキーボードが1つだけとれた場合

これは……大変ですね。
適当に調べてみたところ選択肢は
1.メーカーに修理してもらう
2.気にせずキーがない状態で打鍵する
3.外付けのキーボードを使用する
この程度でしょうか?

1.はなかなかお金がかかるでしょうね
2.は……ちょっとつらいでしょう
というわけで3.をオススメします。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: メンバ変数をキーに自分自身をdeleteしたい
返信数: 18
閲覧数: 8150

Re: メンバ変数をキーに自分自身をdeleteしたい

ISLe さんが書きました:
涼雅 さんが書きました:thisポインタをdeleteしてはいけません。
ええっ。これまでthisポインタをdeleteするコードをたくさん書いてしまいましたけど。
上で紹介したブログのコードでもやってますし。

delete thisしたあとthisを参照するコードが走らないようになってれば良いのでは。
すいません自分の思い違いのようでした。
訂正します
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: メンバ変数をキーに自分自身をdeleteしたい
返信数: 18
閲覧数: 8150

Re: メンバ変数をキーに自分自身をdeleteしたい

thisポインタをdeleteしてはいけません。

私ならば、hogeクラスの上にhoge管理クラスをつくり、その中でメンバのhogeを監視し、
適切なタイミングでhogeをdeleteするようにします。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: セーブデータの作成
返信数: 4
閲覧数: 2009

Re: セーブデータの作成

私ならば
セーブファイルがなければデフォルトのデータ( FirstData )をゲーム内で保持するデータ( Data )にコピーします。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 構造体変数をコピーしたのですが・・
返信数: 21
閲覧数: 11654

Re: 構造体変数をコピーしたのですが・・

コードタグをご利用ください。

配列をコピーすることは=演算子では不可能です。
memcpy関数を使うか
配列の要素をfor文を回して一つ一つ格納する必要があります。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 一定周期毎に遅くなるプログラム
返信数: 6
閲覧数: 2091

Re: 一定周期毎に遅くなるプログラム

ライブラリは何をお使いでしょうか?
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: ~秒後に画像を切り替えたい
返信数: 5
閲覧数: 3736

Re: ~秒後に画像を切り替えたい

wait系の関数ではなくカウンタ変数を使います。
変数を毎フレームインクリメントすれば、1秒ごとにカウンタが60増えますので、
それを使って処理を遷移させます。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: [C#] thisキーワードの使い方
返信数: 12
閲覧数: 17763

Re: [C#] thisキーワードの使い方

オブジェクト、という言葉には様々な用法があるようなのですが、 そのうちの一つとして変数の「型」を表す、というものが有り、私はその意味としてオブジェクトという言葉を選びました。 あー……C#においてその用法で使うとまずいですね。 明確に,「インスタンスはオブジェクトとも呼びます。」と書かれています。 in C# 言語仕様 Version 4.0 - 1.6 クラスとオブジェクト - 第1段落 クラスは、クラスから動的に作成されるインスタンスの定義を提供します。インスタンスはオブジェクトとも呼びます。 A class provides a definition for dynamically c...
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: [C#] thisキーワードの使い方
返信数: 12
閲覧数: 17763

Re: [C#] thisキーワードの使い方

オブジェクト、という言葉には様々な用法があるようなのですが、
そのうちの一つとして変数の「型」を表す、というものが有り、私はその意味としてオブジェクトという言葉を選びました。

なので、この場合、
型であるMainWindowがオブジェクト、newをした結果生成されたオブジェクトの実体がインスタンスということです。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: [C#] thisキーワードの使い方
返信数: 12
閲覧数: 17763

Re: [C#] thisキーワードの使い方

C#には詳しくはないので違うかもしれませんが、
後者がコンパイルエラーになるのはListView1がstaticなオブジェクトではないからではないでしょうか?
前者の場合はthisというオブジェクトのインスタンスを指定していますが、
後者はそうではないのでエラーになるのではないでしょうか?
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: while文を用いた無限ループとswitch文
返信数: 3
閲覧数: 5766

Re: while文を用いた無限ループとswitch文

scanfを使って一度char配列に入力された文字列を格納した後に
sscanfを用いてデータを変数に格納すれば良いと思います。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 英語について質問です
返信数: 2
閲覧数: 1464

Re: It looks like they are not very sure.

lookは「見る」、likeは「~のようだ」という意味ですから
look like~は直訳すると「~のように見える」よって「~に似ている」と訳すことができます。
上の文の場合は「~みたいだね」というような訳し方をしています。
look like構文は比較的よく見かけるものです。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: RokDeBoneという3D関係のソフトのサイト
返信数: 4
閲覧数: 4305

Re: RokDeBoneという3D関係のソフトのサイト

Easy3DのHSPへの同梱の終了とともにサイトを閉鎖されたようです。
http://www.onionsoft.net/wp/archives/857
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 一部分消す もしくは 書き換える方法
返信数: 42
閲覧数: 14619

Re: 一部分消す もしくは 書き換える方法

私も描写には前々から少し首を傾げていました。 教授と教示についても数度このフォーラムの日記やらで話題に出たことが有りましたが、 そのときにISLeさんは確か『教授』と書かれた質問には回答をしていない、ということをおっしゃっていたかと思います。 実際自分も時々教授と書かれた質問に対し指摘をすることはあるのですが、 むしろ教示という言葉が使われている事のほうが少ないくらいの現状でして、 もうほとんどスルーしている状態です。 反転、ですが、他の方が仰っている通り、 見ている方は左右の反転、などの意味にとられることが多いのではと考えます。 つまり、あながち間違ってはいないのですが、ややこしい、紛らわし...
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 画像融合ツール
返信数: 2
閲覧数: 1315

Re: 画像融合ツール

ピンポイントでご希望に添えるようなツールというものはそうそう見つからないでしょうが、
画像編集ソフトを用いれば手動で同じ事ができるでしょう。
フリーではGIMPなどがお勧めですね。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: タイトル、ゲームオーバー、ゲームクリアーについての質問
返信数: 11
閲覧数: 6558

Re: タイトル、ゲームオーバー、ゲームクリアーについての質問

ChangeWindowMode( FALSE )を呼び出したあとにChangeWindowMode(TRUE)で変更を上書きしているためです。
プログラムの意味をきっちりと理解なさってますか?
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 関数に値を渡す時引数にするかセッターにするか
返信数: 3
閲覧数: 1511

Re: 関数に値を渡す時引数にするかセッターにするか

DrawGraphとSetDrawModeの例で言うとすれば、
DrawGraph系関数の引数TransFlagはその処理一度きりのもの、と言いますかその関数コール一回のみに左右するものですが、
SetDrawModeの場合は次にSetDrawModeが呼ばれるまでの間設定された情報を保持します。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 別の.cppの変数を使う時は?
返信数: 6
閲覧数: 6656

Re: 別の.cppの変数を使う時は?

通常のグローバル変数として扱うのであれば、
extern宣言をすることで参照できるようになりますが、
通常はhideさんのおっしゃるとおり取得用の関数を作ります。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: ビットマップの画像を合成したい
返信数: 4
閲覧数: 2450

Re: ビットマップの画像を合成したい

まずすべきはビットマップのフォーマットを理解して、
BMPファイルを読み込むことでしょうね。
BMP ファイルフォーマット
http://www.kk.iij4u.or.jp/~kondo/bmp/
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 分割コンパイル時のグローバル変数の使い方について
返信数: 14
閲覧数: 7615

Re: 分割コンパイル時のグローバル変数の使い方について

結論から申し上げるとグローバル変数は使うべきではありません。
あと、分割の仕方に違和感を感じます。
オブジェクト指向、という言葉もある通り(C言語にはクラスがないのですが、似たような設計にはできます)
大抵ファイルはオブジェクト=物体ごとにファイルわけをします。

すなわち、Pc,Camera,PcBullet...と言った風に分割します。
大抵の場合はDraw関数をそれぞれのオブジェクトに持たせるため、描画部分のみをそれぞれのオブジェクトから隔離する、といったことはしません。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: マップ描画のちらつき?
返信数: 13
閲覧数: 3637

Re: マップ描画のちらつき?

直っていない部分が多すぎます。
現状とても見づらいです。

通常は描画処理の中にロード処理は組み込みません。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: マップ描画のちらつき?
返信数: 13
閲覧数: 3637

Re: マップ描画のちらつき?

インデントが乱れています。
バグの原因となるのでまずはそれを直しましょう。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 移動スピードを上げたい
返信数: 20
閲覧数: 4732

Re: 移動スピードを上げたい

移動処理の部分を理解できているのならば単純なことであると思います。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: テトリスを作成する上で、お勧めのグラフィック作成ツールはありますでしょうか。
返信数: 5
閲覧数: 2710

Re: テトリスを作成する上で、お勧めのグラフィック作成ツールはありますでしょうか。

わざわざアンインストールせずとも両方共を使ってみて
使い易いと思った方を使えば良いと思います。

EDGEとPaint.netでは得意分野も違うでしょうし。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: ディレクトリの削除方法 (Windows7)
返信数: 3
閲覧数: 2135

Re: ディレクトリの削除方法 (Windows7)

DeleteFileA関数はファイルの削除です。
ディレクトリの削除ならばRemoveDirectoryですね。
http://msdn.microsoft.com/ja-jp/library/cc429688.aspx
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: テトリスを作成する上で、お勧めのグラフィック作成ツールはありますでしょうか。
返信数: 5
閲覧数: 2710

Re: テトリスを作成する上で、お勧めのグラフィック作成ツールはありますでしょうか。

jayさんも仰っている通りEDGEは定番でお勧めです。
僕自身はドット絵は打てないので、ペイントで適当な画像をポチポチと描いていますが、
全般的な画像編集ならばGIMPですね。
効果が豊富ですし、何よりも無料です。
できることも多いのでEDGEとあわせてダウンロードしてはいかがでしょう?
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 29905

Re: 初心者が15パズル作成するのは、難しいでしょうか。

いくつか気になったことがあったので書き込みをします。 第一は文字エンコードの統一性の無さです。 MessageBoxではTEXTマクロが使われているのにその他の関数では使われていません。 これではUnicodeでコンパイルをした時にはエラーが発生しますし、 マルチバイトでコンパイルをすることを前提としたものとしてTEXTマクロを使わずにすべての文字列を表すか、 Unicodeでコンパイルすることを前提として文字列リテラルの先頭にLを付与したもので表すか、 あるいはTEXTマクロを全文字列リテラルに使用すべきかと思います。 第二にエラー発生時にMessageBox関数の返り値を判定してメインルー...
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 俺、私の自己流C言語コーディング
返信数: 7
閲覧数: 3953

Re: 俺、私の自己流C言語コーディング

/** * 関数の説明 * @param par1 引数の説明 * @param par2 引数の個数分記述 * @param par3 このようなコメントの書き方を * @param par4 javadoc記法というらしいです * @return 返り値の説明 */ int Function( int par1, double par2, float par3, int par4[] ){ // 変数の宣言,個人的に宣言したときは必ず初期化します int variable1[ INDEX_NUM ] = {}; int variable2 = 0; double variable3 = ...
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: ゲーム作り初心者です
返信数: 11
閲覧数: 3595

Re: ゲーム作り初心者です

softyaさんのおっしゃるとおり
DXライブラリを使わないとなると難易度は急上昇します。
逆に言うとDXライブラリはC言語の基礎的なところを学ぶだけで扱えるのでかなり難易度は下がります。

HSPならば魯鈍ジョンさんと言う方の動画がすごく参考になるのでURLを張っておきます。
http://www.nicovideo.jp/watch/sm6309318
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 29905

Re: 初心者が15パズル作成するのは、難しいでしょうか。

マウスの座標がx,yそれぞれ0以下の時も場合分けをしたほうが良いかと思います。
-1~-99までの数字を割る100しても0になるためです。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 29905

Re: 初心者が15パズル作成するのは、難しいでしょうか。

良い感じだと思います。
気になったのは111行目からの処理ですね。
itoa関数は非推奨な関数であったはずなので、使わないほうが無難かと思います。
こういう時にこそDrawFormatStringを使いましょう。

次は、どのマスがクリックされたのかを調べるような処理、を作ると良いかと思います。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: あるクラスから違うクラスを利用する方法
返信数: 8
閲覧数: 2815

Re: あるクラスから違うクラスを利用する方法

>少し変な気がします。
特に問題はないように思えます。
まぁ私ならばsoftyaさんの仰っている通りに各クラスごとに描画関数をもたせます。

C++ではmalloc,freeではなくnew,deleteを使用してください。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 【C++】 実行ファイルにファイルをドラックアンドドロップ
返信数: 7
閲覧数: 8370

Re: 【C++】 実行ファイルにファイルをドラックアンドドロップ

すいません、言語はC/C++ですよね?
それはC#(いまいち詳しくないのでよくわからないのですが……とりあえずCではなさそうです)C++/CLI(?)などの話ではないでしょうか。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 構造体の初期化ができません
返信数: 19
閲覧数: 6331

Re: 構造体の初期化ができません

CSはtypedefされた型名であり変数名ではないためです。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 29905

Re: 初心者が15パズル作成するのは、難しいでしょうか。

softyaさんのおっしゃるとおりそこまで深く考える必要がありません。
複数の用途にマウスの座標を使用するのであれば別個に保存したほうが効率はよさそうですが、
今回のように狭い用途での仕様であれば深く考える必要はありません。

マウスボタンの入力状態を取得し、
クリックされている時に取得しても良いですし、
ボタンの入力と同時に取得しても良いです。

複数用途に使用する例としては、
マウスの載っているマスを光らせる、ボード外に表示させたボタンの画像をクリックしているかの判定などが有りましょうか。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 29905

Re: 初心者が15パズル作成するのは、難しいでしょうか。

大分と前ですが、それはsoftyaさんの仰ってた書いてはいけない処理です。
http://dixq.net/g/h_11.html

メインループの中に複数個のProcessMessageが存在してはなりません。
私ならばマウスの情報をまとめる構造体を作り、そこに左クリックやマウス座標などの情報を入れるかと思います。
ちょうどtaka_takaのコードで言うところのKeyboard構造体のように。
Keyboard_Update()の中身がしっかりと理解できているのであれば、
それと同様のものをマウス入力用に作るだけなので、特に問題はないように思えますがいかがでしょう?
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: フラグ管理手法について
返信数: 5
閲覧数: 2778

Re: フラグ管理手法について

>1ループ中の1回のインクリメントが、100回に増えたとしても実はそこまで速度には影響しない感じなんでしょうか?
現在のCPUの性能を鑑みれば影響を与えることなど無いでしょう。
それに、インクリメント一回と1つのキャラを3D空間上に描画する作業とでは後者のほうが時間がかかります。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 【C++】 実行ファイルにファイルをドラックアンドドロップ
返信数: 7
閲覧数: 8370

Re: 【C++】 実行ファイルにファイルをドラックアンドドロップ

WinMainの引数lpCmdLineや__argc、__argvを使えばファイル名を取得出来ます。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: visual c++ 2010で
返信数: 3
閲覧数: 1501

Re: visual c++ 2010で

どういう状態なのかいまいちわかりません。
スクリーンショットなどを張っていただけると分かりやすいのですが……。

>最初のところで、デバッグなしで開始で実行しなければいけないのに、デバッグ開始でやってしまったため……
デバッグ開始でも特に問題はありません。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 実行ファイルをダブルクリックしたらすぐ閉じてしまいます。
返信数: 8
閲覧数: 3175

Re: 実行ファイルをダブルクリックしたらすぐ閉じてしまいます。

エラーで終了する際にはわかりやすく通知をしたほうが良いかと思います。
あと、exit()は使わずに、しっかりと終了処理を踏んでから終了したほうが良いかと思います。
exitを使うにしてもDxLib_End()は呼んだほうがいいです。
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 実行ファイルをダブルクリックしたらすぐ閉じてしまいます。
返信数: 8
閲覧数: 3175

Re: 実行ファイルをダブルクリックしたらすぐ閉じてしまいます。

公開していただきたいのは状況の再現できる最低限のコードです。
では、http://dixq.net/g/01_02.html
このウィンドウを表示するだけのプログラムでも同じ事がおきますか?
by nil
11年前
フォーラム: C言語何でも質問掲示板
トピック: 実行ファイルをダブルクリックしたらすぐ閉じてしまいます。
返信数: 8
閲覧数: 3175

Re: 実行ファイルをダブルクリックしたらすぐ閉じてしまいます。

コードと実行ファイルを貼り付けていただくのがいいかと思います。
因みにDebugビルドでは同様の現象は起こるのでしょうか?

詳細検索ページへ移動する