Skip to main content
Advanced Search
Search Terms
Content Type

Exact Matches
Tag Searches
Date Options
Updated after
Updated before
Created after
Created before

Search Results

140 total results found

準備編3:DxLib用のプロジェクトを作って設定するよ

夏休み特別企画 夏休みだ。ゲームを作る(準備編)

🎮 Visual Studio 2026でDxLibを動かしてみよう このページでは、Visual Studio Community 2026でDxLib用のプロジェクトを作成し、簡単なサンプルプログラムを実行します。 このページの目標は、次の3つです。 DxLib用のプロジェクトを作成する DxLibを使用するためのプロジェクト設定を行う 画面中央に白い点を表示して、DxLibが正しく動くことを確認する 📁 1.DxLibの保存場所を確認する 最初に、DxLib本体を置いた場所を確認します。 使用する...

付録:♻️ DxLibのプロジェクト設定を保存して、次も使い回す

夏休み特別企画 夏休みだ。ゲームを作る(準備編)

♻️ DxLibの設定を保存して、次のプロジェクトで使い回そう 前のページでは、DxLibを使うために、プロジェクトのプロパティをいろいろ設定しました。 DxLibのインクルードパス DxLibのライブラリパス Debug用のランタイムライブラリ Release用のランタイムライブラリ ところで、新しいゲームを作るたびに、毎回この設定を最初からやるのは面倒ですよね。 新しいプロジェクトを作る  ↓ インクルードパスを設定する  ↓ ライブラリパスを設定する  ↓ DebugとReleaseを設定する  ↓ やっ...

目次

夏休み特別企画 夏休みだゲームを作る(コンソールゲーム)

📔 C言語でHIT&BLOWゲームを作ろう この教材では、コンソール上で動くHIT&BLOWゲームを、C言語で少しずつ作っていきます。 単に完成したプログラムを書き写すのではなく、ゲーム制作の途中で必要になるC言語の仕組みを、その都度確認します。 整数と文字列の違い char型の配列と終端文字\0 乱数と配列のシャッフル whileによる入力ループ 関数の引数と戻り値 strlen、isdigit、strcmp 二重ループによるHIT・BLOW判定 全7回 HIT&BLOWを作ってみよう ゲームのルールと、...

第1回 HIT&BLOWを作ってみよう(計画)

夏休み特別企画 夏休みだゲームを作る(コンソールゲーム)

🎮 第1回 HIT&BLOWを作ってみよう まずは、小手調べとC言語の復習を兼ねて、コンソール上で動くゲームを作ります。 今回作るのは、HIT&BLOWです。 1.HIT&BLOWのルール コンピュータは、同じ数字が重ならない4桁の問題を作ります。 プレイヤーは4桁の数字を入力し、コンピュータから返されたHITとBLOWを手掛かりに正解を探します。 HIT:数字も位置も正解と一致している BLOW:数字は正解に含まれているが、位置が違う 例えば、正解と入力が次の場合を考えます。 正解:1234 入力:132...

第2回 文字列と数字と入力

夏休み特別企画 夏休みだゲームを作る(コンソールゲーム)

