跳轉到內容

Blender 3D:融入 Python/Blender Python C API

來自華夏公益教科書,開放的書籍,開放的世界

新增 C/API 擴充套件的簡短未完成指南

[編輯 | 編輯原始碼]

新增簡短介紹 - 這是什麼用途等等。

這裡有一個簡短的教程

  • 找到一個你無法從 BPython 訪問的變數
  • 尋找一個在使用者介面中修改該值的按鈕
  • 記下該按鈕的工具提示
  • 使用查詢工具在原始碼中找到該按鈕的工具提示(有一些你可以獲取的原始碼搜尋工具)
  • 帶有工具提示的行也會引用一個變數。現在你知道該按鈕的變數名了。
  • 進入 Python 程式碼資料夾,開啟相關的 C 檔案(Lamp.c,Material.c 等)
  • 在 C 檔案中找到一個類似的現有變數 - (例如,如果你設定一個標誌,那麼找到另一個設定標誌的 BPy 函式)
  • 檢視該變數的每個例項,在每個例項下,複製它並將名稱替換為你的新名稱。進行明顯的修改。

確保為類變數名新增 setattr 和 getattr 值。你不必這樣做,但你最終可能應該這樣做。

重新編譯並測試!

注意 有時並非所有變數都能從 UI 直接看到。
據我所知,所有 Blender 資料型別在內部都是結構體。
要找到此資料型別使用的所有變數 -
檢視 Blender/source/blender/makesdna/... 中的檔案
它們的命名很好,你可以看到所有變數。

華夏公益教科書