คอมพิวเตอร์กราฟฟิค

ถาม - ตอบสำหรับนักวิจัยคอมพิวเตอร์กราฟิกและโปรแกรมเมอร์

1
ความเข้ากันได้กับ OpenGL การตั้งชื่อแบบแผนและ ARB vs EXT
ฉันคิดว่าฉันได้สร้างความเข้าใจโดยทั่วไปเกี่ยวกับวิธีการตั้งชื่อการประชุมและส่วนขยายของ OpenGL จนกระทั่งฉันพบกรณีที่ทำให้ฉันสับสน นี่คือความเข้าใจของฉัน: ไม่มีคำต่อท้าย - glGenBuffers()เช่น ฟังก์ชั่นนี้เป็นส่วนหนึ่งของโปรไฟล์หลัก หน้าวิกิพีเดียบอกว่านี้ถูกบันทึกอยู่ในรายละเอียดหลักเริ่มต้นจากรุ่น 1.5 ARB - glGenBuffersARB()เช่น ฟังก์ชั่นนี้เป็นส่วนหนึ่งของGL_ARB_vertex_buffer_objectส่วนขยายมาตรฐาน ข้อมูลจำเพาะของส่วนขยายนี้อย่างชัดเจนประกาศGenBuffersARB()ในส่วน "วิธีการและฟังก์ชั่นใหม่" ส่วน "การพึ่งพา" บอกฉันว่าฉันสามารถเข้าถึงสิ่งนี้ได้จากบริบท 1.4+ หากฮาร์ดแวร์รองรับส่วนขยาย EXT - เป็นส่วนขยายและฟังก์ชั่นเฉพาะของผู้ขายที่มีเพียงผู้ขายบางรายเท่านั้นที่สามารถรองรับได้ วัตถุบัฟเฟอร์ Vertex ดูเหมือนไม่มีส่วนขยาย EXT ในรีจิสทรี นี่คือสิ่งที่ความเข้าใจของฉันพังลง: glGenFramebuffersตามที่วิกิแสดงให้เห็นถูกเพิ่มเข้าไปในแกนใน 3.0 ตอนนี้ฉันต้องการเข้าถึงฟีเจอร์บัฟเฟอร์เฟรมที่โปรไฟล์โปรไฟล์หลักที่ต่ำกว่า 3.0 ดังนั้นฉันต้องการใช้เป็นส่วนขยาย รีจิสทรีสเป็คบอกว่ามีสองส่วนขยายที่มีอยู่ - ARBและEXT คำถามที่ 1 - หากมีส่วนขยาย ARB อยู่ทำไมส่วนขยาย EXT จึงมีอยู่ คุณจะไม่เลือกอันที่เป็นมาตรฐานมากกว่าของผู้ขายเฉพาะหรือไม่? ดูข้อมูลจำเพาะ ARB ในส่วน …
14 opengl 

