This is a tool that can randomize layers in Unity using weighted randomization. It can export VRMs using uniVRM, as well as a posed GLB.
The tool can be configured to export a batch of VRMs with ERC JSON metadata, along with an image, animation_url, and vrm_url.
Boom-tools can also import batches of JSON, and manage the loading of these layers with the goal to compose 2d projects into 3d VRMs and provide updated JSON for the VRMs.
The VRM format is an extension of GLTF by Khronos group and is rapidly becoming the standard for avatars on the web. The 3D assets can be downloaded and imported into any metaverse projects supporting VRMs. Overall, this project embodies the principles of open-source and interoperability in the metaverse.
CC0
The project is aligned with the vision of an "Open Metaverse". We rely on the ecosystem of engineers, builders and programmers that create open source software and tools. We want to encourage others to develop with this mindset, in public, to create an "Open Metaverse" together. We can do this by sharing our source code, source assets, building on the web, and documenting our work in public using tools like GitHub.
Example Output
Example JSON Output
{"name":"Boomboxhead #11","created_by":"Boomboxhead","external_url":"https://twitter.com/boomboxheads","description":"Boomboxheads V2 is a collection of 3D generative VRM avatars on the Ethereum Network. The avatars are cc0, and were created with Boom-tools , an open-source project running on Unity3d that can generate VRM avatars along with the metadata and thumbnail. This project was inspired by the Boomboxheads: Originals and Boomboxheads: Legends, which both laid the foundation for this project to come to life.","vrm_url":"ipfs://www.replacethis.com/boomboxhead11.vrm","animation_url":"ipfs://www.replacethis.com/boomboxhead11.glb","image":"ipfs://www.replacethis.com/boomboxhead11.jpg","attributes":[{"trait_type":"Hat","value":"Signal"},{"trait_type":"Mouth","value":"Bandana"},{"trait_type":"Eyes","value":"Clout"},{"trait_type":"Weapon","value":"Axe"},{"trait_type":"Patches","value":"AlteredEvil"},{"trait_type":"BodyTexture","value":"Wild"},{"trait_type":"Pose","value":"Dance1"},{"trait_type":"BGColor","value":"White"},{"trait_type":"BBTexture","value":"70ROY"},{"trait_type":"Border","value":"BlueWall"}]}
Push spacebar to randomize a layer, or click Random All
Exporting Single Screen Shot
Push F2 to Export iamge from The "Export Camera" to file.
Batch Export
In Batch mode you can export a random VRM, along with a random posed GLB, the ERC JSON data, and an image, total of X times you can set in the batch export configuration script.
Single Export
You can also export a single VRM as well as just the JSON if you wish.
How to setup layers and traits
We set up each layer, the probibility (Weights) or chance the layers show up, all of the meta-data for the JSON output, and references to the 3d layers that will be randomized. There is also 2 examples of scripts that have been customized to randomize materials on a mesh. (Background and Body)
Each Layer has a configuration script where you set up all your Values and Weights for each variation in a layer.
Drag references to 3d gameObjects / layers into the "Total Objects In Layer" array.
Setup the Layer String Data by matching the names of the values of the layers, that will be used to create the string JSON output.
Then the Random once, batch or roll can be chosen to trigger the randomization.
License
This project is available under the CC0 1.0 licence
Originally modeled with Unity by the creator of Pixel Ripped for a Hackers themed party in early 2017, this space eventually became home to many experiments.
Is your home space tied to a device? Who owns it? Can you bring it with you? What about your avatar? Can you download your avatar or parcel? Is it based on an open format? Can you hop from one world to the next? How easily? What is the glue between them? Who controls what? Proof?
Homes are usually not the type of thing that move around, however a shipping container is. Shipping containers are like internet packets of the physical world, moving value around in the physical world. They're designed to be reusable and portable. This is the inspiration for the Home Space, so that it can be interoperable, and truly belong to you.
The origin of the hackerspace 3d model began in early 2017 when a cyberpunk themed nightclub in SF was having a Hackers themed anniversary party and sectioned off an area for VR demos. Among the presentors were Brainfizz, Pixel Ripped, and JanusVR. The lead dev of Pixel Ripped, Ana Ribeiro, exported the model from Unity to be used as a staging world into the webvr based game JanusVR made for the event. A big idea behind Pixel Ripped is revolved around playing a 'game within a game' and its ironic how that concept is coincidentally extended into how the hackerspace model is being used today.
Updating my 3D desktop home space with new projects and cryptoart. It's my inventory / backpack that I take with me between worlds (wallpapers) that I cultivate various memory palaces with.
How do we grant current NFT holders access to a downloadable web app that later can be updated?
Unlock access to private Github repo?
Create previews of version 2 (cryptomachines, land, portal)
Include VR business card in the world / project files
Another version of the home space is an art gallery Empty, with places to hand art, bake lights Double stack container build + art gallery (tree / DCL)