Reverse Engineer MView 3D File Format
This project consists of 2 scripts.
extract_mviewto extract files inside the mview archive and
extract_modelto convert the
.datfiles to
.obj.
Also includes a Noesis plugin. (see below)
Example
File downloaded from ArtStation.
Result
// extract mview archive // python extract_mview.py $ python extract_mview.py test_data/test_file1.mview $ > thumbnail.jpg image/jpeg $ > sky.dat image/derp $ > mesh0.dat model/mset $ > mesh1.dat model/mset $ > mesh2.dat model/mset $ > mesh3.dat model/mset $ > mesh4.dat model/mset $ > mesh5.dat model/mset $ > mesh6.dat model/mset $ > mat0_c.jpg image/jpeg $ > mat0_r.jpg image/jpeg $ > mat0_n.jpg image/jpeg $ > mat0_a.jpg image/jpeg $ > mat0_g.jpg image/jpeg $ > mat0_s.jpg image/jpeg $ > mat1_c.jpg image/jpeg $ > mat1_n.jpg image/jpeg $ > mat2_c.jpg image/jpeg $ > mat3_c.jpg image/jpeg $ > mat4_c.jpg image/jpeg $ > mat4_a.jpg image/jpeg $ > mat5_c.jpg image/jpeg $ > mat5_a.jpg image/jpeg $ > mat5_s.jpg image/jpeg $ > mat6_c.jpg image/jpeg $ > mat6_a.jpg image/jpeg $ > scene.json.sig application/json $ > scene.json application/json $ > COMPLETED!!!// convert dat files to obj (wavefront) // python extract_model.py <folder_containing_scene.json> $ python extract_model.py test_data/test_file1 $ > COMPLETED!!! </folder_containing_scene.json>
You can download Noesis from here. Copy and paste the plugin to
noesis/plugins/python/fmt_artstation_mview.pythen just open the
.mviewfiles with Noesis.
To download an
.mviewfile:
mviewon the Developer Tools' Network tab.
open in new tab. (will start download)
[FIXED] ~~[BUG] There is currently no support for huge files that uses uint32 indices. Pull requests are welcome.~~