Thai3Dviz  

Go Back   Thai3Dviz > 3ds Max > ห้องสมุด (Library) > ห้องสมุด 3dsmax (Max Library)

ห้องสมุด 3dsmax (Max Library) บทความ กระทู้จากบ้านเก่า ติวเตอร์ 3dsmax ที่น่าสนใจ โดยสมาชิกไทยวิซ

 
 
Share Thread Tools Display Modes
Old 17-10-2006, 06:45 PM   #1
keano-manz
เทพบุตรระเริงรัก
เสี่ยวขั้นเทพ
*คนบางอ้อ*
 
keano-manz's Avatar
 
Join Date: Oct 2006
Location: Ratchada19
Posts: 6,706
Blog Entries: 14
keano-manz has much to be proud ofkeano-manz has much to be proud ofkeano-manz has much to be proud ofkeano-manz has much to be proud ofkeano-manz has much to be proud ofkeano-manz has much to be proud ofkeano-manz has much to be proud ofkeano-manz has much to be proud of
Send a message via MSN to keano-manz
Default Introduction to mesh modeling ตอนที่ 2 BY Smoke

Smoke Posted on วันจันทร์, 09 ธันวาคม 2002 @ 8:00:33

ต่อจากตอนที่แล้ว 3d Tip by Smoke : Introduction to mesh modeling ตอนที่ 2 นี้คุณสโมคได้กล่าวต่อ ในข้อที่ 3 และ 4 ว่าด้วยเรื่อง การทำ reference object และ meshsmooth และ คำสั่งอื่นๆ



3. การทำ reference object และ meshsmooth

มาถึงขั้นตอนนี้เราก็ได้ รูปทรงที่ใกล้เคียงมากขึ้นแต่ยังเป็นเหลี่ยมเป็นสันอ ยู่ ผมจะกล่าวถึงเรื่องการทำ reference object ก่อน



3.1 การทำ reference object คือการ copy วัตถุอีกตัวจากตัวเดิม โดยที่ความเปลี่ยนแปลงของรูปทรงและลักษณะของมันจะเปล ี่ยนแปลงไปตามวัตถุตัวเดิมถ้าวัตถุตัวเดิมถูกทำการแก ้ไข พูดง่ายๆคือว่าการเปลี่ยนแปลงของวัตถุตัวใหม่จะแปรผั นตามวัตถุตัวเดิม วิธีการทำ reference object นั้นง่ายๆ ก็คือ ทำการ copy ซึ่งมีสามลักษณะ คือ copy refernce และ instant ให้เราเลือกแบบrefernce

เป็นที่ทราบกันดีแล้วว่าถ้าเราทำการ copy แบบ copy type ตัวที่ถูกสร้างขึ้นใหม่จะเป็นอิสระจากกันโดยจะไม่มีค วามเปลี่ยนแปลงหรือเกี่ยวข้องกับวัตถุตัวเดิมเลย ส่วน reference type นั้น อยู่ที่ว่าเรา copy (reference) มันในขั้นตอนใด ของ modify ซึ่งคงมีหลายชั้นในขั้นตอนการทำของแต่ละคน ความเปลี่ยนแปลงของวัตถุตัวเดิมจะเป็นผลต่อตัวใหม่ไม ่ว่าจะเป็นการเพิ่ม คำสั่งต่างๆใหม่ หรือการเปลี่ยนรูปทรงของตัวเดิม แต่ถ้าเราไปเปลี่ยนแปลงตัวใหม่ ไม่ว่าจะเป็นการใส่คำสั่งใหม่ จะไม่มีผลอะไรกับวัตถุตัวเดิมซึ่งเราเรียกว่า วัตถุอ้างอิง ในส่วนของ instant นั้น มันจะเปลี่ยนแปลงทั้งตัวเก่าและตัวใหม่พร้อมๆกันทุกป ระการ คือถ้าตัวเก่าหรือตัวใหม่ถูกเปลี่ยนแปลง ทุกตัวจะเปลี่ยนแปลงเหมือนกันหมด วิธีการทำให้วัตถุเป็นอิสระจากกันคือการ collapse คำสั่งทั้งหมดใน modify stack ให้กลายเป็น editable mesh, poly และ patch ที่กล่าวมาแล้วข้างต้นเราเอาคุณสมบัติของมันมาใช้ได้ กล่าวคือเรา copy (reference) วัตถุในขั้นตอนนี้แล้วใส่คำสั่งใหม่ให้กับวัตถุตัวหม ่ซึ่งก็คือ meshmooth จะเห็นว่าความเปลี่ยนแปลงเกิดขึ้นที่ตัวใหม่เท่านั้น ส่วนตัวเก่าหรือวัตถุอ้างอิงยังไม่มีอะไรเปลี่ยนแปลง คราวนี้ให้เรากลับมาที่วัตถุอ้างอิงแล้วปรับหรือเปลี ่ยนแปลงต่างๆในขั้นตอนของ subobject จะเห็นว่าวัตถุตัวใหม่มีการเปลี่ยนแปลงด้วย กล่าวคือ แม้ว่าตัวใหม่จะคำสั่งใหม่อยู่ด้วยคือ meshmooth และมีจำนวน polygon มากกว่า ก็มีการเปลี่ยนแปลงไปด้วย ถึงตอนนี้บางคนยังนึกภาพไม่ออก ให้เราลองนึกถึงเวลาเราใช้ ffd จะมีลักษณะต่างกันตรงที่ ffd มีแค่แบบ boxและ cylinder ส่วนวัตถุอ้างอิงนี่จุดอ้างอิงในการปรับของมัน (ในกรณีที่เราใช้ subobject vertex) จะคลอบคลุมไปตามพื้นผิวของวัตถุตัวใหม่ตามรูปทรงของม ันเลย


