Preview3D
入手

.bgcode ファイルとは?Prusa のバイナリ G-code を解説

.bgcode ファイルは、PrusaSlicer がバージョン 2.7 からバイナリ形式で保存する G-code で、Prusa によると平均で約 70% 小さくなります。ただしテキストエディタでは読めず、Prusa のプリンター以外ではほとんど対応していません。ここでは、中に何が入っているか、何で開けるか、普通の .gcode に戻す方法を説明します。

概要

拡張子
.bgcode
種類
ツールパス(プリンターへの命令)
開発元
Prusa Research
登場
2023
規格
正式な規格ではない
仕様
libbgcode
アプリなしの macOS
知らない:プレビューもサムネイルもなし

情報の確認日:2026年11月2日

中身は同じ命令、包み方が違うだけ

.bgcode には、テキストの G-code ファイルとまったく同じプリンターへの命令が入っています。ノズルをどこへ動かすか、どれだけ押し出すか、何度に保つか。違うのは包み方だけです。1 本の長いテキストではなく、ファイルはブロックに分かれていて、各ブロックは圧縮でき、それぞれ独自のチェックサムを持てます。

Prusa は 2023 年に PrusaSlicer 2.7 とともにこの形式を導入し、仕様を GitHub の libbgcode リポジトリで公開しました。つまりオープンではありますが、STEP や 3MF のような標準規格ではなく、Prusa Research のものです。読み書きするライブラリのライセンスは AGPL-3.0 です。

この形式が作られた理由は 3 つあります。ファイルが小さければ、USB メモリへのコピーもネットワーク経由の転送も速くなります。印刷情報とプレビューが専用のブロックに入っているので、プリンターはツールパス全体を読まなくても必要な情報を早く見つけられます。そして、途中で壊れたファイルはチェックサムで見つかります。

中身:GCDE ヘッダーと決まった順序のブロック

すべての .bgcode は 4 文字の GCDE で始まります。続いて形式のバージョン(今のところバージョン 1 しかありません)と、チェックサムの種類(実際には CRC32)が来ます。その後にブロックが、常に同じ順序で並びます。

  • ファイルのメタデータ:ファイルを作ったソフト
  • プリンターのメタデータ:どのプリンターとノズル向けの印刷か
  • サムネイル:モデルの画像(1 ブロックに 1 枚)
  • 印刷のメタデータ:予想印刷時間、フィラメントの使用量
  • スライサーのメタデータ:PrusaSlicer がスライスに使った設定のすべて
  • G-code ブロック:ツールパスそのもの

メタデータは単純な「キー = 値」の組です。PrusaSlicer はツールパスを、メモリの少ない機器向けに作られたアルゴリズム Heatshrink で圧縮し、さらに MeatPack でエンコードします。MeatPack は、G-code で最もよく使われる 15 文字を 8 ビットではなく 4 ビットで書く方式です。もとは、プリンターとの遅いシリアル接続を速くするための OctoPrint プラグインとして生まれました。

どれくらい小さくなるか

Prusa によると、同社のテストではバイナリ G-code はテキストより平均で約 70% 小さくなりました。libbgcode 自体のテストデータでは、小さな立方体が 641,092 バイトから 149,258 バイトに縮みます。4 分の 1 弱です。どれだけ小さくなるかは、モデルと印刷設定によって変わります。

読めるもの、読めないもの

ソフトウェアまたはプリンター.bgcode
Buddy ファームウェア 5.1.0 以降の Prusa プリンター(MINI、MK4 と MK4S、MK3.5、MK3.9、XL、CORE One)対応
PrusaSlicer とその G-code ビューア対応、変換も可能
PrusaLink と Prusa Connect対応
Repetier-Serverバージョン 1.4.16 から
OctoPrintBGCode プラグインがある場合のみ
Klipper非対応
OrcaSlicer、Bambu Studio非対応
Original Prusa MK3SPrusaSlicer が有効にしない
macOS(Finder、クイックルック)非対応
Preview3D(Mac、iPad、iPhone、Vision Pro)対応

プリンターにファイルが表示されない理由

よくある原因は古いファームウェアです。Buddy ファームウェアが 5.1.0 より古い Prusa プリンターは .bgcode ファイルを一覧にまったく表示しないので、USB メモリが空に見えます。ファームウェアを更新するか、ファイルをテキストの G-code に変換してください。

もう 1 つの原因は、プリンターがこの形式をそもそも知らないことです。Klipper や他メーカーのプリンターは対応しておらず、PrusaSlicer もそうしたプリンター向けには .bgcode で保存しません。Prusa のプリンターを持っている人から .bgcode が送られてきたら、変換してください。

