การพัฒนาเกม

คำถาม & คำตอบสำหรับนักพัฒนาเกมมืออาชีพและเป็นอิสระ

2
รูปแบบทั่วไปเพื่อขยาย“ หน่วยจริง” เป็นพิกเซล?
นี่คือคำถามที่ติดตามเพื่อคนอื่น ๆ นี้ ฉันต้องการทราบว่ามีรูปแบบทั่วไป / ทั่วไป / ดีที่สุดในการขยายการเป็นตัวแทนของโลก (ปัจจุบัน 160Kmx160Km) เพื่อให้พอดีกับพื้นที่วาดรูป (ปัจจุบันคือ 800x600 พิกเซล) ฉันสามารถคิดถึงวิธีที่แตกต่างกันอย่างน้อยสี่วิธี: หนึ่งเดียว (วิธีที่ฉันทำจนถึงตอนนี้) ฉันใช้งานฟังก์ชั่นระดับโลกsc(vector)ซึ่งจะคืนค่าสำเนาเวกเตอร์ที่ลดขนาดลงซึ่งแน่นอนว่าใช้ได้ผล แต่ฉันต้องเขียนโค้ดเช่น: drawCircle(sc(radius), sc(position)) ฟังก์ชั่นการตัดคำ ฉันสามารถกำหนดฟังก์ชั่นได้หลายอย่างแต่ละอันห่อมิดเดิลแวร์ดั้งเดิมไว้ ตัวอย่างเช่นฉันสามารถกำหนดได้myDrawCircleว่าจะปรับขนาดอาร์กิวเมนต์ที่จำเป็นต้องปรับขนาดก่อนแล้วจึงเรียกdrawCircleใช้ตัวหลัง นี่อาจทำให้โค้ดของฉันอ่านง่ายขึ้นและง่ายต่อการบำรุงรักษา แต่ฉันควรเขียนฟังก์ชั่นการพันซึ่งฟังดูงี่เง่า มัณฑนากรฟังก์ชั่น ฉันก็สามารถตกแต่งฟังก์ชั่นมิดเดิลแวร์ที่มีอยู่ให้ปรับอัตโนมัติสำหรับพารามิเตอร์ทั้งหมดที่เป็น instantiation ของชั้นVector3Dแต่ปัญหาก็คือว่าฟังก์ชั่นเหล่านั้นยังทำงานร่วมกับพารามิเตอร์เดียวกันเป็นlistหรือVector2Dเกินไปและมัณฑนากรจะมีวิธีที่จะรู้ว่าไม่มี รายการใดที่ต้องปรับขนาด (รัศมีเช่น) และไม่ (ค่า RGB) initialisation พื้นผิว เมื่อกำหนดพื้นผิวที่ฉันกำลังจะวาดฉันสามารถกำหนดปัจจัยการปรับ (เพื่อที่ฉันจะใช้เมตรและไม่พิกเซลเป็นพารามิเตอร์) สิ่งนี้จะทำงานได้อย่างโปร่งใสสำหรับฉันและจะเป็นทางเลือกของฉัน แต่แน่นอนว่าควรใช้ในมิดเดิลแวร์ดังนั้นจึงไม่ใช่ตัวเลือกที่แท้จริง ... แต่อย่างใด: เนื่องจากนี่เป็นปัญหาที่พบบ่อยมากฉันสงสัยว่ามีรูปแบบที่จัดตั้งขึ้นซึ่งแก้ปัญหาที่ฉันไม่สามารถหาได้อย่างสง่างาม PS: สำหรับโครงการนี้ฉันใช้ python (กับpygame ) แต่ถึงแม้ว่าคำตอบเฉพาะของไพ …

