免費體素圓形產生器 · 2D 圖表與 3D 預覽

體素圓形產生器 — 用方塊做出圓形、球體與圓頂

自己做一個體素圓形產生器

輸入任意直徑,產生最接近圓的體素/像素圓形,再用可旋轉的 3D 方塊球體、圓頂或拱形預覽。免費,免登入。

✦遊戲
產生直徑為 31 個方塊

體素圓形產生器接收以方塊為單位的直徑,回傳在方格上構成圓形的確切格子。輸入 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 格。你可以把清單貼進 bug 回報、在第二個世界重複使用,或下個月再回來看,座標都會一致。

邊界值沒有模糊地帶

常見的疑慮是格子中心距離剛好等於半徑,該用 <= 保留還是用嚴格的 < 剔除。實際算過就知道這永遠不會發生。直徑為奇數時偏移量是整數,r*r 的小數部分為 .25,整數和不可能等於它。直徑為偶數時兩個偏移量都是半數,每個平方的小數部分為 .25,相加後小數部分為 .5,而 r*r 是整數。

在任何直徑下兩邊都不可能相等,這表示 <= 和 < 會回傳相同圖表,一整類差一格的 bug 回報就此消失。真正的邊界案例在別處:D=3 會回傳 3 乘 3 網格的全部九格,包含四個角,因為角落中心距中央約 1.414,而半徑是 1.5。D=3 就是一個正方形。第一個會切掉角落的直徑是 D=5。

圓形 → 球體 → 圓頂 → 拱形

2D 圖表是赤道切面,也是底面足跡。要得到球體,就在三維空間跑同一個測試:每一層的切面半徑是 (r*r - h*h) 的平方根,其中 h 是球心到該層中央的距離。直徑 15 的球體有 15 層。中間層是 177 格的圓盤。頂層和底層各是 21 格,也就是 5 乘 5 的足跡,因為層中心落在球體頂點下方半個方塊處。

圓頂就是把這疊東西用水平面切開。選好起拱線,也就是牆面不再垂直的那一層,只保留它以上的層。把直徑 15 的球體從赤道切開,會得到高 8 層的圓頂。只保留最上面 5 層,會得到一個淺圓帽,底環是 13 格的圓,所以這個圓帽是坐在 13 格寬的牆上,而不是 15 格寬。

拱形是一塊板,不是一疊。取環狀外框而不是實心圓盤,沿單一軸向直接擠出你要的厚度,再刪掉起拱線以下的所有東西。寬 15、厚 3 個方塊、底部四列環去掉的拱形,高 11 個方塊。圖表給你寬度和環,厚度與起拱高度是你另外設定的輸入。

這就是它和平面圖表的差別。像素圓形圖表只給足跡,然後就沒了。它沒辦法告訴你輪廓在頂端是收成單一方塊還是攤平成平台,也看不出同直徑的圓頂和拱形需要不同數量的材料。旋轉 3D 預覽,就是在放下一塊方塊之前抓出這些問題的方法。

  • 圓形在 D 乘 D 網格上的一個圓盤,格子中心落在 r 內。它既是足跡,也是其他所有形狀的赤道。
  • 球體同一個測試每層跑一次,切面半徑為 sqrt(r*r - h*h)。高 D 層,赤道處寬 D 個方塊。
  • 圓頂在選定的起拱線截斷的球體。半顆球是常見情況;淺圓帽需要更寬的底環。
  • 拱形輪廓環沿單一軸向擠出,再切掉起拱線以下。厚度和高度是各自獨立的輸入。

方塊數與材料

實心圓盤的成本正好是它內部的格子數。這張表是產生器的輸出,不是估算:一個網格格子永遠等於一個方塊。

把數量當材料清單讀

D=15 時實心圓盤是 177 個方塊,也就是 Minecraft 風格背包裡的兩疊 64 加 49 個。D=16 剛好落在三疊,這是搬材料時偶數直徑方便的原因之一。如果你只需要那個環,D=15 會降到 40 格:同樣的輪廓,實心圓盤要多花超過四倍的材料。

材料選擇對數字的影響比直徑更大。實心圓盤從地面看是平的,所以多數建築用一種方塊填內部、另一種做那 40 格的外框,這表示看得見的成本是外框,內部則是拿手邊多的湊。厚 3 個方塊的一層會讓外框數量變三倍。中空的塔基只用外框、內部留空,而那個內部就是你做實心時要付的代價。

直徑(方塊)半徑實心方塊數換算為 64 一疊
31.59-
52.521-
73.537-
8452-
94.5691 疊 + 5
115.5971 疊 + 33
157.51772 疊 + 49
1681923 疊

三種外框樣式

樣式控制筆畫多粗、落在格線的哪裡。它不改變填充數量。放置任何東西之前先選好樣式,因為事後切換會移動軸上的每一格。

偶數厚度

搭配偶數直徑:4、8、16、32。圖形中心落在四個方塊交會的角上,所以外框對兩軸都對稱,但筆畫在上、下、左、右都是偶數個方塊寬。偶數圖表縮放乾淨——直徑加倍、比例不變——所以大型建築往往落在這些直徑上。

