プログラミング

__cplusplus について

C++を使っていて、C のコードブロックを書きたいときに __cplusplus を使用して対処することがあります。 このとき、 __cplusplus が定義されていたら、現在は C++ のコンテキストでコンパイルしている、と判断していたわけですが、この __cplusplus は実はC++のバージョン値を持っていたということを今更知りました。 きっかけは...
PC環境設定

スタートメニューで検索できなくなった

Windows10 のバージョン 1903 を使用していて、スタートメニューで検索が効かなくなる状況に出遭いました。 普段アプリケーションを検索しながら使う、ということはしている自覚がなかったのですが、いざこの症状に出遭ってみると自分がアプリの起動に検索を使っていたことが分かりました。この症状、同僚から相談されたこともあって、「知らないなぁ」と返してしまった...
Vulkan

Vulkan 1.2 の発表

2020/01/15 に Vulkan API も 1.2 のバージョンが発表されました。そして既に対応するドライバも公開が始まっています。このバージョン1.2では、何が変わったのかを記録しておきます(自分なりの解釈も入っているので、間違っていたらすみません)。 タイムラインセマフォ 大きな機能追加だと思います。今まで VkFence と VkSemapho...
プログラミング

C++ filesystem ヘッダの課題

Visual Studio 2019 のバージョン 16.3 以降で、 filesystem ヘッダの部分が変わりました。従来は experimental だったのが、正式版となったような感じです。何もしないでコンパイルが通る状況では無くなったので修正を施します。 バージョン判定 Visual Studio 2019 の途中のバージョンからの変更となるため、...
Vulkan

SwiftShader を試してみた

今年 SwiftShader が Vulkan 1.1 の conformance test を通過したと聞いたので、気になって手元でも試してみることにしました。 SwiftShader とは Google 製の CPU による Vulkan 実装というところです。次の場所で公開されています。 CPUでラスタライズ処理をするため、 GPU の機能を使用しませ...
DirectX

DirectX12 の書籍 「DirectX 12の魔道書」

自分も同人誌で DirectX12 や Vulkan のプログラミングの書籍を作っていますが、とうとう商業誌として DirectX12 の書籍が登場するようです。600ページを越えるかなりのボリューム感となっていますが、 DirectX12 をしっかり説明しつつ入門となるとこのくらいになってしまうのかもしれないですね。 内容としては、MMDモデルを描画&踊る...
日記

技術書同人誌博覧会2に行ってきました

技術書の同人誌イベントとしては技術書典が有名ですが、今回は技術書同人誌博覧会2(技書博2)に参加してみました。 また技術書典とは違った空気・雰囲気があって面白かったです。 配布物など 今回、当サークルで扱ったのは次の冊子たちです。執筆者全員揃っての参加でした。 DirectX12 Programming シリーズ Programming シリーズくいっく H...
DirectX

DirectX12 でテッセレーション

DirectX12 でのテッセレーションを確認してみています。テッセレーション自体は DirectX11 から使えるようになっているものですが、あまり事例を見かけないかなと思います。頂点シェーダーやピクセルシェーダーのように必須のものではありませんし、色々と制御が難しかったりしています。今回はテッセレーションの基本的な部分について、自分のメモです。 テッセレ...
PC環境設定

Windows で Re:VIEW 環境を 4.0 へ(Dockerにて)

Re:VIEWの環境が 4.0 が登場したのと、 Windows10 1903 の状態に更新したのとで、環境を一新してみようと思いました。 今までは Windows 上で Ubuntu 16.04 を用いて Re:VIEW 2.5 を Docker 上で動かしていました。 そこで使用していたのは、 @_kauplan さんの、Re:VIEW Starter ...
DirectX

DirectX12 でシングルパスキューブマップ描画

DirectX12 で、ジオメトリシェーダーを用いてシングルパスでキューブマップ6面を描画を行う手順を確認しました。以前に各キューブマップ面毎に描画する方法は紹介しました。ジオメトリシェーダーを使うと1回の描画で6面へ描画ができます。 レンダーターゲットビュー・デプスステンシルビューの準備 描画先とするために、レンダーターゲットビューとデプスステンシルビュー...