Polygon Source Library (PSL)

PSLとは

コンピュータホログラフィのためのライブラリです.ポリゴン法を用いてコンピュータホログラムを計算することができます.

  • 3Dの物体形状データや画像データを読み込み3Dシーンの光波(Wave field)を計算します.
  • 現バージョンでは,DXF/VRML/POV/MQO/OBJの物体形状フォーマットに対応しています.
  • WFLの上位に位置するライブラリとしてポリゴン法のみならず,波動光学的結像計算クラスやメモリに入りきらない大規模な計算を支援するセグメント分割光波クラスなど8個のクラスと100以上の関数を含んでいます.(→詳細)

ダウンロード

PSL Rel 2.2.1 64ビット版バイナリ (2021/12/24) 本バージョンはWFL 3.8xと組み合わせて使用してください.
PSL Rel 2.3 Beta10 64ビット版バイナリ (2022/06/13) 本バージョンはWFL 3.9xと組み合わせて使用してください.
解凍して 「インストール(PSL).txt」に従ってファイルコピーするだけでインストールできます.事前にWFLがインストールされている必要があります.マニュアルはWFLと共通です.

リソース

主な変更点

PSL詳細更新履歴

Rel 2.3 Beta

  • WFL3.9以上に対応
  • ポリゴン単位シルエット法と物体単位シルエット法を同時に行うメソッドの追加
  • スイッチバック法のマスク位置のバグフィックス
  • その他

Rel 2.2.1

  • サーフェースマスク法による隠面消去の性能向上.
  • Phongの反射モデルに基づくフラット&スムース鏡面シェーダの実装(柳谷).
  • アルファマッピングの実装(前田).
  • Rel 2.2 → Rel 2.2.1 バグフィックス

Rel 2.1

  • 正確な隠面消去アルゴリズム(サーフェースマスク法)の実装(中本).
  • ImagingViewerに焦点距離固定モードを追加

Rel 2.0.2 - 2.0.4

  • SurfaceBuilder::SetBandLimitMethod()のバグフィックス.WFL3.8との親和性の向上.

Rel 2.0

  • モデルのマテリアル情報を反映できるランバートシェーダの実装(柳谷).
  • マテリアル情報,色情報の取り扱いの大幅な変更(柳谷).
  • Visual Studio 2019対応ベータテスト

Rel 1.9.1

  • ポリゴン光波帯域制限のデフォルトを帯域制限なし(レベル0)に戻し,帯域制限を行う際に,SurfaceBuilderに物体光波サンプル数等の設定が無い場合はエラーになるように修正.

Rel 1.9

  • テッセレーション関連メソッドの実装(永江).
  • Rel1.8に比べてスイッチバック法の大幅なパフォーマンス改善.
  • 既定でポリゴン光波を帯域制限.

Rel 1.8.4

  • 帯域制限付きポリゴン法のパフォーマンスを改善.

Rel 1.8.3

  • スイッチバック法のパフォーマンスを改善.計算時間がおよそ75%に短縮.

Rel 1.8→Rel 1.8.2

  • SegWaveField::LoadBmp()で位相パターンを読む際に生じるバグのフィックス
  • その他マイナーなバグフィックス

Rel 1.7→Rel 1.8

  • ガンマ値を指定したグレイスケールBMPのセーブ・ロードなど,SegWaveFieldクラスの拡充.
  • 物体単位シルエット法を物体モデルをサブモデルに分割して簡単に行うメソッドの新設(SurfaceBuilder::AddObjectFieldSm()).
  • その他バグフィックス

Rel 1.6→Rel 1.7

  • テクスチャ画像読み込み時のガンマ補正(デガンマ)に対応
  • フルカラーCGHのテクスチャマッピングに便利な関数を追加
  • フルカラーCGHのシミュレーション再生に便利な関数の追加
  • ColorImageクラスの拡充
  • その他バグフィックス

Rel 1.5→Rel 1.6

  • WFL3.4以降に対応した変更
  • バグフィックス,内部処理の改善
  • SegWaveFieldクラスの拡張
  • メモリ利用の効率化

