장면 그래프와 블루프린트

동상 둘레에 원을 그리며 서서 각자 검을 동상에 겨누는 기사 열여섯 명은, 손으로 하나씩 배치한 가져오기 열여섯 개가 아닙니다. 그래프입니다: 가져오기, 그것들의 링, 바라보기, 그리고 둘이 똑같지 않도록 약간의 변화. 열여섯을 스물넷으로 바꾸는 데는 숫자 하나면 됩니다.

새 프로젝트의 장면 그래프: Import 노드가 Output에 연결되어 있고, 왼쪽에는 노드 라이브러리

장면 단계의 장면 그래프 패널에 이 그래프가 있습니다. 스타일 단계의 스타일 그래프와 같은 캔버스(상자, 연결선, 본문의 설정)이지만 연결선 종류가 따로 있어서, 룩 노드를 여기에 놓거나 그 반대로 할 수 없습니다. 메모는 스타일 그래프에서처럼 메모를 붙입니다. 노드 뒤에 놓이는 상자에 내 글을 적으며, 상자를 옮기면 안의 노드도 함께 움직입니다.

이를 한 번도 열지 않고 장면에 아무것도 추가하지 않은 프로젝트는 그래프를 저장하지 않으며, 가져온 것을 렌더링합니다.

장면에 추가하는 모든 것은 이 그래프의 노드입니다: 다른 모델(아이템), 본에 붙인 소품, 스프링, 도형, 이미지, 글자, 볼륨, 조명, 이펙트, 그리고 월드의 지형, 풀, 물, 하늘(D49). 아웃라이너의 +는 사슬 끝에 노드를 추가합니다. 아웃라이너는 그래프의 것들을 나열하며, 행과 노드는 같은 것입니다. 어느 쪽을 고르든 다른 쪽도 선택되고, 인스펙터는 모든 컨트롤과 함께 보여 주며, 어느 쪽을 지우든 둘 다 지워집니다. 그래프 자체의 추가 메뉴로 넣은 노드는 곧바로 아웃라이너의 행이 됩니다. 그룹 안의 것(키트의 랜턴)은 그룹 행 아래에 나열되며, 고르면 그룹이 제자리에서 열리고 안의 노드가 선택됩니다.

이 노드들의 모든 설정은 속성입니다(노드 참고): 왼쪽에 포트가 있는 행으로, 노드에서 설정하거나 값에서 연결합니다. Number value 하나를 Ring과 Row의 개수에 연결하면 둘이 함께 늘어납니다. 월드 노드(지형, 물, 하늘, 구름, 바람…)에도 속성이 있습니다. 숫자나 단어 하나가 아닌 것(구역에 고유 색이 있는지, 바람이 그 밖에 무엇을 움직이는지, 시간대)은 노드의 컨트롤로 남습니다.

노드

