복셀 원 생성기 — 블록으로 원, 구, 돔 만들기
나만의 복셀 원 생성기 만들기
어떤 지름이든 가장 둥근 복셀/픽셀 원을 생성하고, 회전 가능한 3D 블록 구, 돔, 아치로 미리 보세요. 무료, 로그인 불필요.
복셀 원 생성기는 블록 단위의 지름을 입력받아 정사각형 격자에서 둥근 모양을 이루는 정확한 칸을 돌려줍니다. 15를 입력하면 177블록, 9를 입력하면 69블록이 나옵니다. 결과물은 이미지가 아니라 좌표 목록이므로, 건설에 붙여 넣거나 준비 목록으로 세거나 다른 건설자에게 넘길 수 있습니다. 무료, 로그인 불필요, 내보내기 제한 없음.
같은 지름이 3D 미리보기도 이끕니다. 평면 차트가 구, 돔, 아치가 되며, 무엇이든 배치하기 전에 회전해 볼 수 있습니다. 아래에서는 알고리즘, 지름별 정확한 블록 수, 세 가지 윤곽 스타일, 그리고 폭이 약 12블록 미만일 때 나타나는 문제 유형을 다룹니다.
생성기의 작동 방식
생성기는 정사각형 격자에서 원의 방정식을 표본화하여 중심이 반지름 안에 들어오는 칸을 남깁니다. 지름 D에 대해 D×D 격자를 만들고, 격자 중심에서 각 칸 중심까지의 거리를 재어 dx*dx + dy*dy <= r*r(여기서 r = D/2)일 때 그 칸을 채웁니다. 알고리즘은 이것이 전부입니다. 비교는 제곱 거리로 이루어지므로 제곱근을 구하지 않으며, 부동 소수점 반올림으로 가장자리 칸이 하나씩 밀리는 일도 없습니다.
D가 격자 중심이 놓이는 위치를 결정하며, 차트마다 달라지는 것은 이것뿐입니다. 홀수 지름에서는 중심이 블록의 한가운데에 놓이므로 오프셋이 정수입니다. D=15이면 -7부터 7까지입니다. 짝수 지름에서는 중심이 네 블록이 공유하는 모서리에 놓이므로 오프셋이 반값이 됩니다. D=8이면 ±0.5, 1.5 등입니다. 따라서 크기가 거의 같은 두 차트는 좌표를 거의 공유하지 않으며, 15 차트에 한 줄을 더해 16 차트로 만들 수는 없습니다.
이 규칙에는 무작위적인 요소가 전혀 없습니다. 모든 지름은 하나의 고정된, 재현 가능한 차트를 만들어냅니다. D=15는 항상 177칸, D=9는 항상 69칸입니다. 목록을 버그 보고서에 붙여 넣거나, 다른 월드에서 다시 사용하거나, 다음 달에 다시 열어도 좌표는 일치합니다.
논쟁할 경계 동점은 없다
흔한 걱정은 중심 거리가 정확히 반지름과 같은 칸을 <=로 남길지, 엄격한 <로 제외할지입니다. 계산해 보면 그런 일은 일어나지 않습니다. 홀수 지름에서는 오프셋이 정수이고 r*r은 .25로 끝나므로, 정수의 합이 그 값과 같아질 수 없습니다. 짝수 지름에서는 두 오프셋이 모두 반값이므로 각 제곱은 .25로 끝나고 합은 .5로 끝나지만, r*r은 정수입니다.
어떤 지름에서도 양변이 같아질 수 없으므로 <=와 <는 같은 차트를 돌려주고, 하나씩 어긋난다는 부류의 버그 보고는 통째로 사라집니다. 진짜 경계 사례는 다른 곳에 있습니다. D=3은 3×3 격자의 아홉 칸을 모서리까지 모두 돌려주는데, 모서리 중심이 가운데에서 약 1.414만큼 떨어져 있고 반지름이 1.5이기 때문입니다. D=3은 정사각형입니다. 모서리를 처음 제거하는 지름은 D=5입니다.
원 → 구 → 돔 → 아치
2D 차트는 적도 단면이며, 동시에 바닥 면적입니다. 구를 얻으려면 같은 판정을 3차원에서 실행합니다. 각 층에서 단면 반지름은 (r*r - h*h)의 제곱근이고, 여기서 h는 구 중심에서 그 층의 중앙까지의 거리입니다. 지름 15의 구는 15층입니다. 가운데 층은 177칸 원판입니다. 맨 위층과 맨 아래층은 각각 21칸으로 5×5 바닥 면적이 되는데, 층 중심이 구의 꼭대기보다 반 블록 아래에 놓이기 때문입니다.
돔은 그 적층을 수평면에서 자른 것입니다. 벽이 수직을 멈추는 층인 스프링 라인을 고르고, 그 위의 층만 남깁니다. 지름 15의 구를 적도에서 자르면 높이 8층의 돔이 됩니다. 위쪽 5층만 남기면 바닥 고리가 13블록 원인 얕은 덮개가 되므로, 덮개는 폭 15가 아니라 폭 13의 벽 위에 놓입니다.
아치는 적층이 아니라 판입니다. 채워진 원판 대신 고리 윤곽을 가져와, 원하는 두께만큼 한 축을 따라 곧게 밀어낸 다음, 스프링 라인 아래를 모두 삭제합니다. 폭 15, 두께 3블록의 아치에서 고리의 아래 네 줄을 제거하면 높이 11블록이 됩니다. 차트는 폭과 고리를 알려줍니다. 두께와 스프링 높이는 별도로 설정하는 입력값입니다.
이것이 평면 차트와의 차이입니다. 픽셀 원 차트는 바닥 면적만 알려주고 끝납니다. 실루엣이 꼭대기에서 한 블록으로 닫히는지, 아니면 난간처럼 평평해지는지 알려주지 못하며, 같은 지름의 돔과 아치가 서로 다른 양의 재료를 필요로 한다는 것도 보여주지 못합니다. 블록을 놓기 전에 그것을 알아채는 방법이 3D 미리보기 회전입니다.
- 원D×D 격자 위의 원판 하나로, 칸 중심이 r 안에 있습니다. 이것이 바닥 면적이며 다른 모든 것의 적도입니다.
- 구같은 판정을 층마다 한 번씩 실행하며, 단면 반지름은 sqrt(r*r - h*h)입니다. 높이는 D층, 적도에서의 폭은 D블록입니다.
- 돔선택한 스프링 라인에서 잘라낸 구입니다. 구의 절반이 흔한 경우이며, 얕은 덮개에는 더 넓은 바닥 고리가 필요합니다.
- 아치윤곽 고리를 한 축을 따라 밀어낸 뒤 스프링 라인 아래를 자른 것입니다. 두께와 높이는 서로 독립적인 입력값입니다.
블록 수와 재료
채워진 원판의 비용은 그 안의 칸 수와 정확히 같습니다. 표는 생성기의 출력이며 추정치가 아닙니다. 격자 한 칸은 언제나 블록 하나와 같습니다.
블록 수를 준비 목록으로 읽기
D=15에서 채워진 원판은 177블록으로, 마인크래프트식 인벤토리에서 64 묶음 두 개에 49가 더해진 양입니다. D=16은 정확히 세 묶음이 되는데, 이것이 재료를 나를 때 짝수 지름이 편리한 이유 중 하나입니다. 고리만 필요하다면 D=15는 40칸으로 줄어듭니다. 같은 실루엣에 대해 채워진 원판은 네 배가 넘는 재료를 소모합니다.
숫자를 움직이는 것은 지름보다 재료 선택입니다. 꽉 찬 원판은 지면에서 보면 평평하게 보이므로, 대부분의 건설에서는 채우기에 한 가지 블록을, 40칸 윤곽에 다른 한 가지를 사용합니다. 즉 눈에 보이는 비용은 윤곽이고, 채우기는 남는 것을 쓰면 됩니다. 두께 3블록의 층은 윤곽 수를 세 배로 늘립니다. 속이 빈 탑 바닥은 윤곽만 사용하고 내부는 비워 둡니다. 꽉 차게 지을 때 비용을 치르는 대상이 바로 그 내부입니다.
| 지름 (블록) | 반지름 | 채워진 블록 | 64 묶음 기준 |
|---|---|---|---|
| 3 | 1.5 | 9 | - |
| 5 | 2.5 | 21 | - |
| 7 | 3.5 | 37 | - |
| 8 | 4 | 52 | - |
| 9 | 4.5 | 69 | 1 묶음 + 5 |
| 11 | 5.5 | 97 | 1 묶음 + 33 |
| 15 | 7.5 | 177 | 2 묶음 + 49 |
| 16 | 8 | 192 | 3 묶음 |
세 가지 윤곽 스타일
스타일은 선의 두께와 격자 위에서의 위치를 결정합니다. 채우기 수는 바뀌지 않습니다. 나중에 바꾸면 축 위의 모든 칸이 이동하므로, 무엇이든 배치하기 전에 스타일을 고르세요.
짝수 두께
짝수 지름(4, 8, 16, 32)에 사용합니다. 도형의 중심이 네 블록이 만나는 모서리에 놓이므로, 윤곽은 두 축에 대해 대칭이지만 선은 위, 아래, 왼쪽, 오른쪽에서 짝수 블록 폭이 됩니다. 짝수 차트는 깔끔하게 확장됩니다. 지름을 두 배로 하면 비율이 유지되며, 큰 건설이 여기에 자리 잡는 경향이 있는 이유입니다.
홀수 두께
홀수 지름(3, 5, 9, 15, 31)에 사용합니다. 중심이 블록 위에 놓이므로 가운데 열과 가운데 행이 각각 하나씩 있고, 도형은 그들을 기준으로 대칭입니다. 작은 크기에서 원으로 읽히는 것은 홀수 차트입니다. 가운데 블록이 곡선을 판단할 고정된 중심을 눈에 제공하기 때문입니다.
평평한 변
평평한 변 변형은 홀짝을 유지하면서 네 방위점 각각의 단일 극단 칸을 평평한 구간으로 바꿉니다. D=9에서 기본 홀수 차트는 맨 왼쪽에 블록 하나를 놓습니다. 평평한 변 변형은 그 왼쪽 끝 열을 높이 3블록으로 만들어, 실루엣이 모서리가 둥근 정사각형으로 읽힙니다. 원이 곧은 벽, 문틀, 선로와 맞닿아야 할 때 사용하세요. 평평한 이음매는 맞지만 한 점은 맞지 않는 경우입니다.
01
폭이 약 12블록 미만이면 지름보다 스타일이 더 중요합니다. D=3은 정사각형, D=5는 모서리를 자른 정사각형, D=7은 둥글게 읽히는 가장 작은 차트입니다.
02
그 규모의 우물, 탑 바닥, 분수, 나무 구덩이에는 홀수 두께 스타일로 지름 9나 11의 홀수를 사용하세요.
03
평평한 변 변형은 곧은 가장자리에 맞대어야 하는 대상에 남겨 두고, 블록을 놓기 전에 3D 미리보기에서 그 가장자리를 확인하세요.
복셀 월드에서 지어 보기
차트는 실제로 세워져야 비로소 쓸모가 있습니다. 3D 게임 빌더는 좌표 목록을 배치 패턴으로 받아들이므로, 미리보기를 만든 바로 그 숫자가 걸어 다닐 수 있는 월드의 블록을 만들어냅니다. 편집기에서 곡선을 손으로 다시 도출하거나 대각선을 눈대중으로 맞출 필요가 없습니다.
미리보기는 평면 차트가 감추는 것을 알아채는 곳입니다. 고리의 한 칸짜리 홈, 꼭대기 근처에서 홀짝이 뒤집혀 난간을 남기는 돔 단면, 플레이어가 오를 수 없는 대각선 계단 같은 것입니다. 이런 것은 화면에서 몇 초면 고칠 수 있지만, 블록 백 개를 내려놓은 뒤에는 훨씬 더 많은 수고가 듭니다. Mini World와 사이클롭스의 섬도 모두 이 방식으로 지어졌습니다. 먼저 평면 도면, 그다음 세우기, 그다음 걸어 보기 순서입니다.
원을 블록 형태가 아니라 평면 스프라이트로 원한다면, 예를 들어 동전, 고리 카운터, 인터페이스 배지 등에는 에이전트 스프라이트 포지가 같은 반지름을 받아 픽셀 버전을 블록 버전과 일관되게 유지하므로, 둘이 어긋나지 않습니다.
01
지름과 윤곽 스타일을 고르고 좌표 목록을 복사하세요. 숫자는 보관하세요. 모든 단면에 같은 차트를 쓰고 싶어질 것입니다.
02
3D 게임 빌더에서 새 월드를 열고, 바닥 격자를 지름이나 그 배수로 설정하여 바닥 면적이 반 블록 어긋남 없이 맞춰지게 하세요.
03
윤곽 칸을 먼저 놓고, 그다음 안쪽을 채우세요. 윤곽을 먼저 하면 잘못된 좌표가 즉시 드러나고, 채우기를 먼저 하면 고리를 닫을 때까지 그것이 숨겨집니다.
04
도형을 세우세요. 벽이나 탑에는 윤곽을 곧게 위로 밀어 올리고, 돔이나 구에는 층별 단면 지름으로 바꾸어 넣으세요.
05
두 번째 재료를 더하기 전에 지면에서 실루엣을 확인하세요. 바로 위에서 보면 어떤 원이든 올바르게 보입니다.
06
플레이 모드에 들어가 둘레를 걸어 보세요. 고리가 두께 1블록이고 뒤에 아무것도 없다면, 대각선 계단에서 충돌에 걸립니다.
그것이 속한 세계로 걸어 들어가기
스프라이트는 설 곳이 없는 캐릭터입니다. 마지막 단계는 다른 어디서도 제공하지 않는 것입니다. 방금 만든 시트를 누군가 걸어 다닐 수 있는 세계, 즉 작은 섬, 행성, 비 내리는 거리 모퉁이에 넣어 보세요. 이 사이트의 모든 세계는 하나의 글로 된 설명으로 만들어졌고, 플레이할 수 있는 페이지로 공개되었습니다.
FAQ
복셀 원 생성기는 무료로 사용할 수 있나요? +
예. 로그인도, 내보내기 제한도, 좌표 목록의 워터마크도 없습니다. 출력은 일반 텍스트이므로 계정 뒤에 잠긴 요소는 아무것도 없습니다.
정확한 1:1 블록 차트를 얻을 수 있나요? +
예. 모든 지름에서 격자 한 칸은 블록 하나입니다. 15블록 원은 177칸을 돌려주고, 177블록을 놓습니다. 차트와 건설 사이에 확대/축소 과정이나 반올림 단계가 없습니다.
구와 돔도 생성할 수 있나요, 아니면 평면 원만 가능한가요? +
둘 다 같은 지름에서 생성됩니다. 구는 모든 층에서 반지름 판정을 실행하며 sqrt(r*r - h*h)를 단면 반지름으로 씁니다. 돔은 선택한 스프링 라인에서 그 구를 잘라낸 것입니다.
홀수 지름과 짝수 지름 중 무엇을 써야 하나요? +
약 16블록 미만이면 홀수를 쓰세요. 홀수 지름은 중심에 블록을 놓으므로 도형이 가운데 행과 열을 기준으로 대칭입니다. 짝수 지름은 중심이 모서리에 놓여 네 방위점에서 눈에 띄게 좁아집니다.
복셀이 정확히 무엇인가요? +
복셀은 3D 격자의 한 칸, 즉 고정된 크기의 정육면체입니다. 이 차트에서는 복셀 하나가 블록 하나이므로, 칸 수가 재료 수를 겸합니다.
마인크래프트식 건설에 차트를 사용할 수 있나요? +
예. 각 칸을 블록 하나로 취급하세요. 차트는 바닥 면적, 벽, 탑 바닥, 분수 테두리, 돔 층으로 활용할 수 있으며, 칸 수는 재료 목록으로 그대로 이어집니다.
3D 게임 빌더로 돌아가기
완성된 31개의 3D 세계, 게임, 장면이 한 페이지에 모여 있으며, 그 모두를 플레이할 수 있습니다.