Advanced Search
Search Results
129 total results found
必要なクラス(Terrain class)を作っていく
🛠 ステップ⑤:Terrain クラスを作ろう!ゲームに出てくる「地面」や「山」をつくるために、Terrain(テレイン)という 地形クラス を作ります。これは「地形を作ったり、描いたり、調べたりする便利な道具」だと思ってください。🧱 1. 必要な情報(メンバ変数)地形を作るには、「点」や「三角形」、サイズなどの情報が必要です。class Terrain { public: Terrain() = default; // 何も設定しない初期状態のコンストラクタ void MakeTerra...
あいつは自分から見て右にいるの?左にいるの?
🌟目的自分の向いている方向から見て、「ターゲットが右にいるのか、左にいるのか」を判断し、その方向に回転させたい。🧭前提知識1. atan2(y, x) の意味ベクトル (x, y) の角度(ラジアン)を、原点から見たときのx軸との角度として返します。範囲は [-π, π]。2. 基準ベクトル自分が向いている方向をベクトル forward とし、右方向を基準にする場合は、通常 right = {1, 0} などとします(右向き単位ベクトル)。🧮方法1:atan2による角度の差で判断// 自分の向きとターゲット方向 ...
ランダムな三角形で地形を作っていく
🌱 地形の高さをランダムに決めて、頂点を作ろう!💡目的:地面の形を作るには、まず「高さのある点(=頂点)」をたくさん並べます。そしてこの点の高さをランダムに決めることで、でこぼこした地形になります。📦 使うデータ前回までに作った TerrainParams を使います。struct TerrainParams { int width = 128; // 横に何個頂点を並べるか int height = 128; // 奥に何個頂点を並べるか float scale...
GPUリソースを作っていく!→ Draw関数
🎮 GPUリソースを作るってどういうこと?💡まずはイメージ!「頂点の情報(場所や高さなど)」を作るだけでは、画面に出せません。作った情報を GPU に渡して、「これを描いて!」とお願いしないといけません。そのために、**「バッファ」**という入れ物を作って、GPUに渡す必要があります。📦 GPUに送るデータは2つある!名前説明頂点バッファ点(場所・高さ・向き・UV)の情報インデックスバッファどの点とどの点をつないで三角形にするか🧪 具体的にどうやるの?🎯 頂点バッファを作る部分(簡略)D3D11_BUFFER_DE...
まずは、プレイヤーをつくる
これは、いつものモデル読んでGameObject継承したPlayerクラス作る感じでいいと思う。必要な情報はあとで追加していこう。最低限必要なところで考えると。以下のようなクラスになりそう。✅ 例:クラス構成の改善案(関数分割)class Player : public GameObject { public: void Initialize() override; void Update() override; void Draw() override; void Rel...
XMVECTORとXMFLOATどっち?問題
XMVECTORXMVECTORは、DirectXMathライブラリの中核をなすデータ型です。その特徴は以下の通りです。SIMD (Single Instruction, Multiple Data) 最適化: 複数の浮動小数点数を同時に処理できるCPU命令(SSE/AVXなど)を利用するために設計されています。これにより、ベクトル演算や行列演算が非常に高速に行われます。アラインメント: SIMD命令が効率的に動作するために、通常16バイト境界にアラインメントされています。レジスタでの操作: 多くの場合、CPUのレ...
ダイアログ
🪟 1. ダイアログってなに?ダイアログ(ダイアログボックス)は、ユーザーに何かを聞いたり、設定を入力させたりするための小さなウィンドウです。例:ファイルを保存するときの「名前を付けて保存」画面「OK」「キャンセル」などを選ばせる小さなウィンドウ設定画面(オプション、プロパティ)🔄 2. モーダル vs モードレス種類特徴例モーダル他のウィンドウを操作できなくなる(完了するまで)「保存しますか?」などの確認ダイアログモードレス他のウィンドウも同時に操作できる検索ウィンドウ、ツールパレット💡 イメージモーダル:呼び出...
アルゴリズムの授業
1. 線形探索 (Linear Search)1.1 概要配列(またはリスト)の先頭から順番に目標値と比較し、一致したらその位置を返す。見つからなければ最後まで調べ終えて「未発見」を返す。1.2 計算量最良ケース:O(1) … 先頭にあった場合平均ケース:O(n/2) ≒ O(n)最悪ケース:O(n) … 存在しない場合や末尾にあった場合空間計算量:O(1)1.3 特徴・利点・欠点利点ソート不要。要素の順序を問わない実装が非常にシンプル欠点要素数が大きいと比較回数も増大し、性能悪化頻繁に検索する場合は不向き1.4 ...
DrawTextとDrawTextLayoutの違い
テキストを描画する方法 - Win32 apps DrawText 簡単なテキスト描画向け テキスト全体に対して同じ書式設定を適用する場合に使われる DrawTextFormat 複雑なレイアウトのテキスト描画向け テキストとそのレイアウトを一緒に保持するため、テキストの内容、書式が変わらない場合に有効 テキストを変える際は解放→再生成しないといけない
キャラクターAIを作ってみよう
今日の目標今日の体験実習では、2Dボンバーマン風ゲームのキャラクターAIのプログラムを作りながら、C++によるゲーム開発の実際の雰囲気を体験してほしいと思います。開発環境Windows11Visual Studio 2022プログラミング言語C++使用ライブラリDxLibC++によるプログラム開発の流れBuild → ソースをビルドして実行Edit → 指定の行番号の定義を『書き換え』Test → 動作を確認し、発見・改善POINT: 小さな変更を加え、すぐにビルド&実行。これを繰り返すのが開発サイクル!ゲームAI...
避けゲー
実習課題 避けゲー目的(これを体験で学ぶ)ゲームエンジニアリングの基礎を知るC++ と Visual Studio で実際に動くゲームを作る流れを体験するソースコード → ビルド → 実行ファイル という開発の基本パイプラインを理解するプログラミングの基本(変数/順次・分岐・反復の3つの構造)を使えるようになるエラーが出たときの「原因を調べて直す」デバッグの流れを身につけるDxLib(ゲーム用ライブラリ)を使って画面に描画し、ゲームの構成要素を組み立てるゲーム構成(この体験で作る「避けゲー」の要素)実行してみてみよ...
Unity使うときのプロキシの設定
サインインのためにプロキシを設定する スタートメニューで「環境変数」と検索 → 「システム環境変数の編集」を開く 「環境変数(N)...」ボタンをクリック 「ユーザー環境変数」または「システム環境変数」の欄で 新規 を押す 変数名:HTTP_PROXY値:http://172.17.0.2:80OKで保存 同じ手順で HTTPS_PROXY も作る(変数名はHTTPSだけどURLはhttpのままなので注意!)変数名:HTTPS_PROXY値:http://172.17.0.2:80...
アイデア出し~プロトタイピング~製作開始
🧭 全体フロー(5ステップ)フェーズ内容出力物① コンセプトエンジニアリングテーマ・体験価値・独自性を設計コンセプトシート② アイデア出し・検証発想を広げ、成立性・技術的可能性を検討アイデアマップ/プロト案③ プロトタイピングコア要素を最小限で実装動作するプロトタイプ④ 作品制作完成度・見た目・操作感を磨く就職用プレイアブル作品⑤ プレゼン資料作成開発意図・技術アピールを可視化ポートフォリオ+技術レポート🧩 ① コンセプトエンジニアリング「どんな体験を作るか」を“設計”する段階です。要素質問例メモ体験価値プレイヤー...
🎓Unity × GitHub × Visual Studio(ChatGPT様Says)
🎯 目的Unity プロジェクトを GitHub で安全に管理し、Visual Studio から快適に操作するための手順をまとめました。この資料を見れば、チーム制作でも壊れないUnityリポジトリ構成が理解できます。🧩 1. Unity 側の設定① Editor 設定を変更するメニューから「Edit → Project Settings → Editor」 を開きます。設定項目値Version ControlVisible Meta FilesAsset SerializationForce Textこれにより、...
C++の授業
C++講義計画(C言語からの移行・ゲームオブジェクト構築まで)🎯 目標C言語を半年学んだ学生が、C++の基礎文法からオブジェクト指向(継承・ポリモーフィズム)を学び、最終的に GameObject クラスを継承してプレイヤーや敵を実装できるようにする。🧭 全体構成(全15回想定)回テーマ技術目標演習例1C++導入・Cとの違いiostream / 名前空間 / new / deleteCのprintf版→C++出力へ書き換え2関数と参照・オーバーロード参照渡し・デフォルト引数・関数多重定義距離計算関数のオーバーロード...
1回目 導入回+文字列
第1回授業:C++導入とCとの違い(入出力・文字列・書式制御)🎯 目標C言語の知識をもとに、C++の基本文法と文字列処理を理解する。iostream を使った標準入出力を理解する。std::string と char[] の違いを学ぶ。cout による書式制御を体験する。🧩 授業構成(90分想定)時間内容ポイント0〜10分CとC++の関係「C++はCの拡張」だが、文字列処理や入出力が高機能であることを紹介。10〜30分入出力の基本#include <iostream>、std::cout / std::cin の使...
2回目 関数と参照・アインズ・ウール・ゴウン
🎯 第2回 関数と参照・オーバーロード🏁 授業目標✳️ C++の関数定義・宣言・呼び出しを理解する🔒 const参照(const &)の使い方を理解する🔁 関数のオーバーロードを使って柔軟な関数設計ができるようにする🧠 関数の基本C++の関数は、処理をまとめて呼び出せる仕組みです。関数には「宣言」と「定義」があり、呼び出すときは名前と引数を使います。#include <iostream> using namespace std; int add(int a, int b); // 宣言 int mai...
補足資料(1.5回目) C言語の関数
🧩 補足資料:C言語の関数の基本🧠 関数とは?C言語の関数は、処理をひとまとめにして何度も呼び出せる仕組みです。プログラムの再利用性・可読性を高めるために使います。#include <stdio.h> int main() { hello(); // 関数呼び出し return 0; } // 関数定義 void hello() { printf("Hello, world!\\n"); }🔹 宣言と定義の違い名称役割書く場所例関数宣言(プロトタイプ宣言)関数があるこ...
🎮 ゲーム制作計画書(エンジニア志望向け)
その通りって訳じゃなく、あくまで構成のための参考だよ!1️⃣ 表紙・概要プロジェクト名(ゲームタイトル)チーム名・担当メンバー(役割明記)制作期間・使用ツール(Unity / Unreal / 自作エンジン / DirectX11 など)開発ターゲット(PC / Switch / Web / モバイル)💡「技術×企画」を見せたい学生は、ここで “技術的特徴” の一言キャッチ を添えると印象的例: 「自作物理エンジンで動くローグライクRPG」2️⃣ ゲームコンセプト(1枚)ゲームジャンル・プレイスタイル(例:3Dアク...
改良案
===== 🎯 Character 分割 実行順おすすめ(3コミットで見栄えが出る) =====目標: 1ファイル1000行超の Character.cpp を段階的に分割し、責務を明確化。Visual Studio プロジェクト(CMake 不使用)で、見た目を変えずにコードの「整理力」「設計力」をアピールできる構成にします。🥇 コミット1:VFX / Blink 抽出🎨 CharacterVfx に VFX 関数群を移設。InitCSVEffect / SetChargingEffect / SetFullCh...