노드 하는 일
가져오기 프로젝트가 가져온 것과 그 위치: 소품을 포함한 모델.
오브젝트 소품을 포함한 모델과 그 위치. 어떤 노드도 지정하지 않은 것은 렌더링되지 않습니다.
아이템 가져온 모델 옆에 파일에서 불러온 다른 모델입니다. 서 있는 위치, 회전과 크기, 자체 클립을 정합니다. 도형처럼 추가되며, 목록을 넘기고 자기 사본 하나를 추가합니다(--item).
소품 가져온 모델의 본이 쥐는 모델(검, 횃불 등)입니다. 본 위에서의 위치, 회전, 크기와, 본이 쥐는 모델의 노드를 정합니다(--add-prop). 모델의 일부이므로 가져온 모델의 모든 사본이 이것을 지니며, 따로 사본을 추가하지 않고 목록을 그대로 넘깁니다.
스프링 본 하나와 그 아래의 모든 것이 움직임에 따라 흔들립니다. 머리카락, 망토, 꼬리 등이며 강성, 감쇠, 중력을 설정합니다(--spring). 소품처럼 모델의 일부이므로 모델의 모든 오브젝트에 들어갑니다.
도형 Pixor 자체 도형 하나(상자, 원기둥, 글자)로, 위치, 크기, 회전, 색, 베벨이 노드에 있습니다. 받은 목록을 넘기면서 자신을 오브젝트로 추가합니다. 아무것도 연결되지 않으면 목록을 새로 시작하므로, Ring으로 들어가는 Shape는 그 도형의 링이 됩니다.
이미지, 텍스트 평면 위의 이미지, 또는 카드 위에 픽셀 폰트로 쓴 글자(이미지와 글자)로, 도형처럼 추가합니다.
볼륨 연기, 불, 액체(볼륨): Output에 닿는 노드의 오브젝트마다 하나씩, 그 오브젝트가 배치합니다.
조명 위치가 있는 조명입니다. Output에 닿는 오브젝트마다 하나씩이므로, 조명 뒤에 Row를 두면 조명이 한 줄로 늘어섭니다. 아무 데도 연결하지 않은 조명은 아무것도 비추지 않습니다.
이펙트 파티클(폭발, 불꽃, 비, 반딧불이). Output에 닿는 오브젝트마다 하나씩입니다.
링 원을 따라 놓인 오브젝트: 개수, 반지름, 첫 오브젝트의 위치, 중심을 바라볼지 여부.
행 한 줄로 일정한 간격을 둔 오브젝트.
격자 가로와 깊이 방향으로 정한 개수만큼 격자에 놓인 오브젝트.
흩뿌리기 상자 안에 시드로 흩뿌린 오브젝트. 서로 이 거리보다 가까워지지 않습니다.
바라보기 모든 오브젝트가 한 점을 바라보게 돌립니다. 더 돌리기는 무기가 앞쪽 축에 있지 않은 모델을 조준합니다.
변화 각 오브젝트에 번호와 시드에 따라 고유한 클립 위상, 회전, 크기를 줍니다.
재생 시트의 나머지가 무엇을 재생하든 이 오브젝트들이 재생하는 클립입니다. 공격하는 기사 옆에서 흔들리는 나무처럼요. 모든 액션에서 그 액션의 프레임에 걸쳐 재생합니다. 멈춘 집 옆에서 도는 풍차는 액션 단계의 새 액션과 풍차의 Play 노드로 만듭니다. 액션은 여기가 아니라 거기서 만듭니다.
보는 카메라 한 카메라만 보는 오브젝트와 프레임(아래 참고).
병합 오브젝트 목록 둘을 하나로.
Move, Mirror 모든 오브젝트를 옮기고, 돌리고, 크기를 바꿉니다. 각 오브젝트를 평면에 비친 반사본도 추가합니다.
세분화 모든 오브젝트의 모든 삼각형을 넷으로 나눕니다(한 번에서 최대 네 번). Displace가 움직일 점이 생깁니다.
변위 모든 오브젝트의 표면을 시드 노이즈로 미터 단위 최대량까지 밀고 당기며, 울퉁불퉁함은 크기만큼 떨어져 있습니다. 복사본마다 고유한 울퉁불퉁함을 받으므로, 상자를 늘어놓으면 서로 다른 바위가 늘어섭니다.
높이 필드 위에서 본 시드 높이 필드로 모든 오브젝트의 표면을 곧게 들어 올립니다. Subdivide 뒤에 두면 평평한 면이 기복 있는 땅이 됩니다. 땅은 올라가기만 합니다.
베벨 모든 오브젝트 상자의 모서리를 45도로 깎습니다.
바닥에 놓기 모든 오브젝트를 그 아래의 가장 높은 표면 위로 곧장 떨어뜨립니다. 장면의 다른 물체(또는 그중 하나)와 체인에서 앞에 있는 지형이 대상이며, 위로 띄우는 높이를 줄 수 있고, 원하는 만큼 경사를 따라 기울입니다.
표면 위 받은 것의 오브젝트를 물체 표면 위에 면적에 따라 시드로 흩뿌립니다. 윗면에만, 또는 어디에나.
점 위에 받은 오브젝트를 대상의 모든 꼭짓점에 놓습니다.
차이 첫 번째 입력의 오브젝트에서 두 번째 입력의 오브젝트를 그 자리에서 도려냅니다: 벽에 뚫은 창문, 상자에 낸 홈. 두 번째 입력은 구멍의 모양일 뿐 렌더링되지 않습니다.
합치기 오브젝트 목록 두 개를 한 파츠로 그려 맞닿는 곳에 선이 생기지 않습니다: 상자를 쌓은 탑이 건물 하나로 보입니다.
도형 설정 모든 오브젝트 도형의 설정 하나(크기(배수), 너비, 높이, 깊이, 분할 수, 베벨, 색조)를 속성에 숫자를 곱하고 숫자를 더한 값으로 정합니다.
속성 모든 오브젝트에 숫자를 기록해 뒤쪽 노드가 쓸 수 있게 합니다(아래 참고).
선택 속성이 조건을 통과하는 오브젝트를 남깁니다.
출력 카메라 앞에 서는 것: 그래프의 유일한 결과.

