Dev:JA/Ref/Release Notes/3.20/Python API

提供: wiki
移動先: 案内検索

元記事: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_stringText.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_LEVT_TWEAK_MEVT_TWEAK_R)が削除されました。
特別なタイプの代わりに、通常のマウスボタンタイプ(LEFTMOUSEMIDDLEMOUSERIGHTMOUSE)と、KeyMapItem.valueCLICK_DRAGにセットして使用してください。ドラッグ方向は、KeyMapItem.direction で指定可能です。(4986f718482b0617e4c0313283304b)
  • Sequence のプロパティ、frame_still_startframe_still_end が削除されました。同じ機能は frame_offset_startframe_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 で変換が可能です。