getLastRenderedImage [ copy:<boolean> ]
getLastRenderedImage()
メソッドは、[シーンをレンダリング](Render Scene)、[最新設定でレンダリング](Render Last)、または[クイックレンダリング](Quick Render)から最後にレンダリングしたイメージを返します。
3ds Max 2009 以降では、オプション キーワード引数 copy:
が指定されていない場合、または true
に設定されている場合、ビットマップは新しいビットマップ値にコピーされます。キーワード引数 copy:
に true
が指定されている場合、MAXScript ビットマップ値はレンダラーのビットマップを共有します。
同じ寸法で再レンダリングすると、レンダラーは最後にレンダリングされたビットマップの値を再利用します。寸法が変更されている場合、新しいビットマップ値が作成されます。
例:
シーンをレンダリングします。
以下のコードを実行します。
bm = GetLastRenderedImage copy:false --share the bitmap display bm
ビューを変更して、シーンを再度レンダリングします。
以下のコードを実行します。
display bm
結果: ビットマップ表示が 2 番目のレンダリングを反映して更新されます。
レンダリング サイズを変更して、シーンを再度レンダリングします。
以下のコードを実行します。
display bm
結果: ビットマップ表示は、同じく 2 番目のレンダラーを反映します。これは、3 番目のレンダリングによって、変数 bm が参照しない新しいビットマップ値が作成されたためです。
MAXScript ビットマップ値がガベージ コレクションで解放される前に解放する場合は、
free bm
を呼び出して、MAXScript ビットマップ値から元のビットマップを解放する必要があります。