월드 노드(Terrain, Sprigs, Foliage, Water, Clouds, Sky, Wind, Light shafts, Times of day, Chunks)는 같은 추가 메뉴에 있습니다. 월드를 보세요. 값 노드(숫자, 켜기/끄기, 각도, 단어, 그리고 그 사이의 연산)가 속성에 값을 넣습니다.

배치 노드는 받은 사본마다 한 번씩 실행됩니다. 줄을 링으로 배치하면 링의 사본마다 줄이 하나씩 생깁니다. 중첩은 이것이 전부이며, 다른 규칙은 없습니다.

변화는 사본의 번호와 그래프의 시드에서만 나옵니다. 다른 어떤 것에서도 나오지 않으므로, 같은 그래프는 어느 컴퓨터에서든, 두 백엔드 모두에서 언제나 같은 군중을 냅니다.

기사 열여섯

링을 추가하고 개수를 16, 반지름을 3(으)로 정한 뒤 가운데를 향하기를 끄고, 바라보기를 추가해 향해를 석상에 맞추세요. 변화를 추가하고 클립 위상에 1을(를) 주면 모두 걷기의 서로 다른 시점에 있게 됩니다. 캔버스 아래쪽 숫자가 그래프가 만드는 사본 수이고, 옆의 스프라이트가 그것을 보여 줍니다.

그 옆의 석상은 아이템 노드입니다. 파일에서 가져온 또 다른 모델로, 놓인 자리에 섭니다. 모든 대상 노드처럼 받은 것을 넘기고 자신의 사본 하나를 더하므로, 체인에서의 위치가 무엇이 그것을 반복하는지 정합니다. 링 뒤의 아이템은 기사 열여섯 사이의 석상 하나이고, 링 앞의 아이템은 석상 열여섯이 됩니다. 앱에서는 아웃라이너의 + › 아이템 › 모델 파일에서…가 체인 끝, 링 뒤에 놓습니다.

스크립트에서, 노드 하나씩:

pxr project scene game.pixor ring --count 16 --radius 3 --face-out
pxr project scene game.pixor look-at --at 0,0.8,0
pxr project scene game.pixor vary --phase 1 --seed 3
pxr project scene game.pixor --set ring.count=24
pxr project scene game.pixor            # prints the graph and the count

pxr graph add와 pxr project scene는 체인 끝에 노드를 붙입니다. 자체 사본을 만들고 입력을 받지 않는 노드(Object, Import)는 맨 가져오기 대신 체인을 시작하고, 그 뒤에 오는 것은 체인 옆에 놓여 합쳐지므로 렌더링되던 것이 사라지지 않습니다. --alone은 아무 데도 연결되지 않은 노드를 추가하고, --in은 다른 노드를 그 노드의 입력 하나에 연결합니다.