🔤 第2回 4桁の入力を文字列で扱おう 今回は、プレイヤーが入力する4桁を、どのような変数へ保存すればよいか考えます。 1.まずは整数として入力してみる 「4桁の数字を入力する」と聞くと、最初はint型を使いたくなります。 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> int main(void) { int number; printf("4桁の整数を入力してください:"); scanf("%d", &number); ...

第4回 入力処理

夏休み特別企画 夏休みだゲームを作る(コンソールゲーム)

🔁 第4回 プレイヤーの入力を繰り返し受け取ろう 問題が作れるようになったので、次はプレイヤーの入力を受け取ります。 HIT&BLOWでは、正解するまで何度も入力します。 入力メッセージを表示 ↓ プレイヤーが入力 ↓ コンピュータが応答 ↓ もう一度入力メッセージへ戻る 1.入力用の配列を用意する char input[255]; ゲームのルールでは4桁だけですが、プレイヤーが必ず4文字だけ入力するとは限りません。 そのため、入力を受け取る段階では少し大きな配...

第5回 入力チェック

夏休み特別企画 夏休みだゲームを作る(コンソールゲーム)

✅ 第5回 入力エラーを調べよう 4桁を何度も入力できるようになりました。 しかし、プレイヤーが必ず正しい形式で入力するとは限りません。 12 12345 1b35 abcd 1123 ゲームで使えない入力は、判定処理へ進む前に止める必要があります。 1.今回確認する入力エラー 次の3種類を確認します。 エラー番号 内容 0 エラーなし 1 文字数が4ではない 2 数字以外の文字が含まれている 3 同じ数字が重複している 入力を調べ、エラー番号を返す関数を作ります。 int Ch...

第6回 HITとBLOWカウント

夏休み特別企画 夏休みだゲームを作る(コンソールゲーム)

🎯 第6回 HITとBLOWを数えよう 問題作成と入力エラーチェックまで完成しました。 今回は、正解と入力を比較して、HITとBLOWを数えます。 正解:1 2 3 4 入力:1 3 2 5 結果:1 HIT 2 BLOW 1.HITを数える HITは、数字と位置の両方が一致している状態です。 answer[0] と input[0] answer[1] と input[1] answer[2] と input[2] answer[3] と input[3] 同じ添え字同士を比較すればよいため、1本のfo...

第7回 正誤判定とゲーム化

夏休み特別企画 夏休みだゲームを作る(コンソールゲーム)

🏆 第7回 正解判定を入れてゲームを完成させよう HITとBLOWを表示できるようになりました。 最後に、入力が正解と一致したらループを終了し、正解メッセージを表示します。 1.文字列は == で比較しない C言語の文字列は、char型の配列です。 次のように書いても、文字列の中身を正しく比較したことにはなりません。 if (answer == input) { /* 正解 */ } 配列名は、配列の先頭位置として扱われるためです。 文字列の中身を比較するには、strcmpを使います。 2.ここでC言...

付録 今回の補足

夏休み特別企画 夏休みだゲームを作る(コンソールゲーム)

付録 C言語の仕組みとゲームプログラムの考え方 この付録では、第2回と第3回の途中で出てくる、少し引っかかりやすいC言語の仕組みをまとめます。 ゲームを完成させるために、すべてを暗記する必要はありません。 コードの意味が分からなくなったときに、このページへ戻って確認してください。 第2回で出てくるC言語の仕組み 1.文字と文字列は別のもの C言語では、文字と文字列は別のものです。 char c = '3'; char text[] = "3"; 見た目はどちらも数字の3ですが、メモリの中身は異なります。 ...

第3回 問題を作る処理を作る問題

夏休み特別企画 夏休みだゲームを作る(コンソールゲーム)

🎲 第3回 重複しない4桁の問題を作ろう 今回は、コンピュータが出題する4桁の問題を作ります。 条件は、次のとおりです。 使用する数字は0~9 同じ数字を2回使わない 実行するたびに違う並びになる いきなりC言語のコードを書くのではなく、最初に疑似言語で処理の流れを整理してから、C言語へ置き換えていきます。 1.重複しない乱数をどう作るか rand() % 10を4回実行するだけでは、同じ数字が出る可能性があります。 1 5 5 8 このままでは、「同じ数字を2回使わない」という条件を満たせません。 そこで...

付録2 DxLibテンプレート

夏休み特別企画 夏休みだ。ゲームを作る(準備編)

付録2 DxLibゲームテンプレート このページでは、新しいDxLib用プロジェクトを作成し、保存しておいたプロパティシートを読み込んでから、ゲーム制作の土台となるテンプレートを作ります。 あらかじめ、前の付録で次の2つのプロパティシートを作成しておいてください。 DxLib_Debug.props DxLib_Release.props このテンプレートでは、次の4つの関数を使ってゲームを作ります。 Initialize(); Update(); Draw(); DeltaTime(); Initializ...

第1回 コンソール版から画面付きゲームへ

夏休み特別企画 GUIゲームを作ろう

第1回 コンソール版から画面付きゲームへ この章では、コンソール版で作ったHIT&BLOWを、DxLibを使った画面付きゲームへ作り替えていきます。 今回は、コンソール版と画面付きゲームの違いを確認し、ゲームテンプレートのDraw()へタイトルを表示します。 この回は、付録2で作ったゲームテンプレートのmain.cppから作業を始めます。 このページの進め方 このページでは、読む部分とソースを書き換える部分を分けています。 説明 仕組みを確認する STEP ○ ここでソースを書き換える! m...

第2回 DxLibに移してゆくぅ

夏休み特別企画 GUIゲームを作ろう

第2回 ゲームのルールをDxLibへ移そう 前回は、画面付きゲームで使用するInitialize()、Update()、Draw()とゲームループを確認しました。 今回は、コンソール版HIT&BLOWの処理をDxLib版へ移します。 この回は、第1回終了時点のmain.cppから作業を始めます。 1.今回やること コンソール版の処理は、次の2種類に分けられます。 ゲームのルールを処理する部分 と コンソールで入力・表示する部分 ゲームのルールを処理する関数は、そのままコピーして使います。 ...

第3回 ゲーム画面の作成

夏休み特別企画 GUIゲームを作ろう

第3回 画像を使ってゲーム画面を作ろう 前回は、コンソール版から次の4つの関数を移し、仮入力"1234"のHIT数とBLOW数を画面へ表示しました。 MakeProblem() CheckAnswerError() CountHit() CountBlow() 現在のゲームは、まだ文字だけで表示されています。 今回は、配布した画像を読み込み、次の部分を画像へ変更します。 4桁の入力欄 0~9の数字ボタン 判定ボタン この回は、第2回終了時点のmain.cppから作業を始めます。 このページの進め方 このペ...

第4回 入力用GUIを作る!

夏休み特別企画 GUIゲームを作ろう

第4回 数字ボタンを押して入力しよう 前回は、画像を読み込み、数字ボタンと4桁の入力欄を画面へ並べました。 ただし、前回の数字ボタンは画像を表示しているだけです。 数字ボタンを表示する ↓ クリックしても何も起こらない 今回は、マウスで数字ボタンをクリックし、押した数字をinputへ追加できるようにします。 この回は、第3回終了時点のmain.cppから作業を始めます。 このページの進め方 このページでは、読む部分とソースを書き換える部分を分けています。 説明 仕組みを確認する S...

第5回 HITとBLOW判定の移植

夏休み特別企画 GUIゲームを作ろう

第5回 HITとBLOWを判定しよう 前回は、数字ボタンをクリックして4桁を入力できるようにしました。 現在は、4桁を入力しても判定ボタンが反応しません。 今回は、判定ボタンをクリックしたときに、 入力内容を確認する ↓ HIT数とBLOW数を求める ↓ 結果またはエラーを画面へ表示する ところまで作ります。 この回は、第4回終了時点のmain.cppから作業を始めます。 このページの進め方 このページでは、読む部分とソースを書き換える部分を分けています。 説明 仕組...

第7回 画面遷移(状態遷移)

夏休み特別企画 GUIゲームを作ろう

第7回 タイトル画面とクリア画面を作ろう 前回までのプログラムは、起動するとすぐにゲームが始まりました。 今回は、次の3つの画面を作ります。 タイトル画面 ゲーム画面 クリア画面 現在の画面に応じて、実行するUpdate()とDraw()の処理を切り替えます。 この回は、第6回終了時点のmain.cppから作業を始めます。 このページの進め方 このページでは、読む部分とソースを書き換える部分を分けています。 説明 仕組みを確認する STEP ○ ここでソースを書き換える! main.cpp...

第6回 解答履歴を表示しよう

夏休み特別企画 GUIゲームを作ろう

第6回 解答履歴を表示しよう 前回は、判定ボタンを押すとHIT数とBLOW数を求められるようにしました。 現在は、次の入力を行うと前の結果が見えなくなります。 今回は、正常に判定できた結果を最大60件まで保存し、画面右側へ15件ずつ表示します。 第5回では、判定直後のHIT数とBLOW数を左側へ表示しました。 第6回からは、正常な判定結果を右側の履歴へ残し、判定後は入力欄を空にして次の入力へ進みます。 左側へ前回のHIT数とBLOW数を残さない仕様へ変更します。 この回は、第5回終了時点のmain.cppから作業...

第8回 最後の仕上げ

夏休み特別企画 GUIゲームを作ろう

第8回 HIT&BLOWを完成させよう 前回は、タイトル画面、ゲーム画面、クリア画面を切り替えられるようにしました。 今回は、60回以内に正解できなかった場合のゲームオーバー画面を追加します。 最後にデバッグ表示を隠し、ゲーム全体を通して確認します。 この回は、第7回終了時点のmain.cppから作業を始めます。 このページの進め方 このページでは、読む部分とソースを書き換える部分を分けています。 説明 仕組みを確認する STEP ○ ここでソースを書き換える! main.cppを実際に変更...