figure 9 รูปด้านซ้ายมีวัตถุอยู่ 2 อัน อันแรกที่เห็นเป็นเหลี่ยมๆคือ refernce object หรือ วัตถุอ้างอิง ซึงเป็นวัตถุตัวเดิมก่อนการ copy(reference) วัตถุตัวที่2 คทอวัตถุที่ถูก copy(refernce) แล้วอยู่ภายในวัตถุตัวเดิมแล้วใส่คำสั่ง meshsmooth จะเห็นว่าเมื่อเราเคลื่อนย้าย vertex ตัวใดตัวหนึ่งของวัตถุตัวเดิมแล้ว วัตถุตัวที่ถูก copy(reference) จะเกิดการเปลี่ยนปลงขึ้นด้วย ส่วนรูปด้านขวาไม่เกียวกับรูปด้สนซ้าย ผมจะแสดงให้เห็นหลักการทำงานของ ffd นั้นคล้ายๆกัน

วิธีการนี้ สดวกและง่ายต่อการปรับรูปทรงที่เรียกว่ามี vertex หรือ พื้นผิว มากๆ ซึ่งยากต่อการปรับ โดยให้เราเปลี่ยนแผลงจากวัตถุอ้างอิงที่มีจำนวน vertex หรือ พื้นผิว น้อยกว่า

3.2 จริงๆแล้ว max หรือ viz เวอร์ชั่นใหม่ meshmooth จะมีความสดวกมากยิ่งขึ้น จนบางทีเราไม่จำเป็นต้องใช้ reference object เลยเพราะเราสามารถปรับ subobject ของมันได้เลย กล่าวคือ subobject vertex และedge จะมีจำนวนเท่ากับของเดิมก่อนที่เราจะใส่ meshmooth



figure 10Subobject vertex ใน meshsmooth มีลักษณะเดียวกันกับ control point ตฃคือ ยึดถือ controlpoint จาก จำนวน vertex ของโมเดลดั้งเดิม

4. คำสั่งอื่นๆที่ผมใช้บ่อยๆที่ทำให้โมเดลของเรามีความโ ค้งมากขึ้น นอกเหนือจากการใช้ meshsmooth

ขั้นตอนนี้อาจเป็นขั้นตอนสุดท้ายในการปรับแต่งโมเดล ตามจุดประสงค์ของการจบการเขียนโมเดลของท่านผู้อ่านแต ่ละท่านว่าต้องการให้เป็นไปในลักษณะใด หรืออาจเป็นขั้นตอนแทรกระหว่างหัวข้อที่กล่าวมาข้างต ้น



