Minecraft Wiki

除另有声明,转载时均必须注明出处若簡繁轉換出錯,請以遊戲內為準请勇于扩充与修正内容有兴趣逛逛我们的微博沟通交流,欢迎到社区专页需要协助,请在告示板留言

了解更多

Minecraft Wiki
Advertisement
該頁面的內容不代表Mojang StudiosMinecraft Wiki的官方意見。
輔助程式與編輯器
Binvox
作者

Patrick Min

平台

WindowsLinuxmacOS

編寫於

C++

最新版本

binvox 1.17, viewvox 0.42 - 2012年11月11日

發佈日期

September, 2010

大小

0.8 MB

版權

N/A

原始碼

舊版本, 0.4

相容

N/A

連結

網站 社群

Binvox 是一個命令列程式,將3D檔案轉換到 .binvox 構築計劃檔案或 .schematic 檔案供 MCEedit 使用。一個 .binvox 輸出檔案可以被互動式「viewvox」 OpenGL 軟件查看,都是由相同的作者提供。這些軟件的主頁在 Patrick Min 的網站上

處理轉換3D多邊形到方塊的軟件叫做「voxelization」。Binvox voxelizes、viewvox 展示結果。 Voxelization 不是一個完美的處理軟件,因為這個軟件需要讓你作出太多的決定了。比其他的輸出決定更多,最重要的決定是圍繞著如何填充像素模型,讓模型看起來被「填滿」。因此,有許多途徑控制 Binvox 的結果。

支持的系統[]

Binvox 和 viewvox 在 Windows、Mac、和 Linux 系統上執行。viewvox 預覽軟件使用 OpenGL 和 GLUT。

下載[]

Windows:vox_package.zip。這個發行版讓你一次下載所有所需的東西,包括 GLUT。它也包括2個3D示例檔案和.BAT 檔案來繪製它們。查看發行版裏面的 README.txt 取得更多資訊。

個人軟件可在這裏下載: binvoxviewvox.

另一個則是 Auto-Binvox.zip,一個批處理檔案,可以簡單處理 voxelising 的任何檔案,並且附帶 Binvox 和 Viewbox(其他版本可能不相容 Windows 7)。這個批處理檔案可以讓你把資料夾裡的一個3D模型進行處理,然後將其放在 Binvox 和 Viewvox 中進行轉換。這樣做的缺點是你不能很容易的控制選項、Schematic 的最大維度和方塊種類。

GLUT 庫必須分別下載,以便讓 Viewvox 順利執行。

Mac(Snow Leopard,OS X 10.6.8): binvoxviewvox

Linux(Fedora 13,64位元): binvox 64位元 32位元、viewvox 64位元32位元

檔案格式[]

支持下列3D檔案格式: Wavefront OBJ、VRML 2.0、UG、OFF、DXF、XGL、POV、BREP、PLY、JOT。只有 polygons 支持這些的大多數格式(VRML 2.0 則完全支持)。實際上,Wavefront OBJ 可能是支持最多的格式了。

模型可以在網頁建立,例如在 Turbosquid 網站(提示:按成本排序)。為了將 3DS 轉換的 OBJ 格式,可用 MeshLab 之類的軟件。

輸出預設為 .binvox viewvox 軟件可預覽檔案格式。簡單輸入 「viewvox <your_output_file>.binvox」 來生成預覽。一個被生成的 .schmatic 檔案可使用 MCEdit 匯入到世界中。

畫廊[]

photo gallery of creations 由作者進行維護。如果你想製作畫廊,向他發送你自己手動製作的照片(地址),他可能會將它們加入到畫廊中。

Binvox 指令[]

Binvox 有以下選項(輸入不帶參數的 「binvox」 將會顯示這些):

Usage: binvox [-d <voxel dimension>] [-t <voxel file type>] [-c] [-v] <model filespec>
  -d: specify voxel grid size (default 256, max 1024)
  -t: specify voxel file type (default binvox, also supported: hips, mira, vtk, raw, schematic)
  -c: z-buffer based carving method only
  -dc: dilated carving, stop carving 1 voxel before intersection
  -v: z-buffer based parity voting method only (default is both -c and -v)
  -e: exact voxelization (any voxel with part of a triangle gets set)(does not use graphics card)
