如何通過blender Python 在平直和平滑著色之間切換

2021-01-17 blender幫

平時我們選擇物體用右鍵菜單就可以使用平直著色,平滑著色模式,但我們用代碼去處理就不直接用bpy.ops.object.shade_smooth()

平直著色,平滑著色模式通過網格每個多邊形「use_smooth」屬性進行調節。

為了啟用平滑著色,我們需要將每個網格多邊形use_smooth屬性項 "true"設置為"True"。

對於活動對象:

bpy.context.object.data.polygons.foreach_set('use_smooth',[True]* len(bpy.context.object.data.polygons))

要啟用平面著色 - 將每個use_smooth的屬性設置為"False"。

要使新的著色模式可見 – 強制更新網格數據:

bpy.context.object.data.update()

相關焦點

  • 通過Blender python 渲染和保存圖像
    通過blender中的 python 腳本渲染和保存多個圖像。我知道如何通過 Blender GUI 渲染和保存圖像,但我想通過我的腳本完成所有操作,因為我使用的是一組嵌套循環,需要保存多個圖像。能夠渲染圖像,保存圖像與輸出成功。
  • 使用Blender2.9 python 腳本複製多個對象
    blender python 腳本在 Blender2.79 到 2.8 之間發生了巨大的變化,2.8之後變更了代碼使用方式,原來2.79腳本不起作用,如果你是2.8之後才開始學習blender python 腳本,儘量參考BlenderPythonAPI2.8之後,建議直接用BlenderPythonAPI2.9
  • BLENDER2.9 PYTHON 適合初學者:一些有用的循環
    學 python和 bpy API需要花費一些時間,你可以很容易地理解 blender python API,只要你按TAB鍵它是自動完成代碼關鍵詞的,所以你可以在 blender python控制臺中找到可用的選項。
  • blender python基礎知識大集合
    使用 blender python編寫代碼需要對 blender python基礎有一定的了解,本文很好地介紹了基礎代碼bpy.context 當前環境的所有選擇內容的bpy.context.object 當前活項物體,只能選擇一個mesh = bpy.data.objects["mesh"] Mesh變量存儲物體網格數據
  • blender python類別
    Blender python 使用面向對象的方法處理其數據。對象類包含泛型屬性,如對象的位置。然後,它使用它的數據屬性來使用特定於對象類型的類來存儲對象特定數據,每個數據類型都是 ID 的子類bpy.data.objects是 Object類實例的列表。
  • 使用Visual studio code 作為外部 IDE 編寫 Blender2.9 腳本
    從官方網站下載 Python 解釋器分發: www.python.org/downloads/下載與 Blender 中使用的版本相同的 Python 解釋器版本。blender2.90 b的 Python版本為3.7.7下載後,安裝 Python 解釋器。
  • ghpython_mesh頂點著色
    今天咱們繼續來看rhinopython101裡一個十分簡單的小案例,為mesh的頂點著色。rhinopython101這本文檔斷斷續續盤了好久了,終於感覺是過了大半了,gh本身就是個好東西,有事沒事千萬不要python,因為python他真的不好玩。
  • blender python處理矩陣乘法變更符號
    用blender腳本編寫器編寫任何矩陣乘法,乘法* 語法仍然有效,這個只能作為 2.8 中嘗試普通乘法,而不是 2.7 中的矩陣乘法。如果你用在矩陣乘法會報出有趣的錯誤,因為這並不一定會拋出一個錯誤,a * ba @ b想要支持 2.7 和 2.8 的相同矩陣乘法樣式?
  • 在Blender 2.8 Python API 中選擇對象代碼大調整
    自從Blender 2.8更新後,對python腳本調整了原有設置選擇物體代碼,根據 Blender 2.8 Python API 更改網格(對象)可以使用 getters 和設置器進行選擇。嘗試通過調用blender2.79代碼「bpy.context.active_object.select」屬性檢查網格的選定狀態時,Blender 會引發錯誤:AttributeError: 'Object' object has no attribute 'select'要檢查是否在 Blender 2.8 中選擇了對象,請使用獲取器:bpy.context.active_object.select_get
  • blender python入門系列教程一:認識bpy.data.objects
    啟動blender軟體,如果沒有變更系統設置,默認3d視窗就有一個燈,一個相機和一個立方體。直接選用Scripting界面,在python控制臺,直接輸入bpy.data.objects,系統返回<bpy_collection[3], BlendDataObjects> 中文翻譯:bpy集合[3],blender數據對象輸入:bpy.data.objects
  • 如何設置PyCharm2020,連接到blender進行代碼編寫
    沒有明確的方式將 IDE 連接到允許快速工作流程的blender建議本文檔展示了一個blender2.9-pycharm2020 開發代碼工作流程,你會發現,方便處理你好多的麻煩。解決 方案在電腦上安裝blender2.9和 Pycharm2020找到一個合適的文件夾,您可以在其中將所有加載項開發工作放在該文件夾。此文件夾將有一個特殊的格式,將使我們能夠連接到blender.
  • blender2.9 python3網格編輯模式內定字符串
    在 blenderpython腳本中,對字符串處理比較多,初學者都認為簡單就用它來修改對象名,或者用它來劃分列表等等,其實 blender python中定義了很多大寫的字符串,如果寫錯了,系統會報錯,所以有必要先了解一下內部定義的字符串。
  • Blender 2019
    1.3D掃描可以直連3D掃描儀,掃描後導入blender2.視頻序列編輯器更好的類似PR的動畫剪輯器
  • 如何拆分和新加 Blender 界面窗口通過 python腳本
    以指定比率拆分為兩個窗口,我們需要執行以下運算符:bpy.ops.screen.area_split(direction='VERTICAL', factor=0.5):方向direction = 設置分割方向("水平"或"垂直")factor因子 = 拆分窗口的百分比新窗口(新區域)追加到 bpy.context.screen.區域列表的末尾,可通過以下位置獲取
  • 遊戲建模師開課啦,Blender界面的基本操作你掌握多少?
    合併窗口:待滑鼠箭頭變成十字星時,向右或上拖動,被合併的兩窗口之間會出現巨大的半透明箭頭。變形、物體、著色、關鍵幀2.Properties 屬性菜單:按 N 可以調出或隱藏。Item 物體名稱Tranform:物體屬性,包括 Location 位置、Rotation 轉動、Scale 比例、Dimensions 尺寸。
  • Blender新手指南9:Blender界面的快捷鍵
    CTRL-RIGHTARROW轉到下一屏幕CTRL-UPARROW 或 CTRL-DOWNARROW最大化窗口或返回到前一個窗口顯示尺寸SHIFT-SPACE在最大化和正常的窗口尺寸之間切換 - 與使用上一個設置快捷鍵相同SHIFT-F4更改窗口到數據視圖SHIFT-F5更改窗口到3D窗口。
  • blender2.9 python3 如何檢查Blender版本號
    平時有三個方法能查到所用的blender的版本號啟動圖畫關於Blender軟體右下角當然可以通過 Python API 獲取當前的 Blender 版本號,我們需要執行以下命令:bpy.app.version#
  • Blender-曲線實體化運用
    大家許久不見,大家聖誕節~,很多人對曲線修改器運用和如何實體化有所困惑,而這篇將分析一些blender中曲線的基礎運用及拓展,插一小段,在blender除了默認的幾個曲線,還有其他自帶曲線的插件,打開blender偏好設置的插件選項,輸入extra,開啟兩個曲線插件。
  • blender python更新燈類型的檢查
    自從blender2.8後,燈光已經沒有LAMP類別,所有燈光最高類別採用LIGHT,系統大致分為了4個子類:POINT,SPOT,AREA,SUN在3d視窗中隨意選擇一個燈光,輸入代碼l=bpy.context.object
  • Blender 2.90正式版來了
    新功能亮點一、多級精度雕刻的優化1、細分精度的改進新版本中雕刻可以隨時切換細分級別,然後切換級別可以平滑傳播位移信息。與過去看似隨機的選擇相比,這使得它在模型的不同部分之間更加一致。7、UV編輯的改進當你編輯網格模型時,自動矯正UV和頂點著色,可在工具選項中找到「矯正面屬性(Face Attributes)」和「保留已連接項」。