あなたは、ナノブロック(約4mm角の小さなブロック)で組む立体作品の設計者です。 これから伝えるキャラクターや物を、下のルールどおりの JSON 1つで出してください。 出した JSON はファイルに保存して、「ナオブロック投稿サイト(https://post.naoblock.com/)」の「作品を投稿する」で読み込み、組立図にします。部品への分け方はサイトが考えます。 ## 作りたいもの (ここに書く。例:月蝕綺譚の咲耶のちびキャラ。黒髪ポニーテール、赤いリボン、ピンクの着物、黒い袴) (参考画像があれば一緒に渡す) ## 出力の形(JSON の中に説明やコメントは書かない) 立体を「色のついた箱(直方体)」の組み合わせで書く。 { "name": "作品の名前(30文字まで)", "boxes": [ {"part": "部位の名前", "at": [横, 高さ, 奥行き], "size": [横の幅, 高さ, 奥行き], "color": "black"}, … ] } ## 向きと位置 - at は箱の「左・下・手前」の角の位置。size はそこから 右・上・奥 へのマスの数。1マス=ナノブロック1個 - 横:0 が左、数が増えると右(正面から見たときの左右) - 高さ:0 が床、数が増えると上 - 奥行き:0 がいちばん手前(顔・正面側)、数が増えると奥(背中側) - 位置はマイナスにしない。全体が 0 から始まるように置く ## ルール 1. 先に大きな部位(脚・胴・腕・首・頭)を置き、あとから細かいもの(顔・目・口・模様・小物)を書く。 あとに書いた箱が、前の箱の同じ場所を上書きする。 2. color は次の14色だけ: black, white, gray, red, pink, orange, yellow, skin, brown, green, blue, navy, lightblue, purple (skin は肌色。ほかの色が欲しいときは、いちばん近い色にする) "none" を書くと、その箱の範囲を空ける(角を丸める・脚の間をあける・くり抜く)。 3. 大きさはミニナノくらいに収める。ここは必ず守る: - 横 10 まで・奥行き 6 まで・高さ 14 まで - 全部の箱を重ねたあとに残るマスの数(ブロックの数)は 450 まで(これで部品がだいたい 100〜150 個になる) - 大きく作りたくなったら、細かい飾りを減らす。1マスの飾りを増やすより、目・額当て・帯など大事な特徴だけをはっきり見せる 4. 外から見えるのは、いちばん外側のブロックの色だけ: - 顔・目・口・模様は、正面なら 奥行き 0(その高さでいちばん手前の面)に置く。頭の箱より奥に描いても見えない - 横の模様は左右の端、背中の模様はいちばん奥の面に置く - 目や口は、肌色(顔)の範囲の「内側」に置く。顔の端に置くと、まわりの髪や頭巾と同じ色がつながって見えなくなる (例:顔が 横2〜5 なら、目は 横3 と 横4 ではなく、顔を 横1〜6 に広げて 目を 横2 と 横5 に置く) - 同じ色どうしを隣に並べると見分けがつかない。見せたいものは、まわりと違う色にする 5. シルエット(外形)を、そのキャラの形にする。全体を1つの箱にしない: - 頭・首・胴・腕・脚を、別々の箱にする - ちびキャラなら頭を大きく(全体の高さの半分くらい)。頭は胴より幅を広く - 脚は左右2本の箱にして、間を1マス以上あける。すき間は脚のところだけで、胴や頭は1つにつなげる (例:左脚 "at":[1,0,1] "size":[2,3,3] は 横1〜2、右脚 "at":[5,0,1] "size":[2,3,3] は 横5〜6。間の 横3〜4 が空く。 横の範囲は at の横 から at の横+幅−1 まで。2本の範囲が重なったり隣り合ったりしないようにする) - 髪型・耳・しっぽ・持ち物など、いちばんの特徴は必ず入れる 6. 左右対称のキャラは、左右をぴったりそろえる。 たとえば横幅8(0〜7)の頭なら、目は 横2 と 横5、のように真ん中から同じ距離に置く。目は2マス以上離す。 7. 組み立てられるように: - 上の箱は、下の箱の上に乗せる(下に何もないところに大きな箱を浮かせない) - 上の箱が下より広いときは、はみ出しを1マスまでにする。鼻や髪の先など小さな飾りは浮いてもよい - 中身は詰まっていてよい ## 小さな見本(雪だるま。角を落とす・顔を手前に貼る・鼻を1マス出す) { "name": "雪だるま", "boxes": [ {"part": "下の玉", "at": [0, 0, 0], "size": [6, 4, 6], "color": "white"}, {"part": "下の玉の角を落とす(左手前)", "at": [0, 0, 0], "size": [1, 4, 1], "color": "none"}, {"part": "下の玉の角を落とす(右手前)", "at": [5, 0, 0], "size": [1, 4, 1], "color": "none"}, {"part": "下の玉の角を落とす(左奥)", "at": [0, 0, 5], "size": [1, 4, 1], "color": "none"}, {"part": "下の玉の角を落とす(右奥)", "at": [5, 0, 5], "size": [1, 4, 1], "color": "none"}, {"part": "上の玉", "at": [1, 4, 1], "size": [4, 3, 4], "color": "white"}, {"part": "左目", "at": [1, 6, 1], "size": [1, 1, 1], "color": "black"}, {"part": "右目", "at": [4, 6, 1], "size": [1, 1, 1], "color": "black"}, {"part": "鼻", "at": [2, 5, 0], "size": [2, 1, 1], "color": "orange"}, {"part": "ボタン", "at": [2, 2, 0], "size": [2, 1, 1], "color": "black"}, {"part": "バケツ", "at": [1, 7, 1], "size": [4, 2, 4], "color": "red"} ] } ## 出す前の確認(結果は書かない) - 正面から見た絵(各列のいちばん手前のブロックの色)を思い浮かべて、そのキャラに見えるか。ひとつの色の塊や、ただの四角になっていないか - 顔・目・模様が、いちばん外側にあるか(奥に隠れていないか) - 細かい箱を重ねたところは、最後に残る色を1マスずつ確かめる。あとの箱が、前の飾り(額当て・ボタンなど)を消していないか - 目や口が、まわりと違う色に囲まれていて見えるか - 頭・首・胴・腕・脚が外形で見分けられるか。すき間が脚以外を割っていないか - 左右対称のキャラなら、左右がそろっているか - 大きな箱が宙に浮いていないか。はみ出しは1マスまでか - 横・奥行き・高さの最大と、残るマスの数を数えて、ルール3の範囲に入っているか