{"_id":"@adoin/sky-defender-threejs","name":"@adoin/sky-defender-threejs","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@adoin/sky-defender-threejs","version":"0.1.0","description":"Procedural, animation-ready Three.js interpretation of EINTA Industries Sky Defender (天幕).","keywords":["threejs","three.js","mecha","procedural","sky-defender","einta"],"license":"MIT","sideEffects":false,"type":"module","main":"./dist/index.js","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"tsc -p tsconfig.json","check":"tsc --noEmit -p tsconfig.json","test":"npm run build && node --experimental-strip-types test/smoke.mjs","pack:check":"npm pack --dry-run"},"peerDependencies":{"three":">=0.160.0 <0.190.0"},"devDependencies":{"@types/three":"^0.180.0","three":"^0.180.0","typescript":"^5.9.3"},"engines":{"node":">=20"},"publishConfig":{"access":"public"},"_id":"@adoin/sky-defender-threejs@0.1.0","_nodeVersion":"24.15.0","_npmVersion":"11.12.1","dist":{"integrity":"sha512-lr1LmXxSJm9OWYaaLr3EHDfGhhbKgDbronxhpjfrOcsDUGrPPOVgI1zhw6r+D8fITGRtb7bqWddVzmaenZlz2w==","shasum":"f711b0df2267d78fad2ceeedd6c7f974050dc728","tarball":"https://registry.npmjs.org/@adoin/sky-defender-threejs/-/sky-defender-threejs-0.1.0.tgz","fileCount":11,"unpackedSize":43694,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIBJa9CXqgCguSiPQ3Fb7eSzmQXvJ01f/QobmYlCl/QveAiBEMbdpMBenL+i+ciZkXtIyT9zhST2R9CqAnvLohWrr/A=="}]},"_npmUser":{"name":"adoin","email":"adoin@qq.com"},"directories":{},"maintainers":[{"name":"adoin","email":"adoin@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sky-defender-threejs_0.1.0_1785139280324_0.7126829042587668"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-27T08:01:20.093Z","0.1.0":"2026-07-27T08:01:20.496Z","modified":"2026-07-27T08:01:20.745Z"},"maintainers":[{"name":"adoin","email":"adoin@qq.com"}],"description":"Procedural, animation-ready Three.js interpretation of EINTA Industries Sky Defender (天幕).","keywords":["threejs","three.js","mecha","procedural","sky-defender","einta"],"license":"MIT","readme":"# @adoin/sky-defender-threejs\n\nProcedural Three.js display model, inspired by the EINTA Industries Sky Defender (天幕) model-kit silhouette. Built from code: primitives, plates, joints, material zones, pivot hierarchy, sockets, collider proxy, and explode controls.\n\nThis package is an independent, approximate interpretation. It does not contain manufacturer meshes, product photography, decals, logos, instructions, or CAD data. `EINTA Industries` and `Sky Defender` may be trademarks of their respective owners; this package is not affiliated with or endorsed by them.\n\n## Install\n\n```bash\nnpm install three @adoin/sky-defender-threejs\n```\n\n```ts\nimport { createSkyDefender } from '@adoin/sky-defender-threejs';\n\nconst model = createSkyDefender({ pose: 'hero', animated: true, scale: 1 });\nscene.add(model);\n\nfunction animate(time: number) {\n  model.userData.sculptRuntime.tick(time / 1000);\n  renderer.render(scene, camera);\n}\n```\n\n## Runtime controls\n\n```ts\nconst runtime = model.userData.sculptRuntime;\nruntime.setExploded(0.65); // 0 assembled → 1 exploded\nruntime.nodes.head.rotation.y = 0.2;\nruntime.sockets['socket-wing-left-0'].add(effectMesh);\n```\n\n`SkyDefenderRuntime` exposes `nodes`, `sockets`, `colliders`, `destructionGroups`, `tick`, and `setExploded`. Named assemblies are: torso, head, backpack, four wings per side, top wing, two arms, and two legs.\n\n## Fidelity and source record\n\nReconstruction input: retail/product photos searched 2026-07-27. Primary view: front-three-quarter; supporting views: frontal dimensions and hero pose. The reference object is an ultra-complex, articulated hard-surface mecha. Observed identity cues: white/violet layered plates, dark mechanical frame, champagne-gold rings, green translucent wing fins, tall split crown, eight swept backpack wings, and blade-like leg armour.\n\nKnown approximation: rear detail, underside, exact joint mechanics, decals, and accessory weapons are inferred or omitted. This is not a scan, measurement model, or manufacturing reproduction. Reference images are intentionally excluded from git and npm package.\n\nUseful reference pages:\n\n- [Newtype product listing](https://newtype.us/p/WBKkfGiN8HpDifxHlM6j/h/einta-industries-npcm-017-sky-defender)\n- [Gundamit product listing](https://www.gundamit.com/einta-industries-sky-defender-model-kit_p2033.html)\n- [img2threejs pipeline](https://github.com/img2threejs/img2threejs)\n\n## Development\n\n```bash\nnpm install\nnpm run check\nnpm test\nnpm run pack:check\n```\n\n## Release\n\nPackage uses the current publisher scope `@adoin`. To publish a new version, run:\n\n```bash\nnpm login\nnpm publish --access public\n```\n","readmeFilename":"README.md","_rev":"1-f6dea9cefb86d622bb15e484d552a009"}