AcademySoftwareFoundation / AcademySoftwareFoundation/OpenColorIO
Remove Imath and Pystring from nanoColor
- 主要言語
- C++
- スター
- 2.1k
- フォーク
- 503
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
One of the requirements for nanoColor is that it have no external dependencies. Most of the dependencies have already been removed, via optional CMake flags. However, code from Imath and Pystring was temporarily moved to the ext folder (i.e. the required code from those projects was copied in, strictly as a temporary prototyping measure).
For Pystring, the proposal is to reimplement any functions currently needed by OCIO (there are not many).
For Imath, the only thing that is used by OCIO is the half class. The proposal is that a half class be created specifically for OCIO, based on the Imath code but with some simplifications. Given that most hardware these days has specific instructions for half-floats, those would be used if available. For other machines, the code from Imath that does not use the LUT would be used.
For simplicity, these changes would apply to both nanoColor and full OCIO. If people would like to continue to be able to use the full Imath or Pystring as an optional dependency with full OCIO, please note that as a comment below.
コントリビューションガイド
調査の方向性
まず ext フォルダーと、現在 Imath と Pystring をオプションまたは組み込みにしている CMake フラグを調べます。nanoColor と完全な OCIO が使用している Pystring の関数と Imath の half クラスを追跡します。両方のビルドが外部依存関係なしで動作し、完全なライブラリのオプション依存関係にも必要に応じて対処できれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- cmake, cpp
- 領域
- build-system, tooling
- issue の種類
- リファクタリング
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 25/100