pyvista.Plotter.enable_ssao#

Plotter.enable_ssao(radius=0.5, bias=0.005, kernel_size=256, blur=True)[ソース]#

Surface Space Ambient Occlusion (SSAO)を有効化します.

SSAOは,レイトレーシングよりも効率的にシャドウを近似でき,同様の結果を得ることができます.近くのメッシュが近くの光源を遮ることで互いに及ぼすオクルージョン効果をプロットしたい場合に使用します.

詳しくは Kitware: Screen-Space Ambient Occlusion をご覧ください

パラメータ:
radiusfloat, default: 0.5

オクルージョンを計算する際には,近傍の画素が考慮されます.

biasfloat, default: 0.005

画素の深さを比較する際に使用される公差係数.

kernel_sizeint, default: 256

使用するサンプルの数.これは品質をコントロールするもので,数値が高いほど品質が向上しますが,計算時間が犠牲になります.

blurbool, default: True

オクルージョンバッファをカラーバッファと合成する前に,ぼかすかどうかを制御します.

多くの四面体が近くにある pyvista.UnstructuredGrid を生成し,SSAOなしでプロットします.

>>> import pyvista as pv
>>> ugrid = pv.ImageData(dimensions=(3, 2, 2)).to_tetrahedra(12)
>>> exploded = ugrid.explode()
>>> exploded.plot()
../../../_images/pyvista-Plotter-enable_ssao-1_00_00.png

デフォルトのパラメータでSSAOを有効にします.

>>> pl = pv.Plotter()
>>> _ = pl.add_mesh(exploded)
>>> pl.enable_ssao()
>>> pl.show()
../../../_images/pyvista-Plotter-enable_ssao-1_01_00.png