検索結果 79 件

by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ゲームプログラミングの初心者程度の学習方法について
返信数: 26
閲覧数: 10591

お返事、お話等ありがとうございます。

自分の想定以上の、レベルの高いご回答ややり取りを拝見させていただきまして、

ありがとうございます。

もし、まだ他にもご意見等がございましたら、よろしくお願いいたします。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ゲームプログラミングの初心者程度の学習方法について
返信数: 26
閲覧数: 10591

ありがとうございます。

私の意見としてはソフト屋さんの <<大抵の人は興味の赴くままにやりたいゲームを作ろうとするはずです。 その方がモチベーションが続きますからね。楽しめないと続けられません。 まぁ、いきなりRPGやらSLGやいたいと言われたら ここまでは意見は同じかな 私はそれに続くならまずは簡単なアドベンチャーゲームをつくる方がいいかな 順番として アドベンチャー(ノベル)→シューティングorアクションorパズル→RPG→シュミレーション といった感じで完成させやすい順で作っていくと良いって聞いたことがある 私もいきなりシュミレーションを作ろうとしてはいるけれど、アドベンチャーの要素やシューティングやアクショ...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ゲームプログラミングの初心者程度の学習方法について
返信数: 26
閲覧数: 10591

dic様、ありがとうございます。

C/C++プログラマのためのWindows95プログラミング http://www.amazon.co.jp/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9E%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AEWindows95%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0-Programmer%E2%80%99s-selection%E2%80%95Nuts-bolts/dp/4881353632 これを読んで覚えました DxLibがなかった頃なんで...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ゲームプログラミングの初心者程度の学習方法について
返信数: 26
閲覧数: 10591

お返事ありがとうございます。

自分ができるかどうかはわかりませんが、大変参考になります。 モチベーションも含めて、やる気がでます。 自分の興味が有ることからいじって見る方が良いと思います。 ただ、どうしても難しいなら簡単なものに手をつけてみることです。 それをどれを選ぶかは、本人が決めないといけません。 【文章を修正・追記】 私の場合は、ゲームとか関係なく面白そうなプログラムを色々と手当たり次第にやっていたのでゲームもその一部に過ぎません。 よく分からないときは簡単なものからやっていましが、どれをやるかは全て勘任せでした。 参考になれば。 アマチュアの最初の2年間から3年間に手を付けたもの。 参考資料大昔の「月刊アスキー」...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ゲームプログラミングの初心者程度の学習方法について
返信数: 26
閲覧数: 10591

ゲームプログラミングの初心者程度の学習方法について

お世話になります。

ゲームプログラミングの初心者程度に
おすすめの学習方法はありますでしょうか?

簡単なゲームの部分的なアルゴリズムやプログラミングをすることから
スタートがいい感じでしょうか?

よくありがちな質問で、場違いでしたら、申し訳ございません。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

ありがとうございます。

別のトピックにします。

ご意見で十分だと思っています。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

お世話になります。話題とずれますが、

ゲームプログラミングのおすすめの学習方法はありますでしょうか?
簡単なゲームの部分的なアルゴリズムやプログラミングをすることから
スタートがいい感じでしょうか?
よくありがちな質問で、場違いでしたら、申し訳ございません。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

Re: ほぼ初心者です。テトリスのステージとフィールドについて

お返事ありがとうございます。
softya(ソフト屋) さんが書きました:もちろん、経験値の部分もあるんですけどね。大半は自分で培った経験値でしょうね。
自分で培うというのは、プログラムを組んだり、書籍を読んだりでしょうか?

今の自分の初心者レベルでできることと言ったら、基礎的な動き・アルゴリズムの部分を重点的にやる、
その後、全体的にできるようにするということに当てはまりますでしょうか。
レベルはまったく異なりますが。
softya(ソフト屋) さんが書きました:N88BASIC時代から組んでいますが見た目移植とか普通にやっていたので、ソースコード自体を参考にしたことは殆ど無いです
これは、自分からすると、相当すごい感じがします。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

Re: ほぼ初心者です。テトリスのステージとフィールドについて

貴重なご考え方をありがとうございます。
ちなみに、そういったコーディング前段階でのイメージの広がりの範囲は、
経験で広がるものなのでしょうか。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

Re: ほぼ初心者です。テトリスのステージとフィールドについて

アドバイスをありがとうございます。
この時点で、なんとなくでも、全体的なデータの扱いは
イメージできている感じでしょうか?

自分のレベルだと、確かにfieldがいらないとして、stageを書き換えないとして、
blockの定義は変えられないので、draw時の座標をうんぬんするのかなくらい
間でしかイメージできません。
この先までイメージができる感じでしょうか。

補足

ゲームプログラミング全般は、draw系で表示ということで、
表示に際して、ピクセル単位なのか、画像単位なのか、
そのあたりの区別があいまいだったというのも、
テトリスを作成する上で混乱した原因だった気がします。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

Re: ほぼ初心者です。テトリスのステージとフィールドについて

