2019-01-01から1年間の記事一覧
bowbowbow.tistory.com 判定とは一体 Aは外部にあって、Bは内部にあることが分かる。 2Dの多角形に対し、AまたはBみたいな点が図形の内部にあるか外部なのかを判別することを示す。 図形の内部に位置する点の特徴は Aは交点が偶数。Bは奇数のことがわかる。 …
Finite-State Machineとは(Behaviour Treeの以前に。。。) en.wikipedia.org Finite-State Machineは人工知能または条件による行動の分岐を実装する基本的な方法の一つである。 人工知能の各行動をモジュール化させたので、ある程度に柔軟さは持っているが…
all3dp.com 3Dファイルの基本的な目的は、3D情報をテキストまたは特定のテンプレートを持ったバイナリファイルに込めたものである。 3D情報とは、Geometry, Appereance, SceneそしてAnimationsがある。3Dモデルのファイルの中では一部しか込められないものも…
게임 프로그래머 실력향상법 자료조사 from Daeyoung Hwang www.slideshare.net 「コンシューマ>オンライン>モバイル>順でプラットフォームによって実力が優れているわけでもない。 昔はそうだったが、UnityかUE4のエンジンが登場し、モバイルに写った開…
en.m.wikibooks.org C++でvirtualの関数を継承(Override)したりして関数を書き直すことになると、普通はリターンタイプを同じにして返すのが普通ですね。 しかし継承したタイプのOverrideした関数のリターン値がベース仮想関数の返す型を継承としたものとな…
ImGuiで作業時間を測定する reedbeta.com DirectX11を勉強しながら、サンプルのGPUの各作業時間を測定するため検索してみたところ、ID3D11Queryというのを用いてGPUの時間を測定することがわかりました。 SH-D3D11サンドボックスプロジェクトのサンプル1と…
就活がほぼ最後に入り、暇が出来たのでスイッチでやってみました。今は難しいプラットフォームアクションゲームが多いし、ストーリー展開でのステージは平均のゲームに比べてはちょうど良い難易度のゲームだったと思います。 ストーリーだけ進行しようとする…
今のGPUそしてグラフィックスで通用されているシェーダーレンダリングのパイプラインを纏めると以下になりそうです。 レンダリングパイプライン 独立パイプライン ~OpenGL 3.0 固定パイプライン なし ~OpenGL 4.0 VS > GS > FS なし OpenGL 4.0~ VS > TCS > …
forums.unrealengine.com UE4でいろいろとマテリアルを触る時に、基本的に与えられたノードだけじゃ複雑なものがちゃんと書けないことがありました。という時に使ってこなすのがCustomというノードで、これは直接HLSLコードを書いてシェーダーを作成すること…
gdcvault.com 2017年に販売されたFPSゲーム、「Destiny」の多彩多様のグラフィック表現を描画するために独自のシェーダー言語「TFX」の仕組みとその周りのツール操作、最適化などのあらすじを発表したもの。 未だ技術の知識が足りない関係で個人としては30分…
Pseudo Destructorとは Pseudo Destructorは、単語通りに「類似」のデストラクタです。 テンプレートプログラミングなどをして、型引数 Tがデストラクタを持っているかないかにかかわらず挙動を同じにさせる時に良く使われるらしいです。 クラスではないタイ…
本日Visual Studio 2019が出たので、早速VS2017から作業環境を変えました。 性能的にはVS2017からもメモリ占有率か使用容量が1/4までに減ったそうですので期待をもって移してみましたが、そんなに減ることじゃなかったです。多分Reshaper C++のせいでメモリ…
developer.samsung.com OpenGLのような昔のグラフィックスAPIは現在のGPUのデザインとは結構違う時期に設計されたものである。 現代のGPUは無数なコアがあって、それを並列的に処理させてレンダリングなどに必要となる演算量をカバーすることになっている。 …
190227バージョン 「About」窓を作りました。後のFixedバージョンではAbout窓に使ったライブラリの名前、そして製作者のブログの遷移先を実装します。 フォントのSDFマップの生成手順のロジックを変えました。以前まではstd::asyncとstd::futureを使用しまし…
objファイルと、テクスチャーファイルを読み込みして、MSAAまで適用した姿 vulkan-tutorial.com 上のVulkanの基礎的な部分のチュートリアルサイトを参考にして、一番簡単な「オブジェクトの頂点読み込み」「Uniformバッファの値入力」「レンダリング」「MSAA…
github.com imgui(厳密にいうとDear ImGui)というGUIライブラリーはC++環境でUI窓を作らせてくれる便利なライブラリです。QtまたはNana、Juceなどに比べればちょっと違った構造を持っていますが、プロトタイプまたは既存のビデオゲームなどでのデバッグUI…
やり方 Windowsでのabort()は基本的にはSIGABRTというシグナルを出します。 -NIX系列のOSではsigactionなどの関数でシグナルをハンドリングすることが出来ますが、Windowsのデバッグ環境で呼び出されるabort()から出るシグナルをハンドリングは以下のような…
はじめに github.com nlohmann氏のJSONライブラリである「JSON for Modern C++」はC++環境でのJSONシリアルライズ文字列を読み込みするときに有用に使えるライブラリです。 速度面としては「RapidJSON」のようなライブラリには勝てないんですが、STLの操作面…