Monday, September 1, 2014

Zbrush Panel Loop


 Panel loops 활용하는 방법에 있어서 감을 못잡고 있는데...Panel loops 이용한 Hardsurface작업은 의미에서 일종의 Zbrush"extract"(extrude) 고급개념으로 이해하고 접근하면 될것 같다, 이미 입체적인 Shape 가진 dynamesh 상태의 object 정리해서 사용하는 tool 아니라 2D image 이차원 적인 상태의 object 표면에 원하는 형태의 polygroup shape 만들어서 그것을 extract(extrude) 해준다는 것이 개념이다. 여기 "extract" 해주는 것에 있어 정확한 edge 일정한 pop-up(두께) 옵션으로 설정해서 object 생성해 있기 때문에 Hardsurface modeling tip으로
사용되고 있는것이다. ( Daniel workflow 조금 다른 접근방식임)

_Panel loops 이용한 기본  workflow dynamesh Sculping 해줘서 shape 만들어 주고
이후에 Zsphere retopology 방법이나 Zremesher 이용해서 retopology 해주고 이후에
polygroup으로 특정 shape 만들어 내서 Panel loops 두께를 주거나 shell 만들어 .  
--------------------------------------------------------------------------------------------------------------------------------
Edge loop>Panel loop (Zbrush 4R5 version 이후에 추가됨)
( Multiple Polygroup 포함된 object 적용가능, Polygroup border edge 따라  loop(두께) Inner 
panel 생성하거나
관련한 옵션(Doble/Append/Inner) 수있는 명령.
- Multiple Polygroup 가진 object 바로 panel loop 해줄 수도 있지만, show and hide 사용해서
 특정 Polygroup에만 Loop 주거나 단독 shell 만들어 주는 용도로 사용됨.
-Deformation>Polish by###기능들과 연계해서 사용
-기본적으로 multi subdiv 포함하는 object에서 적용안됨 ( 기본적으로 Zbrush 특정 tool 사용하게될때 Multiple subidiv상태에서는 제약이 많음)
-Brush>Auto masking> Topological (control the polygroup of shell)
 (활성화 시키면, multi polygroup 포함된 object control 수있음)
-Brush>Auto masking > Mask by polygroups (control the single polygroup itself)
 ( 활성화 시키면, 현재 선택된 특정 polygroup 부분만control 있음)
- Loops 부분을detail하게  select해주는방법, Visibility> Grow/ Shrink 잡아줌 (shortcut: Grow_Ctrl +Shift +X/ Shrink: Ctrl + Shift +S)
-Panel loops 명령으로 만들어진 shell ( 1.특정 plolygroup 부분 + 2.loops +3. inner polygroup부분_3개의 다른 polygroup으로 이뤄짐)
  한번에 selecton 해주는 방법  Visibility> Grow All  ( shortcut: Ctrl+ Shift+A)
-panel loops 적용되면 기본적으로 두께를 가진 loops 생성을 기본으로 하기때문에 기존 object surface 위로 pop up되어 생성됨
 (Elevation설정으로 death수정가능)
























-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 기본 개념_Panel loops> Double (default 활성화), 활성화 시키면 선택된 Polygroup 같은 모양의 면이 안쪽에 만들어짐.
-Double 활성화 되어있는 상태에서  panel loops 적용시키면 최초 선택된 polygroup 부분이 하나의 단독 shell 만들어짐.
(기존의 1.polygroup 부분 + 2.panel loops 명령으로  생성된 loops + 3.double 켜줘서 생성된 inner polygroup 부분 
결과적으로 1 +2+3 = new panel loops shell세개의 part 합쳐져 하나의 단독 shell 생성됨)
, panel loop 적용시킨 기존 polygroup부분은 원래 object와는 떼어지면서 단독 shell 만들어짐.
(default "Append" 적용안되어 있기 때문에, 기존의 object상태를 유지하면서 단독 shell 추가로 만들어 내기를 원하면
 "Append" 활성화 시킨 이후에 Panel  loops 적용시켜주면 )
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
<Double> (default 활성화 되어있음)
-활성화 시킨 상태에서 적용시키면 double side shell 생성된다 그리고 multiple polygroup 적용시킨 경우라면 각각의 polygroup  
Double side가지는(위에서 언급한 1+2+3 합해진 shell)  단독 shell 각각에 만들어짐.
 반면에 비활성화 시켜서 적용시키면 Multiple polygroup이라고 하더라도 모두 붙어있는 하나의 object상태로 loops 생성되어 만들어짐.
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
<Loops>
-panel 적용될때 해당 polygroup border edge(외곽 라인) 둘러질 loop 갯수를 설정
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
<Append> (default 비활성화), append v.덧붙이다/ 첨부하다
-기본적으로 꺼져서 활성화/비활성화가 적용안됨, 사용하기 위해서는  특정 polygroup 부분이 Isolate(show/hide) 노출되야만 .
-panel loops 적용시킬때 활성화 시켜서 적용시키면 비활성화 시킨 default 상태로 panel loops 적용한것과 차의가 없어 보이지만  
 Panel loops해준 안쪽부분을 확인해보면 차의가 있음  "Append" 비활성화 상태로 Panel loops 적용하면  polygroup 부분이 원래 object 떼어지면서
Panel loops 해준부분을 읽어버리게 된다. "Append" 활성화 상태로 적용되면 원래 object 손상되지않는 그대로 유지된 상태에서 추가의
단독 shell 생성되는 개념임 그러한 이유에서  밑에 이미지와 같이 layer가진 shell 만들어 내기에 유리함.  








--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
<Inner>(default 비활성화)
loops 부분만 pop-out 되면서 두께를 가지게 (예를들어 안경과 같은 모양을 만들어 낼수 있는 기능임)
(This mode creates the Panel Loop inside the model rather than outside. The difference between Inner and a negative Elevation setting (see below) is in the direction of the beveled edge shape relative to the original surface_ by Pixologic)
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
<Thickness> loops 생성될때 기본적으로 두께를 갖는데 두께를 설정해줌
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
<Polish> (default :5)
-Deformation> polish by feature 유사하게 panel loops 적용할때 border edge부분을 smooth해주어서 적용시키는 명령임
복잡하게 생각할 없이 그냥 loops 생성될때 edge부분이 smooth 들어가서 생성된다는 개념임.
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
???????? <Ignore group...> (default: 비활성화)
-활성화 시켜서 적용 시키면 panel loops 적용할 원래 object 유지됨 그러니까 따라 panel loop 부분만 떼어져서 생성되고 이런게 없음, panel loops 해서 생성된건 된거고, 기존 object 그대로임)
(If performing a Panel Loop while only a portion of the mesh is visible, this option al­lows you to keep the current PolyGroups. The advantage of this would be if you wanted to create additional panel pieces across an already created panel and not have ZBrush create panels for every PolyGroup_by pixologic)
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
<Elevation>(default :100)
_ Panel Loop 적용되면 기본적으로 Popup되어서 생성됨(두께를 적용시키기 때문) 거기에 플러스or 마이너스 방향으로 적용되는가...설정하는
_default(100)값을 적용하면 기존 object 표면위에 그래로 pop-up되는 개념, 값이 "0"일때는 nutrual(50%in/50%out), 값이  "마이너스"값을 높이면 안쪽으로
 두께가 생성됨.

