テトリスでは、消して再度表示するというソースを見たところで、 コマ送りはイメージできた気がします。 ただ、ブロック固定で、fieldとstage, blockの三つのデータと 対応が混乱してしまっていました。 stageにfieldを代入する、それを表示するとなると、blockとの 関連がうまくできなかった気がします。 drawのとき、どのデータを使うのか、どうなるのか、対応できているようで、 適当にやっていた気がします。 blockを表示させる処理で、やっとだったので、 2つ以上の処理、コマ送りと回転、 2つ以上のデータ、stage,field,block さらに、それらのデータと座標の対応...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

ありがとうございます。

あえて言うなら、実際に画面で動いているイメージぐらいしか無いでしょうか。 実際に動いてるモノ=オブジェクトがどんな情報をもって動いているかって感じですかね。 ありがとうございます。ご参考になります。 ゲームは色々と、目で見て動くものが多いで、混乱します。 目でこうしたいというときに、単純にデータだけだとイメージしずらいので、 実際に動いているオブジェクトとしてのデータ情報に着目すると、よさそうな感じがしました。 言われると当たり前なのですが、ゲームプログラミングは、 draw系で表示されるので、何か結びつけるのが難しい部分が個人的にはしていました。 そもそもソフトウェアの目的はデータの処理で...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

変なご質問をしてしまいまして、申し訳ございません。

意図としては、関数名以外で、ゲームプログラミングでは、
どういうイメージを持つとよろしいでしょうか。

数字や文字処理のプログラミングは、データを処理するので、
式や探索をイメージしやすいのですが、
典型的なのはデータベース周りやHTMLのコーディングです。

ゲームプログラミングでは、どのあたりをイメージして、
コーディングする感じでしょうか。
(箇所によって、何をイメージするのか大きく変わるのが、
ゲームプログラミングの特徴であったり、難しさなのでしょうか。)
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

Re: ほぼ初心者です。テトリスのステージとフィールドについて

softya(ソフト屋) さんが書きました:理解するためにはサンプルを一度コピペして動かしてデバッガで解析するなども必要だと思いますけどね。
最終的に見ずに書かない時が、一番理解しているかが自分でもわかるからです。
見ずに書くのは、できるものですか?
自分のレベルだと、つづりを間違えるのが怖くて、コピーを利用する感じです。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

Re: ほぼ初心者です。テトリスのステージとフィールドについて

softya(ソフト屋) さんが書きました:ゲームの完成形に囚われずに、
ブロック崩しのボールの反射だけとか基礎的な動き・アルゴリズムの部分を重点的にやってみてはどうでしょうか?
アドバイス、ありがとうございます。
基礎的な部分を重点的にやってみます。
ちなみに、ライブラリを使用するときは、理解したうえでサンプルをコピー&ペーストしたほうがいいのか、
サンプルを見ずに自分で書いたほうがいいのか、どちらがいいのでしょうか。
ライブラリを使用した経験があまり無い前提でお答えをお願いします。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

アドバイスありがとうございます。

どうしても難しく感じるので、もう少し簡単なゲームに取り組もうと思います。

ただ、じゃんけんゲームなどならいいのですが、他にいいレベルのゲームが少なそうというところが

やりずらい部分でもあります。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

アドバイスを頂きまして、ありがとうございます。

http://www.nhk.or.tv/kow/program/program_124.php

上記のサイトを参考にしましたが、g_x, g_yを定義したので、
ループがx, yだと行列の行と列を自分が混乱したので、
あえてh , wにしましたが、x, yのほうがよろしければ、直します。

アドバイス一つ一つ対応しようと思いますので、
よろしくお願いします。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

貴重なお返事ありがとうございます。

とりあえず、正方形のブロックが積み重なるところまでできました。 CheckOverlapでインデックスが間違っていました。 CreatBlockを加えました。 //インクルード_dxライブラリ #include "DxLib.h" //インクルード_ローカル //グローバル変数 static const int Zero = 0; //ステージの左壁と壁の底を表す数字 static const int One = 1; //ブロック箇所の数値 static const int MAX_WIDTH = 12; //ステージの横幅(列)の最大値 static const int MAX_HEIGH...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

どうしても、ブロックが積み重なりません。

ほぼ初心者です。 ブロックが落ちて、壁では停止するのですが、 2つ目のブロックが落ちてきたときに、また同じように壁まで行ってしまいます。 処理全体を見直したほうがいいのでしょうか。 それとも、特定の箇所を変えれば直る感じでしょうか。 //インクルード_dxライブラリ #include "DxLib.h" //インクルード_ローカル //グローバル変数 static const int Zero = 0; //ステージの左壁と壁の底を表す数字 static const int One = 1; //ブロック箇所の数値 static const int MAX_WIDTH = 12; //ステージ...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

お返事ありがとうございます。