Rel 1.4→Rel 1.5

  • Textureクラスの拡張.フルカラーBMP画像をグレイスケールに変換して読み込んだり,カラープレーンを指定して色分解して読み込むことができるようになりました.
  • スイッチバック法でモデル分割した際にポリゴン数ゼロのサブモデルがあってもエラーにならないようになりました.
  • 小さなポリゴンでUVテクスチャマッピングを行う際に発生するバグをフィックスしました.
  • その他,ポリゴン単位帯域制限機能(現在未公開)の追加と,軽微な修正.

Rel 1.3→Rel 1.4

  • Visual Studio 2013に対応しました.
  • インストール方法が変わりました.「PSL-Install.txt」ファイルに従ってインストールしてください.
  • 軽微な修正.

Rel 1.2→Rel 1.3

  • CIE19317表色系に基づいたカラー画像の統一的・定量的取扱いのため,関数とクラスを追加しました(従来のProduceColorImage()関数は廃止).
  • SegWaveFieldクラスに種々の関数を追加し機能アップしました.
  • 両面化されているポリゴンで生じたテクスチャマッピングの不具合を修正しました.
  • SurfaceBuilderクラスのスイッチバック法関数AddObjectFieldSb()の引数にbackgスイッチを追加しました.不必要な伝搬計算を削除できます.
    <注意>AddObjectFieldSb()関数を用いている場合でも,ソースの変更は不要ですが,再コンパイルは必要です.
  • その他軽微な修正.

Rel 1.1→Rel 1.2

  • SurfaceBuilderクラスのスイッチバック法関数AddObjectFieldSb()の引数にexactスイッチ(bool型)を追加しました.exact=trueとすることによりサブオブジェクト間の伝搬計算にExactAsmProp()を呼び出すようになります.スイッチバック法開始前のフレームバッファにサンプリング領域全体に広がる背景光波が含まれている場合は,このスイッチをtrueにすることにより背景光波のエイリアシングを防ぐことができます.ただし計算速度は遅くなります.デフォルトではexact=falseです.
    <注意>AddObjectFieldSb()関数を用いている場合でも,exact=falseの場合はソースの変更は不要です.ただし,再コンパイルは必要です.

正式版→Rel 1.1

  • メタセコイアMQOフォーマットでのUVマッピングに完全に対応しました.複数のテクスチャ画像を含むものも扱えます.
    <注意>UVマッピングの実装がRel1.0と変わりました.ソースの変更が必要です.
  • スイッチバック法によるレンダリングを実装しました.ポリゴン単位での隠面消去ができるようになりました.
  • UVマッピングとスイッチバック法を併用することができます.
  • 上記に伴って種々の関数を追加しました.

Beta2→正式版

  • 複数のwf形式光波ファイルから等色関数を用いてカラーBMP画像を合成するProduceColorImage()関数を実装しました.(by 山下裕士)
  • 鏡面性表面のレンダリング手法を実装しました.スムースシェーディングとフラットシェーディングの両方ができます.(by 西寛仁)
  • メタセコイア標準のMQOフォーマットが読み込めるようになりました.(by 山下裕士)
  • MQOフォーマットで物体データを読み込んだ場合uvマッピングができるようになりました.(by 山下裕士)
  • Beta2で不具合となっていたポリゴンの一部が計算されない問題に対応しました.
  • Beta2で非常に計算が遅かったIndexedFaceSet::AutoNormalVector()を高速化しました.

!注意! 

  • PSL1はWFL3に対応したメジャーバージョンです.WFL3を先にインストールする必要があります.
  • PSL1 Beta2以降はPSL0.8xとは共存できません.必ず,PSL0.8xをアンインストールしてからインストールしてください.
  • PSL1 Beta2以降では,インストールフォルダの構造が変更されています.

トラックバック(0)

トラックバックURL: http://www.laser.ee.kansai-u.ac.jp/WaveFieldTools/mt/mt-tb.cgi/106

コメントする

ブログ

coolblog
Cools lab
gallery
Tools history

最近のブログ記事

WFL3.9β版およびPSL2.3β版の公開
Tools historyブログ上
CGH Galleryをオープンしました
Tools historyブログ上
Rel 2.2.1をリリースしました
Tools historyブログ上