Blender.org
Blender.org : 2.8 プロジェクト開発者キックオフミーティングメモ
元記事:2.8 project developer kickoff meeting notes | Blender Code
Ton Roosendaal 氏が Blender Code Blog に投稿した、Blender Conference での2.8プロジェクトのミーティングのメモの翻訳です。
2015 Blender Conference にて、2.8プロジェクトをソフトウェアエンジニアリングの一つの可能性とすべく、参加した開発者たちが一丸となって議論を始めました。
以下は2.8プロジェクトを効率化し、対応ハードウェアの変更を最小限に留めるための議論の内容です。
C++ 11 / C99
Blender は主に C、C++、Python で書かれています。現在、C++98、C89、Python 3.4を使用しています。意味のある、私たちの現在のホスティングコンパイラ(ここでは Microsoft Visual Studio 2013が最低共通基準)が対応する機能に対し、C++11と C99が利用可能であるというコンセンサスが得られています。
これにより、いくつかの馬鹿馬鹿しい制限が引き上げられたおかげで、私たちはもっといいコードを書けるでしょう。しかし、要求するプラットフォームも引き上げる必要があり、特に10.8以前の OS X や、glibc が2.14以前の Linux はドロップすることになるでしょう。OpenGL
現在 Blender は OpenGL を、スタンダードのバージョン1.4に互換性があるよう使用しています。20年の月日が経ち、グラフィックのハードウェアは大幅に進化しており、ハードウェアにアクセスするいくつかの概念も変化してきています。
2009年、初めて古い方式を廃止した、OpenGL 3.2スタンダードがリリースされました。更に今日では多数のプラットフォームで、このハードウェアにアクセスする古い方式が使用できなくなっており、古いコールが使用された時、いくつかの新機能の使用が不可能になっています(例えば MacOS X など)。
開発者たちは例外なく、それがいずれ起こり、不可避な事だということに同意しています。また、新しいビューポートデザインとは関係なく、これが即時モードからの脱離と VBO と GLSL への移行が起こる必要性を感じています。Antony Riakiotakis 氏はこの変換を開始していますが、大量の作業が残っており、現時点ではこれがどれぐらいベストなアプローチかは不透明です。
この移行には、初期の Intel i9xx カードでのハードウェアアクセラレーションがなくなるなどの欠点もいくつかあります。2008年以降の nVidia や AMD ハードウェアではどれも影響はないと思われます。Scons
現在、Blender の開発者たちは二つのビルドシステム(CMake と SCons)を保守しています。私たちの大半は CMake を使用しており、SCons の使用より多く、トータルで考えると、これを脱落させることで大量の必要なリソースを確保でき、その恩恵はコストを補って余りあると感じています。ビルドシステム特有のバグがある所為で、貢献者になるのを難しくしている一面もあり、さらに現在、両システムでのビルドは一貫性がありません。
残る作業は主に CMake による Linux リリースビルドの対応と、SCons 版に対する MacOSX リリースビルドの検査です。Brecht 氏と Martijn 氏がこれを志願しています。コードのリプレースまたは削除
Blender のどの部分が壊れているか、保守が困難か、未来がないか、については様々な意見があります。挙がった物には Sequencer(シーケンサー)、Game Engin(ゲームエンジン)、OpenImage-IO、Constraints(コンストレイント)、Particle System(パーティクルシステム)、OpenCollada があります。この中で唯一コンセンサスが得られそうな物は OpenCollada です。このライブラリと統合は Blender のサイズの1/3にもなり、現在 Gaia 氏のみが保守しています(氏はミーティングには現れていません)。私たちは2.8でこれを削除することを真剣に検討することに決めました。
Particle System(パーティクルシステム)と Constraints(コンストレイント)は全面的なオーバーホールが必要でしょう。
Sequencer(シーケンサー)と Game Engine(ゲームエンジン)は、私たちが2.8プロジェクトの期間中にいい解決方法が見つけ出せなかった場合、
深刻な削除の危機にさらされることになります。
OpenNL も議論され、大半の用途は Eigen ライブラリによってカバーできるものと思われます。
最後にこの議論は、ソフトウェアエンジニアリングの観点から、Blender と Blender の開発者にとって何ができるのか、そしてどうすればいい Blender を楽に届けられるのかを考えさせるいい機会でした。私たちは Blender をアーティストを第一に作成しており、その意味で、このリストを2.8プロジェクトの完全な表現として説明するのは不可能かつ、すべきことではないでしょう。
- 2023年に期待されるプロジェクト (2023年01月12日)
- 2022年のトップ27コミッター (2023年01月03日)
- Ton 氏の BC2022での基調演説(11/18追記) (2022年10月29日)
- Blender Conference 2022始まる (2022年10月27日)
- 数年ぶりに Blender Conference の開催が告知される (2022年04月21日)
- Blender.org と他いくつかのサイトに改ざんの恐れ (2021年03月16日)
- BCON20のお知らせ(とお詫び) (2020年10月16日)
- Blender Foundation 最高責任者の Ton 氏がしばらく療養を宣言 (2020年03月10日)
- 2020-2025のリリースプラン (2020年03月04日)
- Blender.org のサーバーが DDos 攻撃でダウン (2020年01月31日)
投稿された内容の著作権はコメントの投稿者に帰属します。
ログイン
クイックリンク
2021/07/01版
●Blender.org
BlenderFoundation
- Blenderのダウンロード
- 公式チュート等
- 公式マニュアル(和訳)
●ニュース(英文)
BlenderNation
●Blenderコミュニティ
blenderartists.org
●Blender Q&A
- Blender Stack Exchange
●テストビルド
Buildbot(自動生成)
●開発関連
公式開発サイト
Blender開発blog
Blender Wiki
●Blender.org
BlenderFoundation
- Blenderのダウンロード
- 公式チュート等
- 公式マニュアル(和訳)
●ニュース(英文)
BlenderNation
●Blenderコミュニティ
blenderartists.org
●Blender Q&A
- Blender Stack Exchange
●テストビルド
Buildbot(自動生成)
●開発関連
公式開発サイト
Blender開発blog
Blender Wiki