<< Depth of field 戻る pythonでパーティクル その2 >>

pythonでパーティクル

Essential RenderManから、point.cをPythonで試してみる。
パーティクルも面白くなりそうです。
記述に関しては、cgkitのritest.pyが参考になります。
ありがとうございます。レンダリングは3Delightです。
以前書いた記事、CAPIでパーティクル
point.jpg


#point.py - Create a simple Particle System
import random, math
import cgkit.cri
from cgkit.cgtypes import *


# Load the RenderMan API.
# Replace the library name with whatever renderer you want to use.
ri = cgkit.cri.loadRI("3delight")
cgkit.cri.importRINames(ri, globals())


COUNT = 1000

def jitter(scale):
val=random.random()*1000
return (val/500-1)*scale

position=[]
red=[1,0,0]
fov=30

#/*Generate Particle Postions*/
for i in range(COUNT):
x=math.sin(i*0.5)*50+jitter(2)
y=math.cos(i*0.1)*50+jitter(2)
z=math.cos(i*0.5)*100+jitter(2)
position.append(vec3(x, y, z))


RiBegin(RI_NULL)
RiDisplay ("point.tif","file","rgb",RI_NULL)
RiFormat(512, 384, -1.0)
RiPixelSamples( 4, 4)
RiShadingRate(0.5)
RiProjection ("perspective","fov",fov,RI_NULL)
RiWorldBegin()
RiTranslate(0,0,300)
RiColor(red)
RiPoints("P",position,RI_NULL)
RiWorldEnd()
RiEnd()

  • -
  • -

<< Depth of field 戻る pythonでパーティクル その2 >>