メッシュグル2027 ほか作成中!

MESH GURUを作成したのが2011年(2010年? 正確な年は覚えてません)。数年前からサンプルの動作が不安定になっているため、改修するか新規に作り直すかを考えていました。特にFBXなどは出版後2,3年で既に使えない状態になっていたものと思われます。MESH GURUの内容に占めるFBXの割合、重要性は高くないとはいえ、改善の必要性を認識していました。

改修か(MESH GURU改訂版)、新規か考え、新規にしようという結論にいたしました。MESU GURU2027というタイトルになる予定です。FBXのようなプロプライエタリのフォーマットはもう使用しません。
コードの構造なども改善の余地があるため、この際フルスクラッチで作り直します。15年前のコードなので、現在の自分自身のコーディングに合うようにアップデートするのも目的の1つになります。

MESH GURU2027とは別に、THEシリーズも並行して作成します。THE FIRE(仮称)になる予定の書籍です。タイトルの通り、炎の表現を実現するものになります。

CGエンジニア必携を発売開始しました

このたび、私の新刊 『CGエンジニア必携 ― CGアルゴリズム実装ハンドブック』 が発売されました。
長年にわたり研究・実装してきた幾何学処理とリアルタイム描画の知見を、一冊にまとめた内容です。
CGモデラーを作成するために必要な技術を網羅したつもりです。この一冊で、独自のモデラーを一から作り上げるための基礎と応用 を体系的に学ぶことができます。
なお、レンダリング技術(レイトレーシングやパストレーシングなど)については、より専門的な内容を扱った拙著 『レイトレーシング・グル(Ray Tracing Guru)』 に譲っております。本書では、主に「形をつくる」「形を扱う」ためのアルゴリズムと実装に焦点を当てています。

CGソフト開発に必要な基礎アルゴリズムを、実装を通して体系的に習得できます。
市販のCGソフトに近い機能を、自らの手で構築する技術が身につきます。
普遍的な数理・アルゴリズムの理解により、DirectX以外の環境にも応用可能です。
サンプルコードと解説を体系的に整理した、実践的ハンドブックとしても活用できます。

メッシュ読込みの章では、Rhinoの3dmデータをC++で解析し、メッシュやNURBS曲線・曲面を読み取り、DirectX 12で可視化するまでの手順を、初心者にも理解できるよう丁寧に解説しています。
Rhinoの3dmデータをC++で読み取るだけでなく、
STL / OBJ / PLY / GLTF / FBX / SKP など多くの形式に対応。
単なるメッシュ処理にとどまらず、
Bézier・B-Spline・NURBS曲線/曲面の生成・操作・変形・交差判定までを体系的に解説しています。
加えて、作成したジオメトリを DirectX 12 で可視化するサンプルを多数収録。
内部アルゴリズムの理解を最優先にしつつ、リアルタイム描画まで一貫して実装できます。
グラフィックス技術を単なる「描画」ではなく、「アルゴリズムの理解」として学びたい方に向けた実践的な技術書です。

■主な章構成(抜粋)

序章:開発環境、bmathライブラリ、他ライブラリへの移植方法

第2章:トライアングル/クアッド/スフィア/ティーポット/シリンダーなど各種ジオメトリ生成

第3章:プロシージャル生成(N角形・Bézier・B-Spline・NURBS曲線/曲面)

第4章:ジオメトリの選択・移動・変形

第5章:各種ファイルフォーマットの読み込み(STL, PLY, OBJ, GLTF, FBX, SKP, 3DM)

第6章:画像読み込み(BMP, JPG, PNG, WebP)

第7章:DXF書き出し(レイヤー/ブロック対応)

第8章:レンダリングパイプラインと座標変換

第9〜10章:カメラ・マウス操作

第11〜12章:交差判定・距離・角度・幾何要素の算出

第13章:デバッグ、差分検証、分割統治

第15章:各種定数・物理特性・行列対応表