Additional parameters:
  -bb <minx> <miny> <minz> <maxx> <maxy> <maxz>: force a different input model bounding box
  -ri: remove internal voxels
  -cb: center model inside unit cube
  -rotx: rotate object 90 degrees ccw around x-axis before voxelizing
  -rotz: rotate object 90 degrees ccw around z-axis before voxelizing
    both -rotx and -rotz can be used multiple times
  -aw: _also_ render the model in wireframe (helps with thin parts)
  -fit: only write the voxels in the voxel bounding box
  -bi <id>: when converting to schematic, use block ID <id>
  -down: downsample voxels by a factor of 2 in each dimension (can be used multiple times)
  -dmin <nr>: when downsampling, destination voxel is on if >= <nr> source voxels are (default 4)
Supported 3D model file formats:
  VRML V2.0: almost fully supported
  UG, OBJ, OFF, DXF, XGL, POV, BREP, PLY, JOT: only polygons supported
Example:
binvox -c -d 200 -t mira plane.wrl

Viewvox 控制[]

提示:為了查看模型匯入到地圖後的結果,輸入 「pannntsy」(改變到遠景視圖,摺疊可選顏色,展示底部網格,摺疊透明網格,顯示單片,顯示模型的最上方(設定視角從 Y 軸垂直向下看))當 Viewvox 啟動時。「j」 和 「k」 會移動到模型在地圖上的水平方向,並且下面的方塊會顯示成半透明的灰白色。

Viewvox 控制:

滑鼠

     左键 = 旋转
     中键 = 摇动镜头
     右键 = 缩放

按鍵

     r           = 重设视图
     方向键 = 沿 x(←、→)或 y(↑、↓)方向移动1像素
     =、-    = 沿 z 移动一个像素(缩放到正面的视图)
     q         = 退出
     a           = 隐藏可选颜色
     p           = 隐藏正面和远景投影
     X、Y、Z     = 设置视角到 X、Y、或 Z 轴
     1           = 隐藏 X、Y、Z 坐标
     s           = 显示单片
     n           = 显示旁边的上/下/上和下片
     t           = 隐藏旁边的透明
     j           = 向下移动一片
     k           = 向上移动一片
     g           = 隐藏显示片层的网格

教學[]

Binvox teapot

使用 Binvox 製作的第一個模型

這裏是一個 Mac 核心教學

這裏是原始教學帖子。該教學被複製並且在這裏更新,因此使用者可以隨時改善它。

取得軟件和一些模型。為了讓你做起來簡單,本教學將會使用最新的 Binvox 和 Viewvox 軟件,GLUT DLL、2個模型和用於顯示模型的2個批處理檔案。在這裏取得,並將其解壓。如果你不想查看這篇教學來快速開始,請閱讀 README.TXT。Mondeus 的影片 展示了如何使用軟件,也許會對你有幫助——主要的,雙擊一個批處理檔案然後類似的模型就會被轉換並顯示。

如果你想從難的途徑開始,保證獲得了最新版本,按照下面的步驟操作。你應該了解 Patrick 的 Minecraft 頁面。首先,下載 binvoxviewvox 到相同目錄中。你可以放置它們到桌面中。你也需要下載 GLUT ,然後將 DLL 放到與 binvox 相同位置的 zip 檔案中,或者你如果知道怎麼做,你可以將它們放到 Windows 系統 DLL 資料夾(例如 Windows 7 就是 C:\Windows\SysWOW64)。

第二步,尋找一個要轉換的模型,為了簡單一些,將其放到 Binvox 資料夾。之前的帖子已經有了許多的免費模型,也還有更多,例如:TurboSquid 的3dvia 的Princeton 的Nasa 的。你可以使用下面的格式的模型:VRML、OBJ、OFF、DXF、PLY 和 STL。

如果你擁有其他格式的模型,你可以使用 [1] Milkshape], Blender,或其他模型轉換器,將其轉換到 Binvox 可讀取的格式。

