関連サイト
本書の関連ページが用意されています。
内容紹介
ゲーム開発で、楽しみながらC++が学べる! プロのクリエイターが教えるC++の入門書
C++は今も多くの分野で使われ続ける、世界的に人気の高いプログラミング言語です。大規模なシステム開発や高速処理が求められる分野はもちろん、Unreal Engine を中心とした本格ゲーム開発では主要言語として採用され、C++スキルを求める企業も非常に多いのが特徴です。
本書では、そんな強力な言語を「ゲーム開発」というワクワクする題材を通して、手を動かしながら楽しく身につけられる構成になっています。
■こんな人におすすめ
・ゲーム開発をきっかけにC++を無理なく習得したい人
・CからC++へのステップアップに挑戦したい初学者
・クラスやオブジェクト指向が苦手で、実例を通じて理解したい人
・専門学校・大学の授業や演習で使える教材を探している教員・学生
■購入者限定ダウンロード特典付き
Appendix 1 STLを活用する
Appendix 2 ライフゲームとマンデルブロ集合
※本書に収録しきれなかった付録の解説ページとサンプルファイルを提供します
書誌情報
- 著者: 廣瀬 豪
- 発行日: 2026-03-17 (紙書籍版発行日: 2026-03-17)
- 最終更新日: 2026-03-17
- バージョン: 1.0.0
- ページ数: 600ページ(PDF版換算)
- 対応フォーマット: PDF, EPUB
- 出版社: インプレス
対象読者
著者について
廣瀬 豪
早稲田大学理工学部卒。ナムコと任天堂子会社に勤務後、ゲーム制作会社を設立し、セガ、タイトー、ケムコなどの公式ゲームを多数、手掛けてきた。現在は技術書執筆、プログラミングとゲーム開発の指導、教育番組のプログラミングコーナーの監修を行う。C言語、C++、C#、Java、JavaScript、Python、アセンブリ言語などの様々な言語でゲーム開発やアルゴリズム研究を続けている。
著書は『ゲーム開発で学ぶC言語入門 プロのクリエイターが教える基本文法と開発技法』『Pythonではじめるゲーム制作 超入門』(インプレス)、『野田クリスタルのこんなゲームが作りたい!』(インプレス・共著)、『Pythonでつくる ゲーム開発 入門講座』(ソーテック社)、『7大ゲームの作り方を完全マスター! ゲームアルゴリズムまるごと図鑑』(技術評論社)など、多数。
目次
はじめに
- サンプルファイルについて&本書の前提
- 本書の構成と開発するゲームの紹介
目次
Chapter 1 C/C++学習の準備をはじめよう
- 1-1 C++について
- 1-2 拡張子を表示する
- 1-3 Visual Studioのインストール
- 1-4 Visual Studioの使い方
- 1-5 プログラムの記述ルール
- 1-6 デバッグの基本を知ろう
- column C++をマスターすれば最強のプログラマー
Chapter 2 C言語の基礎を総復習しよう①
- 2-1 main関数
- 2-2 出力と入力
- 2-3 変数、型、演算子
- 2-4 配列、文字列を扱う配列
- 2-5 条件分岐
- 2-6 繰り返し
- 2-7 関数
Chapter 3 C言語の基礎を総復習しよう②
- 3-1 構造体
- 3-2 ポインタ
- 3-3 ファイル処理
- 3-4 乱数
- 3-5 マクロ
- 3-6 2進法と16進法を理解する
Chapter 4 C++の入出力、string型、メモリ管理、名前空間
- 4-1 出力と入力
- 4-2 string型とbool型
- 4-3 newとdeleteによるメモリ管理
- 4-4 例外処理
- 4-5 名前空間
Chapter 5 C++の関数、ファイル処理、乱数
- 5-1 参照と関数の参照渡し
- 5-2 関数のオーバーロード(多重定義)
- 5-3 デフォルト引数を用いた関数定義
- 5-4 関数テンプレート
- 5-5 <fstream>によるファイル処理
- 5-6 <random>による乱数
- column オブジェクト指向プログラミング
Chapter 6 C++のクラス定義の基礎
- 6-1 メンバ
- 6-2 カプセル化 アクセス制御
- 6-3 カプセル化 セッタとゲッタ
- 6-4オブジェクトをポインタで扱う
- 6-5オブジェクトを配列で扱う
- 6-6 メンバ関数の宣言と定義を分離する
- 6-7 静的メンバ
- 6-8 コンストラクタ
- 6-9 コンストラクタのオーバーロードとデフォルトコンストラクタ
- 6-10 デストラクタとメモリ解放
Chapter 7 クラス定義の応用
- ワンポイント:第7章を読む前に。
- 7-1 オブジェクトの初期化と代入
- 7-2 コピーコンストラクタ、代入演算子のオーバーロード
- 7-3 クラスの継承
- 7-4 継承時のメンバへのアクセス
- 7-5 オーバーライド
- 7-6 オブジェクトのポインタと仮想関数
- 7-7 ポリモーフィズムの基礎
- 7-8 純粋仮想関数、抽象クラス
Chapter 8 おみくじ、クイズ、文章生成アプリを作ろう
- 8-1 CUIとGUIについて
- 8-2 おみくじアプリで学ぶ
- 8-3 おみくじアプリの課題の解答と解説
- 8-4 クイズゲームで学ぶ
- 8-5 クイズゲームの課題の解答と解説
- 8-6 メッセージ生成アプリで学ぶ
- 8-7 メッセージ生成アプリの課題の解答と解説
- column ミニゲームを作って力をつけよう
Chapter 9 数当てゲーム、穴埋め問題、ミニSLGで学ぼう
- 9-1 プログラムを読み解く力の大切さ
- 9-2 数当てゲームの穴埋め問題
- 9-3 数当てゲームの穴埋め問題の解答と解説
- 9-4 単語入力ゲームの穴埋め問題
- 9-5 単語入力ゲームの穴埋め問題の解答と解説
- 9-6 アイスクリーム販売SLGのプログラムを読み解く
- 9-7 アイスクリーム販売SLGのプログラムの解説
- column 実行形式ファイルをコマンド プロンプトやPower Shellで実行する
Chapter 10 迷路ゲームでリアルタイム処理を学ぼう
- 10-1 C言語やC++でリアルタイム処理を行う
- 10-2 制作する迷路ゲームの内容と学習の流れ
- 10-3 迷路ゲームのプログラム1(C言語で記述、構造体を使わない)
- 10-4 迷路ゲームのプログラム2(C言語で記述、構造体を使用する)
- 10-5 C++で書き直す1(クラス定義1:メンバ変数、コンストラクタ)
- 10-6 C++で書き直す2(クラス定義2:メンバ関数、セッタとゲッタ)
- column CUI上グラフィックを描く
Chapter 11 グラフィックを用いたゲーム制作の準備
- 11-1 DXライブラリの導入
- 11-2 Visual StudioでC++のプロジェクトを作成する
- 11-3 DXライブラリを使用するための設定を行う
- 11-4 リアルタイム処理
- 11-5 キーボードとマウスによる入力
- 11-6 図形を描く、色を扱う
- 11-7 画像を表示する
- 11-8 音のファイルを扱う
- column 3DCGを描く
Chapter 12 ゲームを作るためのアルゴリズム
- 12-1 アルゴリズムとは
- 12-2 マップデータの管理
- 12-3 背景の表示
- 12-4 キャラクターを動かす
- 12-5 物体を自動的に移動する
- 12-6 複数の物体を自動的に動かす
- 12-7 ヒットチェック1 円による判定
- 12-8 ヒットチェック2 矩形による判定
- 12-9 背景とのヒットチェック
- columnアルゴリズムを学ぶ大切さ
Chapter 13 アクションゲームを作ろう
- 13-1 「避けゲー」でクラス定義を復習する
- 13-2 「避けゲー」のプログラムの全体像
- 13-3 「避けゲー」のクラス定義、処理の詳細
- 13-4 「ジャンプアクション」でvectorの使用方法を学ぶ
- 13-5 「ジャンプアクション」のプログラムの全体像
- 13-6 「ジャンプアクション」のvector、処理の詳細
- column フレームレートを一定に保つ
Chapter 14 2人対戦ゲームを作ろう
- 14-1 この章で開発するゲーム内容と学習の流れ
- 14-2 新しいプロジェクトを作り、ヘッダーファイルを用意する
- 14-3 ヘッダーとソースに基本的な項目を記述する
- 14-4 二次元配列でマス目に並ぶブロックを管理する
- 14-5 文字列をセンタリング表示する関数を組み込む
- 14-6 画面遷移を組む込む
- 14-7 機体を操作するクラスの設計1 メンバの宣言
- 14-8 機体を操作するクラスの設計2 メンバ関数の実装&機体を描く
- 14-9 機体を操作するクラスの設計3 メンバ関数の実装&機体を動かす
- 14-10 スコア計算と勝敗判定を組み込んで完成させる
- column 画像と音の素材を使って改良する