-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Bevel (default:50)
-Bevel 생성되는 Loops 단면의 shape 관련이 있음_ "0" loops 단면이 직선의 flat, "100" bevel 높이가 높아짐_profile 그래프와 동일한 명령인데
단순화 시켜서 높이만 조절하는 명령이라 수있음)
Bevel profile (그래프 조절)
(loop 생성될때의 잘라진 단면의 모양을 잡아주는 설정임 ...값이 높고 낮고를 설정하는게 아니라 그래프 모양 그대로 단면 적용됨
예를들어 loops 값을 "1" 주고 단면 그래프의 모양을 복잡하게 만들어 적용 시켜주면 당연히 적용안됨 복잡한 단면을 만들고 싶으면
최소한의 loop 그만큼 올려줘야함_loops 값은 말그대로 loop 숫자를 의미하기 때문 )   
그래프에서 포인트의 위치가 화면에 중간(height) 넘어가면 이웃하는 polygroup loops 부분이 겹치게 되는것을 의미함.
중간일때 마딱드려짐, 중간에 못미칠때는 이웃하는 Polygroup loops 간에 공간(cap) 생기는 것을 의미함

그래프 내에 포인트(vertex) 제거방법 드래그해서 화면 밖으로 보냄,
포인트와 포인트 사이에 curve라인 만드는법은 그래프 내에 포인트를 한번 클릭하면 포인트를 중심으로  흰색 원이 생성됨
 생성된 흰색 원을 드래그해서 크게/작게 만들수 있음_ 이때에 그래프 line  curve shape 만들어짐.
Tips. 이웃하는 A B두개의 polygroup 사이에 톱니바퀴와 같이 맞물리는 shape loops 생성해주는 방법
각각의 polygroup 따로 panel loops 적용시켜주는데 먼저 하나의 A polygroup Bevel profile 그래프에서 loops shape 만들어주고 Panel loops생성,
B polygroup Bevel profile 그래프로 가서 "Flip" 명령을 주고 Panel loops하면 기존의 A polygroup loops shape 반대의 맞물리는 shape loops 생성가능

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Panel loops workflow에서 연계해서 사용할 있는 tools

