From cd790f9d4818917f7904e1eadca393bfc44a9bd6 Mon Sep 17 00:00:00 2001 From: PoChang007 Date: Thu, 7 Oct 2021 14:33:13 +0000 Subject: [PATCH] deploy: 97ff3ba0918f5fd54a0aeb2fb346f623046d8941 --- en/.doctrees/environment.pickle | Bin 83618 -> 85370 bytes en/.doctrees/gltf/format.doctree | Bin 0 -> 18702 bytes en/.doctrees/index.doctree | Bin 11629 -> 11651 bytes en/_sources/gltf/format.md.txt | 99 ++++++++++++ en/_sources/index.md.txt | 1 + en/gltf/0_36_update.html | 10 +- en/gltf/format.html | 256 ++++++++++++++++++++++++++++++ en/index.html | 1 + en/objects.inv | Bin 862 -> 895 bytes en/searchindex.js | 2 +- en/vrm0/0_82_runtime_import.html | 10 +- ja/.doctrees/environment.pickle | Bin 84173 -> 85925 bytes ja/.doctrees/gltf/format.doctree | Bin 0 -> 18748 bytes ja/.doctrees/index.doctree | Bin 10727 -> 10749 bytes ja/_sources/gltf/format.md.txt | 99 ++++++++++++ ja/_sources/index.md.txt | 1 + ja/gltf/0_36_update.html | 10 +- ja/gltf/format.html | 257 +++++++++++++++++++++++++++++++ ja/index.html | 1 + ja/objects.inv | Bin 891 -> 921 bytes ja/searchindex.js | 2 +- ja/vrm0/0_82_runtime_import.html | 10 +- 22 files changed, 737 insertions(+), 22 deletions(-) create mode 100644 en/.doctrees/gltf/format.doctree create mode 100644 en/_sources/gltf/format.md.txt create mode 100644 en/gltf/format.html create mode 100644 ja/.doctrees/gltf/format.doctree create mode 100644 ja/_sources/gltf/format.md.txt create mode 100644 ja/gltf/format.html diff --git a/en/.doctrees/environment.pickle b/en/.doctrees/environment.pickle index a8da49e044c6175825680014292aa870447b5fcc..4e86cd859b8d34b7cbcd59db894c25fdab075595 100644 GIT binary patch literal 85370 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 diff --git a/en/.doctrees/gltf/format.doctree b/en/.doctrees/gltf/format.doctree new file mode 100644 index 0000000000000000000000000000000000000000..bcf363825a20ccadf083454285f8a7eb43df4d58 GIT binary patch literal 18702 zcmeG^Yiu0Hd7>mf?)Z=>)pCoIW*ysB5H+%a}ow*l?_>>%H5#+g6yVQGO!(;2%AKm1XRn1(Sk`=|Y6yntB zfMVsn5;5KS=js!c`pNn@P1*8-V|jL-)ag3tkykZCv58qfTBjq}-PH_dDuC~INZ!>f zQ-G_zYMZyqwb&wr&X&& zrfttOi9Nkw+4Iv+nA($v9}mBPIcK_PxP|G0WtU`ks-)D_j5_4yK=2fZAs21Atj1MV z`t^@}WbW3hFWq|UwcE8<{mQHUQsrj-jpf=ozxv$mm#a6c*KeQt^z!M8e)Y4^?Kb_k zU-=!sde*PK=vOcMwHN%_6$W_qU*7zzU%Bj8uEOo|>F52*S-*P5uUzq~FZh-3A=FZp z8(|ymGS$eM`#~Mk>UMR5x?@h=i3U?204u2vf^Y1G|M$cH82nFw1=Kz2BxoMGs(Vq3 z2nL#*;*PBLK6SBY-8$6v@*jP5`OR~F^KhEnMWMkoxOki%nlCV1lSQgv z4lowj6pg~d;u162HxNBqT7-tLh@zq6F1I$%ddcc029{&Jz&fV=Dy2l$Hk{NpSuKH#zemgn)EC5=4+Rh zKmF2?--H;D;OS9j1L0`n>NZ;Lwt?!x+5Q)3gPT4S_ij)?PdefV#?ICb-;AjhJ@`HC zQIRb4{}$hE6u**XV6@peyADR0ZM4vx0E%g~TNGRLk)m4)mgSn3OC-pF1X3n1^YkXMe;w^X;eO&L0i!n1uJ&<>nEdZj?ROs?YY&UZAKckfe{B@yglTOOO*F4_xspUkfu)FjYt|U;WCh z*RS0C0(8Yp0r@H2LI}sI?4uugVs0L&{>o!>j~xC4yPXZlv`#*7;@EF!F0o}J?p+^9 zE<&i)wSYuw$07K9a}*{9=<4Ce7wn8EBZlbtKKLE;qo?Kp>8;^zqLO>Z8Wpb`zQO3t7h`K(vXj@)67Ifjz1reFI45v); zEe}^57h&OO84H@?s`X#{`cDgp(0)-K z$Gk*0xv+qrlnt$D&KRWNLSAoNwdvb9?X4}C^!uTy$r++x>05sO)biEqLZ;w0lIiC- z-h%>fvL$3j-zOltEz^eOFP{wsV%L#0k8^2e1#d~E`H+C*kw4liJ9$kDwH@3=8h;ZR%jkb7 z_)Dts?+A!4Yn=A&DjFaE)m@=T>9?1@hz)NqeJSQif6L|iYr$nwx&Bf>+NBcy?=NRnUT zlFSIcl1lRP0^;sV@?MG0BSOZcT6s!9+^JTcXu;GuK2rtFAX!H{0Y4-05hvCX+1o|5 z8Qm7xlS*a@h;B=^N-Rz3!wBmP_8g{^mPPr>Fmxks z2GnOa;_U240Qtkl<$TlBY$V(Va3 z*ZP4lL^9XfIr}qBT>O3Gq+I=n#`|&gE^J)rKN4(){(KKD{J5eIgIhN0d(9KM)ptR* zZeZi;D1NPJjx!=4LaQ~oed1k^!4^!NGsddBAbYq>69R8C_s{4*D<)I!%_;43wU=;@1?}D@$-Skr}fxY$} zkkyuGHNkCC1uqGRJ5}(>7EGN3I-OTNbG~5?7;lR5+7}UVM*o7qpH#Ms0;1cptuhJx zeJ;_r1%F8;x+WmHEK$Nq;Ge#W{3Qz46Dbkeq*n6<#GP90pIR^_iZS{%Q=-^rzpXUN#+oA8G%j0F;7=->A|Sdg8yp4T z$9VC`XSnojY>ecqaQQwdxJ@eGZwrVn%a<^l*55_`-eCxK2IE^QZ6?1fgEjA}=s#@P z7ie5z>VF0u+HR&~nzk`I97Wq+KJKcPc@U3qRZp{HNP5z-$902^a}5<38?0gbYp{dWH)S0_zcW1!!h?8zS7prv67; zDeVD3KqwyA#Pw`5%dt)YRjoWe(a1~p`DmmsdGHGiW1_7Zn8l_%vkY|<<71DF?QN%- zP(`4aLq{i$>}#)?L+#a)PN&i0P)gwtJaIlAH#WBn+Kkv>749ai#{|Pxl8ag%9`GJh z!nlX{W37^OY%EaCyo&zm_L=mNpiGv)<|B+wG?jD&@&5~B?goXs|2 zi0Qs97AH1hAw|2z_h3iCv=+=5$1~YyBld+024e~moH8s~amGX16MLB;5Ks%6t7fe- zF~`RqF|@oUf6Ov8WeSdBLjaH2xv`0?>|_hv{4DYm4hy!50AJ%di{cqR|zHy-v|7Cy<7_wRPX1gmAG12w$ZIU@;44#+s_0^#4F2N%!9L zf9EXyqzNc?xO)uBDOmy2HJIT--S3UhT)J6@q8%s-<;9{+)x3%O3uEg2u+9R#^x{`i z&RI2XDzH_^zL$%wdFMrm7wr#9Lct_KJ+G?Bss?q`hFU_~{~OA`b2h|>YeR1P2p{ba zmakFi811}R6~yrDLONP{szGT+3^$ad9f;wLm1wmf3Cpg6+OIegtW{$|kJAx27k@yP z7bQ3tZ`t7MBTxaZ#u^AlO6Rio7Sd354tq8ksF!AO(IN7}Vt92g%HBgq@}7-l^O7i% z9|~J|u{<4ci0f)*5#AFpDhmG#wq?4+gj&45CuPHfDtS=?xM>bb+X$4t%dTbD;RXh3 z;<$3D3^#+Ej0Cvn;Wi!IdbR;~!>*N=u(%$dI(1ec5Gyx~o3-l zI!YE{{{TdBJtyqcOM4ZP^NK)jWI?t~P!ukgh+Kk}6bw#zf_&Fc(-F-qd#(ial9mF! zV8HX-!sIVZIvQMWZ+s{b+qP^;l}*JUHYgcc&AU)lVR>#NmR^RXPIojtX+oht2{BAZ zINped5PEy#gC=0Q8D(%lQ7Wj&U_#JA@NNjY)h2n%RwRYMIza(48hFMW z?aNzc0mKB2Xo>`5dqG>Qt9^6?j{-?i6J3whox_S(DoeuaK(VX=mXgFaWjJ#*M>nw+ zHuR(Uqo%S$JjIeAl|Zk}WD#~&2yFXAkjzW+u5?U;q`~}ilcZ=4Rzrax0hj$@G^l&& z5D4Rd|H~}JfY$`wBs{XmUK6nmuYd?7EbIdoMr;b0d=OruA#TA%M=_+pbIc+*qM?;E zxBmF%F*;Hv<*1kzg&D$@oD95UWYDbYx@Bi(dU|1DVTuoSQ-kw=;=(?>3s;n z7y$^$B_%ME%Q7h`PriTOA<*lHUC1|)!Ip^3_K=Kg!O^ZMjkpCyMs-UDkVrwz7{n0P za?K9V9pI5ADa?%#UWuphGjy|a+;m}_Q?;TBRX{3u??%Hy#~*S^GKAT0c~C^`fSR_l zdwwgyR-YUwc1K=?cVXngcs$xb$4r3$Jr5OXXV{BK*xN;dQQ!>tj+NKU0(d|;ENsDn z!trvA{Wgs67gVz*$^)I|?`gY(epti)@0IfGBy`{c$Jp%E1?$+~3?4 zHzxrq8c2KT`h)wz-G00jd6`YJ&O<=Adoc!Wp%zaU`Z>(ykS#!*(TJ^*X0lhI=r6+K z@Vpi65#-^jk@}^TsJB770)3BeY0v?G!3w^Nr9}e$GeE8_zb_*nXqZ9>9?dD>=>F5P zL;G0OI9fuT51RV1GrsW!sOkFwg}xU*#_;2P`0)UKY{!rL;X|GGXbM4a&nE(!V*qok z^Bn7V+EX7yl!y)9M53rqGj!?+j*HD+=5?GDd2~1)JBU>O1Aqz`9L{TyX3&X%d3;ER zajXnM(AgLonU2QWd2faTr+MHJCTgKx4AtEjk&RT0ERR#^mP3ya{x!h-0Yb7!Vs>qE|D&OPUM z{`Wt3=I_35`>kKw&dipr2OPE8`HiDTizDqL6I0`A5poViWVf!3Ic$RTT&Sqf6!tsZ zkP}sY&8@}o?kSWTd%(775uR;wTUdn%%#pDLapet^8{+a)YI127Uhe4*!d&xq!4FrP z3sSSlc}-B~OxP0!uR(-z(;--JUaF7dI@?ZRCxs3jy#vvHSlAqw8>oK;y#rosPDvR` zDlARVs@(=O3F>Djqyc@YAD7zTtx_#~1zVJ`(o1Pi_a37*Z%}6jSpih#uvFCBrl_r^ z4J-E=l@qJm&E&dv7xcM0rBgcM1qt+u&kQsaL6j-WgAK5860DTL{A4aE;id|3-4s!uNjE3rj zK{y`r)oQq8ddYr<%ORh*z@=CsY#NqA0aMP|^>VJDoNa;cFg-7gPYjJ68ycP^qu45S zy{PUduC7j_N6~8tf;BSD>>8P>;)0zK2g=+Z@vfEm5RON@;^R-se6U{TbCT)fGApNt z)u|)edXWVb`P(Xy1w-T=F48t`Qg}k)5rsND zk*u1+T?)4`%x{=h$0v^tPnWXnbL#7$U_~+$tgtWUjuJA;zqg~gNO delta 1605 zcmZvcT}%{L6vv%mS$EOh9b`b$-5uCrnO(qDN=QknEJfDPmULVUOKd4c&~0yTiXxQO z2aU8e{lpkKYhvt2eCj*tTay}Xjl}rXCML$1SWVN!mnKagd>|Tn&YgQfN+0IT%(?gc z&+nddW@ZNedc!weer9yump7}6yhmHNZm5*z7x2z6lKJ_E6K1&WcGE(Xcdb_6A=R_+;d94=gWjIk)t(5;AVG)RGoVA>cB1{XX~o+o6Hblt z0-Q?30HPhi2~TKT2|+3v(#KZCXQk?z`0-eK@Cz^gGZpWFbjpxVRtYKZ8lj$eXYjly z^qmrdd$ExIwTL(5L0(cIuoO=jdnjP#bXj=8>I$kV88B`2X)U5-PplpKbtUVyYL`^H zimfWZLhV<+N2msUbtdq-ZhsETf6wdERm!r`rQC9tmOS34N;oZMz?H&_xQcbo?+H|ui5^$N11By9h}xHz!C}~Ar_`a9bAxcoLo4SZd}^oaFJP7t z);Ls}V$G}qg%pK?=NI8uyIb1@X8q&9D_-gznYvMM@0F=@xcI-^X*n}9$v3qF@E~bx z@1TGMiH3Bb=qZjsU&D*q1k5(PYz&i&J~pejAB#DN@J?9FXur&~kIth;R5=S2hSgpk z(GQ#&Z9klJ?C{&Tq)N%p!B38@eS-wG+L5_bQX!lb2;U<@Cdp?oVm2^#_~5&T4i=A6 zariS>1;i>57F0MP?ew!W1&O$Z=GC-`G{fn-)igKYWV%kfwT9-Jpt(ylwnyWiERIYZ zVE<(qK$Zo;az7Q)E)z?oocV!emO0B&Gq1{(1E*=bKa1z&oiNz6P1_4!Hhu1k_;8jl zRkXuv%^kj4@1+`gHzZ-9IpzzKBj0R}atoiP*zd>*x%;FR(%(%MPpTl$HfBl8=X zn`A;bXuN{V6*9k|nO#3QGB*BRakAv{c8Y5wqoXokDubb|@e?HJ3OQFuxkAPj5-xAU zonE9XqFnwKW^(y3*(sJFDB@uoJ($sDnDg``VCZixU^x9#`Hy6>WQe7P(^tSVghgK^ LVxh@FB=i2i4DzYE diff --git a/en/_sources/gltf/format.md.txt b/en/_sources/gltf/format.md.txt new file mode 100644 index 000000000..07b765e8e --- /dev/null +++ b/en/_sources/gltf/format.md.txt @@ -0,0 +1,99 @@ +# glbフォーマット概説 + +JSON記述部と、画像や頂点配列を記録するバイナリ部の2つの部分からなります。 + +gltf形式では、URLやパスで参照する方法で外部のバイナリデータにアクセスします。 +glb形式ではJSON部とバイナリ部をひとつのファイルにまとめていて、バイト列のオフセットでバイナリデータにアクセスします。 +プログラムから扱うには外部ファイルへのアクセスが無いglb形式の方が簡単[^VRM_glb]です。 + +[^VRM_glb]: VRMではglbを採用しています。 + +## glb形式 + +``ヘッダ部 + チャンク部繰り返し``という構造になっています。 +実質的には、 +``ヘッダ部 + JSON CHUNk + BINARY CHUNK``となります。 + +ヘッダ部 + +| 長さ | 内容 | 型 | 値 | +|:-----|:---------------|:------|:-------| +| 4 | | ascii | "glTF" | +| 4 | gltfバージョン | int32 | 2 | +| 4 | file size | int32 | | + +チャンク部 + +| 長さ | 内容 | 型 | 値 | +|:-----------|:-----------|:---------|:--------------------| +| 4 | chunk size | int32 | | +| 4 | chunk type | ascii | "JSON" or "BIN\x00" | +| chunk size | chunk body | バイト列 | | + +### python3によるパース例 + +```python +import struct +import json + +class Reader: + def __init__(self, data: bytes)->None: + self.data = data + self.pos = 0 + + def read_str(self, size): + result = self.data[self.pos: self.pos + size] + self.pos += size + return result.strip() + + def read(self, size): + result = self.data[self.pos: self.pos + size] + self.pos += size + return result + + def read_uint(self): + result = struct.unpack('I', self.data[self.pos:self.pos + 4])[0] + self.pos += 4 + return result + + +def parse_glb(data: bytes): + reader = Reader(data) + magic = reader.read_str(4) + if magic != b'glTF': + raise Exception(f'magic not found: #{magic}') + + version = reader.read_uint() + if version != 2: + raise Exception(f'version:#{version} is not 2') + + size = reader.read_uint() + size -= 12 + + json_str = None + body = None + while size > 0: + #print(size) + + chunk_size = reader.read_uint() + size -= 4 + + chunk_type = reader.read_str(4) + size -= 4 + + chunk_data = reader.read(chunk_size) + size -= chunk_size + + if chunk_type == b'BIN\x00': + body = chunk_data + elif chunk_type == b'JSON': + json_str = chunk_data + else: + raise Exception(f'unknown chunk_type: {chunk_type}') + + return json.loads(json_str), body + + +with open('AliciaSolid.vrm', 'rb') as f: + parsed, body = parse_glb(f.read()) +``` diff --git a/en/_sources/index.md.txt b/en/_sources/index.md.txt index de619c407..984808da3 100644 --- a/en/_sources/index.md.txt +++ b/en/_sources/index.md.txt @@ -29,6 +29,7 @@ build gltf/0_82_glb_import gltf/how_to_impl_extension gltf/0_36_update +gltf/format ``` ## VRM diff --git a/en/gltf/0_36_update.html b/en/gltf/0_36_update.html index df735708d..e5f3c3fb8 100644 --- a/en/gltf/0_36_update.html +++ b/en/gltf/0_36_update.html @@ -15,7 +15,7 @@ - +