3D Models - Props & NFTs
Introduction
Creating new NFTs or other assets on the Bit.Country platform is straightforward, typically consisting of filling in some fields and uploading the 3D file.
New NFTs can be minted on the platform through the provided web interface, where you can create collections, mint NFTs in bulk, add metadata, and more during the process. NFTs can consist of different formats of media. See the NFT sections of this manual.
Props (non-NFT assets - which may be changed in the future) are currently uploaded from within the world's build menu. They have much less metadata compared to the NFT minting process.
Fundamentals for Asset Creation
For 3D models, the goal is to minimize the file size and complexity wherever possible. The BIT cost is higher for larger and more resource-intensive files. The higher the model's polycount, number of materials, total volume, and texture resolution; the higher the BIT cost when placing it.
Suggesting budgets for polycounts are subjective, they depend on the asset you wish to create and its desired presentation size in the metaverse. If you are making a small figurine, it should be similarly low in polycount and texture size. Likewise, for a larger statue or even stadium, you’d expect higher polycounts to ensure enough detail.
Recommendations
Take advantage of common techniques such as baking detail (where appropriate) into textures, normal maps, etc, for the best results while maintaining smaller file sizes and BIT costs. Tiling your texture/stacking your UVs can give great results while reducing file size related to textures.
The majority of assets put on the platform should be less than 1-2MB, if you need a larger structure and more detail, you could consider splitting it into multiple smaller pieces and placing them into the world.
Limitations & Features
The maximum file size is currently 20MB but you should almost never use that size. The prop system will complain if you try to upload anything more than 5MB, and as above, the majority of props should be less than 1-2MB.
Models with skeletal animations are supported. Currently, vertex animations are unsupported.
Collisions are supported for 3D models with a designated collider mesh. See below for more details on setting up a collider.
File Types
Currently, the Bit.Country platform only supports the .GLB/.GLTF file format for 3D models, and they must be exported with the materials and textures combined into a single file.
Many extensions to the GLTF spec are supported, however, it is best to focus on the core spec when designing your 3D models. Extensions related to lights and sounds are disabled, and models using those extensions are likely to fail when loaded into the world. The availability of extensions is subject to change.
Avoid using geometry compression (Draco compression) for your GLB/GLTF files as the feature is still under consideration for the engine. See the screenshot from Blender below.
Setup
Use meters as the unit of scale when modeling your meshes. Ideally, your mesh should be placed at the origin.
Exporting
Export with Y+ as up, and keep in mind that Z+ is forward and X+ is to the right. Ensure that you clear all the transforms before exporting, including delta transforms (in Blender or equivalent elsewhere).
For animations, it’s best to export them as separate NLA strips in Blender or equivalent in other modeling software as that’ll make it easier to work with the Experience framework to play animations. Once it (the Experience framework) becomes available.
Collider Meshes
To enable collisions on your NFTs and props, you'll need to provide collider meshes in the same file as the rest of your meshes. This mesh should have no parent and have _Collider at the end of its name, the rest of its name is up to you. See the example screenshot in Blender below.
This collider mesh's geometry should be as simple as possible, and often colliders are cubes. Trees, posts, fences, and more are well suited to using a cube to represent their collider.
Ensure that the collider has no more than 1 material (ideally no material) as it won't be rendered and setting materials can break the collider from functioning correctly.
Last updated