|
|
|
01. Omni Type의 Emitter를 생성해 놓고, Locator를 하나 생성해 따로 배치해 놓은 다음, ![]() 02. Particle들이 Object의 Vertext 위치에 Vertex 갯수와 동일하게 Goal된 다음, Field의 영향을 받게 할 수 있는데, 예를 들어 Polygon Sphere와 Omni Emitter를 생성해 놓고, Particle을 먼저 선택하고 Shift키를 누른 상태로 Object를 선택한 후, Particles\Goal 옵션을 열어 Goal weight =0.5 그대로 두고, Use transform as goal을 꺼 놓고 적용한다. ★ Use transform as goal을 켜 놓고 적용하면, Polygon Sphere의 Pivot 중심으로 Particle들이 Goal적용 되지만, Use transform as goal을 꺼 놓고 적용하면, Polygon Sphere의 Vertex 위치로 Particle들이 Goal적용된다. Vertex 갯수와 Particle 갯수를 일치 시키기 위해, 먼저 Poly Count를 켜 놓은 상태로 Object를 선택해 Vertex의 숫자를 파악하고, Particle의 Max Count값에 Vertex의 갯수를 입력한다. +Particle 갯수는 필요한 만큼 제한해 놓았으므로, 순간적으로 수많은 Particle들이 생성되도록 Emitter를 선택하고, Rate값에 10000을 입력해 1 Frame에서 Key를 주고, 다시 0을 입력해 10 Frame정도에서 Key를 준다. + +기본 상태에서는 출렁거리다가 점점 진동이 감쇠하면서 Particle Sphere가 Vertex의 위치로 Goal되면서 자리잡게 되는데, Particle의 goalWeight값을 기본 0.5에서 1로 높이면, 움직임을 느낄 수 없을 정도로 순간적으로 Goal되어 자리잡게 된다. ★★ 그런데, goalWeight값이 최대값인 1.0일 경우에는 Turbulence Field가 있어도 영향을 받지 못하므로, Particle들이 Object의 Vertex에 자리잡고 나서는, goalWeight 값을 낮추고 Key를 줘 Turbulence의 영향을 받도록 해 주면, Object에 먼지나 액체 같은게 덮여 있다가, 날아가는 것 같은 모션을 만들 수 있다. + Object의 형태에 관계 없이 Polygon이나 Nurbs나 동일하게 적용할 수 있고, Lattice등으로 인해 형태가 변형되는 Animation이 적용되어 있는 Object에도 가능하다. (Expression) vector $position = particleShape1.worldPosition; if($position.y > goal_control.ty) //goal_control =Locator particleShape1.goalPP =0; else particleShape1.goalPP =.7; 03. Nurbs Object를 이용할 경우에는 CV들이 Surface표면보다 약간 거리를 두고 위치하며, 표면에 액체가 흘러 내린다든지, 땅위를 기어가는 거미떼 등을 표현할 수 있다. ☞ Sphere에 쌓였다 날아가는 Particle - Nurbs Sphere를 생성하고, Channel Box의 Inputs에 있는 makeNurbSphere1에서 Sections와 Spans를 이용하든지, Attribute창의 makeNurbSphere1탭에 있는 Sphere History탭을 확장해 Section =10 /Spans =10 으로 설정한다. Omni Type의 Emitter를 생성해 Sphere위로 배치한 다음, Attribute창을 열고 particleShape1탭으로 이동해 Render Attributes탭에서 Particle Render Type을 Sphere로 바꾸고, Current Render Type을 클릭해 Radius를 조절한다. +Add Dynamic Attribute탭에서 Color버튼을 클릭해 Add Per Object Attribute방식으로 적용하고, Color Green만 1.0으로 바꿔 초록색으로 바꾼다. - Particle을 먼저 선택하고, Shift키를 누른 생태로 Shpere를 선택한 다음, Particles\Goal 옵션을 열고, Particle들이 Pivot중심이 아니라, CV의 위치로 Goal되도록 Use transform as goal이 꺼진 기본상태 그대로 적용한다. Simulation해 보면, Particle Shpere들이 진동모션을 보이며 CV위치로 달라 붙게 되며, goalWeight[0] 값을 0.5에서 1로 높이면, 진동은 하지 않고 아래쪽 0번 CV부터 마지막 CV까지 빠른 속도로 순서대로 달라붙게 된다. - Particle Sphere들을 CV 위치가 아닌 Surface에 제대로 위치 시키기 위해서, Add Dynamic Attributes탭에서 General을 클릭해 Particle탭으로 이동한 다음, goalU와 goalV를 추가하고 Simulation해 보면, goalU와 goalV가 모두 0 이기 때문에, 0번 CV의 위치에만 Particle Sphere들이 몰리게 된다. Nurbs Sphere의 Attribute창을 열어 nurbsSphereShape1탭으로 이동한 다음, NURBS Surface History를 확인해 보면, Spans UV가 10 /10이고, Min Max Range U =0 ~ 10 /Min Max Range V =0 ~ 10 인걸 확인할 수 있는데, Min Max Range U/V =0 ~ 1 값을 가지도록 Nurbs Sphere를 선택하고 Edit Nurbs\Rebuild Surface 옵션을 연 다음, Rebuild type을 Uniform /Parameter range를 0 to 1 /Direction을 U and V를 Keep을 NubSpans로 체크한 다음 적용한다. - 아직은 Simulation해 봐도 변화가 없는데, Particle Sphere의 중심이 Surface에 위치하면서 Sphere 전체에 걸쳐 무작위로 Particle들이 생성되도록 하기 위해 Particle을 선택하고 아까 추가한 Goal V 속성에서 RMB\Creation Expression으로 Expression Editor창을 열고 아래의 Expression을 적용한다. particleShape1.goalU = rand(0,1); //rand(0.5, 1)로 하면 중간 CV위치부터 U방향으로 끝 CV위치까지 절반만 생성 particleShape1.goalV = rand(0,1); Simulation해 보면 Particle이 생성될 때부터 U와 V방향으로 0 ~ 1 범위의 랜덤한 위치값을 가지고 생성된다. - Emitter를 선택하고 1 Frame에서 Rate에 1000을 입력한 다음 Key를 주고, 20 Frame에서 Rate에 0을 입력해 다시 Key를 준다. +Particle을 선택하고 속성창의 Lifespan Attributes (see also per-particle tab)에서 Lifespan Mode를 Constant로 바꾸고, 5초동안 살아 있도록 Lifespan을 5.0으로 설정한다. - 현재는 goalWeight가 1.0 이라서 다른 Field를 적용해도 영향을 받지 않으므로, 속성에서 Per Particle (Array) Attributes탭에 있는 Goal PP에 Ramp를 적용하고, Edit창에서 가운데 색을 없앤 다음 아래쪽(시작)에서 절반까지 흰색(goalWeidht =1)으로 하고, 중간지점에서 젤 위쪽(끝)까지 검정색(goalWeidht =0)으로 설정해 놓은 다음, Particle을 선택하고 Uniform FIeld를 적용한다. Simulation해 보면, 20 Frame동안 빠르게 Particle들이 Sphere 윗쪽 절반에 분포해 배치 된 다음, Lifespand의 절반인 2.5초가 지나면서 goalWeight가 줄어들며, Uniform Field의 영향으로 X축으로 날아가게 된다. - 현재는 Particle Sphere들이 Nurbs Sphere를 뚫고 X축으로 날아가게 되므로, Particle을 먼전 선택하고, Shift키를 누른 상태로 Sphere를 선택한 다음, Particles\Make Collide 옵션창을 열고, Resilience(탄성) /Friction(마찰) /Offset을 모두 0으로 설정해 적용한다. +Particle Sphere와 Nurbs Surface와의 충돌 인식률을 높이기 위해서 Particle을 선택하고, 옵션창의 geoConnector1탭으로 이동해 Tessellation Factor를 Default값 200에서 2000으로 높인다. - Particle Sphere를 Object로부터 일정거리 띄워놓고 싶을 경우, Add Dynamic Attributes탭에서 General을 클릭해 Particle탭에서 goalOffset을 추가 후 RMB\Creation Expression으로 Expression Editor창을 열고 아래의 Expression을 적용한다. particleShape1.goalOffset = <<0, 5, 0>> //Particle Sphere가 Y축으로 5 Unit만큼 Offset된 위치에 배치된다. +각각의 Particle Sphere를 램덤한 거리를 두고 띄워놓고 싶을 경우에는 sphrand 를 이용하면 되는데, 아래와 같다. particleShape1.goalOffset = sphrand(5) //Particle Sphere들이 각각의 위치에서 전방위로 5 Unit만큼 랜덤하게 이동 혹은 particleShape1.goalOffset = sphrand(<<0, 5, 0>>) //Particle Sphere들이 각각의 위치에서 Y축으로 5 Unit만큼 랜덤하게 이동 ☞ Nurbs Plane 면을 흘러 내려가는 Particle - 위에서 작업했던 것과 거의 같은 방식으로 진행하면 되는데, 우선 Nurbs Plane을 생성해 Patch U/V를 4/4정도로 올린 다음, CV들을 수정해 Z축으로 미끄럼틀 처럼 굴곡지게 만든다. - Omni 방식으로 Emitter를 생성하고, Particle의 Render Type을 Sphere로 바꾸고, Radius, Color등을 적당히 수정한다. - Particle을 먼저 선택하고, Shift키를 누른 상태로 Nurbs Plane을 선택한 다음, Goal을 적용하고 Simulation해 보면, Emitter로 부터 방출된 Particle Sphere들이 CV의 위치로 진동 모션을 보이며 위치하게 되는데, goalWeight값을 Default값인 0.5에서 1.0으로 올려 진동 모션없이 CV위치로 재빠르게 위치하도록 한다. - CV를 통해 Nurbs Plane의 U와 V방향을 파악해 보면, 가로 방향이 U 방향이고, 흘러 내리는 뱡향이 V임을 알 수 있는데, Add Dynamic Attributes탭에서 General을 클릭해 Particle탭으로 이동한 다음, goalU와 goalV를 추가하고 Simulation해 보면, goalU와 goalV가 모두 0 이기 때문에, 0번 CV의 위치에만 Particle Sphere들이 몰리게 되므로, goalU 속성에서 RMB\Creation Expression으로 Expression Editor창을 열고 아래의 Expression을 적용한다. particleShape1.goalU = rand(0,1); //rand(0.5, 1)로 하면 중간 CV위치부터 U방향으로 끝 CV위치까지 절반만 위치 Simulation 해 보면 Particle이 생성될 때부터 U 방향으로 0 ~ 1 범위의 랜덤한 위치값을 가지고 생성된다. (아직 goalV는 0인 상태여서 한 줄로만 생성된다.) 흘러 내리는 V방향은 goalV에 Ramp를 적용하고, Edit Ramp로 들어가 가운데 색은 빼고, 아래에 흰색 위에 검정색으로 만든다. ★★ 검정색과 흰색의 위치를 바꾸면: 반대로 흘러 내리게 된다. 흰색 부분을 위로 올리게 되면: 한동안 한줄로 정체되어 있다가 빠르게 흘러내리게 된다. 검은색 부분을 아래로 내리면: 처음부터 빠르게 흘러 내려 젤 마지막에서 한줄로 정체된다. ★★ 흘러 내리는 속도: Lifespan값을 높이면(1 → 10) 느리게 흘러 내리게 된다. 동일한 속도 문제: Lifespan Mode를 Random range로 바꾸고, Lifespan과 Lifespan Random에 각각 10/10을 적용하면 된다. - Nurbs Plane을 흘러 내린 다음, 마지막에 떨어지도록 하기 위해서 Particle을 선택하고 Gravity Field를 적용하고, 현재는 goalWeight가 1.0이어서 Gravity Field의 영향을 받지 못하므로, Particle의 Goal PP에 Ramp를 적용한 다음, Edit Ramp에서 흰색(goalWeight =1)이 검정색(goalWeight =0)을 중간지점 정도에서 만나게 해 goalWeight가 1.0으로 유지 되다가, goalWeight가 0으로 없어지면서, 자연스럽게 Gravity Field의 영향을 받아 Nurbs Plane아래로 추락할 수 있도록 한다. ★ Simulation해 보면, 흘러내리다가 Nurbs Plane 중간정도에서 떨어지게 되므로, goalV에 적용해 놓은 Ramp의 검정색을 가운데 정도까지 내려서 Particle이 흘러 내리는 속도를 2배 정도 빠르게 해 조절한다. +벌레들의 걸음걸이 처럼 Particle들이 약간 진동하면서 흘러내리게 하고 싶을 경우... 현재 Creation Expression을 통해 가로로 랜덤하게 생성되도록 되어 있는 goalU에 Simulatoin되면서 적용되도록 아래 Expression을 Runtime Expression으로 적용한다. particleShape1.goalU += sin(frame) *0.01; //particleShape1.goalU = particleShape1.goalU + sin(frame) *0.01; (-)-----------Particle이 U방향으로 한줄로 생성된 다음, 전체가 동시에 V방향으로 올라갔다 내려갔다 왕복하는 모션----------- 흘러 내리는 V방향은 Simulation하는 동안에 흘려 내려야 하므로, goalV 는 RunTime Expression으로 적용해야 한다. goalU 속성에서 RMB\Creation Expression으로 Expression Editor창을 열고 아래의 Expression을 적용한다. particleShape1.goalV = abs(sin(time)); //sin(time)은 Simulation되는 동안 -1 ~ 0 ~ 1 사이값을 가지게 되며, //abs는 절대값으로 무조건 양수로 처리해 0 ~ 1 사이값을 가지게 한다. +전제 조건은 Nurbs Plane의 Min Max Range U/V의 값이 0 ~ 1이라면 것인데, 만약 0 ~ 10이라면 x10을 적용해야 한다. particleShape1.goalV = abs(sin(time)) *10; (-)------------------------------------------------------------------------------------------------------------------ ☞ Nurbs Sphere같은 Object에 Softbody(Particle), Spring, Gravity Field 등으로 천 같이 흘러 내리는 모션을 만들었을 경우, Softbody의 Particle에 Emitter에서 방출되는 Particle을 Goal시켜 같이 Simulation되게 할 수도 있다. # by Hoodwinker | 2009/01/11 06:15 | Maya
01. Gravity Field # by Hoodwinker | 2009/01/10 19:40 | Maya
051. Lights: mib_light_photometric
- Photometric Light Type은 실제 Light 소스로부터 Luminance데이터를 불러와 Light 분배패턴으로 활용하는 독특한 기능을 가지며 Maya의 어떤 Light에도 적용할 수 있으나, 일반적으로 Area Light와 Spot Light를 주로 이용한다. - Scene을 열고, 손전등 앞에 배치된 Area Light의 속성창을 연 다음, mental ray탭을 확장하고, Custom Shaders탭에 있는 Light Shader의 Map버튼을 클릭해, Create Render Node창이 뜨면 Mental Ray노드들 중 MentalRay Lights탭의 Mib_light_photometric을 연결한다. - mib_light_photometric1속성창이 뜨면, Light Profile탭의 Map버튼 눌러 Light Profile을 불러올 수 있는데, Map버튼을 클릭해 열리는 mentalrayLightProfile1속성창을 보면, Format이 IES와 Eulumdat 2가지로 제공 됨을 알 수 있다. File Name의 Browser를 이용해 .ies파일을 불러온 다음, Test 렌더링 했을 때 아무런 효과를 볼 수 없는 경우가 있는데, 이는 .ies Light Data와 Scene의 Light Orientation이 맞지 않아서 그런 것이므로, 손전등 정면 방향을 향하고 있는 Area Light를 선택한 다음 아래쪽을 향하도록 Light를 회전해 놓고 Test 렌더링 해 본다. - 바닥에 ies Light의 효과가 살짝 보이면, mib_light_photometric1속성의 Color에서 Value를 10정도로 올려 Test렌더링 한다. Scene에 맞게 최종적으로 Value를 20으로 올리면 적합한데, 이런 경우 문제점은 Focus가 맺히는 부분은 너무 밝다는 것인데, 이런 경우 Camera Attribute창을 열고, mental ray탭을 확장해 Lens Shader에 mia_exposure_simple1을 연결해 주면 된다. - mib_light_photometric1 노드 속성 ☞ Factor: Shadow 투명도 컨트롤 ☞ Start /Stop: Falloff 조절 (.ies Light Data Source) - .ies파일은 생성 Tool은 잘 모르겠으나, 아래 이미지 같은 인테리어 조명같은 곳에서 뿜어져 나오는 빛줄기 정보를 가지고 있다. 파일의 용량 자체는 .kb 정도로 매우 적은데, 손전등 앞에 배치한 Area Light에 .ies파일을 적용하고 렌더링 걸면, 순수하게 .ies Light Data의 작용으로 아래와 같은 효과를 얻을 수 있다. ![]() - .ies파일 Viewer는 쉽게 찾을 수 있었다. ![]() - 인테리어 작업에 적용하면 아래와 같은 효과를 얻을 수 있다. ![]() 052. Lens: Oversampling_lens - Oversampling_lens Shader는 Path Tracing Material을 이용해 Noise를 부드럽게 하는 Oversampling을 추가할 수 있다. 예를 들어 Path Tracing Material은 Normal Path Material이나 Ambient Occlusion 같은 것이다. - 렌더링 할 Camera의 Attribute창을 열고, mental ray탭을 확장한 다음, Lens Shader에 Mental Ray노드들 중 Lenses탭에 있는 Oversampling_lens를 연결한다. 속성은 Samples 밖에 없으며, 값을 높일 수록 효과를 볼 수 있는데, 값을 10으로 높이고 Test렌더링 해 비교해 본다. (Maya Help) Oversampling Lens 이 렌즈 쉐이더는 Scene에 동일한 속성을 가진 주어진 수의 빛을 뿌린다. 이는 오직 Path Tracing Materials에 유용한데, 앞선 것과 같은 방향을 가지고 다음에 오는 빛은 다른 방향에서 반사와 굴절의 개연성에 의존하는 다음에 오는 빛을 추적하고, 새로운 Illumination Path를 따라가게 된다. 053. Lens: physical_lens_DOF - 사실적인 Camera 타입의 효과를 Depth of Field Shader를 이용해 어떻게 추가할 수 있는지 알아보기 위해 Camera의 속성창을 열고, mental ray탭을 확장해 Lens Shader의 Map버튼을 클릭한 다음, Mental Ray노드들 중 Lenses탭에 있는 Physical_lens_dof를 적용한다. - Test 렌더링 해 보면 전체적으로 뿌옇게 렌더링 되는데, 이는 physical_lens_dof1 노드의 속성 중 Plane값이 -10 이기 때문으로, Display\Heads Up Display\Object Details를 체크해 켜 놓고, 초점으로 잡고 싶은 Object를 선택해 Distance From Cameras의 값을 확인하고 적용하면 된다. (★★★★★ Maya v2009는 확인값이 2.95 라면 -2.95처럼 음(-)수로 입력해야 한다. 그렇지 않으면 전혀 엉뚱한 결과가 렌더링 된다. 이전 버전의 Maya에서는 그대로 양(+)수로 입력하면 된다.) - Focus가 살짝 앞으로 맺히게 Plane값을 -2.5로 입력하고, Test렌더링 해 본다. - Physical_lens_dof 노드 속성 ☞ Plane: Focus가 맺히는 거리를 설정한다. (★★★★★ Maya v2009에서는 반드시 음수(-)값으로 입력해야 한다. 그렇지 않으면 전혀 엉뚱한 결과가 렌더링 된다.) ☞ Radius: Default값이 0.1인데, 값을 높일 수록 Blur되는 정도가 심해지고, 렌더링 시간도 증가한다. 054. Lights: mib_light_spot - mib_light_spot은 Maya의 Light 속성 중 mental ray탭에 Light Shader가 있는 어떠한 Light에도 연결할 수는 있지만, Cone Angle처럼 일부 속성이 Maya Spot Light에 기반해서 작동하는 것이 있으므로, 가급적 Maya의 Spot Light에 연결해야 Mental Ray Spot Light가 Maya 기본 Spot Light와 동일하게 작동할 수 있다. - Scene에 있는 Spot Light를 선택해 Attribute창을 연 다음, mental ray탭을 확장해 Light Shader의 Map버튼을 눌러 Mental Ray항목들 중 MentalRay Lights탭에 있는 Mib_light_spot을 연결한다. - mib_light_spot 노드 속성 ☞ Shadow: 그림자 생성 유/무 결정 ☞ Factor: 기본적으로 Shadow에 체크가 되어 있어 그림자를 생성하게 되며, 아래쪽 Factor값이 Default로 0으로 되어 있는데, 이때는 그림자가 100% 불투명하며, 값을 0.7정도로 올리면 그만큼 그림자 색이 옅어진다. ☞ Attenuation: 감쇠(Light 빛) ☞ Start /Stop: 기본적으로 Attenuation이 체크가 되어 있으며, Default로 Start값은 1로, Stop값은 100으로 설정되어 있는데, 이때는 1Unit에서 시작해 100 Unit 범위까지 단계적으로 부드럽게 빛이 사라지게 된다. ★★★ 따라서 10 Unit 정도에서 빛이 갑작스럽게 사그라 들게 하려면, Start값을 10으로 /Stop값을 10.1로 하면 빛이 10 Unit 부터 사라지기 시작해 0.1 Unit 거리인 10.1 Unit에서 사라지게 된다. ☞ Cone: Light의 중심으로 부터 바깥쪽으로 Intensity를 조절한다. Default값이 0.766 인데, 값을 낮추는 것은 별 의미가 없고, 1 이상 부터 값이 커짐에 따라 점점 바깥쪽으로 갈 수록 빛이 약해지는 정도도 심해진다. (Maya Help) 어느정도 Full Intensity로 밝게 하는 Cone 안쪽 Angle의 Cosine값을 명시한다. 값은 0 (hemisphere) 범위에서 부터 1 (null diameter)까지여야 하고, Cone은 Light에 정의된 Spread Angle을 넘을 수 없다. 055. Lights: mia_physical_sun - Physical Sun Light를 이용하면 매우 간단하고 빠르게 야외 라이팅 효과를 얻을 수 있다. mia_physicalsun 노드는 Hypershade창에서 Mental Ray노드들 중 MentalRay Lights탭에 있지만, mia_physicalsky등 몇가지 필요한 것들을 같이 이용할 때 제 기능을 하기 때문에 수동으로 연결하기 보다는 Render Settings창을 열고, Indirect Lighting탭으로 이동한 다음, Environment탭의 Physical Sun and Sky에 있는 Create버튼을 클릭하면 Directional Light가 Sun Light로 추가 되면서, 렌더링 할 Camera의 Attr.창을 확인해 봐도, mental ray탭의 Environment Shader에 mia_physicalsky1연결 뿐만 아니라, Lens Shader에 mia_exposure_simple1의 연결까지, 필요한 노드들이 자동으로 연결된다. (mia_exposure_simple1 → mia_physicalsky1 → mia_physicalsun1 → sunShape) ★ Directional Light를 회전해 각도를 낮추면, 저녁무렵이나 새벽 등으로 인식해 전체적인 Light 빛 등이 자동으로 변하게 된다. - mia_physical_sun 노드 속성 ☞ Shadow Softness: Default값이 1인데, 값을 5 정도로 높이면 그림자의 Edge가 부드럽게 된다. ☞ Samples: Default값이 8인데, 값을 20으로 올리면 렌더링 시간은 증가 하지만, 거친 그림자 Edge같은 Noise를 감소시킬 수 있다. +생략: 나머지 중복되는 속성은 050. Lens: mia_physical_sky 에... # by Hoodwinker | 2009/01/09 02:33 | Maya
046. Data Conversion: mib_colcr_alpha # by Hoodwinker | 2009/01/08 00:11 | Maya
041. Lens: Mia_exposure_simple
- Mia_exposure_simple 노드는 최종 렌더링 이미지에 대단한 효과를 추가할 수 있다. 현재 Scene을 살펴보면, areaLight가 설치되어 있는데, Attribute창의 mental ray탭을 확장해 보면, Custom Shaders탭의 Light Shader에 Physical Light 노드가 연결되어 있다. Physical Light 노드는 사실적인 Lighting효과를 위해서는 유용하지만,Light Source 가까이에서는 너무 밝다는 문제점도 있는데, 이런 경우 Mia_exposure_simple 노드를 적용 후 속성을 조절해 해결할 수 있다. - 렌더링 할 Camera의 Attr.창을 열어보면, mental ray탭의 Environment Shader에 mib_lookup_spherical 노드가 연결되어 있는데, 그 아래 Lens Shader의 Map버튼을 눌러 Mental Ray노드들 중 Lenses탭을 확장해 Mia_exposure_simple 노드를 연결해 준다음, Test 렌더링 해 보면, 전체적으로 밝고 허옇게 빛이 바랜듯 렌더링 된다. - Mia_exposure_simple 노드 속성(속성 개별로 계산 & 적용되지 않고, 위에서부터 아래로 단계적으로 전체가 계산 & 적용된다.) 1.☞ Pedestal: 어두운 부분의 밝기를 조절하는 속성. Default값 0인 상태에서도 밝고 허옇게 빛이 바랜듯 렌더링 되므로, 어두워야 할 부분을 더 어둡게 만들기 위해서는 -0.03을 입력해 아주 살짝 더 어둡게 한다. [pedeatal: n_동상 등의 받침대, v_존경하다] 2.☞ Gain: 이미지 전체에 걸쳐 밝기를 조절하는 속성. Default값이 1.0인데, 0을 입력하면 완전 까맣게 되어 아무것도 보이지 않게 되므로, 0.1을 입력하고 Test 렌더링 한다. 3.☞ Knee: Highlight 부분의 밝기를 조절하는 속성. Default값이 0.5인데, 전체적인 분위기의 밝기에 맞게 0.3으로 살짝 줄여 Test 렌더링한다. 4.☞ Compression: Default값이 2.0인데, 60 정도로 많이 올려보면, Highlight 부분이 많이 탁하고 색이 바랜듯 렌더링 된다. 그냥 Default값 2.0 그대로 두도록 한다. 5.☞ Gamma: 그냥 Default값 2.2 그대로 둔다. 042. Volumetric: mib_volume - Scene을 열고 기본상태에서 Test 렌더링 해 보면, 잎이 무성한 두 그루의 나무가 있고, 뒤쪽으로 하얀 보름달이 떠 있는 장면이다. 밤이라 나무들은 거의 보이지 않고, 달빛에 의한 실루엣만 살짝 보일 뿐이다. +달과 나무 모두 Alpha도 정상적이다. - 렌더링할 Camera의 Attribute창을 열어 mental ray탭을 확장하고, Volume Shader의 Map버튼을 눌러 Mental Ray노드들 중 Volumetric Materials탭에서 Mib_volume 노드를 연결하고, 다시 Test 렌더링 해 보면, 안개가 낀 것 처럼 뿌옇게 되고, Alpha를 확인해 보면 Render View전체가 모두 하얗게 변했다. - mib_volume 노드 속성 ☞ Color: 안개의 색을 설정한다. ☞ Max: 안개가 생기는 거리를 조절한다. Maya의 메뉴에서 Display\Heads Up Display\Object Details를 켜 놓고, 나무를 선택하고 View에서 Distance From Camera의 수치를 확인한 다음, Max에 입력해 준다. 7.75정도인데, Test 렌더링 해 보고, 최종적으로 10정도 입력한다. 043. Shadow: mib_shadow_transparency - Scene을 열고 기본상태에서 Test 렌더링 해 보면, 투명하고 깨끗한 유리잔이 있는데, 그림자는 완전 불투명한 유리잔 처럼 전체적으로 까맣게 렌더링 된 것을 볼 수 있다. 이는 일반적으로 유리를 표현할 Object에 dielectric_material을 이용할 경우 생기는 현상으로, 그림자가 불투명하게 검은 문제를 바로잡기 위해 mib_shadow_transparency 노드를 이용할 수 있다. - Mental Ray 노드들 중 Shadow Shaders탭에 있는 mib_shadow_transparency노드를 준비하고, 유리잔에 적용된 재질의 노드를 확장한 다음, Shading Group노드인 dielectric_material1SG의 속성창을 열고, mental ray탭을 확장해 Custom Shaders탭에 있는 Shadow Shader로 D & D해 연결해 준다. - mib_shadow_transparency 노드의 속성창을 열고, Shadow Parameters탭에 있는 Transp의 Value를 0.5에서 0.9정도로 높여 흰색에 가깝게 설정한 다음, Test 렌더링 해 보면 그림자가 많이 투명해진 것을 확인할 수 있다. + 속성창의 Shadow Parameters탭에서 Color를 빨간색으로 바꾸면, 투명도를 유지한 상태로 그림자만 빨간색으로 되는데, dielectric_material1 재질의 속성창을 열고, Shading탭의 Col까지 빨간색으로 설정해 주면, 빨간 컵의 빨간 그림자가 렌더링 된다. - mib_shadow_transparency 노드 속성 ☞ Color: Shadow의 Color를 조절한다. ☞ Transp: Shadow의 Transparency를 조절한다. 044. Textures: mib_texture_rotate - mib_texture_rotate 노드는 File Texture같은 노드를 회전하는 것이 아니고, Anisotropic Reflection이나 Anisotropic Highlight 의 회전방향을 조절하는 것이다. - Scene구성은 Sphere에 mib_illum_phong노드를 연결하고, Phong의 Shading Group과의 사이에 끼워 넣기 위해 Mental Ray노드들 중 Materials탭에서 mib_glossy_reflection1 노드를 준비해 Attribute창을 열고, Shading탭의 Base Material로 Phong을 D & D해 연결하고, mib_glossy_reflection1 노드는 Phong에 연결되어 있던 Shading Group의 Attribute창에서 mental ray탭을 확장해, Custom Shaders탭의 Material Shader로 D & D해 연결해 준다. +mib_glossy_reflection1 노드의 속성창에서 Shading탭의 Environment에는 Mental Ray노드들 중 Environments탭에 있는 mib_lookup_spherical1 노드를 D & D해 연결하고, Attribute창의 mental ray Textures탭 Map버튼을 눌러 .hdr이미지를 불러온다. - mib_glossy_reflection1 노드의 Attribute창을 열고, U Spread(Horizontal)값을 Default값인 0.1에서 0.003으로 낮추고, V Spread(Vertical)값을 Default값인 0.1에서 0.3으로 올린 다음 Test 렌더링 해 보면, 반사가 한쪽으로 틀어지고 늘어나게 되는데, 이를 바로잡기 위해 Mental Ray노드들 중 Textures탭에서 mib_texture_rotate 노드를 꺼내 mib_glossy_reflection1 노드 위로 D & D해 Other를 선택한 다음, Connection Editor창이 열리면, mib_texture_rotate1(왼쪽)의 u와 mib_glossy_reflection1(오른쪽)의 u_axis를 연결하고, mib_texture_rotate1(왼쪽)의 v와 mib_glossy_reflection1(오른쪽)의 v_axis를 연결한다. - mib_texture_rotate1 노드 자체로는 아무런 역할을 하지 못하기 때문에 아직은 Test 렌더링 해 봐도 변화가 없다. 따라서 속성창에서 Parameters탭의 Input에 있는 Map버튼을 누르고, Mental Ray 노드들 중 Textures탭에 있는 mib_texture_vector를 연결하고 Test 렌더링 해 보면 변화가 생겼는데, 방향은 좀 더 조절해 줘야 한다. - mib_texture_rotate 노드 속성 ☞ Angle: Default값이 0.25인데, 조절자로 0 =0도, 1 =360도의 범위를 의미하기 때문에 0.25는 90도에 해당한다. + mib_texture_vector 노드 속성 ☞ Selspace: standard로 되어 있는데, Rotation이 일어날 Space를 설정하는 속성으로, world, object, Camera, Screen이 있다. + + mib_texture_rotate 속성에서 Angle을 0으로 입력하고, mib_texture_vector 속성에서 Selspace를 Object로 바꿔주면, 결과가 가로로 발생한다. 045. Data Conversion: mib_colcr_average - mib_colcr_average 노드는 아주 간단한 방식으로 Color Mental Ray Texture에서 Grayscale Information을 추출해 낼 수 있다. - 현재 Scene을 확인해 보면, Object에 mib_illum_lambert 노드가 적용되어 있고, mib_illum_lambert 노드 속성창의 Shading탭에 있는 Ambient에는 mib_texture_lookup노드가 연결되어 있으며, mib_texture_lookup 노드 속성창의 Parameters탭에 있는 Tex속성에는 Map버튼을 눌러 열린 mentalrayTexture1 창을 통해 police_wagon_texture.tga가 불러 들여져 있다. 이제 Mental Ray노드들 중 Data Conversion탭에서 mib_color_average노드를 꺼내 Attribute창을 연 다음, mib_texture_lookup 노드를 mib_color_average노드의 Input으로 D & D해 연결하고, mib_texture_lookup 노드가 연결되어 있던 mib_illum_lambert노드의 Ambient 에는 mib_color_average노드를 D & D해 연결해 주면, Grayscale 렌더링 결과를 얻을 수 있다. (즉, mib_texture_lookup 노드가 mib_color_average의 Input으로 들어갔다가, mib_illum_lambert노드의 Ambient로 연결되게 구성) # by Hoodwinker | 2009/01/05 09:21 | Maya
|
카테고리
전체
Maya MEL & Expression Houdini RealFlow ZBrush Shake Fusion After Effects Photoshop Programing Language English + Etcetera Articles Lifelog Biolog 미분류 이전블로그
2011년 11월
2010년 03월 2009년 12월 2009년 11월 2009년 04월 2009년 01월 2008년 12월 2008년 11월 2008년 10월 2008년 09월 2008년 08월 2008년 07월 2008년 06월 2008년 05월 2008년 04월 2008년 03월 2008년 02월 2008년 01월 2007년 12월 2007년 11월 2007년 10월 2007년 09월 2007년 08월 2007년 07월 2007년 06월 2007년 05월 2007년 04월 2007년 02월 2007년 01월 2006년 09월 2006년 08월 2006년 07월 2006년 06월 2006년 05월 2006년 04월 2006년 02월 2006년 01월 메모장
★ 공지 ★ 이글루 파인더
|