ทำไมไฟของฉันถึงไม่ต่อเนื่อง?


9

ฉันสร้างโมเดลลูกบาศก์พื้นผิวพื้นฐานด้วย Blender เพื่อฝึกการสร้างแบบจำลองจากนั้นฉันก็นำเข้าสู่ Unity หลังจากที่ฉันวางหลอดไฟมันก็ดูน่าเกลียด แสงไม่ต่อเนื่องบนแถวของพื้นผิวก้อน:

ป้อนคำอธิบายรูปภาพที่นี่

อะไรคือสิ่งที่แปลกมากขึ้นไฟบนบล็อกที่ทำให้การขึ้นชั้นเป็นอย่างต่อเนื่อง ผมทำอะไรผิดหรือเปล่า?

นี่คือสิ่งที่ดูเหมือนว่าไม่มีพื้นผิว:

ป้อนคำอธิบายรูปภาพที่นี่

ถ้าฉันไม่รู้ว่านี่เป็นลูกบาศก์ที่สมบูรณ์แบบฉันจะบอกว่ามันมีเส้นโค้งเล็กน้อยบนพื้นผิว ฉันพยายามทำให้พื้นผิวจางลง แต่มันก็ไม่ได้ช่วย:

https://dl.dropbox.com/u/45620018/lighter%20texture.PNG

ฉันเพียงแค่ส่งออกโมเดลจาก Blender และไม่ได้ตั้งค่ามาตรฐานหรืออะไรแบบนั้น อย่างไรก็ตามฉันยังไม่ได้ทำอะไรเป็นพิเศษกับโมเดลอิฐปูพื้น

ตรวจสอบบรรทัดฐานและพวกเขาดูเหมือนจะชี้ไปในทิศทางที่ถูกต้อง

ป้อนคำอธิบายรูปภาพที่นี่

นอกจากนี้ฉันไม่เห็นความแตกต่างระหว่างสองรุ่นจริงๆ บนแผงพื้นผิวฉันยังตั้งค่าการฉายภาพให้แบน:

ป้อนคำอธิบายรูปภาพที่นี่

ฉันตรวจสอบพาเนลที่แตกต่างกันในเครื่องปั่นและตัวเลือกเดียวที่เกี่ยวข้องกับปกติในแผง "ข้อมูลวัตถุ" คือ "Auto Smooth" และมันถูกปิดโดยปริยาย:

ป้อนคำอธิบายรูปภาพที่นี่


มันทำงานอย่างถูกต้องถ้าคุณปิดการใช้งานพื้นผิว?
msell

คำตอบ:


7

จากภาพที่ไม่มีพื้นผิวฉันค่อนข้างมั่นใจว่าปัญหาคือโมเดลลูกบาศก์ของคุณมีบรรทัดฐานที่ไม่เหมาะสม คุณต้องบอก Blender ว่าขอบลูกบาศก์ของคุณตั้งใจที่จะไม่คม - สิ่งที่คุณมีตอนนี้คือลูกบาศก์ที่ทำหน้าที่เหมือนการประมาณหกด้านของทรงกลม

ฉันไม่รู้จัก Blender ดังนั้นฉันจึงไม่สามารถบอกคุณได้ว่าจะทำสิ่งนี้ได้อย่างไร แต่อาจเรียกว่า "แบน" แทนที่จะเป็นใบหน้าหรือบรรทัดฐาน "ที่ราบรื่น" หรืออาจมีวิธีที่จะ "ทำลาย" ขอบที่เฉพาะเจาะจง โมเดลกระเบื้องปูพื้นของคุณดูเหมือนจะมีบรรทัดฐานที่ถูกต้องดังนั้นบางทีคุณควรเห็นสิ่งที่แตกต่างกัน


2
คุณพูดถูกฉันต้องบอกเครื่องปั่นให้คม ฉันสามารถทำสิ่งนี้ได้ด้วยตัวปรับแต่ง EdgeSplit ( wiki.blender.org/index.php/Doc:2.4/Manual/Modifiers/Generate/… )
nosferat

คุณสามารถเลือกใบหน้าทั้งหมดในเครื่องปั่นและให้เงา "แบน" ผ่านทางเมนูด้านซ้าย (ใบหน้าที่เปิดใช้งานโดย "T") หรือใน Unity คุณสามารถเลือกลำดับชั้นนำเข้า Blender ของคุณเลือกที่จะคำนวณ normals (แทนการนำเข้า) จากนั้นเลือกมุมที่ราบเรียบ (การเลือกบางอย่างเช่น 60 ควรให้ผลที่คุณต้องการ) ฉันไม่คิดว่านี่เป็นปัญหาเกี่ยวกับมาตรฐานจริง ๆ บรรทัดฐานนั้นใช้ได้ดีมิฉะนั้นคุณจะไม่เห็นอะไรเลยใน Unity (หรือใน Blender หากคุณเปิดใช้งานการคัด backface)
Shivan Dragon

4

คำแนะนำสองสามข้อเกี่ยวกับปัญหาที่อาจเกิดขึ้น:

a) คุณตรวจสอบแล้วหรือไม่ว่าใบหน้าปกติของตาข่ายนั้นชี้ไปในทิศทางที่ถูกต้องหรือไม่? มันค่อนข้างตรงไปตรงมาที่จะทำสิ่งนี้ใน Blender)

b) คุณใช้การทำแผนที่ UV ที่ถูกต้องหรือยัง? Unity ส่งออกข้อมูลพื้นผิวทั้งหมดตามวิธีการตั้งค่าใน Blender ดูแผงพื้นผิวในเครื่องปั่นโดยเฉพาะแผง 'การทำแผนที่' ใต้พื้นผิว (โดยหลักแล้วควรตั้งค่าเป็น UV

(PS มีนโยบายเกี่ยวกับสิ่งที่แนบมาหรือโพสต์ลิงก์ไปยังไฟล์โครงการพูดลิงก์ Dropbox หรือ Google Drive ในคำถามนี้ควรแก้ไขได้ง่ายถ้าฉันเห็นไฟล์ทั้งหมด)


2
เพื่อตอบคำถามเกี่ยวกับสิ่งที่แนบมาของคุณใน Exchange Exchange ไม่ต้องการลิงก์ภายนอกไปยังไฟล์สำหรับคำถามแต่ละข้อเนื่องจากมักจะหายไป รูปภาพควรถูกอัพโหลดไปยังโฮสติ้งของเรา (ผ่านปุ่มอัพโหลดในตัวแก้ไข) เพื่อให้ทีม SE สามารถตรวจสอบให้แน่ใจว่าพวกเขาติดอยู่ ไม่มีการสนับสนุนเป็นพิเศษสำหรับภาพที่ไม่ใช่ (เช่นไฟล์ Blender สำหรับคำถามนี้) แต่มันจะดีกว่าที่จะหาทางเลือกอื่น ๆ เพราะมันกลายเป็นเหมือน“ โปรด debug รหัสที่มีขนาดใหญ่มากของฉัน” ซึ่งไม่น่าจะเป็นประโยชน์สำหรับทุกคน ผู้ถามเดิมตรงกันข้ามกับเป้าหมายของ SE
Kevin Reid
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.