無論如何,讓我們使用一個很好的示例模型—— Aim*SHAPE(一個手模型)來開始吧。你不需要取得高解像度模型,一個低解像度網格也很好——之後,它就變成方塊了。因此選擇下面那列的左邊第三行第一個。一旦你下載後,解壓到 Binvox 和 Viewvox 的位置(為了簡單)。你需要唯一的檔案是 gipshand2-3k.obj,實際上這個檔案是儲存著模型資料的一個文字文件。

現在,點擊開始選單按鈕(畫面左下角),然後在下面的搜尋框中輸入:

cmd

將會出現一個黑色文字窗口。轉到你放置 Binvox 和模型的地方。例如桌面,那麼就是:

cd C:\Users\Eric\Desktop

為了執行 Binvox,你可以輸入:

binvox gipshand2-3k.obj

幾分鐘之後,你將會在畫面左上角看見一組手動繪製。這是 Binvox 正在進行建模並尋找像素。這將會建立一個叫做 gipshand2-3k.binvox 的檔案,這個檔案會在窗口中提及,並像這些顯示:

 Voxels::print_filled_area
   area filled: 185 x 92 x 243
   integer bounding box: [6,6,7] - [190,97,249]
 
 writing voxel file...
 VoxelFile::write_file(gipshand2-3k.binvox)
 Wrote 426642 set voxels out of 16777216, in 148528 bytes

第一行展示了模型的大小;第三個值是模型的高,即這個模型高243方塊。這對 Minecraft 世界來說太高了,但是我們仍將會在一分鐘之內到達這個尺寸。

如果沒有得到任何東西,確保這些東西都在同一目錄!也就是說,「cd」 是 「改變目錄」 ——仔細查看教學是如何使用它的。如果你不懂得 DOS 指令,可以簡單的將 binvox.exe 軟件(及依賴檔案)和你的模型檔案放在同意目錄,相同位置。這是人們在執行 Binvox 時遇到的第一個問題——Binvox 不知道你的檔案在何處。

查看輸出檔案,輸入:

viewvox gipshand2-3k.binvox

提示:你可以在 CMD 窗口使用↑鍵來顯示你剛才輸入過的指令(你可以多次按下它),使用←鍵、→鍵和 Delete 鍵來改變指令的內容。使用這種方法可以避免再次輸入 「gipshand2-3k.obj」 的麻煩,你可以點擊↑鍵,改變「obj」為「binvox」,「bin」為「view」。

你應該獲得像這樣的東西(CMD 窗口應該向上捲動了一點點,為了展示輸入的指令,本教學切斷了命令列):

Viewvox

Viewvox 對 Minecraft 玩家來說顯示了一些有用的資訊,例如:

 Voxels::remove_internal_voxels
   removing 383513 voxels, which leaves 43129 voxels[/code]

這告訴你建造這個模型所需的方塊,為了關閉 viewvox 窗口,點擊 CMD 窗口並按下 Ctrl+C。不要問我為什麼。當你按下後,你應該得到一個「>」提示。

然而,預設的,Binvox 將模型製作成方塊為256方塊高(或長、或深,反正就是最大的那個)。我們願意將其指定為64.現在,你可以鍵入:


binvox gipshand2-3k.obj -d 64

"-d 64" 指定你想掃描的高度。技術性備註:在 Windows 機器上,GLUT 有一個錯誤,那就是窗口不能小於120像素(Linux 不存在這個問題)。我們要在內部加入一些代碼來增大解像度,然後降低取樣,因此它的運作就變成了一樣的。手動解決這個問題的途徑是:

binvox gipshand2-3k.obj -down -down

每個 「-down」 都會將解像度二等分。預設從256開始,除2,再除2,就是4,這樣就會得到64。解決這個問題的另一個途徑就是使用「-e」 選項,which does an "exact" (any voxel overlapped gets tagged) voxelization:

binvox gipshand2-3k.obj -d 64 -e

精確像素化可避免在使用 GPU 繪製而造成的任何的精度問題。這樣做有一個缺點,那就是不能進行進一步的控制。所有像素都被任何標記的多邊形接觸,這有時候看起來很不好。有許多選項來控制密度,邊緣強調度等。