3
การสุ่มตัวอย่างความสำคัญของแผนที่สิ่งแวดล้อม
อะไรคือวิธีที่ได้รับการพิสูจน์แล้วว่าดีที่สุดในปัจจุบันสำหรับการสุ่มตัวอย่างแมปสภาพแวดล้อม (EM) ในตัวติดตามเส้นทางแบบทิศทางเดียวที่ใช้ MIS และตัวเรนเดอร์ประเภทเดียวกันนี้ ฉันต้องการโซลูชันที่มีความซับซ้อนพอสมควรในขณะที่ใช้งานได้อย่างสมเหตุสมผลกับตัวอย่างที่ให้การสุ่มตัวอย่างที่สมบูรณ์แบบในราคาที่ซับซ้อนและยากต่อการใช้งาน สิ่งที่ฉันรู้จนถึงตอนนี้ มีวิธีง่ายๆในการสุ่มตัวอย่าง EM หนึ่งสามารถสุ่มตัวอย่างซีกโลกที่ต้องการในลักษณะน้ำหนักโคไซน์ซึ่งละเว้นทั้งรูปร่างของฟังก์ชัน BSDF และ EM ด้วยเหตุนี้มันไม่ทำงานกับ EM แบบไดนามิก: เพื่อปรับปรุงการสุ่มตัวอย่างให้อยู่ในระดับที่ใช้งานได้เราสามารถสุ่มตัวอย่างความส่องสว่างของ EM ได้ทั่วทั้งทรงกลม มันใช้งานได้ง่ายและผลลัพธ์ค่อนข้างดี อย่างไรก็ตามกลยุทธ์การสุ่มตัวอย่างยังคงเพิกเฉยต่อข้อมูลการมองเห็นในสมองและปัจจัยโคไซน์ (รวมถึง BSDF) ซึ่งส่งผลให้เกิดเสียงรบกวนสูงบนพื้นผิวซึ่งไม่ได้ถูกส่องโดยตรงโดยพื้นที่ที่มีความเข้มสูงของ EM: เอกสาร ฉันได้พบบทความสองสามเรื่องในหัวข้อนี้ แต่ยังไม่ได้อ่าน การอ่านและการใช้งานสิ่งเหล่านี้มีค่าในการติดตามเส้นทางแบบทิศทางเดียวหรือมีบางสิ่งที่ดีกว่านี้หรือไม่? โครงสร้างความสำคัญของการเก็บตัวอย่างแผนที่สิ่งแวดล้อม (2003) โดย Agarwal และคณะ การสุ่มตัวอย่างสำคัญนำพาได้ (2007) โดย Kartic Subr และ Jim Arvo พวกเขาอ้างว่าจะนำเสนอ“ ... อัลกอริทึมสำหรับการสุ่มตัวอย่างความสำคัญของแผนที่สิ่งแวดล้อมอย่างมีประสิทธิภาพซึ่งสร้างตัวอย่างในครึ่งวงกลมทรงกลมที่เป็นบวกซึ่งกำหนดโดยการวางแนวของพื้นผิวโดยพลการ “ กระดาษ“ ความสำคัญของการเก็บตัวอย่างทรงกลม Harmonics” ความเห็นเกี่ยวกับมัน:” …

7
เหตุใดจึงต้องใช้พิกัดแบบเอกพันธ์ในคอมพิวเตอร์กราฟิก
เหตุใดจึงต้องใช้พิกัดแบบเอกพันธ์ในคอมพิวเตอร์กราฟิก จะเกิดอะไรขึ้นหากไม่ได้ใช้พิกัดเอกพันธ์ในการแปลงเมทริกซ์?

3
มีวิธีใดบ้างในการแสดงความโปร่งใสใน OpenGL
การผสมอัลฟ่าสามารถเปิดได้เพื่อให้พื้นผิวโปร่งใสเช่น: glDisable(GL_DEPTH_TEST); //or glDepthMask(GL_FALSE)? depth tests break blending glEnable(GL_BLEND); glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); แต่จะใช้งานได้ก็ต่อเมื่อแสดงวัตถุในลำดับหลังไปข้างหน้าเท่านั้น มิฉะนั้นสิ่งที่อยู่ในพื้นหลังจะปรากฏขึ้นด้านหน้าวัตถุที่ใกล้กว่าเช่นพื้นในภาพด้านล่าง สำหรับอนุภาคและองค์ประกอบ GUI การเรียงลำดับจะตกลง แต่สำหรับตาข่ายสามเหลี่ยมดูเหมือนว่ามันจะเป็นความพยายามมากเกินไปและช้าตามที่กล่าวไว้ที่นี่: https://www.opengl.org/wiki/Transparency_Sorting อะไรคือวิธีการทั่วไปในการจัดการกับสิ่งนี้? ฉันรู้ว่านี่ค่อนข้างกว้างและไม่ใช่รายละเอียดการใช้งานในเชิงลึกเพียงแค่คำอธิบายสั้น ๆ เกี่ยวกับวิธีการบางอย่างและสิ่งที่อาจเกี่ยวข้อง

3
Harmonics & Light Probes ของ Spherical คืออะไร
สิ่งที่เป็นทรงกลมฮาร์มอนิและแสง Probes ? คอมพิวเตอร์กราฟิกมีประโยชน์อย่างไร? พวกเขาทำอะไรกันแน่ ฉันได้ยินคำว่าฮาร์โมนิกส์ทรงกลมและแสงโพรบทุกที่ตั้งแต่งานนำเสนอ siggraph ไปจนถึงบล็อกโพสต์ เมื่อเร็ว ๆ นี้ Matt Pettineo โพสต์บล็อกซีรี่ย์ 6 ตอนแต่ฉันก็ยังไม่เข้าใจว่ามันคืออะไร เป็นอีกวิธีในการปรับปรุงแสงโดยรอบหรือไม่?