pxr graph add game.pixor --which scene --node object --set of=model           # the knight alone
pxr graph add game.pixor --which scene --node ring --set count=16 --set radius=3
pxr project set game.pixor --item statue.glb@0,0                            # an Item after the ring

아무 데도 연결되지 않고 홀로 선 아이템(--alone)은 자체 목록을 시작하며, 이를 병합, 흩뿌리기, 보는 카메라가 받습니다. 오브젝트는 모델만 지정합니다. 아이템, 도형, 이미지는 그 자체로 노드이므로 오브젝트로 지정하면 오류입니다.

각 카메라가 보는 것

카메라는 그래프가 그 앞에 놓은 모든 것을 담습니다. 보는 카메라는 한 카메라에만 다른 카메라는 보지 못하는 사본을 줍니다. 그래서 메인 카메라와 초상화 카메라가 있는 프로젝트는 한 시트에는 링 전체를, 다른 시트에는 조각상을 담을 수 있습니다. 홀로 선 조각상의 아이템을 보는 카메라 portrait를 거쳐 병합으로 나머지와 합치세요. 초상화 카메라는 모든 카메라가 보는 것과 함께 조각상을 담고, 메인 카메라는 조각상을 전혀 보지 못합니다.

pxr project new game.pixor --model knight.glb --force
pxr project scene game.pixor ring --count 16 --radius 3             # node 2
pxr project set game.pixor --add-camera portrait:three-quarter:64   # NAME:VIEW:SIZE[:ANGLE]
pxr graph add game.pixor --which scene --node item --set model=statue.glb --alone                   # node 3
pxr graph add game.pixor --which scene --node seen-by --set camera=portrait --alone --in objects=3   # node 4
pxr graph add game.pixor --which scene --node merge --in b=4        # the ring, and the statue for the portrait
pxr project scene game.pixor                                        # 17 objects

여기서는 석상의 Item을 --alone으로 추가해 링 체인의 끝에 붙지 않게 합니다(pxr graph list가 번호를 출력합니다). Merge는 체인 끝에 붙으므로 링이 첫 번째 입력으로 들어갑니다. pxr render는 링만 있는 game.png와, 석상을 두른 링인 game_portrait.png를 씁니다.

노드 하나로 쓰는 그래프

석상을 둘러싼 기사들, 늘어선 시장 노점, 변화를 준 군중: 장면 그래프는 그룹 하나로 저장해 다른 프로젝트에서 쓸 수 있습니다. 그룹을 고르지 않은 채 막대의 키트 저장…은 그래프 전체를 키트로 쓰고(장면 그래프를 키트로 저장. 출력 노드가 그룹의 출력이 됩니다), 그룹을 고르면 그 그룹을 씁니다(그룹을 키트로 저장). 캔버스 추가 메뉴의 키트 사용…(키트를 그룹으로 추가)은 키트를 그룹으로 넣습니다. 그룹은 자기 이름을 가진 상자 하나이며, 위의 화살표(또는 더블클릭)로 그 자리에서 열어 무엇으로 이루어졌는지 보거나 바꾸고, 화살표로 다시 접습니다. 안의 안 노드는 입력을 나타내므로, 저장한 링에 둥글게 놓을 사본을 넘길 수 있습니다.

pxr graph save market.pixor --which scene -o stalls.pixorkit --name "Row of stalls"
pxr graph add town.pixor --which scene --kit stalls.pixorkit
pxr graph flatten town.pixor --which scene          # the nodes it stands for

그룹은 코드가 아니라 데이터입니다. 안의 노드가 하는 일만 할 수 있고, 그 노드들과 똑같이 렌더링됩니다.