1.Brush> Auto Mask> Topological (default: 비활성화_활성화 혹은 비활성화로 적용시켜 작업함)
선택한 polygruop 포함된 전체 object 컨트롤 있음.
 Brush> Auto Mask> Make by poly groups (default: "0")
-현재 선택되어진 polygroup이외에 부분은 자동으로 masking 되는 개념이다.
- slide 형태로 되어 있어, 0에서 100 값을 적용시켜줄 있고 0 100 값을 변경하는 것에 따라
현재 선택된 polygroup 인접한 부분의  Masking 된것이 옅어지고 그에따라 조금씩 영향을 준다는 개념임
 "100" 경우 현재 선택된 polygroup 이외에 부분에 완벽히 Masking 되어 있게되고 값을 줄여줄수록 Making 옅어지면 영향을 주게됨.
 값을 100으로 놓고 "Move brush 사용하면 거의 MAYA에서의 Extrude 유사하게 사용할 있음 .
 Tip. Topological/ Make by poly groups 이용 형태를 잡아 줄때 주로 Move brush 사용해서 작업하기 때문에 깔끔한 형태를 잡아내는데에 어려움이 있음
그러나 Deformation> Polish by feature smooth 주는것으로 번갈아 가면서 작업하면 깨끗한 shape 얻을 있음.
   Masking 이용해서  Mutiple polygroup 만들어내는데 처음 만들어낸 Polygroup shape 간섭하지않고 추가적으로 masking 이용해 polygroup 만들려고
할때 Masking by polygroups 사용해서 쉽게 만들어줄 있음. Masking으로 그려서 새로운 polygroup shape 만들어 내는데
밑의 이미지와 같이 분명 이전의 만들어낸 Polygroup 간섭이 되었지만 _Masking by polygroup 적용되어 있기 때문 기존 polygroup shape 유지됨.

















2.Deformation> Polish by….
-기본적으로 dynamesh /panel loop 연계해 사용할 있도록 고안됨, 특히 poly group 이용해 Panel loops 유용하게 사용됨
-오른쪽 구석이 원을 열고/ 닫고 하는 기능이 있음_큰원은 열린것/작은원은 닫힌것
-sliding으로 값을 조절하기때문에 미묘한 값의 변화를 줄때는 컨트롤이 어려움_이럴때는 단일 클릭으로 값을 조절함
-zbrush 제공하는 smooth brush 중에서도 crease/polygroup smooth 이런식으로 디테일한 brush 존재함, 경우에 따라 사용하면 유용함
-Masking 해준 부분은 영향을 받지 않음

Polish (default 원이 열려있음)
The Polish slider will control the strength of Polish being applied. The icon on the right will determine the polish mode that will be calculated. To change the polish mode click on the circle.
Open Circle will apply a polish that will maintain the overall form of the tool.
Closed Circle will apply a polish that will smooth out the tool without maintaining the volume.
(,알아둘께  smooth brush 중에서 smooth by polygroup, smooth by crease brush 존재함 )

Polish By Features (default 원이 닫혀있음/ by Groups + by Crisp Edge 라고 보면됨)
Polish By Features will evaluate the mesh’s creased edges and polyGroups. ZBrush will polish the whole surface while maintaining PolyGroup borders or creased edges. With the small circle closed, ZBrush will maintain the overall shape and vol­ume of the mesh without shrinking.
With the small circle open, ZBrush will use more aggressive smoothing. You will see some surface volume changed.

 기본적으로 원이 열리면  전체적으로 강하게 polish 명령이 적용됨, 닫히면은 보수적, 미비하게 적용이 되는것임.
여기서 영향을 미치게 되는 by feature 명칭대로 feature polygroup/ crease edge 되어진 부분을 말함
그럼 어떤식으로 영향을 미치느냐_원이 열려진 상태에서 적용, 전체적으로 강하게 polish 적용됨 거의  형태를 읽어버리게됨
, 중요한것이  polygroup 경계가 되는  border edge부분과 crease 적용된 부분만 남겨두고 나머지 부분만 polish 강하게 적용된다는 이다. 
원이 닫힘 상태, 기본적으로 feature( polygroup creas edge) 부분을 우선적으로 형태를 유지한 상태에서 최대한 나머지 부분을 polishing (smooth)해줌.
여기서 상기할 부분, polygroup 3개가 겹치는 접점 부분은 원이 열리던, 닫히던 상관없이 위치/형태가 그대로 유지됨.
Tip, polishing(smooth) 적용되지 않을 때에 open/close 번갈아 가면서 사용해주는것도 방법임.  
    
