<< pythonでパーティクル その2 戻る pythonでパーティクル その4 >>

pythonでパーティクル その3

cgkitとPrmanを組み合わせる。どうも3Delightとprmanでは、RiPointの仕様がちがうようです。
3Delightのマニュアルはこちらになりますが、blobbyが使えて、遊べそうです。

さてさてPrmanだと以下の通りになります。


#point2.py - Create a simple Particle System
import random, math
import cgkit.cri
from cgkit.cgtypes import *
from random import uniform as ru


# Load the RenderMan API.
# Replace the library name with whatever renderer you want to use.
ri = cgkit.cri.loadRI("C:\Program Files (x86)\Pixar\RenderManProServer-14.4\lib\libprman")
cgkit.cri.importRINames(ri, globals())

points=[]
width=[]
colour=[]
normals=[]
pappend=points.append
wappend=width.append
cappend=colour.append
nappend=normals.append

for i in range(0,1500):
for ix in range(0,3):
cappend(ru(0,1))
pappend(ru(-2,2))
nappend(ru(0,1))
wappend(ru(0.01,0.2))


RiBegin(RI_NULL)
RiImager("background", "color background",(.2,.4,.6))
RiDisplay ("point2_pr.tif","file","rgb",RI_NULL)
RiFormat(512, 384, -1.0)
RiPixelSamples( 4, 4)
RiShadingRate(1)
RiProjection ("perspective","fov",30,RI_NULL)
RiWorldBegin()
RiLightSource("ambientlight","intensity",0.4)
RiLightSource("distantlight", "from",[0,0,1])
RiTranslate(0,0,6)
RiSurface("plastic")
RiPoints("P",points,"Cs",colour,"width",width,"N",normals,RI_NULL)
RiWorldEnd()
RiEnd()



実行方法は、

>point2_pr.py |prman

point2_pr.jpg
ありがとうございます。調べて納得して、繰り返し繰り返しですね。
  • -
  • -

<< pythonでパーティクル その2 戻る pythonでパーティクル その4 >>