>softya(ソフト屋) 様 別々にしようと思いました。 メンテナンス性を考えると、変更があった場合、別々だと直しやすいと思いました。 ありがとうございます。 >Dixq (管理人) 様 素材は、プロジェクトがあるフォルダから見た相対パスで指定するのが普通なのですね。 知りませんでしたので、試してみます。 普通グローバル領域に定義を書く方が良いでしょう。 「どうしても一か所でしか使わないのに定義を書くのは無駄が・・」と思ったらローカルに書けばよいかと思います。 そうですね、読みやすいです。自分でも気をつけたいです。 お忙しいところ、お返事ありがとうございます。 今、やっと、y方向に、真四角の...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

Re: ほぼ初心者です。テトリスのステージとフィールドについて

>Dixq (管理人)様 アドバイスをありがとうございます。 1. 画像はマイピクチャに置くべきではありません。 もしゲームを配布する時、ユーザーに「このファイルはここに、このファイルはここに置いて下さい」とお願いするのでしょうか。 素材はプロジェクトがあるフォルダにすべて置くべきです。 1.環境はVC2008++なのですが、素材は、cppと一緒のフォルダに置けばよろしいでしょうか? また、グローバル領域の定義にData_Sizeという名前を用いるのはよくないかと思います。 何のデータサイズか分かりません。 せっかく定義を作っても一か所でしか使わないといったことがあるのであれば { const...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

確かに可読性とメンテナンス性は高まります。

ただ、今回のことではなくて、
基本的に、マジックナンバーの扱いは、結構、センスや解釈の違いが出る気がします。
自分はまだまだセンスも経験も足りないと実感しています。

逆に、同じ4で違う意味でしたら、違う文字で置き換えるべきでしょうか。

ブロックの4×4と、転送用の4は意味は違いますが、別の文字に置き換えたほうが
よろしいでしょうか。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

先のコードを書き直しましたが、いかがでしょうか。

1点ご質問がございます。 マジックナンバーは、たとえば、forループの0や転送用数値4等にも 用いたほうがよいでしょうか。 あと、何かございましたら、アドバイスをお願いします。 //インクルード_dxライブラリ #include "DxLib.h" //グローバル変数 static const int ZERO = 0; //ステージの左壁と壁の底を表す数字 static const int One = 1; static const int MAX_WIDTH = 12; //ステージの横幅の最大値 static const int MAX_HEIGHT = 21; //ステージの高さの最大...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

大変失礼しました。

直すべきところが他にもございましたら、おっしゃってください。

配列の行と列、xとyを混同しておりました。
書き直します。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

すいません。コードを追記しましたので、よろしくお願いします。

下記のサイトを参考に、dxライブラリで、壁と一番上に四角いボックス □               ■■          □     □               ■■          □        □                            □ □                            □ としたいのですが、うまくいきません。 http://www.nhk.or.tv/kow/program/program_124.php コードの悪い部分を、デバックで探そうとしましたが、drawのifの箇所かと思いますが、 他にございますでしょうか。 ※コードは、追...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

アドバイスを頂きまして、ありがとうございます。

>Dixq (管理人)様 もしゲームプログラミングの経験があまりないのであれば最初は試行錯誤でがむしゃらにコーディングし、 後からじっくりリファクタリングするという手順が良いかもしれません。 一通りコーディングが終わってから、ここはこういう分担、あそこはあぁいう分担・・ とカテゴライズしていけば、機能分割やクラス化が見えてくるかもしれません。 ありがとうございます。 ゲームプログラミングとC言語は、ほぼ初心者です。 プログラミングも、業務用アプリケーションの改良がメインで、ほぼテンプレート化したコーディングをしています。 普段は、既存のデータ量とコード量、システムのバグの損害が大きすぎるため、...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

お答えを頂きまして、ありがとうございます。

>h2so5様 わかりずらくて、申し訳ございません。 >softya(ソフト屋)様 おっしゃるように、設計段階で、不明瞭な点が多いので、迷いが多いのだと思います。 仕様も含めて、詳細設計を考えて見ます。多分、ここも難しいかもしれませんが、 がんばってみます。 ちなみに、このレベルは、詳細設計を考えずにできるレベルは最低でも必要な感じでしょうか。 一度作って、リファインすることで見てくることもあります。 最初からコードの分割を決めて作るのは慣れてからで良いのでは? それとmainとか前回の注意点が全然生かされていません。 出ても困るエラーメッセージに意味は無いのです。やり過ぎはコードの可読性を下...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: ほぼ初心者です。テトリスのステージとフィールドについて
返信数: 48
閲覧数: 13035

ほぼ初心者です。テトリスのステージとフィールドについて

前、15パズルを作成しまして、現在、テトリスを作成しようとしています。 1.下記、main.cpp、Stage.cpp、Stage.hを作成しましたが、いかがなのでしょうか。  0を何もない場所、9を壁としましたが、壁の表示には使っていません。 色々と情報はありますが、下記wikiのプレイフィールドは、壁以外の0の場所とはことなるのでしょうか。 壁とブロックの計算は、必要だと思っていますが、よくわかってないです。 http://wiki.game-develop.com/index.php?%A5%D7%A5%ED%A5%B0%A5%E9%A5%DF%A5%F3%A5%B0%2F%BD%E9%...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: テトリスを作成する上で、お勧めのグラフィック作成ツールはありますでしょうか。
返信数: 5
閲覧数: 2723

お返事を頂きまして、ありがとうございます。

2つとも使ってみたいと思います。

お答え、ありがとうございました。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: テトリスを作成する上で、お勧めのグラフィック作成ツールはありますでしょうか。
返信数: 5
閲覧数: 2723

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

>jay様

お返事をありがとうございます。
EDGEがいいんですね。知りませんでした。

> 涼雅様

お世話になります。
GIMPもいいんですね。

ちなみに、Paint.netというものをダウンロードしてしまったのですが、
ゲーム用途としてはよくないでしょうか。
あまりよくわからず、ダウンロードしたのですが、アンインストールして、
EDGEにしたほうがよろしいでしょうか。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: テトリスを作成する上で、お勧めのグラフィック作成ツールはありますでしょうか。
返信数: 5
閲覧数: 2723

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

いつもお世話になっています。
テトリスを作成(ほぼ初心者)しようと考えております。

おすすめの無料のグラフィック作成ツールはございますでしょうか。
おそらく、簡単なブロックや壁を作成することになると思います。

ご意見をいただけると、助かります。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

別の記事のほうがいいのかもしれませんが、

c言語とdxライブラリで、テトリス風の落ちゲームを作成する際に、

ブロック等の素材が必要になりますが、

これは普通、自作するものなのでしょうか。

それとも、フリー素材を探すものなのでしょうか。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

貴重なご意見をありがとうございます。

大きなゲームになれば、効果音を統合管理するソースファイルを作るのは自然なことです。 ファイルの読み込みから、引数で効果音の種類をしていして鳴らしたります。 関数名で効果音を鳴らすんだなと分かりやすしておけばデメリットは無いと思います。 複数音がある場合は、引数で変えたりするのは便利そうです。 Sound.cpp,Sound.hを作成し、実装しました。 スライドのアニメーションがあると分かりやすいですよね。 難しそうですが、挑戦してみます。 エフェクト系とアルゴリムは確かに違いますが、どちらがゲームで多いかというとエフェクトですかね。 それとパズル系のアルゴリズムが好きならオセロも良いですが、...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

いつもありがとうございます。

ご返事ありがとうございます。 3点ご質問がございます。 >効果音専用のソースファイルを作って関数を呼ぶだけで鳴らす 1.効果音専用のソースファイルを作れば、再利用も可能であるし、他のゲーム作成時でも、 一般的にもメリットがあるという理解で正しいのでしょうか。 入れ替えが発生した場所が、自作関数のため、自作関数にライブラリの関数を呼び出すのは わかりにくいのではと、初心者視点で思っていました。 >入れ替え時のエフェクトとか、マウスが指しているパーツのハイライトやら縁が白く光るなども欲しいですね マウスが指しているパーツのハイライトは難しそうですが、これはがんばってみます。 やっていたのは、 ・簡...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

これでいいのでしょうか。

UNICODEに対応する書き方をする場合は文字列はTEXT()で統一して下さい。 LoadSoundMem()もTEXT()が必要ですし、charが必要な場所ではcharではなくTCHARで全て書きます。 面倒やらミスが多そうならcharで統一します。その場合は、マルチバイト文字を言語セットとして選択します。 貴重なアドバイスありがとうございます。直しました。 効果音ですが、Puzzle.cppの戻り値を設定し、移動した場合に1、しなかった場合に-1を返す処理にしました。 どうなのでしょうか。 気がかりなのが、main.cpp以外でのエラー発生で、Puzzle.cpp等でのエラーチェックは、...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

連打したような効果音はどうしたらよろしいのでしょうか?

//Unicode対応コーディング http://www.ruche-home.net/program/tips/unicode#t-macro 上記を見て、とりあえずTEXT()をつけました。 あと、シャッフルに関しては、回数を増やすと、どうなるかまだわかっていません。 効果音はなるようになりましたが、 1クリックでも連打したような効果音になります。これは、どうしたら、1クリックで 一度だけなるようにできるのでしょうか。 たしかループは1秒に60回るのですが、countをいれる方法でしょうか? もしくは、クリックではなく、移動処理時に効果音の処理を組み込むべきでしょうか? //インクルード_...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

個人的なことで申し訳ありませんが、

>softya(ソフト屋)ならびに皆様方

インフルエンザにかかり、どうしても思考が普段どおりでなかったので、
コメントや対応が遅れました。

色々と、申し訳ありませんでした。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

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

>涼雅様 貴重なアドバイスありがとうございます。 自分には高度な部分もありますが、がんばってみます。 技術的な部分で、気になりました部分がございましたら、 遠慮なく言っていただけると助かります。 他の方のアドバイスと並行すると、混乱しますが、助かります。 第一は文字エンコードの統一性の無さです。 MessageBoxではTEXTマクロが使われているのにその他の関数では使われていません。 これではUnicodeでコンパイルをした時にはエラーが発生しますし、 マルチバイトでコンパイルをすることを前提としたものとしてTEXTマクロを使わずにすべての文字列を表すか、 Unicodeでコンパイルすること...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

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

>h2so5様

ありがとうございます。

h2so5 さんが書きました: DxLib_End()を実行した時点で描画処理は終了するのでDrawFormatString()を実行しても意味がありません。
ウィンドウのハンドリングも終了するため、画面上にエラーを通知する方法が無いということになります。

なのでDxLib_End()のエラーチェックは不要だと思います。
気がつきませんでしたが、ライブラリの終了ごに、
関数を呼び出しても意味がないのは、言われると当たり前で、気づかないで
申し訳ありません。
ご指摘していただきまして、感謝しています。

明日、明後日あたりに実装します。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

アドバイスをありがとうございます。

>ISLe様 初心者にアドバイスを頂きまして、感謝します。 他の方々のアドバイスもそうですが、自分ではまったく気づかない部分もあり、 経験不足・力不足を痛感しているしだいでございます。 また、気になる部分がございましたら、助言をいただけますと、非常に助かります。 意味がないのは「プレイヤーにシャッフルの回数を選択させること」であって実装することに意味がないわけではないのでは? シャッフルの回数を変えることによって何が変わるのかを具体的に示す必要があると思います。 プレイヤー視点という点では、ふつうにウィンドウを閉じると「エラー」と書かれたダイアログが表示されるのも問題があるのではないでしょうか...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

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

softya(ソフト屋) さんが書きました: まず、PlaySoundFileで鳴ることは確認しましたか?
常にデバッグの方法を考えながらプログラミングをしましょう。
これはアプリでもゲームでも同じです。
一応、dxライブラリのサンプルで、素材自体の音はなることは確認いたしました。
おそらく、初期化行と、ロード行の前後を入れ替えるとできると思います。
明日にでも実装します。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

皆様、貴重なアドバイスをありがとうございます。

・効果音の件は、初期化より前に関数を使っているので、
解決しそうです。

・そのほかのアドバイスですが、一つずつ考慮していきたいと思いますので、
今後、実装に繁栄してみます。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

効果音について

先のコードに追記したのですが、
PlaySoundMem( SoHandle, DX_PLAYTYPE_BACK )
の使い方が間違っているのでしょうか。

効果音が鳴りません。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

シャッフル回数の選択は意味が余りない気がします。

そうですね、意味がないので、今回はシャッフルの回数は、実装なしにします。 完成判定処理のmainでの扱いがよくわかりませんでした。 とりあえず実装したのですが、いかがでしょうか。 あと、追記で申し訳ございませんが、SoHandleを使って、 クリック時に効果音を出すコードを書き加えましたが、音が出ませんでした。 //main.cpp //インクルード_dxライブラリ #include "DxLib.h" //インクルード_ローカル #include "Keyboard.h" #include "Mouse.h" #include "Puzzle.h" /* ******************...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

シャッフル回数の実装について

ユーザーから100回、500回、1000回と入力を求めるか、
あらかじめ500回等決められた回数にするか迷っています。

前者の場合、三つのボックスを表示して選択させる感じになりそうです。

どちらがよろしいのでしょうか。また、別のいい方法があるのでしょうか。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

いつも助かります。

シャッフルと、エフェクト系の実装します。

ありがとうございます。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

アドバイスが助かります。

詳しく説明を書くほどメンテンナス性が悪くなると言う典型 あと sizeof(Puzzle.GrHandle)/sizeof(Puzzle.GrHandle[NUM_ZERO]) とか sizeof(Puzzle.GrHandle)/sizeof(Puzzle.GrHandle[0]) とか不統一な所も未うけら得ます。 全部PAZZLE_PIECE_NUMでも問題はないと思いますが如何でしょうか? ところで、これコンパイル通ります? blackbox_swapで閉じ括弧の数が合わないようですが。 あっPuzzle_Initializeって概略のほうが説明より長いですね。 概略になっていないと思...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

アドバイスありがとうございます。

細かい表現は色々と欠点があるかもしれませんが、 全体的な感じはこのようなコメント の仕方になりますでしょうか。 プログラム名は、必要ない場合もあるかもしれませんが、 大体このような感じで大丈夫でしょうか。 企業提出用のコメントは、相手方がプログラムに素人の場合も あり、ひとつの文章として、見られるものでなければとは、 感覚として持っていますが、ゲームプログラムやライブラリを用いると どこまで書けばいいのか、慣れていません。 /************************************************************************* * ファイル名 : P...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

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

書き直すと以下のような感じでしょうか。 あとは、シャッフルとエフェクト系の処理に入りたいと思います。 /************************************************************************* * ファイル名 : Puzzle.cpp * プログラム名 : パズル * 作成日 : 2013/01/22 * Version : 1.00 * 概要 : パズルの初期化処理、移動処理、完成判定処理、描画処理、終了処理をする * 変更履歴 ; ***************************************************...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

ありがとうございます。

コメントは、簡単なものしかつけたことがありません。 / ・ソースを見てすぐ分かることは書かない。 ・何行か毎に書く(必要なら一行ごとに書く) ・人に対する説明だと思って書く。 たとえば、結果を完成と比較する処理を書いているのですが、 この場合は、こういう感じでしょうか。 処理も正しいのでしょうか。 /************************************************************************* * ファイル名 : Puzzle.cpp * プログラム名 : パズル * 作成日 : 2013/01/22 * Version : 1.00 * 概...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

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

2.ただの条件文に出来るのでは? if ( click_blook_place % 4 == 0 )left = -1; else left = click_blook_place - 1; 5.コメントがほぼ無いので、コメントを付ける癖が欲しいです。 6.基礎が完成したら演出(エフェクト・音・スコアなど)を付けましょう。 ※ ここがゲームプログラマーのセンスを問われるところです。 2は、思いついていないですが、考えて見ます。 5のコメントですが、ゲームプログラムではどういう感じで書けばいいのでしょうか。 普段はというか、以前は、設計書や仕様書やテンプレート(企業のシステムです)を基にやって...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

関数に配列を渡すときにサイズがわからない点は、自分も気になりました。

とりあえず、staticなグローバル変数として、
配列を定義すると、関数の中でもsizeofで要素数が得られるようで、助かりました。

ブラックボックスのアドバイスをありがとうございます。
完成判定処理と、シャッフルの回数を100回、500回など偶数
(そもそも14回のswapなので)回のシャッフルを考えています。
15パズルの完成非完成の記事は、理解不足になりますが。

入れ違いで申し訳ございません。
ひとつずつ、考慮していきたいです。
実装します。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

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

ブラックボックス用の画像がないので
16をブラックボックスとして考えてください。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

はい、わかりました。

zip形式のファイルです。
まだ途中ですが、環境もよくわからないですが、
VC++2008では動いてました。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

理解いたしました。

アドバイスありがとうございます。 以下、Puzzle.cppの移動処理追加コードです。 同じ処理の繰り返しのため、よくないかもしれません。 //インクルード_dxライブラリ #include "DxLib.h" //インクルード_ローカル #include "Keyboard.h" #include "Puzzle.h" //インクルード_標準 #include <stdlib.h> #include <time.h> //マクロ #define BLOCK_SIZE 100 #define PAZZLE_PIECE_NUM 16 #define NUM_ZERO 0 #define NUM_...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

とりあえず、移動処理がかけました。

大したゲームではございませんが、変な質問ですが、
ソースを公開したら、そのソースは、作品扱いにできなくなるものでしょうか。
そもそも15パズル程度では、作品にはならないものかもしれませんし、
皆様のアドバイスのおかげなので、公開すべきかもしれませんし、
まだ完成していないので載せて、アドバイスを頂きたくもあります。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

マイナスも気づきませんでせんでした。

お二人ともありがとうございます。
涼雅 さんが書きました:-1~-99までの数字を割る100しても0になるためです。
softya(ソフト屋) さんが書きました:0 <= mx < 400 と 0 <= my < 400 を先にチェックして、100で割った後のチェックは不要
すいません、一番、重要な部分でアドバイスというか、
お答えを頂いて、ありがとうございます。
indexを基に、上下左右にブラックボックス(PLACE[15])がないか、チェックをする感じでしょうか。
とりあえず、実装したいと思います。
softya(ソフト屋) さんが書きました:if文の分岐を減らす事でバグを減らし開発効率をアップさせる
分岐を減らして、バグも減り、テスト数も減るということでしょうか。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

ありがとうございます。

100で割るというのは考えつかなかったです。
その後に、場合わけになるのでしょうか。

すいません、考えてみると、そこから場所が求まりますね。
たとえば、
x/100 = 2
y/100 = 1
2 + 1 * 4 = 6

という計算ですよね。
その上で、場合わけして、実装してみます。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

15パズルの移動処理について

マウスの入力であるx、yを利用したいのですが、
xが

0<=x<100
100<=x<200
200<=x<300
300<=x<=400

で4通り、yも同様に4通りで、
計16通りの分岐を作る方法でよろしいでしょうか。
マウス入力x、yの利用のためには、ほかにやり方はなさそうです。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

お返事ありがとうございます。

コンシューマ開発経験2年位、想像がつきません・・・すごそうです。
多分、中小企業になるかもしれません。

すいません、この話題は、別の時にでもお願いします。
ちなみに、就職といっても、転職になります。

とりあえず、15パズルをがんばってみます。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

趣旨とずれますが、アプリやツールの分類。

アプリといったら、現状、どういったものが主流なのでしょうか。
flash等なのでしょうか。
アプリやゲームを作る方々の間では、どういう認識なのでしょうか。
(開発環境がcとdxライブラリ以外にたくさんあるのはぞんぞじております。)
現在のいわゆるゲームやアプリという部分が知りたいです。

よろしければ、ご回答をお待ちしております。
これからどういった環境で開発すべきかの方向性を考えたいです。

今、ゲーム業界(ソーシャルも含めて)への就職を考えています。
(ブランクがあるので、就職活動にはつらい部分も多いのですが。)
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

助かりました。

その方針で、実装したいと思います。
やはり、ポイントは、 通し番号i に対して、 i/4になりそうな気がします。
実装してみたいと思いますが、ありがとうございます。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

分かりずらくて、すいません。

完成の判定の前の、入れ替え処理での判定です。 上下左右に空きがあるかどうかの判定です。 場所は先ほどの数値で特定できるのですが、 物理的に隣かどうかとなると、難しいです。 いくつかやり方はありそうですが、いいのか悪いのか、 書いてみないと分かりませんが。 15番目を空のボックスとして、毎回15番目のplace[15]を 取り出して、クリックされた箇所のplaceが、place[15]の 上下左右であるかないか、判定するとかありそうですが まだ、よくわかっていません。 いずれにしても、place[任意](クリック箇所のplace)もしくはplace[15]の 上下左右の指定が難しいところです。 ...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

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

プログラミングは、多分、かなりの初心者クラスだと思います。

場所番号0から15と、座標を絡めて、考えていますが、
例えば3と4(完成時の4と5の数字など)は、隣り合っていないので、
そこをどう判定しようか考えています。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

メンテナンス部分は考えていなかったので、助かります。

softya(ソフト屋) さんが書きました: ここで気を作る点を1つ。
無闇にファイルと関数に小分けするとメンテンナンスが面倒になります。
原則として、何度も使ったりややこしいモノを別ファイルに分けます。
今回はこれでよいと思いますが、マウスに関しては直接書くより面倒になっているとおもいます。
ありがとうございます。
ゲームプログラミングをほとんどしたことがないので、参考になります。

入れ替え処理ですが、Puzzle.cpp内書いてみますが、ここが一番、難しそうです。
場所を0から15としたときに、前後左右調べると思いますが、
場合わけをどうしようか迷っています。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

よかったです。ありがとうございます。

パズルの端に、マウスの位置を表示させる感じで、 クリック処理を加えたコードを貼り付けます。 表示関数をDrawFormatStringに書き換えて、クリック時に表示に変えました。 この部分に表示ではなく、移動処理を組み込めばいいと思うのですが、 どうなのでしょうか? //main.cpp //インクルード_dxライブラリ #include "DxLib.h" //インクルード_ローカル #include "Keyboard.h" #include "Mouse.h" #include "Puzzle.h" int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

ありがとうございます。

>涼雅様 アドバイスありがとうございます。 前回の解答では、ファイル分割をkeyboardのように行うまではいいのですが、 まだ、実装できていないので、実装をしてみようと思います。 今までで、一番、判断が迷っています。 分割した際の、x , y情報をどう取り出すのかの部分です。 実装してみました。 とりあえず、パズルの端に、マウスの位置を表示させる感じです。 これから、クリックしたときにマウス位置を移動処理の中に格納を考えます。 //Mouse.cpp //インクルード_dxライブラリ #include "DxLib.h" //インクルード_ローカル #include "Mouse.h" //...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

ファイル分割について

キーボードのときには、ファイル分割が有効でしたが、 マウスの場合、キーで得てくるというより関数でポインタ得てくるため、 ファイル分割の意味がないように感じられるのですが、 工夫が足りないのでしょうか。 GetMousePoint(x,y); これをファイル分割中の関数の中に組み込みと、 いわゆるgetterがgetter_x, getter_yと、二つになる気がします。 配列を返せるならいいのですが、いずれにしても、 GetMousePoint(x,y); を直接書いてもコード量として変わらない気がしています。 あとは、必要な情報が、左クリックと座標のためと、少なく ただ、得るだけというのも分...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

理解できてない部分と出来ている部分がある感じです。

入れ子のループはいけないというのは、理解できております。

構造体の件は、キーボードのように、クリックしたタイミングで、
クリック情報は得られると思うのですが、そのときの座標は、
次の行で得たとして、
この場合、一つのwhile中で、得た情報を計算のupdateに
与える感じでよろしいのでしょうか。

1/60ずつ、上記の処理をおこなう感じでしょうか。

コードはこれからなので、感じという表現で申し訳ありません。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

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

そこで悩んでおります。
Keyboardのようにすると、クリックしたときに、座標を得る処理が
うまく考えられていません。
クリックを得て、どのタイミングで座標を得るのか、考え中です。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

ありがとうございます。

ブラックボックスを含めて処理をすることにしました。 シャッフル、定数等、課題はありますが、とりあえずマウス処理と移動処理に行きたいと思います。 マウス処理は、制御というか、使い方が難しい感じです。 mainにそのまま組み込むとすると、クリックしたときの情報をどうやって得ればいいのか分かりません。 mainに入れるという考え方が間違っていますでしょうか。 例えば、下記をループに入れる等になると考えています。 前略 MouseInput = GetMouseInput() ; while( ( MouseInput & MOUSE_INPUT_LEFT ) == 0 ) { // メッセージ処理 ...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

ありがとうございます。

softya(ソフト屋)様 >それに絡んで、int GrHandle[16];と決め打ちだったり、sizeof(Puzzle.GrHandle)/sizeof(Puzzle.GrHandle[0])なのを統一してください。 c言語の知識不足なのですが、ヘッダーの構造体で数字を文字の定数(16をNUM等)としたいときは、マクロの定数定義は使う感じになるのでしょうか。 それともstatic変数になるのでしょうか。 >Puzzle_tにint place[HANDLE_SIZE]を含まないとせっかくの構造体が中途半端になりますね。 含ませると考えずに、別々に書いてしまっていたので、含ませたいと思いま...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

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

入れ違いですいません。 0から15をシャッフルして、0から14までを表示に使う処理で書いてみましたが、 標準関数を使用してしまいました。 この書き方は、よくないのでしょうか。 >初期化で15パズルの操作をランダムに数十回行ってパズルの開始パターンを作成するのです。 → 回数は調整してください。 こことPuzzle_tのstatic化は、これから作成したいと思います。 //インクルード_dxライブラリ #include "DxLib.h" //インクルード_ローカル #include "Keyboard.h" #include "Puzzle.h" //インクルード_標準 #include <s...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

ご返信ありがとうございます。

静止画で出し続ければいいと思っていましたが、WaitKey();は、消します。
この場合、表画面にして、消去して、裏画面描写して・・・
というくり返しの処理という理解で間違いないでしょうか。
基本だと思いますので、そうします。

シャッフルは、ハンドルのインデックス数の、1から16を格納する配列を用意して、
要素をシャッフルして、利用すればいいと思います。
精度を考えると、アルゴリズムは難しそうです。

最終的には、パズル内の並び替え操作で、
要素がswap等されて、要素が1から16に格納される場合に
完成と判定が出来そうです。
違うかもしれませんが。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

コードですが、見ずらくて申し訳ありません。

エラー処理だけは、まだ館のサンプルのように直していません。 忘れないように、慣れるまで、逆にこうしている感じでもあります。 MesageBoxの書き方もみずらくてすいません。 あと、素材が1から16までの数なので、表示は15までにしてあります。 素材を1から15にして、残りがブラックボックスという画像を16分割して 使用しようかと考えています。 ただ、並び替え処理が出来ていないので、そちらを先にしようかと思いました。 その後、マウスの選択と、移動、比較などを作っていきます。 キーボードとアップデイトの処理は、コメントアウトしてあります。 //main.cpp #include "DxLib.h...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

どりあえず、表示までは出来ました。

mainにしたいのですが、仕方が分からないので、 分割のままですが、一応、15パズル表示までは出来ました。 もし、いきずまり、やりずらくなりましたら、mainだけで書き直して見ようと思います。 相当難しいだろうことは覚悟していますので、迷います。 今は、移動処理を考えていますが、画像分割をしたものを、 ハンドルで表示させるのは分かります。 移動させるときは、マウスクリックで周囲が開いていたら、 動くようにしたいです。 普通、マウスの位置情報x,y の処理は、座標領域 0<x<100, 0<y<100が1 100<x<200, 0<y<100が2 ・・・・ といった感じで処理するイメージでしょう...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

ありがとうございます。

ご指摘は、参考になります。
直してみたいと思いますが、出来るかどうか不安です。
とりあえず、やってみます。
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

説明不足ですいません。追加になります。

main.cppのClearDrawScreenをコメントアウトすると、上を押し続けると、 パズルが埋まっていくといった意図した表示が出来ます。 しかし、ClearDrawScreenの位置は変えてもいいのか、判断つきません。 例えば、表示して、さらにこれからですが、変更処理、完成判断処理などを付け加えたときに、 最終処理でClearDrawScreenとするものでしょうか。 /*if( ClearDrawScreen() != 0 ){ flag = MessageBox( NULL , TEXT("ProcessMessage err") , TEXT("Err") , MB_OK); i...
by taka_taka
11年前
フォーラム: C言語何でも質問掲示板
トピック: 初心者が15パズル作成するのは、難しいでしょうか。
返信数: 104
閲覧数: 30016

15パズルを表示する処理が出来ません。

色々な方々の意見を参考に作り直しました。 といっても、MessageBoxを使った点が一番の変更点です。 16分割した後、1から順に並べて、全体を表示させたいのですが、 一つ表示するごとに消えてしまい、位置をずらして、一つずつ描図することしかできません。 メインループとは別ループを作り、その中で処理するのがよいでしょうか。 //main.cpp #include "DxLib.h" #include "Keyboard.h" #include "Puzzle.h" int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int){ int GrHandle[1...

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