Polish By Groups (default 원이 닫혀있음)
The Polish By Groups slider will polish the surface based on polygrouping. All polygroups edges will be smoothed.
This powerful feature has a modifier setting in the form of a small circle. With the circle closed, ZBrush will maintain the overall volume of the mesh while polishing based on the surface’s PolyGroup borders. If the circle is open ZBrush will still polish based on PolyGroup border but the overall volume will not be maintained and the mesh will likely contract.
( 원이 열리면 polygroup border, 그룹과 그룹사이의 연결된 부분은  유지된채 나머지 부분이 영향을 받음, 닫히면 전체적인걸 유지)
(, polygruoup 3부분이 만나는 접점의 위치는 절때 바뀌지 않음, 유지됨)

Polish by Crisp Edges (default 원이 닫혀있음)
The Polish Crisp Edges slider will polish the surface based on creasing. All areas surrounded by creases will be smoothed. This powerful feature has a modifier setting in the form of a small circle. With the circle closed, ZBrush will maintain the overall volume of the mesh while polishing based on Creased Edges. If the circle is open ZBrush will still polish based on Creased Edges but the overall volume will not be maintained.
(Geometry> Crease 적용해준 부분에 대해서만 적용해줄 있음, 원이 열리면 crease 부분만 유지가 되고 나머지는 공격적)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Frame Mesh












Stroke> Curve Functions> Frame mesh
-Frame mesh zbrush 고유의 curve brush 특징을 이용해서 위에 파란색으로 활성화 되어있는 1.border / 2. polygroups/ 3. crease edge 소위
경계가 되는 부분에 정확하게 object line up 하기에 유용한 툴이다
- tool 자체로는 ONLY Curve line 생성해내는 것임, 기본적으로 Curve based brush 연계해서 사용해야하는 tool
-tool 자체의 목적은 Border/Polygroups/Creased edge 따라 정확한 Curve line 생성해주는 것이고, 이후에 원하는 Curve based brush 불러서
 해당 Curve line 위에 "클릭" 해주면, Curved based brush 생성된 Curve line따라 적용되는 개념임
-Curve mode 활성화 되어있는 상태에서 brush 바꿔서 Curve line 위에 클릭해주면 바뀐새로운 brush Cuve line 적용됨
-마무리 하는 방법은 기본 Curve based brush 사용법과 마찬가지로 해당 object 어느 부분이라도 클릭해주면, Curve line 사라지고 적용이됨.
-마음에 들지 않는경우 undo해줄 수도 있지만 split hidden delete hidden으로 분리시켜 제거 해줘도  
Tips. 주의 할점
-frame mesh 적용하기 이전에 insert brush curve line위에 클릭해서 적용시킬려면 curve mode(stroke>curve > curve mode) 활성화 시켜줘야함
- symmetry 활성화 되어있는 상태에서 frame 생성하면 중심축부분에서 line 겹쳐서 나올 있기 때문에 비활성화 시키고 적용하는 바람직함
-curve line 위에 클릭을 해서 object 업데이트/적용 할때( object size/ step...etc) 라인업이 제대로 안되는 문제가 더러 있음
 이럴때는 자체를 수정하려고 하기보다 undo 해서 다시 setting curve line 적용시키는게 쉬움.

 1.border 이용하는 방법은  단순한 edge 부분은 적용이 안됨, Border edge 해당되는 부분에 맞춰 Curve line line up 있음
show and hide (ctrl +shift+ 드래그) Curv line line up시켜주고 싶은 edge 부분만을 노출시켜서  적용시키면됨
이렇게 curve line 생성되면 hide 된부분 All show 해도 curve line 그래로 line up 되어있음
 Tips,  Brush> depth 설정을 조절해 Curve based brush object 표면에 붙을때의 depth 조절할 있고
Frame mesh 적용하기전에 show and hide border edge 부분을 원하는 만큼만 노출시켜서 Curve line 위치 시키는데
Visibilty> shirk or grow selection 으로 border edge 노출 시켜 Curve line 생성시켜 있음
, 이때는 border edge부분이 경우에 따라 고르지 못할 수가 있음_여기서는 Group loop 사용하던지 border edge부분을 정리해서 적용시킬 있음.














2.Polygroups 활성화 시켜 적용하면  multiple polygroup 포함한 object 이웃하는 polygroup 경계가 되는 edge 부분을 따라  curve line 생성됨
이후에는 마찬가지로  원하는 Curved based brush 원하는 object load 시켜서 curve line위에 클릭해주면 그리고 편집은
Curve step...등등 기본 curve line 편집방법을 사용하면 되고
Tips. Line up object 편집(위치및 사이즈)해줄때 여기서 생성된 object polygroup 나눠져 있기 때문에 개별적으로 편집가능.
Curve>Curve step object사이의 간격을 조정하거나_ Split> split to parts 이용해 분리시켜준던가 또는 Auto group으로 polygroup 나눠주고
Brush> Auto Mask> Topological 적용시켜서 사용해주던가_ object Line up될때 좌우대칭을 위해 mirror and weld 적용시켜줌.
3.crease edge crease edge brush 임의의 edge 잡아주고 거기에 적용시키는 방법
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------