奇數厚度

搭配奇數直徑:3、5、9、15、31。中心落在一個方塊上,所以有單一中央行和單一中央列,圖形對它們對稱。奇數圖表是在小尺寸下還讀得出圓形的那種,因為中央方塊給眼睛一個固定的中心去判斷曲線。

平邊

平邊變體保留奇偶性,但把四個基本方位上各一個極端格子換成一段平直邊。D=9 時,預設奇數圖表在最左邊放一個方塊。平邊變體把最左那一列做成 3 個方塊高,輪廓讀起來就像圓角方形。當圓形必須接上直牆、門框或軌道線時就用它,平接縫對得上,單點對不上。

1

01

橫向約 12 格以下時,樣式比直徑更重要。D=3 是正方形,D=5 是切掉角的方形,D=7 是還讀得出圓形的最小圖表。

2

02

在那個尺度下的井、塔基、噴泉或樹穴,用 9 或 11 的奇數直徑配上奇數厚度樣式。

3

03

平邊變體留給任何必須貼齊直邊的東西,放方塊前先在 3D 預覽裡確認那條邊。

在體素世界裡把它蓋出來

圖表只有立起來才有用。3D game builder 會把座標清單當成放置樣式,所以產生預覽的那組數字,會在世界裡變成你能走進去的方塊。你不必在編輯器裡手工重推曲線,也不用目測對角線。

預覽就是用來抓出平面圖表藏起來的東西:圓環上的一個方塊缺口、圓頂切片在頂端附近翻轉奇偶而留下平台、玩家爬不上去的對角階梯。這些在螢幕上修只要幾秒,等一百個方塊都放下去了才發現要貴得多。Mini World 和 The Cyclops' Island 都是這樣蓋的——先平面圖,再立起來,然後走一遍。

如果你要的是平面精靈而不是方塊造型——硬幣、環形計數器、UI 徽章——Agent Sprite Forge 吃同一個半徑,並讓像素版本和方塊版本保持一致,兩者不會走鐘。

1

01

選好直徑和外框樣式,然後複製座標清單。數字留著;每一層切片你都會想用同一張圖。

2

02

在 3D game builder 開一個新世界,把地面網格設成你的直徑或它的倍數,這樣足跡會對齊,不會有半格漂移。

3

03

先放外框格子,再往內填。先外框能立刻暴露錯的座標;先填則會等到收環才發現。

4

04

把造型立起來。外框垂直往上擠出就是牆或塔,或改用逐層切面半徑來做圓頂或球體。

5

05

加上第二種材料之前,先從地面高度檢查輪廓。從正上方看,每個圓形都是對的。

6

06

進入遊玩模式,繞著周邊走一圈。如果環只有一個方塊厚、後面沒有支撐,碰撞會讓你在對角階梯上卡住。

疊在體素格線上的方塊圓形——就是產生器用的同一套格子邏輯。
把圓形立進一個可以玩的方塊世界。

走進它所屬的世界

精靈是沒有地方站的角色。最後這一步是別人沒提供的:把你剛做好的精靈表放進一個有人能走動的世界——一座小島、一顆行星、一個下雨的街角。這個網站上的每個世界都是由一段文字描述做出來,並發布成一個可以直接玩的頁面。

常見問題

體素圓形產生器可以免費使用嗎?+

可以。免登入、匯出無上限,座標清單也沒有浮水印。輸出是純文字,所以沒有任何部分被帳號擋住。

我拿到的是精確 1:1 的方塊圖表嗎?+

是。每個直徑下一個網格格子就是一個方塊:15 塊的圓回傳 177 格,你就放 177 個方塊。圖表和建築之間沒有縮放處理,也沒有進位步驟。

它能產生球體和圓頂,還是只有平面圓形?+

兩者都可以,用同一個直徑。球體對每一層跑半徑測試,切面半徑為 sqrt(r*r - h*h),而圓頂就是那顆球在你選的起拱線被截斷。

我該用奇數還是偶數直徑?+

約 16 塊以下一律用奇數。奇數直徑會在正中央放一個方塊,圖形對中央行與中央列對稱。偶數直徑把中心放在角上,在四個基本方位會有明顯的內縮。

體素到底是什麼?+

體素是三維網格裡的一個格子——固定大小的立方體。在這些圖表裡一個體素就是一個方塊,所以格子數可以直接當材料數用。

這張圖表可以用在 Minecraft 風格的建築嗎?+

可以。把每個格子當成一個方塊。圖表可以當足跡、牆、塔基、噴泉邊緣或圓頂的一層,格子數也能直接當材料清單沿用。

回到 3D Game Builder

全部 31 個完成的 3D 世界、遊戲與場景都在同一頁——每一個都能玩。

平台:Neta Studio頁面:Voxel Circle Generator接著讀:/explore/tool/ai-voxel-game-maker · /use-cases/en/voxel-game-engines · /use-cases/en/isometric-pixel-art
×