Community影像github.com

Pixelbolt 像素藝術

製作或修復像素藝術——精靈、精靈表、瓦片與瓦片集、圖示、遊戲特效(如火焰、煙霧、水或火花)以及短幀動畫——並儲存為 PNG、GIF、APNG 或影片幀。適用於當有人要求繪製、動畫、修復或匯出像素藝術或遊戲精靈時。Pixelbolt JSON 配方,本地執行,無需帳戶,無需 API 金鑰。

Pixelbolt 像素藝術 是什麼?

Pixelbolt 像素藝術技能是一個強大的 AI 代理工具,用於建立和操作像素藝術素材,特別是針對遊戲開發。它支援在精靈、精靈表、瓦片、圖示和遊戲特效(如火焰、煙霧、水和火花)上工作,以及短幀動畫。此技能以 Pixelbolt 專案為基礎,該專案使用 JSON 配方來定義藝術品,並提供完整的 CLI 和 MCP 工具集,以便在各種平台上進行無縫整合。 此技能與 Claude Code、Cursor 和 Codex 等 AI 代理相容,提供 `pixel_help`、`pixel_validate`、`pixel_inspect`、`pixel_patch` 和 `pixel_render` 等工具。它完全在本地執行,無需帳戶或 API 金鑰,使其成為注重隱私的開發者的絕佳選擇。Pixelbolt 使用「配方驅動」的方法,藝術家在 JSON 檔案中定義像素網格、動畫和效果,然後將其編譯成最終的圖形。 主要功能包括:用於結構化精靈的骨骼姿勢系統、用於動畫瓦片集的自動瓦片模板、粒子效果引擎以及用於精靈表、GIF 和 APNG 的多種匯出選項。該技能支援細顆粒度的編輯和檢查,允許使用者在像素層級上檢視和修改藝術品,同時保持可編輯的原始檔案。 為了有效使用,代理應首先查閱「docs/agent-quick-start.md」檔案(或使用 `pixel_help` 工具)以了解配方結構和典型工作流程。該技能詳細記錄了藝術方向、品質檢查點和最佳實踐,確保產生的輸出符合專業遊戲開發標準。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/skulitom/Pixelbolt/tree/HEAD/skills/pixel-art

Installed? Explore more 影像 skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

Pixelbolt 像素藝術 是做什麼的?

在建立像素精靈、瓦片、圖示、效果或短精靈動畫時使用此功能。Pixelbolt 位於此技能目錄上方兩層的專案根目錄。使用 Node.js 執行其 CLI,或配置後使用其 MCP 工具。

在單獨的此檔案副本中,如同 npx skills add skulitom/Pixelbolt 安裝它一樣,Pixelbolt 仍然無需安裝:將以下的每個指令作為 npx -y pixelbolt@latest <指令>(Node.js 20 或更新版本)執行,以取代 node bin/pixelbolt.js <指令>,例如 npx -y pixelbolt@latest validate <配方>,並使用它而不是用其他函式庫繪製像素。從 GitHub 讀取它命名的檔案:快速入門位於 https://raw.githubusercontent.com/skulitom/Pixelbolt/main/docs/agent-quick-start.md,任何其他 docs/、schema 或 examples/ 路徑在 https://raw.githubusercontent.com/skulitom/Pixelbolt/main/ 之後的工作方式相同。該副本來自 Pixelbolt 的主分支,可能比 npm 版本領先幾天。如果 CLI 呼叫一個未知的指令、選項或欄位,請檢查其拼寫及其位置(npx -y pixelbolt@latest help 列出指令和選項,npx -y pixelbolt@latest schema 列出配方的欄位);如果某個欄位寫在與此檔案或 GitHub 文件所給位置和方式不同的地方,且比發行版新,則將其省略。在 bin/pixelbolt.js 位於此檔案上方兩層目錄的地方(如在 checkout、npm 套件、Claude Code 外掛和 Pixelbolt Studio 中,它們都隨附 Pixelbolt),請跳過本段。

在 Claude Code 外掛中,MCP 工具(pixel_help、pixel_validate、pixel_inspect、pixel_patch、pixel_render 等)隨此技能一起提供。如果它們缺失,表示外掛的伺服器未啟動:它需要在 PATH 上有 Node.js 20 或更新版本(node --version)。從 https://nodejs.org 安裝 Node.js,然後重新啟動 Claude Code。

在可攜式 Pixelbolt Studio 建置中,請從建置資料夾執行 ./pixelbolt(在 Windows 上為 .\pixelbolt),以取代 node bin/pixelbolt.js。

