Polygon Source Library (PSL)

PSLとは

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

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

ダウンロード

PSL1 Rel 1.7 64ビット版/32ビット版(同梱) (2016/08/04)
解凍して 「インストール(PSL).txt」に従ってファイルコピーするだけでインストールできます.事前にWFLがインストールされている必要があります.マニュアルはWFLと共通です.本バージョンはWFL 3.3以上と共に使用してください.

リソース

主な変更点

PSL詳細更新履歴

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以降では,インストールフォルダの構造が変更されています.