한 번의 렌더로 여러 시트

무엇을 쓸지는 이 그래프의 일이 아닙니다. 체인 끝의 출력 노드가 카메라 앞에 서는 것이며, 출력은 하나뿐입니다. 두 번째 파일(아이콘 세트, 홍보용 스틸, 선만 담은 시트)은 이 그래프의 사본들이 렌더링된 프레임을 가져가는 에셋 그래프의 출력입니다.

여러 모델로 된 애니메이션 장면

아이템도 클립을 받으며, 위상으로 진행 시점을 옮깁니다.

pxr project new patrol.pixor \
  --item knight.glb@-0.9,0.2,-20:walk \
  --item knight.glb@0.9,0.2,-20:walk,0.45 \
  --item chest.glb@-1.8,-1.6,25,1.2

클립이 있는 아이템은 리그를 가져와 재생하고, 없는 아이템은 선 자리에서 구워지므로 더 가볍습니다. 클립은 Pixor의 다른 모든 곳처럼 모델 자체 파일이나 name@clip 형제 파일에서 옵니다.

배치, 변형, 선택

장면 그래프의 노드는 배치 이상의 일을 합니다. 이동은 모든 사본을 옮기고 돌리고 크기를 바꾸며, 미러는 평면을 기준으로 각 사본의 반사본을 더합니다.

Attribute는 모든 사본에 숫자를 기록합니다(목록 속 번호, 위치, 회전, 중심에서의 거리, 또는 시드 노이즈). Select는 속성이 조건을 통과하는 사본만 남기고 나머지는 버립니다. 둘을 함께 쓰면 어느 것이 뒤에 있는지 일일이 지정하지 않고도 뒤에 있는 것만, 절반 크기로를 표현할 수 있습니다(z는 카메라 쪽을 가리키므로 뒤쪽은 값이 작은 쪽입니다):

pxr project new town.pixor --model chest.glb --force
pxr project scene town.pixor row --count 6 --step 1,0,0.5
pxr project scene town.pixor attribute --name depth --from z
pxr project scene town.pixor select --name depth --how below --at 1
pxr project scene town.pixor move --size 0.5

세분화와 변위는 사본 자체의 표면 모양을 바꿉니다. 상자가 바위가 되고, 매끈한 절벽이 거친 절벽이 됩니다. 손으로 편집한 삼각형이 아니라 사본이 지니고 파츠를 만들 때 쓰는 설정이므로, 같은 그래프는 어디서나 같은 바위를 냅니다.

pxr project new yard.pixor --add-shape rock=box:0.5 --size 64
pxr project scene yard.pixor row --count 3 --step 1.4,0,0
pxr project scene yard.pixor subdivide --times 3
pxr project scene yard.pixor displace --amount 0.12 --bumps 0.35 --seed 4

Drop to ground, On surface, On points는 그래프가 물체를 배치하는 장면을 읽습니다. 상자 안에 흩뿌린 것도 뒤에 Drop to ground를 두고 지형을 목록에 넣으면 언덕 위에 흩뿌린 것이 됩니다:

pxr project new hill.pixor --model chest.glb --terrain 12:24:2                       # the terrain is node 2
pxr graph add hill.pixor --which scene --node object --set of=model --alone          # node 3
pxr graph add hill.pixor --which scene --node scatter --alone --in objects=3 --set count=14
pxr graph add hill.pixor --which scene --node merge --in b=4
pxr graph add hill.pixor --which scene --node drop-to-ground

그리고 양초의 Shape 노드와 왕관의 점 위에로 왕관의 모든 꼭짓점에 양초가 섭니다. 캔버스는 아무것도 만들기 전에 표면 위에의 사본 수를 세며, 점 위에의 개수는 장면이 만들어진 뒤에 알 수 있습니다.