2
ประสบการณ์ต้นแบบ: Unity3D เทียบกับ UDK [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Game Exchange Stack Exchange ปิดให้บริการใน5 ปีที่ผ่านมา มีใครยังต้นแบบเกมทั้ง Unity3D และ UDK? ถ้าเป็นเช่นนั้นคุณสมบัติใดที่ทำให้ต้นแบบเกมง่ายขึ้นหรือยากขึ้นในแต่ละชุดเครื่องมือ ต้นแบบต้นแบบหนึ่งสาธิตได้ดีกว่าอีกรุ่นหนึ่ง (ได้รับสินทรัพย์เริ่มต้นเดียวกัน) หรือไม่ ฉันกำลังมองหาคำตอบเฉพาะเกี่ยวกับการใช้คุณสมบัติชุดเครื่องมือไม่ใช่การเปรียบเทียบคุณสมบัติที่มี เช่นภูมิประเทศที่ถูกทำลายได้ง่ายขึ้นในชุดเครื่องมือ X เนื่องจากเหตุผล Y และ Z ฉันสามารถเขียนโค้ดได้ดังนั้นข้อ จำกัด ของภาษาสคริปต์แบบ inbuilt จึงไม่เป็นปัญหา
10 unity  udk 

1
มีอัลกอริทึมที่รู้จักกันดีในการปรับรูปหลายเหลี่ยมให้เหมาะสมกับรูปร่างหรือไม่?
ฉันใช้เครื่องยนต์ฟิสิกส์ Chipmunk เพื่อสร้างระดับสำหรับเกม 2D C ฉันต้องการให้พอดีกับรูปหลายเหลี่ยมกับรูปร่างที่กำหนดเองเพื่อใช้เป็นหน้ากากปะทะกัน ให้รูปแบบการชนสีดำและสีขาวสำหรับวัตถุระดับโดยพลการดังนี้ มีอัลกอริทึมที่รู้จักกันดีสำหรับการรับนี้: ฉันสามารถใช้รูปหลายเหลี่ยมสีแดงเพื่อสร้างวัตถุฟิสิกส์เพื่อไปกับภาพ

1
ฉันจะรวมฟิสิกส์เข้ากับโลกที่สร้างขึ้นจากขั้นตอนทางเรขาคณิตได้อย่างไร
โดยพื้นฐานแล้วฉันต้องการที่จะลบความจำเป็นในการสร้างสัญญาณรบกวนจาก CPU ไปยัง GPU จากที่นั่นฉันต้องการสร้างภูมิประเทศสำหรับโลกสามมิติโดยใช้เสียงนี้เป็นความหนาแน่นในจุด voxel หลังจากนี้ฉันต้องการนำความหนาแน่นเหล่านั้นมารวมกันเป็นรูปหลายเหลี่ยม (สร้างจุดยอด) ที่แสดงถึงภูมิประเทศของโลก นี่เป็นเรื่องปกติและทุกอย่าง แต่ฉันยังต้องการที่จะทำให้โลกผิดปกติแบบไดนามิกในเวลาจริง เมื่อฉันมาถึงจุดนี้ฉันมีปัญหาในการพยายามนำจุดยอดกลับไปที่ CPU เพื่อทำสิ่งต่าง ๆ เช่นการตรวจจับการชนและการคำนวณเกมทั้งหมดที่ฉันต้องการมีส่วนร่วมกับ CPU ไม่ใช่ GPU ดังนั้นคำถามคือฉันจะรับเซตย่อยของจุดยอดกลับไปยัง CPU เพื่อจัดการกับการชนกันของสิ่งอื่นได้อย่างไร และคำถามอีกข้อหนึ่ง: มีวิธีง่าย ๆ ในการตั้งจุดยอดและสร้างดัชนีจากพวกเขาบน GPU หรือไม่? ฉันสับสนเช่นเดียวกับชนิดของเฉดสีที่ฉันควรใช้สำหรับสิ่งที่แตกต่างเหล่านี้ ฉันได้ยินคนที่ใช้ pixel shader เพื่อรวบรวมความหนาแน่นแล้วใช้ geometry shader สำหรับจัดการกับการสร้างภูมิประเทศจากจุดยอดแล้วก็รวมส่วนยอด shader เพื่อทำการเปลี่ยนรูปแบบไดนามิก ฉันใช้ C # 4.0, .NET 4.0 และ XNA Game Studio 4.0
10 c#  xna  shaders 

2
ฉันจะหมุนโครงสร้างของแผ่นกระเบื้องหกเหลี่ยมบนตารางหกเหลี่ยมได้อย่างไร
เกมสามมิติแบบสามมิติของฉันใช้แผนที่กริดหกเหลี่ยม จากภาพด้านล่างฉันจะหมุนโครงสร้างหกเหลี่ยมสีฟ้าอ่อนได้ 60 องศารอบ ๆ รูปหกเหลี่ยมสีชมพูได้อย่างไร แก้ไข: เลขฐานสิบหกหลักคือ (0,0) Hexes อื่น ๆ คือ children การนับจะคงที่ ฉันจะกำหนดตำแหน่งเดียวเท่านั้น (ในกรณีนี้คือด้านขวา) และคำนวณทิศทางอื่น ๆ หากจำเป็น (ซ้ายล่าง, ขวา - botom, ขวาบน, ซ้ายบนและซ้าย) เลขฐานสิบหกอื่น ๆ ที่มีการกำหนดเช่น: Package.Add (-1,0), Package.Add (-2,0) และอื่น ๆ switch(Direction) { case DirRightDown: if(Number.Y % 2 && Point.X % 2) Number.X += 1; Number.Y …

1
คอนโซลหรือคอมไพเลอร์มือถือในปัจจุบันรองรับ C ++ 11 หรือไม่?
ฉันไม่ได้ขอการสนับสนุนอย่างเต็มที่ แต่มีการสนับสนุน Gen ปัจจุบันในปัจจุบัน C ++ 11 หรือไม่? ฉันรู้ว่า VS C ++ รองรับแลมบ์ดาและคำหลักอัตโนมัติและฉันเชื่อว่า gcc รองรับทั้งสองเช่นกัน เครื่องเล่นคอนโซลมือถือรุ่นปัจจุบันหรือ 3ds, sony vita รองรับหรือไม่?
10 c++ 

2
เอ็นจิ้นสำหรับเกมบนเว็บในที่สุดควรเริ่มเป็นบริการเว็บหรือไม่?
ฉันเพิ่งตัดสินใจเริ่มเขียนโปรแกรมสำหรับเกมไพ่ ฉันไม่ใช่ผู้เล่น "ไพ่" ที่ยิ่งใหญ่ แต่มีเพื่อนแนะนำฉันให้รู้จักกับเกมนี้ (มันเป็นการหมุนเกมเดนมาร์ก) และฉันตกหลุมรัก ฉันต้องการพัฒนาเกมใน 3 ส่วน: เครื่องมือพื้นฐานจัดการไพ่ / สำรับ / เกม ฯลฯ ส่วนต่อประสานผู้ใช้ (ในรูปแบบของมือถือ / เดสก์ท็อปเว็บแอพ) ปัญญาประดิษฐ์ที่มีกลยุทธ์ / ปัญหาต่าง ๆ เป็นต้น นี่เป็นโครงการที่แตกต่างกันมากในใจของฉัน ... และฉันกำลังดิ้นรนกับการเห็นว่าพวกเขาจะเข้าด้วยกันในระยะยาวอย่างไร ตอนแรกฉันไม่ต้องการแม้แต่จะ "เล่น" เกมโดยใช้เครื่องมือ เครื่องยนต์จะถูกทดสอบเป็นหลักโดยการทดสอบตามหน่วย การทดสอบการเล่นจะไม่เริ่มจนกว่าจะมีลูกค้า ดังนั้นจึงมีบางอย่างของความสัมพันธ์ระหว่างลูกค้ากับเซิร์ฟเวอร์ที่นี่ เครื่องยนต์เป็นตัวต่อชิ้นใหญ่มาก สิ่งที่ฉันอยากรู้คือ: คุณจะพัฒนา "API สาธารณะ" สำหรับเครื่องมือนี้อย่างไร? ฉันคิดว่าเอ็นจิ้นอาจเป็นบริการบนเว็บที่ธรรมดามากซึ่งส่งคืนสถานะผ่านเคียวรีไปยัง RESTful API แต่ฉันกังวลว่าการพัฒนาเอ็นจิ้นเองเนื่องจากเว็บแอพอาจนำไปสู่การตัดสินใจเขียนโปรแกรมที่ไม่ดี (ตัวอย่างเช่นถ้าฉันเลือก MVC micro-framework API นี้จะไม่มีมุมมองจริง ๆ …

1
บทช่วยสอนสำหรับผู้เริ่มต้นขั้นสูงสำหรับเกม 3 มิติโดยใช้ XNA Framework? [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Game Exchange Stack Exchange ปิดให้บริการใน3 ปีที่ผ่านมา ฉันกำลังมองหาบทช่วยสอนที่เริ่มต้นที่สแควร์ 1 สำหรับการพัฒนาเกมและเลื่อนผ่านระดับกลาง / ระดับผู้เชี่ยวชาญของการพัฒนาเกม 3 มิติ ฉันต้องการเข้าร่วมในเกม 3D จริง ๆ และฉันก็พยายามสักครู่ในเวลาว่างของฉัน แต่ฉันรู้น้อยมากในบางครั้งที่ฉันไม่แน่ใจด้วยซ้ำว่าคำศัพท์ที่ใช้เพื่อวลีคำถามอย่างถูกต้อง เป็นการดีที่ฉันหวังว่าจะพบบทเรียนสำหรับ XNA Framework สิ่งที่ฉันได้รับคือ XNA ฉันพัฒนามาหลายปีแล้วและไม่ต้องการความช่วยเหลือด้านภาษา สิ่งที่ฉันรู้ว่าฉันต้องการความช่วยเหลือคือสิ่งต่าง ๆ เช่นการเรนเดอร์สิ่งที่เมทริกซ์แทนและสิ่งอื่น ๆ ในไลบรารีของเฟรมเวิร์ก ฉันไม่รู้ด้วยซ้ำว่ามีอะไรบ้างในห้องสมุด
10 xna  xna-4.0 

3
คุณมองหาอะไรในภาษาสคริปต์? [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังว่าคำตอบจะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้อาจเรียกร้องให้มีการอภิปรายโต้แย้งโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา ฉันกำลังเขียนภาษาที่ฝังตัวเล็กน้อยสำหรับโครงการอื่น ในขณะที่การพัฒนาเกมไม่ใช่ความตั้งใจดั้งเดิมมันเริ่มมีลักษณะที่ดีและฉันคิดว่าฉันจะพัฒนามันในหลอดเลือดดำในบางจุด โดยไม่เปิดเผยรายละเอียดใด ๆ (เพื่อหลีกเลี่ยงอคติ) ฉันอยากรู้ว่า: คุณสมบัติอะไรที่คุณชอบในภาษาสคริปต์สำหรับการพัฒนาเกม หากคุณใช้ Lua, Python หรือภาษาที่ฝังตัวอื่นเช่น Tcl หรือ Guile เป็นภาษาสคริปต์หลักของคุณในโครงการเกมคุณคิดว่ามีประโยชน์อะไรมากที่สุด คุณสมบัติภาษา (lambdas, class, parallelism) คุณสมบัติการนำไปใช้ (การเพิ่มประสิทธิภาพประสิทธิภาพ JIT การเร่งด้วยฮาร์ดแวร์) คุณสมบัติการรวม (การผูก C, C ++ หรือ. NET) หรือสิ่งที่แตกต่างอย่างสิ้นเชิง?
10 scripting  tools 

1
แผนที่ภูมิประเทศที่สร้างขึ้นตามขั้นตอน ผสมผสานการเปลี่ยนระหว่างประเภทภูมิประเทศ
คำถามไม่ได้เป็นถ้อยคำที่ยิ่งใหญ่ที่สุดที่เคยขอโทษ ฉันได้เรียนรู้และสร้างต้นแบบสิ่งบางอย่างจากการสร้างพื้นผิวและภูมิประเทศและพบเจอสิ่งที่บางทีคุณสามารถช่วยฉันได้ มันทำงานอย่างไร: ฉันกำลังสร้างแผนที่ความสูงของภูมิประเทศ มันสามารถเลื่อนได้อย่างไม่มีที่สิ้นสุดในทุกทิศทาง (ภาพที่ 1) ฉันจับและผสมสีตามค่าของแผนที่ความสูง (ภาพที่ 2) มันใช้งานได้ดีมากและทำงานได้อย่างรวดเร็วในขณะนี้มันเป็นเรื่องง่ายมากในขณะนี้ สิ่งที่ฉันต้องการค้นหาเป็นวิธีที่ดีในการเบลอ / บิดเบือนระหว่างการเปลี่ยนภูมิประเทศ อย่างที่คุณเห็นในปัจจุบันมันมีรอยยับมากและดูไม่เป็นธรรมชาติเลย เนื่องจากนี่คือสิ่งทั้งหมดที่ถูกสร้างขึ้นตามขั้นตอนฉันจำเป็นต้องค้นหาอัลโกสำหรับการผสมที่สามารถวิ่งได้ทันที ฉันพยายามทำให้กระวนกระวายใจนิดหน่อยและมันก็ดูไม่ดี นอกจากนี้สิ่งที่ฉันเคยใช้จะต้องสามารถที่จะได้รับเมล็ดเพื่อที่จะรักษาความมั่นคง (แม้ว่าฉันสงสัยว่าจะเป็นปัญหาเพราะพวกเขาส่วนใหญ่จะทำงานใน randoms) ความเข้าใจใด ๆ จะได้รับการชื่นชมมาก หากฉันจัดการเพื่อปล่อยให้ข้อมูลที่จำเป็นใด ๆ ในการเร่งด่วนของฉันที่จะโพสต์นี้เพียงแจ้งให้เราทราบ

3
เกมพาวเวอร์, ความสำเร็จและความร่วมมือสำหรับโครงการวิจัยทางจิตวิทยา [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Game Exchange Stack Exchange ปิดให้บริการใน6 ปีที่ผ่านมา สำหรับโครงการวิจัยทางจิตวิทยาเรากำลังมองหาเกมเล่นคนเดียวสั้น ๆ (ประมาณ 5 นาที) เพื่อสังเกตแรงจูงใจพื้นฐานของผู้คน เราอยากจะขอให้ผู้คนเขียนรายชื่อเกมที่ให้ความเป็นไปได้ที่ใกล้เคียงที่สุด (แม้ว่าจะไม่สมบูรณ์แบบ) สำหรับแต่ละคำอธิบาย เราต้องการผู้สมัครที่มีแนวโน้ม 2-3 คนสำหรับแต่ละ 3 ประเภทดังต่อไปนี้ เราจะมีความสุขกับทุกสิ่งที่เราสามารถใช้สร้างต่อดัดแปลงเปลี่ยนแปลงเล็กน้อยเพื่อให้เหมาะกับวัตถุประสงค์ของเรา A) เกมที่เข้าสู่การเป็นพันธมิตร การติดต่อเกี่ยวข้องกับการมีอารมณ์ใกล้ชิดกับผู้อื่นและสร้างความสัมพันธ์ใหม่ เกมควรหมุนไปรอบ ๆ เพื่อพบกับตัวละครอื่น ๆ นั่นคือวิธีง่ายๆ (คลิกการกระทำบางอย่าง) อย่างใดอย่างหนึ่งสามารถสำรวจความเป็นไปได้ที่จะพบเพื่อน คำขอเพื่อสร้างความสัมพันธ์ควรได้รับการยอมรับในกรณีส่วนใหญ่เนื่องจากผู้เล่นเป็นที่นิยม ความชื่นชอบนี้ไม่เกี่ยวข้องกับสถานะหรือประสิทธิภาพ แต่เป็นความรู้สึกอบอุ่นเป็นมิตรของฟัสซี เมื่อทำความรู้จักกับผู้อื่นผู้เล่นและตัวละครจะมีความเหมือนกันเกิดขึ้นมากมายและได้รับการยอมรับอย่างมีความสุข B) เกมที่เข้าสู่ความสำเร็จ ความสำเร็จนั้นเกี่ยวข้องกับการกำหนดเป้าหมายที่ยากลำบาก ในเกมความสำเร็จคุณจะแก้ปัญหาหลายเควสโดยใช้ความสามารถ (ความเร็ว, การคิดเชิงพื้นที่, การใช้กลยุทธ์) ควรปรับให้เข้ากับความสามารถของผู้เล่นเพื่อให้สามารถแก้ปัญหาได้ 60-70% ของภารกิจ …

6
OpenGL ES 2.0: Repository ของ Quality Shaders [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน4 ปีที่แล้ว ฉันขอถามได้ไหมว่าจะแนะนำที่เก็บข้อมูลของจุดยอด OpenGL (OpenGL ES 2.0) ที่มีคุณภาพสูงและชิ้นส่วนที่แตกออกเป็นชิ้นๆ ได้ไหม ฉันกำลังมองหาพิกเซลเชดเดอร์ ligting (เช่นพงษ์ ) และ simmilar มันจะเป็นการดีที่ได้เห็นพวกเขามากขึ้นเพื่อให้สามารถเลือกระหว่างคุณภาพเทียบกับประสิทธิภาพของ shader

3
มุมโค้งมนใน XNA
มีวิธีใดบ้างที่ฉันสามารถทำมุมโค้งมนบนสี่เหลี่ยมที่เรนเดอร์ใน XNA ผ่าน primitives (แถบเส้น) ฉันต้องการทำให้ UI ของฉันดูแฟนซีกว่าเดิมเล็กน้อยและฉันต้องการให้โค้ดมีความยืดหยุ่นโดยไม่ต้องมีพื้นผิวมากเกินไป
10 xna 

3
สไตล์ของมุมมองของเกมเช่น Final Fantasy 6, Chrono Trigger หรือ Alundra คืออะไร?
คำที่แท้จริงสำหรับสไตล์ 'จากบนลงล่าง' ของเกม Super Nintendo เช่น Final Fantasy 6, Chrono Trigger และอื่น ๆ คืออะไร ฉันกำลังมองหาคำศัพท์ที่เทียบเท่าของ: 'isometric' - (Jaggered Alliance, Final Fantasy Tactics, Fallout), 'คนแรก' - (Half Life, Doom, Quake) 'นกตา' - (Grand Theft Auto) ? ใส่คำศัพท์ที่นี่? - (Final Fantasy 6, Chrono Trigger)

2
แสงเงาคู่จุดพาราโบลาในการตั้งค่าแสงที่เลื่อนออกไป
ฉันได้ลองเล่นกับโค้ดตัวอย่าง / กวดวิชานี้ซึ่งแสดงให้เห็นถึงการติดตั้ง light-pre-pass อย่างง่ายซึ่งเป็นประเภทของการตั้งค่าแสงที่เลื่อนออกไป ฉันกำลังใช้การนำแสงเงาแบบชี้เข้ามาใช้แผนที่เงาคู่ ฉันทำตามคำอธิบายของ DPM นี้: http://gamedevelop.eu/en/tutorials/dual-paraboloid-shadow-mapping.htm ฉันสามารถสร้างแผนที่เงาและดูเหมือนว่าจะดูดี ฉันเชื่อว่าปัญหาปัจจุบันที่ฉันมีอยู่ในส่วนของพิกเซลที่มองหาค่าความลึกในแผนที่เงาเมื่อแสดงผลจุดไฟ นี่คือรหัสจุดแสงของฉัน: http://olhovsky.com/shadow_mapping/PointLight.fx ฟังก์ชั่น Pixel Shader PointLightMeshShadowPSที่น่าสนใจคือ ไม่มีใครเห็นข้อผิดพลาดที่จ้องมองในฟังก์ชั่นนั้น? หวังว่าใครบางคนเคยแก้ปัญหานี้มาก่อน :) ดังที่คุณเห็นในภาพด้านบนเงาของโพสต์ไม่ตรงกับตำแหน่งของโพสต์ดังนั้นการแปลงบางอย่างผิดปกติ ... นี่คือสิ่งที่ดูเหมือนว่าเมื่อแสงจุดใกล้มากกับพื้น (เกือบสัมผัสพื้นดิน) เมื่อแสงจุดเคลื่อนที่ใกล้กับพื้นดินเงาจะมารวมกันและสัมผัสไปตามเส้นที่แผนที่เงาทั้งสองมาบรรจบกัน (นั่นคือตามแนวระนาบที่กล้องแสงถูกพลิกเพื่อจับภาพแผนที่เงาทั้งสอง) แก้ไข: ข้อมูลเพิ่มเติม: เมื่อฉันย้ายจุดแสงให้ห่างจากจุดกำเนิดจะมีเส้นคู่ขนานกับเวกเตอร์ "ขวา" ของกล้องแสงที่จับเงา ภาพด้านบนแสดงผลลัพธ์ของการเลื่อนไฟจุดไปทางซ้าย ถ้าฉันย้ายไฟจุดไปทางขวาจะมีเส้นรูปวาดที่เทียบเท่ากันทางด้านขวาแทน ดังนั้นฉันคิดว่าสิ่งนี้บ่งชี้ว่าฉันกำลังเปลี่ยนแปลงบางอย่างในพิกเซลเชดเดอร์อย่างที่ฉันคิด แก้ไข: เพื่อให้คำถามนี้ชัดเจนยิ่งขึ้นนี่คือโค้ดบางส่วน นี่คือรหัสที่ฉันกำลังใช้การวาดเงาจุดไฟ วิธีนี้ใช้งานได้และใช้การจับคู่เงาตามที่คุณคาดหวัง VertexShaderOutputMeshBased SpotLightMeshVS(VertexShaderInput input) { VertexShaderOutputMeshBased output = (VertexShaderOutputMeshBased)0; output.Position = mul(input.Position, …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.