1
การติดตามเส้นทางแบบก้าวหน้าด้วยการสุ่มตัวอย่างแสงอย่างชัดเจน
ฉันเข้าใจตรรกะที่อยู่เบื้องหลังการสุ่มตัวอย่างที่สำคัญสำหรับส่วน BRDF อย่างไรก็ตามเมื่อพูดถึงการสุ่มตัวอย่างแหล่งกำเนิดแสงอย่างชัดเจนทุกคนก็สับสน ตัวอย่างเช่นถ้าฉันมีแหล่งกำเนิดแสงจุดเดียวในฉากของฉันและถ้าฉันลองตัวอย่างโดยตรงในแต่ละเฟรมอย่างต่อเนื่องฉันควรนับเป็นอีกตัวอย่างหนึ่งสำหรับการรวม monte carlo หรือไม่ นั่นคือฉันนำตัวอย่างหนึ่งตัวอย่างจากการแจกแจงโคไซน์ - น้ำหนักและอื่น ๆ จากจุดแสง เป็นสองตัวอย่างทั้งหมดหรือเป็นเพียงหนึ่งตัวอย่าง นอกจากนี้ฉันควรแบ่งความกระจ่างใสที่มาจากตัวอย่างโดยตรงไปยังคำใด ๆ หรือไม่?

3
เหตุใดจึงนำไปใช้ในการสร้างภาพยนตร์และสามเหลี่ยมในการเล่นเกม
ในโรงเรียนภาพยนตร์ในชั้นเรียนของการสร้างแบบจำลอง 3 มิติฉันก็บอกว่าเมื่อเราทำอะไรบางอย่างสำหรับภาพยนตร์ที่เรารักษาโทโพโลยีของรูปหลายเหลี่ยม 4 ขอบ รูปหลายเหลี่ยมใด ๆ ที่มีมากกว่าหรือน้อยกว่า 4 ขอบ / จุดยอดถือว่าแย่และควรหลีกเลี่ยง ในขณะที่ถ้าใช้โมเดลเดียวกันในเกม แม้ว่าฉันจะไม่ได้เรียนวิชาเอกการสร้างแบบจำลอง 3 มิติ แต่คำถามก็ยังอยู่ในใจ เหตุใดรูปหลายเหลี่ยม 3 ขอบจึงถูกใช้ในการเล่นเกม มันแสดงผลเร็วขึ้นหรือไม่ ถ้าอย่างนั้นทำไมไม่ใช้ในการเรนเดอร์ฟิล์ม?
14 3d  mesh  triangulation 

4
สำหรับคณิตศาสตร์เชดเดอร์เหตุใด RGB เชิงเส้นจึงควรรักษาขอบเขตของ sRGB ไว้
sRGB มักจะถูกเปรียบเทียบกับ "linear RGB" รูปภาพจะถูกเก็บไว้ในดิสก์และส่งผ่านไปยังจอแสดงผลในsRGBซึ่งมีความเข้มสม่ำเสมอโดยประมาณ คณิตศาสตร์ Shader ทำในเชิงเส้น RGBซึ่งเป็นรูปแบบทางกายภาพในความเข้ม สามารถใช้การแก้ไขแกมมาเพื่อแปลงระหว่างสองแบบได้ ตอนนี้ sRGB มีมาตรฐานที่ระบุช่วงสีของสีโดยบอกว่าสีแดงบริสุทธิ์สีเขียวสีน้ำเงินและสีขาวอยู่ตรงไหน แต่ไม่มีมาตรฐานที่สอดคล้องกันสำหรับ "เชิงเส้น RGB" สามเหลี่ยมใด ๆบนแผนภาพ chromaticity อาจกล่าวได้ว่าเป็นเส้นตรงและแน่นอนมีขอบเขตที่รู้จักกันดีหลายอย่างให้เลือก: ในทางปฏิบัติเมื่อเราพูดว่า "linear RGB" เราหมายถึง "sRGB โดยไม่มีการแก้ไขแกมม่า" (นี่คือสิ่งที่เรากำลังทำเมื่อเราใช้การแก้ไขแกมม่า sRGB เป็นขั้นตอนหลังการประมวลผลขั้นสุดท้าย แต่ไม่สนใจช่องว่างสีสำหรับส่วนที่เหลือของการเรนเดอร์การแสดงผล) แต่ทำไมที่ RGB Gamut หนึ่งที่ถูกต้องที่จะใช้สำหรับการแก้ไขและแสงคำนวณ? ดูเหมือนว่าโดยพลการ หากมีสิ่งใดเราจะไม่ต้องการใช้ช่วงเสียงที่ใหญ่ที่สุดเท่าที่จะเป็นไปได้สำหรับการคำนวณภายในและจากนั้นคลิปหรือปรับขนาดสีให้กับช่วงเสียงของอุปกรณ์แสดงผลในตอนท้าย แสง RGB นั้นจะใกล้เคียงกันหรือไม่ดังนั้นจึงไม่สำคัญว่าเราจะเลือกโทนเสียงใดและเราอาจเลือกแสงที่ใกล้เคียงกับที่หน้าจอรองรับมากที่สุด? มันเป็นเพียงความประมาท? หรือการคำนวณในขอบเขตที่แตกต่างกันเหล่านี้ให้ผลลัพธ์ที่เหมือนกันจริงหรือไม่?