.bgcode から .gcode へ、またその逆

PrusaSlicer では、変換は File → Convert にあります。

  • Convert binary G-code to ASCII は .bgcode をテキストの .gcode に変換します
  • Convert ASCII G-code to binary はその逆です

コマンドラインがよければ、libbgcode には bgcode ツールが付いています。bgcode model.bgcode を実行すると、同じ場所にテキストの model.gcode が書き出されます。

PrusaSlicer に .bgcode をまったく保存させたくない場合は、Preferences(Mac では PrusaSlicer メニュー、⌘ ,)を開き、Other タブで Use binary G-code when the printer supports it をオフにします。このスイッチは 2.7.1 からあります。バージョン 2.7.0 は、対応するすべてのプリンターで既定で .bgcode を保存し、その結果 OctoPrint へのアップロードが動かなくなりました。

Mac、iPad、iPhone で .bgcode の中を見る方法

macOS は .bgcode をまったく知りません。ファイルの種類が登録されておらず、Finder には白紙のアイコンが表示され、スペースキー(クイックルック)を押しても何も表示されません。Windows なら PowerToys で対応できますが、Mac では何かを追加する必要があります。

  • PrusaSlicer は G-code ビューアで開き、ツールパスをレイヤーごとに表示します。無料ですが、1 回のプレビューのためにスライサー全体を起動することになります。
  • ThumbHost3mf は、.bgcode を含めて Finder のサムネイルを追加します。ファイルの中身は表示しません。
  • Preview3D(私のアプリ)は、.bgcode をウィンドウ、クイックルック、Finder のサムネイルで開きます。ツールパスを種類(外周、インフィル、ブリッジ、サポート)ごとに色分けして描き、レイヤースライダーを備え、印刷時間、フィラメントの長さ、重量、レイヤー高さ、材料をメタデータから読み取ります。iPad、iPhone、Apple Vision Pro でも同じように動作します。
PrusaSlicer の .bgcode ファイルを Preview3D で開いたところ:種類別に色分けしたツールパス、レイヤースライダー、印刷情報
PrusaSlicer の .bgcode ファイルを Preview3D で開いたところ:種類別に色分けしたツールパス、レイヤースライダー、印刷情報

サムネイル:プリンターには QOI、コンピューターには PNG

PrusaSlicer のファイルには通常、サムネイルが複数入っています。プリンターのディスプレイ用は QOI(Quite OK Image)です。プリンターにとって PNG のデコードは重すぎたため、Prusa はファームウェア 5.1.0 で QOI を採用しました。コンピューター用には、PrusaSlicer がもう 1 枚の画像を PNG で追加します。

一部のツールで .bgcode のプレビューが表示されないのはこのためです。QOI を読めないのです。Preview3D は Finder 用に PNG を使います。

よくある質問

.bgcode は .gcode より優れていますか?

対応する Prusa のプリンターなら、はい。ファイルが小さく、破損も検出されます。それ以外では、いいえ。変換しないと読めず、ほとんどのソフトウェアはこの形式を知りません。

PrusaSlicer 以外のスライサーでも .bgcode を作れますか?

私の知る限り、広く使われているスライサーで .bgcode を書き出せるのは PrusaSlicer だけです。OrcaSlicer と Bambu Studio は対応していません。ほかのスライサーで作ったテキストの G-code は、PrusaSlicer か bgcode ツールで変換できます。

OctoPrint は .bgcode に対応していますか?

単体では対応していません。BGCode プラグインが、アップロードされたファイルをテキストの G-code に変換します。OctoPrint のメンテナーは、.bgcode はプリンター上に保存しておくためのもので、プリンターへ送るためのものではないとして、ネイティブ対応を見送りました。

.bgcode はテキストエディタで開けますか?

いいえ、バイナリです。上で説明したように、まず .gcode に変換してください。

.bgcode には色や材料の情報が入っていますか?

G-code と同じ形で入っています。フィラメントの交換は命令の中に、材料の種類と使用量はメタデータにあります。3D モデルやテクスチャは入っておらず、あるのはノズルの経路だけです。

関連する形式

出典

Prusa のプリンター以外で .bgcode を印刷していますか? たとえば Repetier-Server や、プラグインを入れた OctoPrint で。何が動くかを apps@xfanta.com まで教えてください。表に追加します。

Preview3D で開く

STEP、3MF、STL、G-code、BGCODE などを Mac、iPad、iPhone、Vision Pro で。一度の購入で、アカウントもネットワークも不要です。

App Store の Preview3D