relax นิยามของคำสั่ง relax ก็คือทำให้ mesh คลี่คลายลงไปกล่าวคือจุด vertex จะถูกเลื่อนออกหรือเลื่นเข้าหากันเราใช้คำสั่ง relax เมื่อเราต้องการให้โมเดลดูโค้งมนมากขึ้นโดยไม่มีการท ำให้จำนวน mesh ของโมเดลเพิ่มขึ้นเลย เราอาจใช้ relax หลังจากที่เราทำการ meshsmooth แล้ว ยังต้องการให้โมเดลมีความผิวโค้งมากกว่านี้ รวมถึงถ้าท่านใดได้ทำการ smoothing group กับโมเดลแล้ว relax ก็ยังไม่เป็นผลต่อการเปลี่ยนแปลงของ smoothing group ใน model เหมือน meshsmooth อนึ่ง relax จะทำให้โมเดลมีขนาดเล็กลงเล็กน้อย


push เป็นคำสั่งที่เหมือนจะเป็นการเป่าลมให้กับโมเดลดูพอง หรือบวม (ขึ้นอืด) มีลักษณะการทำงานคล้ายๆกับ relax แต่จะทำให้โมเดลมีขนาดใหญ่ขึ้น เนื่องจากถูกเป่าลม ผมใช้คำสั่งนี้กับการเขียนเบาะของโซฟาที่ดูบวมๆแต่สั นของขอบไม่มนมากนัก push ไม่มีปัญหากับsmoothing group เหมือนกัน




__________________

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.
keano-manz is offline  

Old 17-10-2006, 06:47 PM   #2
keano-manz
เทพบุตรระเริงรัก
เสี่ยวขั้นเทพ
*คนบางอ้อ*
 
keano-manz's Avatar
 
Join Date: Oct 2006
Location: Ratchada19
Posts: 6,706
Blog Entries: 14
keano-manz has much to be proud ofkeano-manz has much to be proud ofkeano-manz has much to be proud ofkeano-manz has much to be proud ofkeano-manz has much to be proud ofkeano-manz has much to be proud ofkeano-manz has much to be proud ofkeano-manz has much to be proud of
Send a message via MSN to keano-manz
Default

optimize เป็นคำสั่งเพื่อลดจำนวนของ mesh บนโมเดล โดยการมันจะเชื่อมจุด vertex บน mesh เข้ากากันทำให้ปริมาณ surface ลดลง ประโยชน์ของมันคือ ในกรณีที่เราเขียน file ขนาดใหญ่ render นานๆ เช่นเราเขียนร้านอากราที่มีเก้าอี้จำนวนมาก ทำได้โดยการใส่ modify ตัวนี้ ลงบนเก้าอี้ อนึ่ง optimize อาจทำให้ coordinate ของ uvwmap เสียไป เนื่องจาก segment หรือ edge มีการเปลี่ยนรูปร่าง เราอาจจะต้องทำการ uvwmap อีกครั้ง หรือทำครั้งเดียวหลังจากใส่ optimize แล้ว



นอกจากนี้ optimize ยังทำให้รูปร่างและขนาดของ face บน model มีขนาดต่างกัน ดูไม่เป็นระเบียบ เราอาจใช้ประโยชน์ของข้อนี้ ทำโมเดล หิน หรือ ผิวขรุขระต่างๆ

multires เป็นคำสั่งที่พัฒนากว่ามีใช้ใน max และ viz เวอร์ชั่น หลังๆ มีลักษณะคล้ายๆกับ optimize แต่เราสามารถกำหนดจำนวนของ face เป็นเปอร์เซ็นต์ก็ได้ รูปแบบของ mesh จะออกมาสวยงามกว่า optimize



ffd ผมได้กล่าวไว้แล้วข้างต้นว่า ffd มีไว้เพื่อปรับรูปร่างของ mesh รวมๆ ควบคุมง่ายกว่าคำสั่งข้างต้นที่กล่าวเนื่องจากเราสาม ารถกำหนดค่า controlpoint ให้มีจำนวนมากหรือน้อยตามต้องการ เป็นอันว่าจบเรื่องหลักการเขียน polygon model แต่เพียงเท่านี้ครับ ถ้าผิดพลาดประการใดขออภัยมา ณ ที่ ไทยสามดีวิซด้วย

คราวหน้าคอยพบกับ patch และ spline network

__________________

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.
keano-manz is offline  
 

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +7. The time now is 01:22 AM.

Design Developed by CompleteGFX
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Copyright ©2002-2010 Thai3dViz Co.,Ltd.
Hosting by THAISITE.net