Difference는 두 번째로 받은 것을 그 자리에서 칼로 씁니다. 작은 상자를 세 개짜리 Row로 긴 벽에 관통시키면 창문이 셋 난 벽이 됩니다. 구멍 안쪽은 그 파츠 대부분을 그린 색으로 덮입니다. 리그에 묶인 파츠(스킨 모델, 본에 붙인 도형, 키를 넣은 도형)는 자르지 않습니다. 자르면 리그가 받은 버텍스가 바뀌기 때문입니다. 삼각형이 5,000개를 넘는 파츠도 자르지 않습니다.

pxr project new house.pixor --add-shape wall=box:4,2,0.2 --size 96      # the wall, node 2
pxr graph add house.pixor --which scene --node shape --set name=window --set size=0.4,0.5,0.4 --set at=-1.2,0.1,0 --alone   # node 3
pxr graph add house.pixor --which scene --node row --alone --in objects=3 --set count=3 --set step=1.2,0,0                 # node 4
pxr graph add house.pixor --which scene --node difference --in "cut by=4"
pxr render house.pixor -o out/house.png

도형은 at을 중심으로 서므로, 첫 창은 벽 가운데에서 왼쪽으로 1.2 m에 있고 행 노드가 나머지 둘을 거기서 1.2 m 간격으로 놓아, 셋 모두 4 m 벽 안에 들어갑니다.

Pixor가 만드는 도형에는 자체 설정이 있으며, 도형 설정이 그래프에서 이를 조종합니다. 하나씩 더 높아지고 색상환을 따라 조금씩 돌아가는 상자 한 줄은 상자의 Shape 노드, Row, 각 사본이 줄 위 어디에 서는지를 나타내는 Attribute, 그리고 도형 설정 두 개로 만듭니다.

pxr project new crates.pixor --add-shape 'crate=box:0.5:0,0,0:#c86432' --size 64   # an orange crate alone
pxr project scene crates.pixor row --count 5 --step 1.1,0,0
pxr project scene crates.pixor attribute --name x --from x
pxr project scene crates.pixor set-shape --setting height --from x --times 0.15 --plus 0.5
pxr project scene crates.pixor set-shape --setting hue --from x --times 40
pxr project scene crates.pixor bevel --width 0.06
pxr render crates.pixor -o out/crates.png

상자는 0~4.4 m에 놓여 있어 0.5 m에서 약 1.2 m까지 커지고 주황에서 노랑, 초록을 거쳐 청록으로 바뀝니다. 색조는 색을 돌리므로 색이 있는 도형에서 보입니다. 회색 도형은 회색 그대로입니다.

도형의 설정은 노드 순서와 상관없이 세분화나 변위보다 먼저 적용됩니다. 설정으로 다시 만든 도형은 자체 표면에서 시작하기 때문입니다. 단독으로 선 도형만 적용받으며, 본에 매달린 도형은 모델의 일부입니다.

스킨에 묶이거나 모프 타깃을 가진 파츠는 변위는 되지만 세분화되지 않습니다. 모서리 가운데 새로 생긴 점에는 정직한 가중치가 없기 때문입니다. 바람에 흔들리는 파츠도 마찬가지입니다.

사본은 번호, 속성, 시드로 이웃과 달라지거나, 아예 달라지지 않습니다. 이름으로 달라지는 일은 절대 없습니다. 하나에 이름을 붙이면 그래프가 장면 파일이 되어 버리기 때문입니다.

블루프린트

프로젝트는 이 모델을 가리킵니다. 블루프린트는 같은 것에서 경로를 빼내 이름과 타입을 준 것입니다 — 룩, 위의 그래프, 클립, 내보내기 — 그래서 레시피 하나를 스무 번 복사해 매번 고치는 대신 모델 폴더 전체에 실행합니다.

프로젝트 › 블루프린트로 저장…은 .pixorblueprint를 씁니다. 이를 열면(프로젝트 › 프로젝트 열기…) 입력을 물은 뒤 일반 프로젝트처럼 동작합니다. 결과물은 제목이 없으므로 저장해도 레시피를 덮어쓰지 않습니다.

