最近我们在做一些国外优秀CG作品赏析的专题翻译,与ABBS各位新老朋友分享,将会逐期发布,供大家学习交流。翻译不足之处,恳请指正。
=v8#@$ z{tyB 国外CG作品赏析 第三期 Taliesin Mod.Fab
LrK6*y,z 原著:Matt Guetta 翻译:Archivizcn.com - DM
m >'o&Hj
|EF*]qI &z,w0FOre r,0> 40^ Matt Guetta分享了他的制作Taliesin Mod.Fab的过程,这个项目是由法国 Lloyd Wright建筑学院的学生们设
C' ny 2>uA )vo PH)! 计和建造的。Matt是作为一个个人的3D项目参与其中是被这个建筑的设计和可持续性所吸引。重点在于灯光和
UT>\u 44b'40 材质,这个房子最初是位于Arizona沙漠,他还给房子创建一个了与众不同的环境。
N{E>R&,q L2Mcs 作者介绍:
8Zwq:lV Q Matt Guetta 是一名法国的CG和3D建筑可视化艺术家。学习3D作为一个业余爱好。他很快就迷上了这个行业,
ZW*"Kok J6&;pCAi 并且于2009年决定将3D和CG作为他的职业生涯。Matt在法国也同有一个博客关于这个行业,并且在
+D$\^ <# Ugrcy7 mattguetta.com上免费提供
VRay教程。
m#DC;(Pn mltN$b%G=d Introduction(介绍)
fWF\V[ +9,"ne1'e Bd)Qz(>rw d-39G*;1 In this article, I will review the essential steps for the establishment of an architectural
Zwp*JH+G j$Gb>Ex> rendering. It took me three weeks on my free time to complete the work on Taliesin Mod.Fab. This
I.1zD aP 'mG[#M/Y was a personal project so I was totally free to do what I wanted. The goal was not just being
fg+Q7'*Vq Ah)_mxK realistic, but also, and most importantly, to express the architectural design.
IHMZE42 在文章中,我将回顾一下这个建筑表现架构的主要步骤。在我空余的时间里,我花费了三周的时间来完成
4E&URl0Bh 95[yGO>ZYz Taliesin Mod.Fab。这是一个个人项目,我完全可以自由地做我想要做的。我的目标不仅仅是要现实,同时最
!+=jD3HTJ UYD(++ 重要的一点是,表现出它的设计。
<s)+V6\E 7V%}U5 The choice of field of view is essential to achieve this. Here I am more interested in the
rwv_
RN }<9*eAn` technical aspects of implementation. The Taliesin Mod.Fab is a model of sustainable architecture
>-c ; :L&- created by the prestigious Frank Lloyd Wright Foundation (www.taliesin.edu) conducted by the
yE.
ZvvQA .^X IZ architect Michael P Johnson.
Vdjf
F&q 角度的选择是至关重要的,这里我对技术表现更感兴趣一些。Taliesin Mod.Fab可持续性建筑的模型是由劳埃
[Z`q7ddd^ Ha)eeE$ 德·赖特基金会(www.taliesin.edu)管理提供。
w3a`G| >t.2!Z_RQ HWi0m/J r77?s? I loved working on an existing project and at the same time with the freedom to interpret it the
l'fUa m,K0BL way I wanted. I Did not find any plans on the web and I mostly “eyeballed” it focusing a great
B5hk]=Ud {0WLY@7 2? deal on the environment, which I made up for this project.
U{gJn#e/. 我喜欢做现存的项目并且同时我可以比较自由的按自己想要的方式来表现它,我没有在互联网上找到任何方法
&Y;z[+(P qiV#T+\ 并且大部分是被 这个项目的环境而吸引,于是我做了这个项目。
x3xBl_t &ok2Xw ;>{BK, ' :lADUt _[zO?Div[ To start, this project has a history. Never being full of the exciting Arizona desert location
UaA6 ; 6Js
(see map), I started looking at the side projects of great architects to express myself freely on
]f=108|8 2uu"0Rm% a subject. So I searched on the side of Frank Lloyd Wright on the Internet and found the Taliesin
#Y`GWT1== Dp4\rps Mod.Fab. I loved it at first glance!
UM%]A'h2O" 开始,项目的历史。激动人心的Arizona desert(亚利桑那沙漠)的位置(见地图 ),我开始重点寻找伟大的建
&[ejxK" i;>Yx# 筑师在项目中自由表达的主题。所在我在互联网上搜索了Frank Lloyd Wright并且发现了Taliesin Mod.Fab,
qKag'0e w}nc^6qH 对它一见钟情。
:23w[vt= LldZ"%P <=2\xJfxB 5'=\$Ob "X<vgM^: ~5S[Sl The photos were taken by – Bill Timmerman.
=Ts2a"n Bill Timmerman 拍摄的照片
.=@xTJh IkW8$> Creating a realistic environment.(创建真实的环境)
iF0x>pvJ@ 1. The Ground Plane(地面)
y~eQVnH5W [{R^!Az&b< In order to highlight the architecture of the project, I chose to create an environment that has
V\Q=EsHj
`X;' *E]e nothing to do with the existing (Arizona desert), so I immediately start working in the field.
NA@<v{z OO$YwOKS First step, a low-poly terrain that gives the general form.
9x4%M&<Z9a 为了突出项目中的建筑,我选择创建一个什么都没有的现存(Arizona desert 注:亚利桑那沙漠)环境,所以我
w^BF.Nu D^m`&asC 立即开始从这个区域里工作。第一步,一个低面多边形的地形,给出了一般形式。
EU5^"\
:r+BL@9 ?:$aX@r VoG_'P 2. The Ground Texture(地面纹理)
$c1zMkY)u r$Tu``z \ Second, is the beautiful piece of land the house will perch on, and unfolding of UV texturing in
H6. vB?(| Photoshop. I started with the diffuse map, which is around 10k pixels. Then, I’ve created the
<(E9U. 7*MjQzg-P bump maps, reflection, and finally displace maps.
h
7/wkv\y9 第二,房子将会栖息在这片美丽的土地上,并在Photoshop在展开UV贴图,我从10K左右像素的漫反射
贴图开始
i6-&$< qX"m"ko 。然后,我创建了凹凸贴图,反射贴图和最终的置换贴图。
{P7 I<^, )VM'^sV? 8(@Y@`/ 1\LK[tvh Diffuse…(漫反射)
aSMSuX8
B@K =^77 ( jtkY_ Y{c+/n3d Displacement & Reflections(置换和反射)
G&\!!i|IQ VCCG_K9' K/D,sH! W<OO:B.ty In order to get maximum details for displacement, I’ve worked with 16-bit Tiff. In order to add
5imqZw :}[[G2|9 details and more randomness, I always add a little noise modifier after the displace.
QP[`*X 为了得到最大限度的置换细节,我使用了16位Tiff格式,为了增加细节和得到更自然的
效果。在置换完成后我
%
ovk}}%; :rX/ILAr 一般都会增加一个小的噪波效果。
CJ
9tO#R ;WpPdR2 lITZ|u 7LdNE|IP 3. The Ground Material(地面材质)
L7&| >5!/&D.q The shader is pretty simple, all work was done in Photoshop. The only little trick is to lower
ds9`AiCW> `[J(au$z the IOR (Index of Refraction) to 1.4 in order not to have a highly reflective floor. Basically
yYvv;E Y)L\*+
>"[ the earth is not light but with the ground (under the posts of the house) that can add some
lC|{{?m <#9zc'ED: glossy reflections and give the feeling of a mixture of material (soil and gravel)
9/k?Lv 这个材质是非常简单的,所有的工作都在PS中,唯一的一个小窍门是降低IOR(折射指数)至1.4为了不具有高
q61
rNOw_ {&c%VVZb:Z 反射率的地面。地球基本比较实,但是这个地面(房子的位置)可以添加一些高光反射并给人以一种混合的材
Ye}y_W [vaG{4m 质(土壤和碎石)。
1Nk}W!v Sg<''pUh 9_ Qm_ V]PTAhc 5.|rzk> ZF;S}1 ~pj9_I >CPkL_@VZ= cp?`\P 4. Scattering the Foliage (植物的散置)
o D*
' nfDPM\FFD The foliage was scattered with the MultiScatter plugin, and this way I was able to multiply at
JpDYB C
[2tH2*# random a few models of plants. The placement was controlled with a texture mask that I painted in
,(`@ZFp$ cR5<.$aY Photoshop. For better, and added, control I also redraw areas with curves to include or exclude
N%B#f\N Pm?6]] 7 objects in them.
Pucf0 # 植物是通过MultiScatter插件来散置。通过这种方法,我可以随机的复制几个植物模型。通过在PS里绘制的纹
>leOyBEAR e8lF$[i 理遮罩来控制位置,为了更好,并且增加控制,我同样重新用曲线绘制了种植或者排除它们的区域。
S,8zh/1y kDv)g ^2??]R&Q
Z9sg6M@s WWe.1A, The MultiScatter Blend Mask…(MultiScatter混合遮罩)
X!
]~]%K$y 'RA[_Z GS,pl9#V_ aH$~':[93 The general scattering…(大致的散置)
9BY b{<0tS Ww p^dx`! "L)pH@) y,x~S\>+ Here is the viewport with the various spline that control which type of plants goes where…
f
LW>-O73 这儿就是各种样条曲线控制不同类型植物放置的不同位置的截图。
CL*%06QyE eXd(R>Mx 3u^TJt) qcot
T\rq 5. The Rocks(石头)
vy#(|[pL{ %)D7Dr For the rocks I used a free script – Rock Generator, to model a first base. I then applied a FFD
{5udol5? Kq$Zyf=E modifier to add variations and get to the shapes I wanted. In order to place them accurately, I
.%rR .;2!c'mT9 preferred to do place them “by hand” so that each stone has at a specific place and in
~^S- 1Tq$ E[ correlation to the site composition I was after.
ry
?2 o! 我使用免费脚本- Rock Generator(岩石生成)制作岩石。然后,我使用FFD修改器修改生成的岩石。为了准确
?C:fP`j: WDdi}i>2 的把他们放置好,我喜欢手动来摆放以便于每一个石头都有自己的位置然后再组合。
ugB{2oq i kZ9<j+. pT@!O}'$ DA$Q- The Mod.Fab Model (The Mod.Fab 模型)
i4n
b# 1. Modeling(模型部分)
yZp:hs# jF{gDK The modeling part was quite simple, the architecture does not have any complex shapes, so this is
S}^s5ztm :ECK
$Cu a polygonal modeling from flat surfaces or boxes. The only details added to the model were
s~Wu0%])Q u rXb!e{l chamfer edges to minimize the hardness of sharp angles.
^la i!uZVa 模型的部分是非常简单。它的造型没有任何复杂的造型。从BOX或者平面基础模型开始用多边形建模制作。仅增
mnQjX ? }gi1?a59 加模型细节的地方是导边,将模型尖锐的程度降到最低。
Z"~6yF ys[i`~$ *K jVPs I"cQ5gF?A 2. Interior(
室内部分)
fteyG$-s m{lRFKx>s The interior has been dressed with some models that I transferred from other scenes I have
oj^5G
]_< +A'q#~yILa (books, vases, etc.). Some models come directly from banks of professional design studios. The
il IV}8 +2V%'{: models that were too low poly, were reworked to refine the details of the modeling. Some objects
9!O+Ryy?\ "]SJbuzh are not visible in the final images, however I like to have a complete 3d model so any view can
3Y1TQ;i,wQ PtRj9TT be considered at any time… so it is worth the effort of making it all work all round.
^B<PD] 从一些(书,花瓶等)的场景里提取模型,用来装饰室内。一些模型直接来自银行的专业设计工作室,这些模
++T
"+p gfdPx:7^ 型过于简单(注:没有细节),于是重新修改模型增加模型细节。一些物体在最终图像里是看不到的,尽管这
SmT+L,:D uGuc._}= 样,我还是喜欢任何视图可以在任何时候被认为是完整的三维模型。(注:作者喜欢完整的3D场景,看不到的
3P+4S|@q(4 r+[#%%}ea 物体不删除,方便其他相机的创建)
a!c/5)v( " ;-{~ lgCHGv2@ "xe7Dl QmWC2$b L<f-Ed9| `!Ua ScM pX>ua5Z 3. Metal Parts(金属部分)
bjM-Hd/K cOzg/~\1 To add a lot of detail in modeling, UV unwrapping and maps are essential. For example for the
X)FL[RO%q w"fCI13 base metal, I unfold the UV and added some traces of dirt, dust etc. It is such details that give
2^zg0!z M?E9N{t8)a richness to your compositions. We have to give a worn look, even slightly, to each object so that
j G+T. %3]3r*e&5 it feels natural. Nothing is completely brand new and clean.
rER~P\- 在模型上加了很多细节,UV展开和贴图是必不可少的,例如这个基础金属,我展开UV并且加入一些脏旧的痕迹
NY~ dM\ bq:wEMM4s ,灰尘等等,正是这些细节丰富了你的场景。我们必须做一个破旧的样子,对每个对象哪怕只是很轻微的这样
^bF}_CSE 929#Q#TT 让人感觉更自然。没有什么是完全崭新、干净的。
S|l&fb n D*|(
p6v1& Close-up on metal part…(特写金属部分)
w#W5}i&x H(MB5 7TP$ 7^HpVcSM Metal Reflection & Bump…(金属的反射和凹凸)
,&0Z]* <|otZJ'2r 6s'[{Ov 6{L F-`S% The Metal Material Slate View…(金属材质结构图)
ACgt"
M.3F X!o@f$ /=bSt " l.!Ed View of how the Metal Holes are Modeled…(金属洞的模型制作图)
hUBF/4s\ |l$
u<3
-7&?@M,u ekrBNDs9 4. Concrete(混凝土)
f7ZA837Un hc"6u\> For the step, rough concrete, I used Arroway Textures. Again, to add details I combined diffuse
W5|j1He& 3Qa?\C&4 and reflection maps with a Composite Node. This makes details even more marked and consistend
pG~'shD~Dn kwOeHdV^ with the bump map. This helps even more in cases there is no direct light falling on the
,!hnm RNvQ surfaces.
my4\mi6P 步骤,粗糙的混凝土,我用Arroway纹理。同样,添加细节,我结合漫反射和反射贴图。这使得细节更为显着,
22|"K**3J| .N!{ U 并一贯用凹凸贴图。这将更有助于在有没有直接的光的表面上情况下。
fQP,= 8!;$qVt W-ez[raY z,avQR& 'u1=XX
h w2C&%Xk Lighting & Rendering(灯光和
渲染部分)
6< >SHw 1. Lighting Overview (照明概述)
fx]eDA|$e yhwy>12,K Lighting/Shading is by far the part I like best! I (always) start with a basic lighting using a
~{P:sjsU pqH4w(; HDRI (made by Peter Guthrie). To balance quickly and effectively lighting, I start by putting an
@mNJ=mEV y1#O%=g override (VRayMtl Neutral Grey) on anything except windows. This allows me to quickly notice if
8%-%AWF] ]-a{IWVN the lighting is consistent with the volumes of the project.
9n 6fXOC 照明/阴影是迄今为止我最喜欢的部分!我(总是)从使用HDRI(由Peter Guthrie制作)作为基础照明开始。
0bSz4<} GI_DhU]~) 为了平衡快速和有效的照明,我开始把一个覆盖材质(VRayMtl中性灰色)除了窗口,这使我很快发现,光照在
JGgxAd{L lhxdx 场景中是否合适。
I7zn>^0} !+KhFC&Py Hm4bN\% CC#C 2. Interior Lighting(内部照明)
7xT[<?, T VeJ6 Once the general lighting is done, I started to choose my field of views and add interior lights.
]EN&S Wh 一旦大体的光照完成后,我开始选择我的视角和室内装饰灯。
KTv4< c] +>#e=nH There are little spots on the floor. They were all modeled and textured with a VRayLightMtl
x8/us > UWStzH< shader. I don’t want it to be a real part of the lighting job, so I keep it to 1. It’s here for
G=cNzr9 !g2a|g reflection and it helps me to do the glow job with a VRaySelfIllumination passes on post-
h>W@U9 m^A]+G#/ production.
4+Ti7p06&\ 在地板上有小射灯,他们都是建模和使用VRayLightMtl材质纹理制作。我不希望它成为一个真实光照,所以我
Azn:_4O r--;yEjWE 保持它为1,在这里它是为了当作反射,并且它可以帮助我做一些晕配合VRaySelfIllumination(注:VRay自发
/RqhykgZ >h%\HMKk 光通道渲染元素)在后期制作里。
=qX*] ]#5^&w)' Finaly there are:(这儿是最终的)
*%?d\8d 8Z!*[c>K-? HDRI (HDRI)
C fSl
54 VRayPlane in Skylight portal mode (VRayPlane 天光入口模式)
"*bk{)dz} For spots, 34 very little VRayPlane (not visible in reflection and directional set to 0.5)
_uJVuCc L;Vq j]_ for more accurate shadows. Spots are a lot but with low values. This gives the feeling of a
!EM#m@kZ{ ] 9@X?q diffuse lighting.
z^3Q.4Qc6^ 对于射灯,34个非常小的VRayPlane(不可见不可见的反射和定向设置为0.5)为了更准确的投影。射灯很
~$ *`cO ]< +3Vw 多,但是值都比较小,给人一个很有气氛的照明。
.<dOED{v 3 VRaySphereLight for model+modellights.
#!L%J<MX 3 VRaySphereLight为模型+模型灯
KqK9X (FG^UA#' ;b| E#aZvE 3. Light Balancing(光平衡)
*73AAA5LKa !%V*UR9 To balance quickly and effectively lighting, I start by putting an override (VRayMtl Neutral
@C07k^j=U fRFYJFc n Gray) on anything but windows. This allows you to quickly notice if the lighting is consistent
2n(ItA 97(n\Wt2 with the volumes of the project. Once this is done, I go often on the shaders and refined
TGtyJ3x\ LjCykk lighting.
~n8F7 为了平衡速度和效果,我使用一个覆盖材质(VRayMtl中性灰色)除了窗口,这使我很快发现,光照在场景中是
5/k)\` uZ-`fcCjD 否合适。一旦做完这些,我继续调节常用的材质和精致的照明。
bYK]G+Ww o;%n,S8J|^ 4. Rendering (渲染部分)
b~F!.^7Q <e[!3,%L I use the method “Universal Settings” to neutralize the grain. Simply put it is the
??q!jm-m f x%z|K antialiasing that neutralizes the grain, but since V-Ray 2.0 this method shows its limits and
[GOX0}$? Q.*'H_Y explodes the time rendered. It was my first scene with V-ray 2.0, I did not know it yet …
xu`d`!Tx </8be=e7p ForGlobal Illumination, a basic Irradiance Map / Light Cache including the “Retrace Treshold”
\\y}DNh [8xeQKp4 one of the new VRay 2.0 that eliminates the artifacts generated by the parameter “Use Light
aB/{ %%o (N&k}CO]W Cache for glossy rays”. On top of that I always go out a lot of layers to have a maximum of
rE!G,^_{ bM*Pcxv elements for post-production. Use pass is for me an indispensable element for success to improve
Xi 1q]ps eA3`]XP.`b my reviews.
wghFGHgw 我用“通用设置”的方法,简单地说它是抗锯齿,但是自从V-Ray 2.0以来,这种方法暴露了它的局限性和激
'YBLU )v[ b(+w.R(+Ti 增的渲染时间。这是我第一个使用V-ray 2.0的场景,以前我不知道……对于全局光照,包括一个基本的
yfRUTG ;'b!7sMO~ Irradiance Map / Light Cache(发光贴图/灯光缓存)“Retrace Treshold”(注:个人理解为正确的光线跟
|SSfG~r GU;TK'Yy? 踪计算)新版VRay 2.0的其中一个,“给光泽使用灯光缓存”。在后期处理中,我总是有很多的元素层在顶部
n $D}0wSM/ Wo1V$[`Dy ,这些对提高我的评论来说是成功必不可少的要素。
u"Hd55"& q\z=z$VR g'd*TBnk ]HZa:aPY ZmR[5 mv@ sJjl)Qs)T Compositing & Color Corrections(合成和颜色校正部分)
"0!eb3n 1. Channels(通道)
qMW%$L\HA NdXy%Q One advantage of Linear Workflow is to maintain maximum flexibility in post-production. So even
y9re17{
X 5LhJ8$W if a camera is on or underexposed, it will be possible to fix it in Photoshop without losing
BF1O|Q|d6 u`H@Q&(^wa quality. The first step is to set up the layers. Ambient Occlusion, Reflection, Refraction, Z-
MTFVnoZMQ_ E't G5,/m Depth, etc..
&L~31Ayj& 线性工作流程的优势之一是在后期制作保持最大的灵活性,因此,即使一个摄像机曝光不足,我也有可能在PS解
JXy667_ OSh mrz28 决它并且不损失质量。第一步是设置层,AO,反射,折射,Z深度等……
*a0I Z J-%PyvK$? But all that doesn’t mean that you don’t want what an image which is well exposed in the first
XX5(/# hb8@br place! When I’m not using DOF, I’m always using the “f/16 rule” It’s really simple and can
bHo?Rw!. $O</akn; really helps to add stills without checking render again.
@LMV ? 但是,这一切并不意味着你可以将你不想要的东西都暴露出来!当我不使用DOF(注:DOF是Depth of field 也
/:L&uqA m4.V$U,H] 是景深的意思)时,我总是使用“f/16 rule”(注:f/16相机里的光圈设置)它真的很简单并且能够真正有助于
f'yd{ihFp m?CjYqvf 添加效果在不要重新渲染的情况下。
ez9M]! 8Lt |2]WA'q )Zr0_b"V:e DG9;6"HBX 2. Compositing(合成)
lz5j~t5>Q
NOr*+N\ The compositing is clearly the most important step of architectural image, this is where the
1{glRY' }XE/5S}D atmosphere is worked. In 3D, it is sometimes difficult to get certain effects, especially because
1pr_d"#4 Re ur#K they “too expensive” (working time, rendering etc …) so it is best to have them in Photoshop
'0]_8Sy& 7ZnQ] ?
(or any other compositing software ). For example, rather than using the VRay Fog to create a
xeh|u"5 ^%@.Vvz< light mist in the background of the image, I use my Z-Depth pass. I begin with the reverse, then
|0 %UM} ,i.P= o put in overlay mode, then add a color saturation (with clipping path) to the slightly blue tint.
&Wk<F3qN 03;(v% Guaranteed results! If I were to give advice, it would be of learn to use all the layers one by
s3^SjZb )HE yTHLtJ one.
96j2D8=w 在建筑可视化里,合成显然是最重要的一步,即3D中的气氛,有时,它也很难得到一个想要的效果。特别是因
>o7k%T|l$ LlqhZetS 为他们“太贵”(工作时间和渲染等等),所以最好的方法是在PS中去添加他们(或者是任何一个后期合成软
&x #5-O' PGGJpD? 件),如,和使用VRay Fog(VRay 雾效)比较,在图像的背景创建一层淡淡的雾气。我使用Z-Depth( Z深度)
VxoMK7'O=/ {n'}S( 然后反相并且使用叠加模式,然后添加一个略带蓝色色调的色彩饱和度(用裁剪路径)。这样,我们可以一层
b"b!&u %h rR'*nG 一层的学习和使用添加效果。
kE}?"<l [<hiOB W2^R$"U 04:Dbt~=?p s0CRrMk .jU9{;[ 3. Spots in After Effects(AE中的射灯)
)I@iW\`7 4|qp&%9- Once this is complete, I go on After Effects to add effects, especially depth of field, chromatic
hwJ.M4 +e\u4k {3V aberration, and grain lens flare. Then I finish with some pretty basic color corrections: Levels,
lU?"\m Ua4} dW[w Curves, Color Balance and Channel Mixer.
;8!D8o(+ 一但完成合成,我将在AE中添加效果,特别是景深效果,色差及镜头光晕,然后我使用一引起非常基本的色彩校
<]<50 /cg!Ap5 正命令:色阶,曲线,色彩平衡和通道。
OA8pao~H W{%M+a[#l 4P.ry|2 ?lTQjw{ It4F;Ah 4. Final Result(最终结果)
KS%,N _F< !({[^[! Just a quick look at how two POV’s look in the viewport…
v>,XJ 7P 只是一个快速浏览两个视角。
V
Bg\)r[ ]`lTkh U+\\#5$ oRCj]9I$ Here are the final images made in this set… (originaly at 6000px size, but reduced to 1200px to
FvRog<3X _- { > e be friendly online).
. }^m8PP 这里是最终图像(原始6000像素尺寸,在网上只能降至1200像素)
0;)4.*t
gx3arVa -2f_e3jF h/5.>[VwDh oH$4K8j K;Fy&p^d H}`}qu #~V [/img]
r"c<15g2' !2=<MO ]U82A**n I hope you enjoyed this article, and that it helped you in some way. Please feel free to ask
:A"GOc, E{*d`n anything you like in the comment section below.
$cflF@3 我希望你喜欢这篇文章,并且它能够在某些方法上可以帮助到你,请在下面可以随时提问你想问的问题。
vL}e1V: EZypqe):/C ](-zt9,
N; #TS:|=