3
แก้ไขข้อกำหนดเฉพาะของโมเดล Cook-Torrance / Torrance-Sparrow
ในขณะที่ฉันได้ทำการวิจัยบางอย่างเกี่ยวกับหัวข้อการแสดงผลทางกายภาพ โมเดลสะท้อนหนึ่งที่ถูกกล่าวถึงซ้ำแล้วซ้ำอีกคือโมเดลCook-Torrance / Torrance-Sparrow ดูเหมือนว่าในการกล่าวถึงหรือคำอธิบายของรุ่นนี้ในแต่ละครั้งจะใช้รูปแบบที่แตกต่างกันของคำศัพท์เฉพาะ รุ่นที่ฉันพบคือ: FD Gπ( N⃗ ⋅ V⃗ ) ( N⃗ ⋅ ล⃗ )FDGπ(N→⋅V→)(N→⋅L→){\frac {FDG}{\pi ({\vec N}\cdot {\vec V})({\vec N}\cdot {\vec L})}} FD G4 ( N⃗ ⋅ V⃗ ) ( N⃗ ⋅ ล⃗ )FDG4(N→⋅V→)(N→⋅L→){\frac {FDG}{4 ({\vec N}\cdot {\vec V})({\vec N}\cdot {\vec L})}} FD G( N⃗ ⋅ V⃗ …

4
มีคุณสมบัติทางกายภาพอะไรบ้างที่“ ขาด” เพื่อป้องกันไม่ให้ฉาก 3 มิตินี้ดูเหมือนภาพถ่ายจริง
ดังนั้นฉันจึงรู้ว่าโดยทั่วไปฉันขอให้ระบุปัญหาหลักที่จะแก้ไขในการสร้างกราฟิก 3 มิติที่เหมือนจริง แต่ในฐานะที่เป็นคนที่ไม่มีประสบการณ์ด้านเทคนิคมากในด้านนี้ฉันอยากรู้ว่าถ้าปัญหาเหล่านี้สามารถระบุได้ว่าปัญหาคืออะไร ด้วยการใช้พวกเขาโดยทางโปรแกรม รูปด้านล่างจาก Hitman คือสิ่งที่ฉันจะเรียกว่า "สมจริง" แต่มันก็ดูเหมือนกับโมเดล 3 มิติแน่นอน หากคุณต้องถ่ายภาพในฉากเดียวกันกับนักแสดงและพื้นหลังจริง ๆ มันอาจจะมีความแตกต่างที่ชัดเจนพอที่จะชี้ให้เห็นว่าเป็นแบบไหน ทำไมถึงเป็นอย่างนั้น? <การกระเจิงใต้พื้นผิว 100% ถูกต้องหรือไม่ แสงไฟปิดลงเล็กน้อยหรือไม่? เป็นต้น ป.ล. ขออภัยสำหรับตัวเลือกแท็ก ฉันไม่คุ้นเคยกับ SE นี้พอที่จะรู้ว่าจะเลือกอะไร โปรดแก้ไขสิ่งที่ดีกว่าถ้าคุณรู้

1
วิธีทำแผนที่พื้นผิวสี่เหลี่ยมจัตุรัสกับสามเหลี่ยม?
ฉันต้องการค้นหาพิกัดพื้นผิวสำหรับจุด P ฉันมีจุดยอดของสามเหลี่ยมและพิกัด uv ที่สอดคล้องกัน ตัวเลขในช่องสี่เหลี่ยมเล็ก ๆ ในพื้นผิวแสดงถึงค่าสี ขั้นตอนการคำนวณพิกัดยูวีของ P คืออะไร?
13 uv-mapping 

1
วิธีการแยกจากแผนภาพVoronoïอย่างไร
ฉันคำนวณไดอะแกรมVoronoïจากชุดของคะแนน (ด้วยBoost.polygon ) ฉันพยายามหา Delaunay triangulation ซึ่งเชื่อมต่อแต่ละศูนย์ของเซลล์สำหรับแต่ละVoronoï แต่ฉันพลาดบางส่วน ในภาพต่อไปนี้จุดสีแดงคือจุดเริ่มต้นของฉันเส้นสีฟ้าคือขอบVoronoï (ฉันไม่สนใจขอบไม่มีที่สิ้นสุด) และเส้นสีเขียวคือขอบสามเหลี่ยม (หนึ่งขอบสีเขียวสำหรับขอบสีฟ้าแต่ละจุด เราจะเห็นว่าเส้นทแยงมุมหายไป ฉันกำลังคิดถึงอะไร

3
VR และ frullum การเลือกสรร
เมื่อเรนเดอร์สภาพแวดล้อม VR (มุมมองสเตอริโอ) พวกคุณแนะนำเพียงแค่ทำการตรวจสอบ frustum 2 ครั้งเพื่อพิจารณาว่าจะวาดอะไรในระหว่างการคัดกรอง frustum หรือมีการตรวจสอบอื่น ๆ ที่จะรวม frusta ทั้งสองได้หรือไม่

4
รายละเอียดเส้นขอบฟ้าของน้ำที่ฉาย
ฉันพยายามใช้ฉากมหาสมุทรด้วย C ++ และ DirectX11 ขณะนี้ฉันมีตารางที่ฉายคลื่น Gerstner และการแรเงาขั้นพื้นฐาน ปัญหาของฉันคือเมื่อฉันเล็งกล้องในแนวนอนฉันสามารถมองเห็นเส้นขอบฟ้าของน้ำได้ในระยะไกลกริดที่คาดการณ์ไว้จะไม่เพียงพอแม้แต่ที่จุดยอดสูง ภาพหน้าจอเหล่านี้แสดงให้เห็นถึงปัญหา: ฉันรู้ว่าสาเหตุของปัญหาอยู่ในแนวคิดของกริดที่ฉาย (ตารางมีรายละเอียดใกล้กับกล้องซึ่งห่างจากมันมาก) แต่ต้องมีวิธีปฏิบัติที่ดีที่สุดในการแก้ปัญหานี้ ความคิดใด ๆ

1
เนื้อหาที่เข้าถึงได้อย่างละเอียดเกี่ยวกับฟังก์ชันพื้นฐานของฟูริเยร์และฮาร์มอนิกทรงกลม?
เสียงประสานทรงกลมปรากฏขึ้นในหลายเทคนิคกราฟิกคอมพิวเตอร์ ฉันรู้สึกว่าเพื่อที่จะเป็นนักพัฒนากราฟิกคอมพิวเตอร์ที่ดีขึ้นฉันต้องมีความเข้าใจอย่างลึกซึ้งเกี่ยวกับสิ่งที่พวกเขาเป็นและวิธีการใช้งาน ดูเหมือนว่าการอ้างอิงส่วนใหญ่มักจะแนะนำให้เข้าใจทรงกลมฮาร์มอนิคือ"โง่เคล็ดลับทรงกลมฮาร์มอนิ" โดย Peter-หอกสโลน ฉันเริ่มอ่าน แต่ไม่พบคำจำกัดความ "พอใจ" ของ SH ดูเหมือนว่าเอกสารส่วนใหญ่อาศัยการอ้างอิงอื่น ๆ สำหรับ "พื้นฐาน" การอ้างอิงอื่น ๆ แนะนำฟังก์ชัน Fourier Basis เป็น "เวอร์ชันที่ง่ายกว่า" ของ SH แต่อีกครั้งดูเหมือนว่าจะยากที่จะหาวัสดุที่ดีที่อธิบายพวกเขา การอ้างอิงที่ละเอียดและเข้าถึงได้เพื่อทำความเข้าใจฟังก์ชันพื้นฐานของฟูริเยร์และฮาร์โมนิกส์ทรงกลมคืออะไร

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