當你使用的時候,會輸出一個新的 Binvox 模型。在這個新模型上使用 Viewvox,你會注意到它被稱作 gipshand2-3k_1.binvox。因此輸入:

viewvox gipshand2-3k_1.binvox

你可以使用滑鼠控制這個模型的視角。左鍵是旋轉、中鍵是搖動鏡頭、右鍵是縮放(用了一個時髦的方法)。這裏是一個經過旋轉後的模型視角:

Viewvox1

看起來挺不錯。Viewvox 說這個模型有2471個方塊,每5秒繪製1個方塊,用時3.5小時。但是,應該如何建造它呢?很簡單(除了其他所有的繁瑣步驟):

第一步,按下S。這將會隱藏整個模型並顯示垂直片面。這仍然很難數得到有多少個方塊,因此按下A。這將會導致顯示縱橫交錯排列的顏色。你想看上或者看下?按下N來隱藏這些鄰近的,然後按下T來讓它們變成半透明。按下1隱藏顯示的座標。注意:CMD 窗口在啟動時就列出了這些選項。

這裏是經過上述步驟後的視圖,模型中間的一個垂直片面視圖。

Viewvox2

專業技巧:在啟動 Viewvox 時你總可以鍵入「antspy」(想想 「ant spy」 或 「pantsy」,如果這對你有用)。這將會帶你到一個 俯視圖,展示了1層,上面和下面都變成了透明的。通常要按下N2次以上,來只顯示下面鄰近的層。

當然,你可能想從模型的下方開始建造。按下J顯示下片,上面就是K。你可以在 CMD 窗口中看見你目前處於的片號碼(從0開始)。

這是最基本的,並且當所有東西都很好的時候才做。首先,把一個「不漏水」的模型選出來,如果你填滿它,不會有水漏出來,並且沒有吊著的邊緣。多數在互聯網上找到的模型並不會像這樣,他們通常粘合每個面來獲得一個效果。因此,你將會需要嘗試命令列的不同選項。這裏是 Binvox 最重要的幾個選項。

-c - 如果你的模型是漏水的,這個選項你必須使用。它實際上繪製得更快,但會丟失角落和裂縫。

-dc - 在像素化時可以忽略的小功能。這個選項試圖模糊模型。

-aw - 繪製模型的所有角落。這是另一個非常薄的技術模糊特性。

-dmin 1 - 當使用 「-down」,使用更小的像素填充模型,如果想填充任何的更大模型的話。 另一個技術模糊特性。

-rotx - 沿著 X 軸旋轉模型90°。在 Viewvox 中,X 軸是紅色的,Y 軸是綠色的,Z 軸是藍色的(RGB)。你可以多次重複這個操作。

-rotz - 沿著 Y 軸旋轉模型90°,許多模型一開始會指向「上」,而不是 Binvox 要求的。只需要嘗試 -rotx 和 -rotz 指令還獲得正確的朝向。

-cb - 這並不是關鍵,但會經常使用(除了上面的教學,這樣只是為了簡單)。這個模型通常會被移動,以便顯示左下角的組成的立方體。這個選項會把模型放在中間,讓其更容易讀取座標軸。用不用這個選項由你決定。

-t schematic - 把 .binvox 檔案輸出用 .schematic 檔案輸出代替。這種類型的檔案可以使用i MCEdit 或其他工具匯入到世界中。

只鍵入「binvox」,你會看見更多的命令列選項。在煩人的選項之後,像素化通常都是98%正確的 - 對模型進行小幅改動。

這裏是經過轉換後的一個騎士模型:

binvox chevalier.obj -d 536 -aw -c -dc -cb -dmin 1 -down -down -down

Binvox chevi

祝你好運!如果有任何問題,請將其發佈到the 社群上。

如果你想把一個模型正確匯入到 Minecraft 世界中,請參閱 這裏

新的 Binvox 和 Viewvox 版本和選項會加入得相當頻繁,因此要經常檢查更新。你總是可以在鍵入「binvox」(不帶參數)後在 CMD 窗口看到 Binvox 支持的選項和版本資訊。

語言

Advertisement