Dev:JA/Ref/Release Notes/3.20/Python API
< Dev:JA | Ref/Release Notes | 3.20
元記事:Reference/Release Notes/3.2/Python API - Blender Developer Wiki
Python API とテキストエディター
Text Editor(テキストエディター)
- テキストエディターの Python 例外が Info(情報)エディター内(とコンソール)に表示されるように。(rB2d2baeaf04d48)
- ソフトキーワードがシンタックスハイライト表示されるように。(c6ed879f9aa7cd8)
追加
Context.temp_override
が追加。一時的なコンテクスト設定に対応します。例えば、ファイル読み込み後にコンテクストがクリアされ、多数のオペレーターが実行に失敗するような場面で便利です。(f438344cf243632)
Context.path_resolve
が、"active_object" や "scene" などの属性の解決に対応、context.path_resolve("active_object.modifiers[0].name")
のような式が期待通り動作するようになりました。(7bb8eeb3a871eb1)
Text.region_from_string
とText.region_as_string
メソッドで、選択に get と set が使用可能に。アクセスする region もオプションで渡すことができます。(rBf49a736ff4023)
mathutils.Color
に、シーンのリニア色空間と、sRGB や CIE XYZ、ACES、Linear Rec.709を相互変換するメソッドを追加。Blender API による返値の大半はシーンのリニア色空間ですが、例外的にユーザーインターフェイスのテーマカラーは sRGB で返ることに注意してください。(469ee7f)
bpy.app.handlers
の Persistent ハンドラがクラスのメソッドを利用可能になりました。(0f583d9d604f456)
互換性のなくなる変更
XrActionMapItem.user_paths
コレクションプロパティは、XrActionMapItem.user_path0/user_path1
の置き換えます。同様に、XrActionMapBinding.component_paths
コレクションプロパティは、XrActionMapBinding.component_path0/component_path1
の置き換えになります。これにより、アクション毎に上限が2つだった XR アクションのバインド数が好きなだけ持てるようになります。(rB6a8709ba136e)
gpu.shader.code_from_builtin
はもう Blender の内部 gpu モジュールと互換性はなく、削除されました。(rB3e98331a094b)
- The
MeshVertex.normal
プロパティが読み込み専用になりました。これは頂点の法線の計算方法がオンデマンドであり、混乱を防ぐためです。(891268aa824f0f)
KeyMapItem.type
から Tweak イベント(EVT_TWEAK_L
、EVT_TWEAK_M
、EVT_TWEAK_R
)が削除されました。
- 特別なタイプの代わりに、通常のマウスボタンタイプ(
LEFTMOUSE
、MIDDLEMOUSE
、RIGHTMOUSE
)と、KeyMapItem.value
をCLICK_DRAG
にセットして使用してください。ドラッグ方向は、KeyMapItem.direction
で指定可能です。(4986f718482b061、7e4c0313283304b)
- Sequence のプロパティ、
frame_still_start
とframe_still_end
が削除されました。同じ機能はframe_offset_start
やframe_offset_end
に負の数を設定することで可能です。(rB8ca9ce09865e6)
廃止予定
GPUBatch
内で使用されているプリミティブ描画タイプ'LINE_LOOP'
と'TRI_FAN'
が廃止予定になり、将来的には削除されます。(rBe2d8b6dc06)
- オペレーターにコンテクストを辞書で渡すのは、代わりに使用が推奨されている
Context.temp_override
の一部となったため廃止予定です。(f438344cf243632)
# Deprecated API bpy.ops.object.delete({"selected_objects": objects_to_delete}) # New API with context.temp_override(selected_objects=objects_to_delete): bpy.ops.object.delete()
Mesh.vertex_colors
は廃止予定になり、今後のリリースで削除されます。新しいスカルプトペイントツールがMesh.attributes
にあるカラー属性(color attribute)を、BYTE_COLOR
またはFLOAT_COLOR
で生成できるようになりました。インポーターとエクスポーターは両タイプのカラー属性と一般的な属性に、対応することをお勧めします。
旧頂点カラーとの違いは、カラー属性値は sRGB 色空間ではなく、シーンのリニア色空間であることです。sRGB カラーが必要なファイルフォーマット向けには、mathutils.Color.from_scene_linear_to_srgb
で変換が可能です。