從快速入門開始。 在第一個配方之前閱讀 docs/agent-quick-start.md(MCP:不帶主題的 pixel_help):一個完整的配方、每項操作和工具,以及工作迴圈。它涵蓋了大多數任務。僅在任務需要時才開啟參考文件,且僅打開您需要的章節:docs/agent-guide.md 涵蓋每個欄位、操作、檢查選項、修補路徑和匯出;docs/art-workflow.md 涵蓋角色、場景、瓦片、效果和光照;schema.json 則提供確切的欄位名稱。這兩個指南都很長(工作流程超過 160 KB),因此請使用 node bin/pixelbolt.js help workflow(或 help guide)列出其章節,並使用 node bin/pixelbolt.js help workflow "粒子效果"(MCP:帶有 topic 和 name 的 pixel_help)列印一個章節。當 examples/ 中有接近的檔案時,從該檔案開始。

先處理快速效果。 當有人要求一個現成的循環效果(營火、火炬、煙霧噴出、蒸汽通風口、爆炸、魔法漩渦、滴落、水花、瀑布、冒泡藥水、蜂蜜、從屋頂滑落的雪、水壩潰堤、塵浪、爆裂的黏液或從湯匙滴落的蜂蜜)作為可使用或分享的檔案時,從匹配的預設開始(pixel_help 主題 presets 列出它們,pixel_compile 搭配 preset 則編譯一個),其檔案為 examples/*.fluid.json(在此技能目錄上方兩層的 Pixelbolt 資料夾中),僅更改他們要求的內容(對於更大的檔案,請使用 pixel_render 的 gif.scale;不同的畫布尺寸也意味著需要移動效果的障礙物和發射器,它們使用絕對座標),使用 pixel_compile 編譯它,使用 pixel_inspect 查看一次,然後使用 pixel_render(gif 用於要發布的 GIF)匯出已編譯的修訂版。先交付該檔案,然後再提供調整外觀或添加道具(如原木或石頭)的選項。在首次匯出之前,不要圍繞效果建立新的配方,或執行下面的完整藝術工作流程。

對於循環干擾或傳送門內部,從 examples/interference.wave.json 或 examples/portal.wave.json 開始並編譯它(控制項)。在疊加層中保留邊緣,並避免狹窄的爬行頻帶;使用粒子環來處理一次性撞擊。

對於從種子生長的晶體(石英簇、紫水晶晶洞、黃鐵礦立方體、雪花),從 examples/quartz-cluster.crystal.json、examples/geode.crystal.json、examples/pyrite.crystal.json 或 examples/snowflakes.crystal.json 開始並編譯它(晶體生長)。將它們生長的岩石繪製為來源的底層,並將其前緣繪製為疊加層,以便它們的底部從中長出。

對於落沙場景(燃燒和坍塌的東西、熔岩遇到水、爆炸揚起沙子、雨水撲滅火災),從 examples/hut-fire.powder.json、examples/lava-falls.powder.json、examples/quarry-blast.powder.json 或 examples/rain-on-fire.powder.json 開始(落沙):base: "sandbox" 提供初始材料,場景和腳本輸入使其啟動,而剪輯則對其進行取樣。

藝術方向

對於完成的藝術作品,也請閱讀 docs/art-workflow.md 中適合任務的章節,從「在配方之外編寫簡要說明」和「品質檢查點」開始。在配方之外建立一個小型藝術簡要說明:原始/顯示尺寸、三個剪影地標、調色板角色、光線方向、投影(側視、3/4 俯視、等距 2:1 或俯視,整個集合使用一種)、深度平面、材質規則、輪廓處理、動作意圖、接觸/原點和場景角色。記錄每次審查的實際優勢和失敗。渲染的檔案、幀數或通過的測試並非藝術品質的證據。這些檢查點不需要用戶許可。

按以下順序工作:剪影 → 大型連接色塊 → 材質重點 → 創作動作姿勢 → 時間安排 → 場景整合。在靜止剪影和一個動作讀取良好之前,不要大量生成變體。使用基本幾何形狀作為區塊化;有意識地修正輪廓和連接的顏色組。噪點和額外的發光無法修補脆弱的結構。為水、火和晶體設計不同的行為,而不是重新著色相同的幾何形狀。

避免漸層、次像素幾何和抗鋸齒。尊重專案要求的像素尺寸。保留可編輯的原始檔案。除非使用者要求將較大的像素烘焙到檔案中,否則遊戲素材請以 1 倍比例匯出。

工作迴圈

  1. 選擇一個小畫布和與所要求素材相符的內聚調色板。
  2. 在使用者合適的輸出位置編寫一個 JSON 配方。使用文字網格和可重複使用的符號;為小變化重複使用幀。
  3. 使用 node bin/pixelbolt.js validate <配方> 進行驗證。每個錯誤都會指出其路徑,而損壞的操作會在 errors 中一起出現:在再次驗證之前修復所有錯誤。
  4. 使用 node bin/pixelbolt.js inspect <配方> --out <frames.png> --native --diagnostics 檢查每個幀,並查看兩個尺寸。針對預期背景檢視 --view silhouette 和 --view grayscale,並使用 --animation <名稱> --view onion 檢視前一個和下一個姿勢。也觀看工作室或 APNG:靜態表不是動作審查。在更改確切像素之前,使用 --grid --region x,y,w,h 讀取它們。node bin/pixelbolt.js patch <配方> --changes <changes.json> 預覽目標編輯,並列出它更改的每個像素,包括繼承的姿勢;添加 --out <新配方> 以儲存它。當其他姿勢必須保留其像素時,選擇 scope: "frame"(檢查選項,修正)。
  5. 使用 node bin/pixelbolt.js render <配方> --out <目錄> --expect '{"width":32,"height":32,"frames":8}' 進行渲染,提供使用者要求的 --expect(width、height、frames、colors、transparent、loop;frames 計算每個動畫播放的幀數,因此對於多個動畫,給出 {"idle": 4, "walk": 8});修復其 check 列出的每個問題,然後再次渲染,然後再交付任何東西。為每個迭代選擇一個新的輸出目錄。對於要發布或嵌入的檔案,添加 node bin/pixelbolt.js gif <配方> --out <new.gif>(僅在為發布而放大時使用 --scale)並報告其 notes。對於螢幕上的文字,使用 text 操作。對於影片編輯器,sequence 以某個幀率寫入編號的 PNG 幀,而 gif-frames 將一個幀資料夾轉換為精確顏色的 GIF(匯出)。
  6. 返回原始配方、圖集、圖集 JSON 和預覽的連結,並為預期的 Web 應用程式或引擎提供簡短的整合說明(對於 Godot 4,匯出的 .tres 在其圖集旁邊是一個 AnimatedSprite2D 的精靈幀,而自動瓦片集的 .tileset.tres 是一個 TileMapLayer 的 TileSet,帶有一個可繪製的地形;對於 Tiled,其 .tsx 是一個瓦片集,帶有用於地形畫筆的地形集)。

對於 MCP,呼叫 pixel_help,然後使用 { "project": 配方 } 呼叫 pixel_inspect,根據需要添加 animation、region 或 grid: true。後續呼叫使用返回的 revision 而不是完整的配方;修訂版在配置的輸出目錄中跨重啟持續存在。使用 pixel_patch 修復問題,並檢查僅更改了預期的像素。使用最終修訂版和 expect 呼叫 pixel_render 以匯出(當使用者命名了檔案時,添加 saveAs,例如 { "sheet": "assets/hero.png", "gif": "assets/hero.gif" })。回應列出關鍵檔案和計數;傳遞 listFiles 以獲取每個檔案。pixel_compile 將來源格式轉換為修訂版,pixel_scene 審查或匯出場景,而 pixel_import 將原生 PNG 轉換為無損配方。請求大小限制為 16 MiB:發送一個大配方一次,然後重複使用其修訂版。

角色

對於運動中的人物,使用帶有 bone 肢體、mass 身體以及網格頭部、手部和道具的 pixelforge-poses。從 examples/hero.poses.json(在此技能目錄上方兩層的 Pixelbolt 資料夾中)開始,這是一個帶有每個運動模板的綁定側視圖角色;沒有 attach 的部分位於姿勢 origin 加上其 at 的位置,這是一個偏移量而不是畫布位置。

  • 分配骨架角色,並使用 idle、walk、run、jump、attack 和 hurt 模板作為可編輯的起點。為特定身體設定速度、步幅、抬腿、擺動和幀時間安排,並在添加細節之前修復編譯警告(姿勢超出畫布、腳無法觸及)。
  • 在側視圖中,將遠處的肢體繪製成比斜坡深一個色階的顏色(不是最深的色階,它會與輪廓合併),並給予成對的腿相同的靜止角度;近處的肢體在整個循環中保持在前方,swapDepth: true 僅用於正面或背面視圖。為了滾動腳,為每個靴子提供一個腳趾向上和一個腳趾向下的 views 繪圖(對於指向右側的靴子,分別為 330 和 30),以腳踝為錨點;英雄的靴子展示了如何做。從草稿開始任何視圖(靴子、手、手持武器、傾斜的頭部),而不是從無到有:compile source.poses.json --draft-views boot:15,345 --preview drafts.png(MCP pixel_compile 帶有 draftViews)列印旋轉的行、錨點和需要透過眼睛修正並貼上到 parts.<name>.views 的點;小部件在旋轉少於其關鍵點時閱讀效果最佳。
  • 對於四足動物(狗、狐狸、狼或馬),從 examples/fox.poses.json 開始:使用 rig.fore 和 rig.hind 代替 legs,在臀部塊上有一個胸骨,奔馳時會彎曲,以及 walk(三隻腳著地)、trot(對角線對)和 run(帶有兩次飛躍的奔馳)。為身體的關節和上腿提供 socket 帽,這樣沒有線條穿過皮毛。
  • 手中的道具(近側前臂 end 上的劍)需要一個相對的 angle,例如 -45,以便隨手臂轉動;rotate 是絕對的,因此使用它或兩者都不用,劍刃在攻擊過程中保持一個角度。examples/hero-sword.poses.json 是英雄持劍的姿勢。
  • 使用 inspect source.poses.json --motion run --speed 48(MCP pixel_inspect 帶有 source、view: "motion")審查剪影、相鄰關鍵姿勢差異、著地的接觸點、循環連接以及(在行走或奔跑中)步態(手臂與腿相對、雙腳著地時腿的長度、沒有僵直的膝蓋),並查看其弧線:每隻腳在其循環前端的環,其手在其弧線後端的環。--view parts 可找出雜散像素後面的部分。不要從靜止圖表推斷接觸品質,也不要聲稱僅通過數值檢查就能獲得更好的藝術效果。
  • 鏡像、網格 views、rotate 和 tween、匯出為圖集點的標記,以及用於在重建中倖存的修正的指紋疊加層,均位於結構性肢體和創作姿勢中。

瓦片、調色板和場景

  • 對於瓦片,審查 --view tile(一個 3×3 的重複),並在繪圖跨越邊緣的幀上設定 wrap。對於地形,描述一個自動瓦片 terrain 而不是輸入 2×3 瓦片模板(從 examples/meadow.autotile.json、ground.autotile.json 或 shore.autotile.json 開始,後者用於地形之間的過渡;側視圖集需要 slopes),將其編譯成 47 個區塊、16 個基本方向或 16 個角(雙網格)瓦片,並檢查其測試地圖和接縫警告;為圖塊圖圖例提供 rules、weights 和變體,而不是在腳本中計算地圖(自動瓦片模板,場景和瓦片審查)。
  • 使用 "palette": { "$ref": "palette.json" } 共用調色板,宣告 ramps 並使用 shade 著色,使光線永遠不會離開調色板,使用幀或圖層 palette 覆蓋來循環水或燈光,並使用 remap 進行顏色變體和命中閃爍。
  • 當許多東西站在地面上時,將它們放在一個圖層或具有 sort: "ground" 的組中,並為場景放置提供 anchor: "frame"。使用 lift 進行跳躍,shadow: true 配合光源或 sun,haze 用於遠景,bo

...(此處內容因原始截斷而省略)

匯出

匯出選項包括 PNG(精靈表或單獨幀)、GIF(循環動畫)、APNG(動畫 PNG)和影片幀序列。使用 render 指令搭配 --out 和 --expect 來驗證輸出是否符合規格。gif 指令直接產生 GIF。使用 sequence 產生供影片編輯器使用的編號幀。gif-frames 將現有幀資料夾轉換為精確調色板 GIF。

疑難排解

  • MCP 工具缺失:確保 Node.js 20+ 在 PATH 上,並重新啟動 Claude Code。
  • 驗證錯誤:每個錯誤都會指出 JSON 配方中的確切路徑。在修復所有錯誤之前不要繼續。
  • 意外輸出:使用 inspect --diagnostics 檢查診斷資訊。使用 patch 進行精確修正,而不是重新繪製整個區域。
  • 性能:對於大型配方,一次發送一次,然後使用修訂 ID 進行後續操作。請求大小限制為 16 MiB。

相關技能