2026-01-01から1年間の記事一覧
はじめに Cra2yPierr0tさんが書いている記事軽率にGPUを使っていこう、OpenCL入門の最後に 「データの再利用を最適化するためにはブロック化の技術が必要になる。行列をプライベートメモリにちょうど収まるようにタイルに分解したり、タイルをローカルメモリ…
if文で遅くなる? GPU のコードは if 文を避けるべき、ということはなんとなく知っていたので実験した。 __kernel void test_if(__global float* out, int mode) { int id = get_global_id(0); float x = (float)id; if (mode == 0) { // 発散なし(全員同じ…
OpenCLとは OpenCL は、CPU・GPU など異なる計算デバイスを共通の仕組みで扱うための並列計算 API。 カーネルと呼ばれる関数をデバイス上で実行し、大量データを高速に処理できる。 実務では主に GPU 計算に使われることが多い。 インストール 以下のコマン…
imguiとは まず読み方ですが、「イムギューアイ」 と読む人が多いです。 DirectX12 や OpenGL などのグラフィックスライブラリを使って GUI を描画するライブラリです。 GUI の制御をコードのみでできるので使いやすいのが特徴で、特にデバッグ時に重宝する…
要件 3次ベジェ曲線を としたとき、 を満たす を求め、 に対応する の値 を求めたい。 制御点を とし、制約は とします。 これにより、 が定まれば が定まり「イージング」が実現できます。 注意 3次ベジェ曲線のイージングとして以下のような画面があったと…
はじめに CScrollViewを使えない場合にお使いください。 手っ取り早く以下のようにできます。 CScrollHelperの定義 ScrollHelper.h #pragma once class CScrollHelper { public: CScrollHelper(); virtual ~CScrollHelper(); void AttachWnd(CWnd* pWnd); vo…
はじめに CC Character Base の右手を PBR, SSS で描画してみようと思います。 以下のような感じになります。 なお、CC Character Base は既に Blender か何かで glTF2.0 出力されているものとします。 glTF2.0 出力については【Blender】CC Character Base …
Wavelet Decompose Image > Wavelet Decompose にある。 Rotation のリセット テンキーでない 5 キーでリセットされる。 またメニューから View > Zoom, Rotate and Mirror > Reset Canvas Rotation でも可能。 Rotate, Translate and Scale Rotate: Shift +…
PBR におけるToneMapとは 「HDR → LDR の写像」のことです。 画像 Type Image PBR Neutral ACES linear Reinhard KhronosPBRNeutralToneMapはPBRNeutralToneMapと酷似していたので画像は省略しています。 コード glslのコードを貼っておきます。 #ifndef TON…
はじめに 私は非力なPCで3DCGのソフト開発をしています。 低スペックだとは思いますが、どの程度か知りたくなりベンチマークを行いました。 低スペックの方が遅くなったことに気づきやすいので開発には向いていると思っています。 スペック DQ10ベンチマーク…
はじめに 最近よく LearnOpenGL を閲覧するんですが閲覧回数の上限に引っかかって見れない時がありました。 これは嫌だなってことで、ローカルで閲覧できる手順を残しておきます。 ローカルに落としてローカルサーバーを起動して閲覧したら、 MathJax でエラ…
やりたいこと 自作のアプリに CC Character Base のモデルを基に右腕の glTF を出力したいとします。 Blender のバージョンは 4.5.2 です。 手順(Model の読み込みと Bone の設定) 1. こちらを参考にして "C:\CC Character Base\CC Character Base\FBX\03_Ne…
はじめに プログラムによる実装と glTF2.0 を意識して Rig について説明します。 なので本記事はプログラマー向けです。 ですが、プログラムは書かないので非プログラマーも読める内容なはずです。 またこの辺の内容の用語が統一されていないように思います(…