Biblioteca 3D コミュニティ(コミュニティ3Dライブラリ)
HOME3D = $EXPLICADORES_3D または ~/.explicadores-3d。ライブラリは HOME3D/biblioteca/ にあります:
CATALOGO.md(モデルごとに1行、サムネイル、パラメータ、既知の欠点を含む)、manifiesto.json、modelos/、piezas/、
base/(スタイル、lib2d、調整パネル)、aportes/(コミュニティによる追加分)、vendor/(three.js、three.quarks、
Tweakpane、Fredoka フォント)、および vista.html。
すべて手続き的かつ決定論的です:ダウンロードしたテクスチャや Math.random は使用しません。デフォルトのスケールは 1u = 1cm です。
モデルを検索して使用する
- カタログ全体を読まずに、名前やアイデアで検索します(約200行あります):
grep -i "蚊|昆虫" HOME3D/biblioteca/CATALOGO.md。 その行を読みます:それは何か、ファイル → export(パラメータ)、カラースタイル、および既知の欠点(特に "⚠ 目")。 - プレビューする(オプション):フォルダをサーブし(
biblioteca/内でpython -m http.server 8795)、localhost:8795/vista.html?m=<id>を開きます。&ajustes=1を付けると、カメラ、色、ライトを移動するためのパネルが表示されます。または、サムネイルminiaturas/<id>.pngを表示します(ハーネスが許可する場合はサブエージェント内で。これによりコンテキストに画像を読み込むのを避けられます)。 - プロジェクトにコピーします(
escena/modelos/)。ライブラリからインポートしないでください。スタイルのインポートパスを調整します(../../base/estilo3d.js→../estilo3d.js)。パーティクルを使用する場合(piezas/particulas/)、vendor/quarks/もコピーし、importmapに"quarks.core"を追加します。 - 各ファイルの上部にAPI(軸、スケール、
.poner*/.update(t)メソッド)が記載されています。これはコンストラクタの依頼文に1行で記述します。
新しいモデルを貢献する:デフォルトで有効(各動画終了時)
貢献は通常の流れです:動画終了時に常に提案され、ユーザーが拒否する場合のみ「いいえ」と言う必要があります。 ライセンスはコードが MIT、モデルが CC BY 4.0 で、貢献者にはクレジットが表示されます。
- 検出:プロジェクト内の新しいモデルとパーツを検出します(トークンを消費しません;ライブラリと比較します):
「新しいモデルはありません」または「ユーザーが既に拒否しました」と表示された場合、何も尋ねずに終了します。python "SKILL_DIR/nuevos.py" <プロジェクト> - 尋ねる前にすべて準備します。モデルごとに1つずつ。
--nombreと--que-esはファイル上部のコメントから、--fnは主要なエクスポート関数から取得します。事前に、個人情報(クライアント名、ブランド、ロゴ、自分のチャンネルのテキスト)が含まれていないこと、決定論的であること、目と読み取れる形状がないことを確認します。条件を満たさないものは準備しません。作者は一度だけ尋ねられ(クレジットにどのように表示するか)、python "SKILL_DIR/aportar.py" --archivo <プロジェクト>/escena/modelos/regadera.js --fn crearRegadera --id regadera \ --nombre "じょうろ" --que-es "取っ手と注ぎ口付きの庭用じょうろ" [--autor "<名前または@ユーザー名>"] --estilo casa~/.explicadores-3d/autor.txtに保存されます。 これにより、400x400 のサムネイル、ficha.json(作者、日付、CC BY 4.0)、マニフェストとカタログの行が作成され、バリデーターを通過します。まだ何もアップロードしません。 - 準備されたもののリストを1行で尋ねます:
ライブラリにアップロードしますか? (S/n)Enter、「s」、「sí」、または「va」= はい。「n」または「no」(または明らかに拒否するもの)のみ = いいえ。 - はい → 1つのPRですべてをまとめて提出:
PRのリンクを渡します。いいえ →python "SKILL_DIR/aportar.py" --publicar regadera,maceta python "SKILL_DIR/nuevos.py" <プロジェクト> --subido escena/modelos/regadera.js escena/modelos/maceta.jspython "SKILL_DIR/nuevos.py" <プロジェクト> --noを実行し、そのプロジェクトでは再度尋ねません(新しいセッションでも同様:<プロジェクト>/.biblioteca.jsonに保存されます)。
- gh が利用できない場合:
--publicarはすべて準備し、手動での3つの手順(Web上でフォーク、ブランチにコミット、PR)を説明します。 gh をインストールするには:winget install GitHub.cli/brew install gh/ cli.github.com、その後gh auth login。 - 各PRは GitHub Action によって検証され(ヘッドレスブラウザ、決定論、ネットワークなし、サイズ、サムネイル、行、作者)、人間が承認します。マージされると、作者は
CATALOGO.md、ギャラリーindex.html、ランキングAPORTADORES.mdに表示されます。貢献者は最初に新しいパッケージまたは注目のパッケージを受け取ります(READMEの「貢献して受け取る」を参照)。
欠点を修正する
動画内でライブラリのモデルの欠点を修正した場合、その修正もリポジトリに提案します(通常のPRで、変更前と変更後を説明します)。aportes/ 外の変更はリポジトリメンテナーが手動でレビューします。