■この本が目指すもの

本書の目的は、APIに依存せず自分の頭で「形」を作る力を養うことです。
グラフィックスの基礎を「アルゴリズム」として体系化し、
初心者から研究者まで、幾何計算と描画技術を一貫して理解できる構成としました。

DirectXは本質ではなく「結果を確かめるための道具」。
ジオメトリの本質的理解こそが主題です。

技術的探究心をもつ方々に、ぜひ手に取っていただきたい一冊です。
長年積み重ねてきた実装知識を、すべてこの一冊に詰め込みました。
どうぞよろしくお願いいたします。

詳細は以下になります。
https://barepixel.co.jp/cg_engineer_hikkei-2

本書は以下より入手いただけます:
https://barepixel.co.jp/shop/2025/10/12/cg_engineer_hikkei/

原稿消失! 損失数百万

あれからもう5年も経ったのか、まだ5年しか経っていないのか、何れにしても忘れられない出来事。ノースブレイン時代を含め、今まで15年間、完成した原稿を紛失したのはこの時だけ。

合掌。

2019年5月に「OpenGL4入門 Linux版」という書籍を完成しました。サンプルプログラム、原稿、挿絵、表紙絵全て完成しました。そしていよいよ製品としてアップしようとした時、なんと原稿が無いことに気付きました。

「原稿が無い」

最初は「まぁどこかにコピーかなにかがあるでしょ」くらいに思ってたので、さほど気になりませんでした。
ところが、探す場所探す場所に原稿が無い。だんだん本格的に焦ってきました。なんせそれまで原稿が完全に消失することなど無かったのですから。
PCの全ドライブとネットドライブの中を全検索してもヒットしません。

原因は自分のミスとネットドライブの不具合によるものでした。

まず、最終的な完成原稿を1つしか残していなかったこと。いつもはバージョニングした直近バージョン原稿が最低でも2つはあるはずですが、この時はたった1ファイルだけ。
その原稿ファイルをポータブルSDDからネットドライブに「切り取りコピー」したのがまずかった。コピーが完了した後、SSDのUSBを抜きました。
実際は完了していなかったっぽく、ネットドライブ上にファイルがありません。また、「切り取りコピー」なので、もとのSSDにもファイルはありません。
その後、ファイルリカバリーソフトを購入してリカバリーを試みたみたのですが、「切り取りコピー」の場合、リカバリーできないようです。

そんなこんなで結局、3ヵ月かけて作成した原稿が消えてもう戻ってこないことに気づきました。

事故っていうのは複数の偶然が重なって起こるものなんだ、と昔誰かが言っていました。まさにその通りです。「こんなときに限って・・・」という事が重なると事故になります。
ファイルが1つしかないときに限って「切り取りコピー」するなんて、
そんなときに限ってネットドライブに不具合が起きるなんて。

その書籍がノースブレイン初のLinux版だということも実に奇縁です。
あと、不幸中の幸いとしては「Linux」版ということ。いつものWindows版に比べて売り上げは低かったろうと推測できる(これも初なので実際は分かりませんが)ので損害は比較的に少なかったのだと自身を慰めています。
書籍の販売ページも公開していましたが、もちろん販売は出来ませんでした。不思議に思われてた方もいらっしゃったかと思います(問い合わせメールもありましたし)。

2019年の春はちょうど法人化で役所を飛び回っていた時期で超忙しかったのも一因だったのかなと思います。忙しい時ほど慎重に(笑)ってことですね。

サンプルプログラム公開!

さて、せっかく作ったサンプルプログラムを眠らせておくのも勿体ないということで、サンプルプログラムを無料で公開することにしました。
こちらからダウンロードできます。
Linux(ディストロは問いません)上でX11Windowが表示できる環境であれば動作します。
面倒なサードパーティライブラリには依存していません。
もちろん肝心な本文(書籍)が無いので、最低限の準備が出来る方用にはなるかと思いますが。