進め、自分。

ゲームプログラマがC++のことなどを。

TypeInfo改良

C++

最近ちょいちょい趣味プログラムを書いている。 VisualStudioを2017から2019に更新して、 Clangも更新して、 とりあえずC++17が使える環境に。コードは色々触ってるけど、最近は自前TypeInfo関連の改良を。 このブログで最初に投稿してたやつ。 dinks.hatebl…

右クリックメニューから、今日の日付フォルダを作成

Windowsの右クリックメニューから、今日の日付フォルダを作成できるようにしました。「2020-07-10」といった名前のフォルダをすぐに作成できます。以下のテキストを「MakeTodayFolder.reg」という名前で保存し、レジストリに登録しています。 Windows Regist…

角度クラス 解説

C++

角度クラスが一通り実装できたので解説を。(3年越しだな…)まずは使い方。 void func( Angle a ) { ... } ~~~ Angle a(0.5f); // 180度 Degree d(180.f); // 180度 Radian r(pi); // 180度 // どれでもOK func(a); func(d); func(r); // 四則演算 //a +…

角度クラス 実装その2

C++

角度クラス、実装していったら やっぱりラジアン、デグリー、360度を1.0で表す3種類を 1つのテンプレートで実装することになりました…ひとまず現在の実装状態は↓から。tofu/Angle.hpp at develop · fsawa/tofu · GitHub tofu/Angle.cpp at develop · fsawa…

角度クラス 実装その1

C++

少しずつですが、角度クラス実装してます。以前の構想ではラジアン、デグリーと、360度を1.0で表す3種類を扱う予定でしたが、 改めて考えてみると、1.0で表すクラス1つでいいんじゃないかと思ってきました。もちろん、ラジアンやデグリー値との相互変換は…

型情報クラス作成

C++

型情報クラス、最低限必要なところは実装完了。 一応GitHubで見られます。 tofu/TypeInfo.hpp at develop · fsawa/tofu · GitHub tofu/TypeInfo.cpp at develop · fsawa/tofu · GitHubあとは参照型の対応と、継承関係の検出をやりたいけどそれはまた後で。 …

RTTIを使わない型名の取得

C++

ひとまず単体テストのプロジェクトが作成できました。 コンパイラを「Clang with Microsoft CodeGen」にしていて、 Clang用のプロジェクトテンプレートにはライブラリしか無いので 後から実行形式に設定を変えるなど。 VS2017のClangがどういうバージョンな…

単体テスト準備

ひとまずライブラリが最低限ビルド出来る段階になったので、 今度は単体テストで動作確認をしたくなりました。テスティングフレームワークはGoogleTestを使ったことがありますが、 今回はとあるフレームワークを試してみることに。それはgithubで公開されて…

countof

C++

自作ライブラリ、手始めに型情報クラスを実装。 それに伴う最低限必要な機能をあれこれ実装した。 アサートマクロとか、コンパイラ毎の違いを吸収するマクロとか。で、配列の要素数があっているかチェックする静的アサートのマクロも 実装しておこうと思って…

vs2017でプロジェクト作成

今日はようやく自作C++ Libraryのプロジェクトをvs2017で作成した。 .gitignoreで不要ファイルを除外しつつ、 ソースコード(と言ってもまだ仮のhppのみだけど)をgithubにもプッシュ。 色々整備したいけど…とにかくまずは基本のコードを書いてビルド通すと…

compattelrunner

前から自宅PCの動作が重いことが多く、 まあそんなスペック高く無いからなーと思ってたのだが、 どうもディスクアクセスが常に100%近くの負荷になっていて、 最近幾つか対処した。まずはデフラグ。 HDDの最適化が定期的に実行されるようにスケジュールされて…

ID Managerの世代バックアップ保存失敗

以前から、ID Managerの設定を保存するたびに 世代バックアップの保存に失敗したっていうメッセージが出てて、 まあ世代バックアップだったらいいかなって流してたけど、 全然良くない事に今更気づきました…これで作られるファイルをID Managerのバックアッ…

角度クラス 構想

環境整備もなかなか進まないので、 取り敢えず家にいなくてもできる事ってことで、 このブログで書きたかった事を進めることにしようかと。まず1つ目にやりたかった、角度クラスについて。ゲーム開発でも、浮動小数でradianやdegreeを扱って、 必要に応じて…

CEDEC2014

ブログ、早速更新できてないですが… 今日はCEDEC2014へ行ってきました。 CEDECに参加するのも5回目。 今年は社内ライブラリとかゲームエンジンとか、 その辺のセッションを中心に聞いてきた。 作るか、使うか、っていう大きな選択が必要だけど、 やっぱりう…

昔のプログラムをビルドするも・・・

宣言通り、今日はbashのプロンプト設定をカスタマイズ。 といっても、過去に作ってたやつで上書きしただけ。 cygwinでログインしたときに実行される .bashrc で PS1 に設定を代入する。 詳細はまた余裕があれば。 で、その後は過去に作ってたプログラムのビ…

環境構築 cygwin

今日はcygwinのインストール。 昨年末にwindows8マシンを新調してからインストールしてなかったので久しぶり。 64bit版のインストーラーが出てたのか。 いつもの日本のサーバーを選んで、 makeとかclangとかgccとかを選択。 clangとかコンパイラはそのうち本…

スタート!

プライベートで何かしたいと思いつつ、 いろんな忙しさとかを理由に手をつけていなかったけど、 とにかくゆっくりでも進めることを決意しました。 というわけで、今日はまずブログ開設と、GitHubの登録を済ませる予定。 さてさて、ちゃんと続けられるか、俺。