or
or
By clicking below, you agree to our terms of service.
New to HackMD? Sign up
Syntax | Example | Reference | |
---|---|---|---|
# Header | Header | 基本排版 | |
- Unordered List |
|
||
1. Ordered List |
|
||
- [ ] Todo List |
|
||
> Blockquote | Blockquote |
||
**Bold font** | Bold font | ||
*Italics font* | Italics font | ||
~~Strikethrough~~ | |||
19^th^ | 19th | ||
H~2~O | H2O | ||
++Inserted text++ | Inserted text | ||
==Marked text== | Marked text | ||
[link text](https:// "title") | Link | ||
 | Image | ||
`Code` | Code |
在筆記中貼入程式碼 | |
```javascript var i = 0; ``` |
|
||
:smile: | ![]() |
Emoji list | |
{%youtube youtube_id %} | Externals | ||
$L^aT_eX$ | LaTeX | ||
:::info This is a alert area. ::: |
This is a alert area. |
On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?
Please give us some advice and help us improve HackMD.
Do you want to remove this version name and description?
Syncing
xxxxxxxxxx
Anata VRMs
tags:
anata
presentation by jin
Where we at?
95%
Ready
Ready
Metadata
3000+ Unique Traits
Female Anata
- The image was uploaded to a note which you don't have access to
- The note which the image was originally uploaded to has been deleted
Learn More →1000 Female Anata, 1761 total unique traits
Male Anata
- The image was uploaded to a note which you don't have access to
- The note which the image was originally uploaded to has been deleted
Learn More →1000 Files, 1600 total unique traits
Number of traits per Anata
3D Modeling
Brace
Clips and Kanzashi
Clothing
Earring
Eyes
Face Other
Glasses
tldr…
Data wrangling all the final assets
Requirements:
Anata Traits All
Anata Traits Female
Anata Traits Shared
Anata Traits Male
Avatar Guidelines
We can have multiple levels of detail, High -> Low
Current versions are heavy
Manual work
great results but doesn't scale well
Male Stats
per individual traits
5/27/23
6/25/23
Male Stats
Shared Stats (5/27/23)
Shared Stats
Female Stats (5/27/23)
Female Stats
Female Body
2 draw calls
1 animations
1 materials
9089 vertices
15030 triangles
8 MB
Female BRACE
Female CLOTHING
Female EYES
Female GLASSES
Female HAIR
Female HALOS
Female HATS
Female HEAD
Female MASKS
Female NECK
Female SIGIL
Female TAIL
Female WEAPON
Female WINGS
Male Body
1 draw calls
0 Animations
1 materials
7030 vertices
11038 triangles
3.6 MB
Male BRACE
Male CLOTHING
Male EARRING
Male GLASSES
Male HAIR
Male HALOS
Male HATS
Male HEAD
Male MASKS
Male NECK
Male SIGIL
Male TAIL
Male TATTOO
Male WEAPON
Male WINGS
Material Optimization
1. First have all the final assets exported
2. Resize non-po2 images to power of 2
3. Optimize textures (pngquant, jpegoptim)
4. Rebundle into glTF binary files
Setup Environment
./scripts/get_stats.sh files/male KB
Outputs a CSV with "Category,Name,Size (KB),Images,Draw calls,Triangles,File Path"
python3 scripts/visualize_stats.py metadata/stats/male.csv -o all
Outputs files to metadata/stats folder
bash scripts/optimize/to_optimize2.sh metadata/stats/male_viz.csv
python3 category_stats.py male_viz.json male_trait_stats.csv
Convert glbs to glTF, separate textures
Generate CSVs about Texture Info
jpg
png
We will generate multiple CSVs like this one
Each time we do something, we make a new CSV
Best practices to guarantee better performance
In green are power of two resolution textures
Everything else needs to be resized, for this we use
resize_textures.py
After
resize_textures.py
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →PNG Compression example
Original: 1.2 MB
imagecompressor
(web): 370 KBoptipng
: 580 KBimagemagick
: 663 KBpngquant
: 372 KBFirst Pass: PNG Compression for Male Assets
15% improvement by default highest quality
23% improvement with 80% quality
~1525 files
JPG Compression
PNG converted to jpg: 212 KB
imagemagick
): 141 KBjpegoptim
): 114 KBFor textures that look like this, we can use JPG
10x filesize reduction
Image Not Showing
Possible Reasons
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →First Pass: JPG Compression Male Assets
~50% file size reduction
First Pass Resize + Compression Overview
Not bad, still plenty of room for improvement!
Todo: Texture Filename Sanitization

Filesize Estimations
Since 99% of the assets are modeled, we can make rough estimates about how every individual Anata stats might look when assembled together
Female VRM Estimates
Data taken from June 2023
Male VRM Estimates
Data taken from June 2023
Mesh Optimization
Tools used:
Workflow
Setup
Get File size, Draw Calls, Triangles, Preview / Filter, Copy folder structure to files/optimize for processing
Step 2: Made visual tool to help QA process
Still gathering assets before commencing step
Assembling VRMs
Anata Boom Tools Vlog Update: June 3rd
Image Not Showing
Possible Reasons
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →https://www.youtube.com/watch?v=30dsk97126s
Anata Boom-Tools Milestones
Modify the existing code to add spring bones to unique instances of hair, testing thoroughly while adding other spring bones as needed