Here are the items:
Pink Matrix Outfit
In this blog post, we will discuss how these items were made and the process leading up to their release.
Initially, we used images generated by the AI, Midjourney, to create patterns for the clothing, and then generated 3D models based on these patterns.
You can read more about that process in this blog post.
Below are the 3D models of the items created following this flow:
These are the models we created specifically for ZEPETO:
To make 3D models usable in the metaverse
To make 3D models usable in the metaverse, various constraints need to be considered.
Broadly, these include:
Data Format and File Size:
The 3D model must be in a format recognizable by the platform, typically .obj or .fbx. Often, there is a limit to the file size of the 3D model that can be uploaded, so the model must be created to fit within this limit.
Most platforms have a limit to the polygon count of the model, which represents its level of detail. This is to maintain rendering efficiency and a good user experience.
Bones are frameworks within a 3D model that control the character's movement. For example, to allow a character to bend their arm, you need to set bones in the arm and control their movement. Each platform has standard bone structures, and you need to optimize the shape and movement according to these.
Texture and Material:
Textures and materials, which manage the model's color information, must be prepared in a compatible format. Some platforms may also have restrictions on these elements.
Creating 3D Models for ZEPETO:
The data will be adjusted based on ZEPETO's production guidelines.
We will reduce the polygon count to comply with the restrictions.
Before reduction, the polygon state of the data is quite detailed.
We used a tool called Quad Remesher to automatically reduce the data to the specified polygon count.
After reduction, we managed to maintain the original shape while reducing the count.
Now the polygon is in a state that can be handled in ZEPETO.
After reduction, we will perform *UV unwrapping, assign color information and material, and apply texture.
*UV unwrapping is a necessary process for texture mapping (a method of pasting colors and patterns onto a 3D model) that unfolds the surface of a 3D model onto a 2D plane.
Next, we resize the model to match ZEPETO's avatar.
We adjust the proportions and poses to match.
Sometimes the size doesn't fit perfectly and breaks through in some parts, so we adjust the width of those parts.
We will set up the bones and weights.
Weights are set to reflect the movement of the bones on the object.
We transfer the weight information set on ZEPETO's avatar to the model of the clothing and adjust it.
We move the joints to check the movement of the mesh and adjust the range of influence.
Checking and Adding Simulations in Game Engine:
The adjusted model is exported to FBX and saved as a file for ZEPETO in Unity.
We load it in Unity, add simulations, switch the avatar's size, change poses, and check.
Before original items can be published on ZEPETO, they are reviewed.
It is checked whether they can be worn by avatars of all body types, and whether they can be worn together with other items. The review period was about 2-3 days per data.
Once an item passes the review, it is ready for publication. Models that don't pass are modified and resubmitted for review.
Out of the three items, one required re-review, and upon close inspection, there were minor errors. The thorough review process gave us insights for future data preparation.
Creating fashion items for the metaverse was a first for our CG team and a great learning experience. It's fascinating to see various users wearing these items, posting pictures, and enjoying themselves in the world of ZEPETO.
While improving our production flow, we plan to continue adding new items in the future! Stay tuned♪