명령줄에서:

pxr project blueprint game.pixor -o four-way.pixorblueprint
pxr run four-way.pixorblueprint --in model=hero.glb -o out/hero.png
pxr batch models/ --blueprint four-way.pixorblueprint --out out/
pxr run four-way.pixorblueprint --in model=hero.glb --set ring.count=12
pxr graph set four-way.pixorblueprint --which style --node 0 --set dither=0.5   # change the recipe itself

--set NODE.SETTING=VALUE는 노드 하나의 설정 하나를 바꿉니다. 장면 그래프에 그 노드가 있으면 장면 그래프에서, 없으면 그 노드가 있는 모든 에셋 파이프라인과 스타일에서 바꿉니다(--set hold.times=4: 모든 에셋 파이프라인의 Hold 노드). --set PIPELINE/NODE.SETTING=VALUE는 해당 파이프라인에서만 바꿉니다. 노드는 레이블을 소문자로 쓰고 단어 사이를 하이픈으로 이은 이름으로 가리킵니다(Ring은 ring, Look at은 look-at. pxr project scene이 목록을 출력합니다). 레이블 그대로("Look at")도 됩니다. 각 스타일의 팔레트 파일은 별도 슬롯입니다: 첫 스타일은 palette, 다른 스타일은 palette:NAME. 슬롯이 없거나 타입이 틀리면 무엇이든 불러오기 전에 그 슬롯과 필요한 타입을 알려 줍니다.

Pixor는 assets/blueprints/에 몇 가지를 함께 제공합니다: 4방향 캐릭터 시트, 인벤토리 아이콘, 홍보용 스틸.

지난 빌드 이후 바뀐 점

모든 내보내기에는 레시피(시트를 만든 방법)가 담겨 있어, 빌드 데이터베이스 없이도 두 빌드를 비교할 수 있습니다:

pxr diff out-yesterday/ out-today/

어떤 파일이 새로 생겼고, 사라졌고, 달라졌는지, 몇 픽셀이 다른지, 그리고 어떤 설정, 어떤 입력, 어떤 블루프린트가 원인인지 알려 줍니다:

changed  ring.png     36598 of 82944 pixels (44.12%)
         scene.nodes[3].settings.count: 16 -> 12

--exact는 무엇이든 바뀌면 1(으)로 종료합니다. 재현 가능해야 하는 빌드에 씁니다.

내보내기가 쓰는 레이어

페이퍼 돌 조각, 그림자 시트, 패럴랙스 레이어는 별도 파일입니다. 에셋 단계의 2D 뷰에서 레이어 선택의 모두, 쌓아서는 엔진처럼 시트의 레이어를 뒤에서 앞으로 쌓습니다. 레이어마다 토글이 있고, 모든 레이어가 base와 같은 크기인지 알려 주는 줄이 있습니다. 먼저 내보낼 필요는 없습니다. 레이어는 이미 렌더링된 프레임에서, 레이어를 쓰는 코드로, 선택한 스프라이트 시트 출력의 배치대로 그려집니다: 완성된 스프라이트(base), 그림자, 선, 평면 색, 노멀, 깊이, 발광, 스타일 그래프의 추가 출력. 처음에는 스프라이트와 그림자가 켜져 있습니다. 스프라이트 위의 노멀 맵은 스프라이트를 가리기 때문입니다. 파일에서는 대신 내보내기가 실제로 쓴 것을 다시 읽습니다. 엔진이 불러올 바로 그 파일이며, 페이퍼 돌 조각과 패럴랙스 레이어도 포함됩니다.

이 페이지에서 설명하는 내용은 정식 버전에 있습니다. 무료 브라우저 데모는 기본 룩과 PNG 시트만 지원합니다.

브라우저에서 체험 Pixor 구매