From c5ce6e8a2c66701430504bc42289007185235db5 Mon Sep 17 00:00:00 2001 From: yyc12345 Date: Wed, 27 Dec 2023 16:05:35 +0800 Subject: [PATCH] add border in bme --- bbp_ng/UTIL_bme.py | 13 +++++++++++-- bbp_ng/raw_jsons/borders.json | Bin 0 -> 10062 bytes bbp_ng/raw_jsons/sides.json | Bin 0 -> 5774 bytes bbp_ng/raw_jsons/trafos.json | Bin 8926 -> 9125 bytes 4 files changed, 11 insertions(+), 2 deletions(-) create mode 100644 bbp_ng/raw_jsons/borders.json create mode 100644 bbp_ng/raw_jsons/sides.json diff --git a/bbp_ng/UTIL_bme.py b/bbp_ng/UTIL_bme.py index 7e62a12..664c91f 100644 --- a/bbp_ng/UTIL_bme.py +++ b/bbp_ng/UTIL_bme.py @@ -293,11 +293,11 @@ def create_bme_struct( # if NOT skip, add into valid list valid_vec_idx: list[int] = [] for vec_idx, proto_vec in enumerate(proto[TOKEN_VERTICES]): - if not _eval_others(proto_vec[TOKEN_VERTICES_SKIP], params): + if _eval_others(proto_vec[TOKEN_VERTICES_SKIP], params) == False: valid_vec_idx.append(vec_idx) valid_face_idx: list[int] = [] for face_idx, proto_face in enumerate(proto[TOKEN_FACES]): - if not _eval_others(proto_face[TOKEN_FACES_SKIP], params): + if _eval_others(proto_face[TOKEN_FACES_SKIP], params) == False: valid_face_idx.append(face_idx) # create mtl slot remap to help following mesh adding @@ -395,6 +395,10 @@ def create_bme_struct( # add current face indices count to internal counter face_counter += indices_count + # fill texture data + mtl_name: str = _eval_others(face_data[TOKEN_FACES_TEXTURE], params) + f.mMtlIdx = mtl_remap[mtl_name] + # return data once yield f mesh_part.mFace = face_iterator() @@ -403,6 +407,10 @@ def create_bme_struct( # then we incursively process instance creation for proto_instance in proto[TOKEN_INSTANCES]: + # check whether skip this instance + if _eval_others(proto_instance[TOKEN_INSTANCES_SKIP], params) == True: + continue + # calc instance params instance_params: dict[str, typing.Any] = {} proto_instance_params: dict[str, str] = proto_instance[TOKEN_INSTANCES_PARAMS] @@ -414,6 +422,7 @@ def create_bme_struct( proto_instance[TOKEN_INSTANCES_IDENTIFIER], writer, bmemtl, + # left-mul transform, because self transform should be applied first, the apply parent's transform transform @ _eval_others(proto_instance[TOKEN_INSTANCES_TRANSFORM], params), instance_params ) diff --git a/bbp_ng/raw_jsons/borders.json b/bbp_ng/raw_jsons/borders.json new file mode 100644 index 0000000000000000000000000000000000000000..02feca45ce977876dc384aa8b6e0793b007e9ea4 GIT binary patch literal 10062 zcmeHNTWi}e6n-D{KL|awkY;JSunQE%9>N~R7+YZvZ3#{y*QSmgY$e?o{qH+RvSh`U z9NS5|4s6PD@n;>Kb3UD0c761U!1YJI;9D9lSjC?Samgqh^>*voOA|-G|t~K0+iR zrkwra>$G0y8#+M_T_vkef<+O_vKzXOaL_OfXR{=3uVX=>{B#Q=zA&eJ_PvHOa0l65EGczveb=MoqM)h4mpcC7M5JK^` zjs-Qa$_eiLScS^C536Evk}e?`RdY2yftT1lG8POp9M|j~lzcK+K_Iy)P-gq9$Ks=@ zCJp0^dvRl$xyqjmZrI$b^M>Z-8#^y`MPw;Zgq8E!1bFMNQUoy1D76KX077Vwn9pS` z0B~m$dU56hl`w}2BOZ4NaQmD8{Q1ler@=-Ev=J@a9zNsQ zsKX!1`paa)FyM%AJUSsCNt*CH!=1jb1ctIZE&Oyg1sAiM1j_zrkBp$*A^xP1% zF`9MeHS!tiTA8^jfxlQbPueQx7_p`lW2B{IZL(wbU@Rhd#6uq8OoDzDl?{{$mEVmYnq7w70i;1(>K zqpnv0Ba#^;@yRSo=J!MA78cC+))8;Vjh%{1iX2Sw&(4WXMR6&)o#NGw9G6w}#rNvk zsW>(*4b*nbk5CNN?w-`4l(T;Zj0Y?wftQgiSu)W!WsUsZaY%)mH0p5tXjJK@)u=9q zuZ!S-c#9d!hsH)&Js_0qo|Yn+DSD?A$&*?sip1M{ZzTokP%A_7r6i&Fcx$9loi-}v z3{^v`Ex0*G*}8!;MMT^B_CPI^Y{#uS@1CJ(zE}u?9#z9*2y%JqGwg!^b*b(OfNn=4 zmPdTVJc&HsG&hS9V4D>h>=bLKIQ} literal 0 HcmV?d00001 diff --git a/bbp_ng/raw_jsons/sides.json b/bbp_ng/raw_jsons/sides.json new file mode 100644 index 0000000000000000000000000000000000000000..2434e876b332c89fb62eda3d332c4a0aa3a731eb GIT binary patch literal 5774 zcmeHL&u`i=6uwvL|6ut9Qee=nnlz0acIauh?bcQ(YYbQo333cfn)<)*IgafYNT`Fu zdMT9$eg57L`~Lchz~`_2QvXt(uuSp=XM%nqRK)xFBF%F#FJOR1$go)D`=_{I zV3uvu6c24;5w8mvxOeskIOpG#$!w@i$7F~6r)-+G^YyTe8wT0&~sfl4Vc zLEu91Ti1OX=(kYJ?QZT70+ov&dO-6ChiW5((fopRqU9M{E2x+vq>yE@1c})w4A{tBJek|Tnx{kz5|?= zxW;r;gn)KPSjJgMSN{tU`x^-BznMB~g}CT}g*|HlY|-)}?kr@V3L)7axfQBGq7U>= zbx}W|m^{$NaO7EH!U^Pm6OoS*nd0JXBW1g52s%4jN@~~yp-kw&mKic4I59y4_|I~I z66qgNjn#?i;8BUC&D<`SRX6&X!@oA0?un0RAFO*<*+*cvILp)hFGz6;2RzWlb0dOre6Sy8+$BFIUf zB616vsWDvpOH0!+Y`1SVDvjSIbdZDGBi<{@vqHvMRqP(Mk;zx+=zMSqpf3P^=Thct zTv%w|R{*+#V+f=AzODfFJn4P|&_bq3;(FE9X;&S8OOT#UzgF2NS*e!L$Eo3UhO~Q) zSS?Il_^c4rJ9{*ikc~>8%cSI7RN6GbV|0pw$h@+-+5-u-u$OkqK(%`29Id60GkWEA z$7{_^y{Yl5Nw780|3RyKgBNM353Wg$oz~U_BDAuyvHCWhFmN%No`&w##0kXkT~!qG P_~I<^?lf1S>#N6q!<%1x literal 0 HcmV?d00001 diff --git a/bbp_ng/raw_jsons/trafos.json b/bbp_ng/raw_jsons/trafos.json index 6ef2a7f76378ec26b90c5b70cdcf08e7ac1d6bd0..67fb8a241e4fc65cfa3aa8de3330865e6f748c60 100644 GIT binary patch delta 246 zcmccTy3~Ec3C77%ERvg#GitKQY2@XXD5NDOr$!sbYAWOxDP*K(re~BW*xD)>=ow5F z3XNk<}SvQMXx;hlL5rEE6nhz;@>Hp_pZgOI?G&G*+-@M8$f+ XjLD*6zc$a7nZg1R1#u>8C~X4(fTc?T delta 130 zcmZ4Le$REo3C7Kj7&X`?bF*