คำถามติดแท็ก shaders

โปรแกรมคอมพิวเตอร์ที่ทำงานบนฮาร์ดแวร์กราฟิกและให้การควบคุมระดับสูงว่าฉากถูกเรนเดอร์อย่างไร

1
ฉันจะสร้างเอฟเฟกต์ "ดูด้านหลังกำแพง" ได้อย่างไร
เทพ: บาปดั้งเดิม 2มีระบบการไหลผ่านที่สวยงาม เมื่อฉันไปด้านหลังกำแพงหน้ากากสาดจะปรากฏขึ้นและเมื่อฉันย้ายไปรอบ ๆ เกมมันเปลี่ยนไป มันเหมือน shader ที่ละลายและมีเอฟเฟกต์เมทัลล์ ฉันจะทำซ้ำเอฟเฟกต์นี้ได้อย่างไรโดยสร้างหน้ากากสาดแบบไดนามิกเมื่อผู้เล่นอยู่หลังกำแพง? คุณสามารถดูเอฟเฟกต์ที่ต้องการผ่านวิดีโอ YouTubeนี้

1
ฉันจะสร้าง "พื้นผิวเปียก" / "แอ่งน้ำตื้น" ใน Unity ได้อย่างไร
ในเกมของฉันฉันต้องสร้างแอ่งน้ำแบบไดนามิก แต่ฉันไม่สามารถหาบทช่วยสอนที่แสดงให้เห็นว่าฉันสามารถสร้างเอฟเฟกต์ได้อย่างไร (ตัวอย่างที่แสดงด้านล่าง) ฉันจะทำมันได้อย่างไร

1
ฉันจะจำลองเอฟเฟกต์อนุภาคการบิดเบือนของ Quantum Break ได้อย่างไร
Quantum Break มีเอฟเฟกต์ของอนุภาคที่น่าอัศจรรย์นี้มันเป็นเอฟเฟกต์การบิดเบือนเหมือนกระจกแตก ฉันต้องการทราบว่าฉันสามารถจำลองลักษณะพิเศษนี้ได้อย่างไร คุณสามารถดูได้ด้านล่างและวิดีโอเต็มมีอยู่ใน YouTube :


4
ใช้หลายเฉดสี
ตอนนี้ฉันกำลังศึกษา opengl shaders แต่ฉันไม่สามารถหาอะไรบางอย่างได้: วิธีการใช้เฉดสีที่แตกต่างกับวัตถุเช่นกาน้ำชาที่แสดงโดยใช้ toon shader และอีกฉากหนึ่งในฉากเดียวกันโดยใช้พื้นผิวที่สะท้อนแสงมาก ฟังก์ชั่นเสียงดังเช่นในวิดีโอนี้ http://www.youtube.com/watch?v=1ogg4ZfdBqU อีกอันหนึ่งคือการใช้เบลเซอร์เชดในฉากหนึ่งและเบลอการเคลื่อนไหวเบลอภายหลัง ทำอย่างไรถึงจะได้เอฟเฟกต์เหล่านั้นเมื่อคุณสามารถมีเวอร์เท็กซ์ Shader หนึ่งอันและหนึ่งแฟรกเมนต์ Shader ได้? มีเคล็ดลับเช่นการใช้โปรแกรม shader มากกว่าหนึ่งรายการหรือไม่?
53 shaders  glsl 

1
Raymarch shaders ทำงานอย่างไร
ฉันได้ดู shaders พบที่นี่ shadertoy.com และส่วนใหญ่ที่เย็นมีเสียงและ raymarch เหมือนกัน ฉันไม่เข้าใจซอร์สโค้ด แต่ฉันต้องการจริงๆ เฉดสีเหล่านี้ทำงานอย่างไรและอัลกอริทึม raymarch ทำงานอย่างไร ฉันค้นหาทั่วและไม่พบสิ่งใดในหัวข้อ ขอบคุณ

7
ฉันจะวาดโครงร่างรอบ ๆ แบบจำลอง 3 มิติได้อย่างไร
ฉันจะวาดโครงร่างรอบ ๆ แบบจำลอง 3 มิติได้อย่างไร ฉันพูดถึงบางสิ่งบางอย่างเช่นเอฟเฟกต์ในเกมโปเกมอนเมื่อเร็ว ๆ นี้ซึ่งดูเหมือนว่าจะมีโครงร่างพิกเซลเดียวรอบตัวพวกเขา:

2
วิธีที่จะทำให้น้ำแข็งที่เหมือนจริง?
ฉันกำลังพยายามเขียน ice shader ใน Unity ที่ดูดีและอย่างน้อยกึ่งจริง หากภาพต่อไปนี้ ( พบใน Google ) คือ CG สิ่งที่รวมไว้ในภาพนี้คืออะไร (ถ้ำเบื้องหน้า) ฉันอาจจะผิด แต่ดูเหมือนว่ามันจะมีรูปแบบแสงที่แตกต่างจากการกระจายแสงเริ่มต้น

2
หลังจาก glLinkProgram ที่ประสบความสำเร็จฉันควรลบ / ถอดเฉดสีของฉันออกหรือไม่
หลังจากฉันมีโปรแกรมที่เชื่อมโยงและคิดเกี่ยวกับการตั้งโปรแกรมการป้องกันฉันควรลบและถอดเฉดสีที่ใช้ในการเชื่อมโยงโปรแกรมนี้หรือไม่ ถ้าใช่นั่นคือการปลดปล่อยทรัพยากรใด ๆ หรือไม่? หรือว่าวัตถุ shader เหล่านี้จะได้รับการปลดปล่อยหลังจากเรียกใช้ glDeleteProgram เท่านั้น? แก้ไข: เพียงเพื่อชี้แจงสิ่งที่ฉันทำคือ (ซึ่งสอดคล้องกับคำตอบ): glCreateShader -> glShaderSource -> glCompileShader -> glCreateProgram -> glAttachShader -> glLinkProgram -> glDetachShader -> glDeleteShader -> วาดโดยใช้โปรแกรม shader นี้ -> และเมื่อฉันไม่ต้องการโปรแกรมนี้อีกต่อไป
45 opengl  shaders 

1
ฉันจะลดนามแฝงในเอฟเฟกต์การเรืองแสงร่างของฉันได้อย่างไร
ฉันพยายามจำลองเอฟเฟกต์ร่างเรืองแสงในเกม Left 4 Dead เอฟเฟกต์ทำให้วัตถุมีการเรืองแสงแม้ว่าวัตถุจะถูกบัง นี่คือภาพหน้าจอของเอฟเฟกต์: ฉันสามารถทำซ้ำเอฟเฟกต์นี้ในโปรแกรมที่ใช้ OpenGL ได้บ้าง นี่คือสิ่งที่ฉันกำลังทำอยู่: สร้างพื้นผิวสีและความลึกที่มีขนาดครึ่งหนึ่งของขนาดหน้าจอสำหรับแสดงวัตถุที่เรืองแสง ล้างพื้นผิวสี / แสงที่เรืองแสง สีจะถูกล้างเป็นสีดำ สำหรับวัตถุที่ส่องแสงแต่ละอันให้ฉายไปบนพื้นผิวเรืองแสงเป็นสีทึบ ทำการเบลอเกาส์แยกไม่ออกบนพื้นผิวเรืองแสง ทำให้ฉากความละเอียดเต็มตามปกติ ผสมผสานพื้นผิวเรืองแสงเข้ากับฉากปกติอย่างแนบเนียน แต่ใช้พื้นผิวความลึกของแสงเรืองแสงเพื่อปกปิดวัตถุออกมาเหลือเพียงโครงร่างที่เบลอ นี่คือภาพหน้าจอของแนวทางของฉัน: นี่คือ shader ส่วนที่รวมพื้นผิวเรืองแสงกับฉาก: uniform sampler2D glowColorTex; uniform sampler2D glowDepthTex; uniform sampler2D sceneColorTex; void main() { vec2 uv = gl_TexCoord[0].st; vec4 color = texture2D( sceneColorTex, uv); float depth = texture2D( …
42 opengl  shaders  glsl  glow 

5
นักแสดงในเกมควรมีความรับผิดชอบในการวาดภาพตนเองหรือไม่?
ฉันยังใหม่ต่อการพัฒนาเกม แต่ไม่ได้เขียนโปรแกรม ฉัน (อีกครั้ง) เล่นกับเกมประเภท Pong โดยใช้canvasองค์ประกอบของ JavaScript ฉันสร้างPaddleวัตถุที่มีคุณสมบัติดังต่อไปนี้ ... width height x y colour ฉันยังมีPongวัตถุที่มีคุณสมบัติเช่น ... width height backgroundColour draw(). draw()วิธีการในปัจจุบันคือการรีเซ็ตcanvasและที่เป็นที่คำถามขึ้นมา ควรPaddleวัตถุมีdraw()วิธีการรับผิดชอบสำหรับการวาดภาพหรือควรdraw()ของPongวัตถุต้องรับผิดชอบสำหรับการวาดภาพของนักแสดง (ฉันคิดว่าเป็นคำที่ถูกต้องโปรดแก้ไขฉันหากฉันไม่ถูกต้อง) ฉันคิดว่ามันจะเป็น advantagous สำหรับPaddleการวาดตัวเองที่ผมยกตัวอย่างวัตถุสองและPlayer Enemyถ้ามันไม่ได้อยู่ในPongของdraw()ฉันจะต้องเขียนรหัสที่คล้ายกันสองครั้ง การปฏิบัติที่ดีที่สุดที่นี่คืออะไร? ขอบคุณ

4
ส่วนในการเขียนโปรแกรมกราฟิก 3 มิติคืออะไร?
แฟรกเมนต์ใน shader แฟรกเมนต์คืออะไร Wikipedia บอกว่า: โดยทั่วไปชิ้นส่วนสามารถคิดได้ว่าเป็นข้อมูลที่จำเป็นในการแรเงาพิกเซลรวมทั้งข้อมูลที่จำเป็นในการทดสอบว่าชิ้นส่วนที่รอดชีวิตกลายเป็นพิกเซล (ความลึกอัลฟ่าลายฉลุกรรไกรหน้าต่าง ID ฯลฯ ) ดังนั้นมันคือพื้นผิวจุดยอดหรืออะไรอย่างอื่น?

12
ทรัพยากรที่ดีสำหรับการเรียนรู้ HLSL คืออะไร [ปิด]
ครั้งสุดท้ายที่ฉันลองเรียนรู้ HLSL ฉันทำ shader สองสามครั้งและส่วนใหญ่เข้าใจในสิ่งที่ฉันทำ แต่ฉันยังรู้สึกเหมือนกำลังสะดุดในความมืด สิ่งที่ฉันได้เรียนรู้ส่วนใหญ่มาจากการโพสต์บล็อกต่าง ๆ ที่ไม่ได้อธิบายสิ่งที่ดีมาก นอกจากนี้เอกสารใน MSDN ดูเหมือนจะเป็นการอ้างอิงฟังก์ชั่นมากกว่า ฉันจะเรียนรู้ที่จะไม่เพียง แต่เขียน HLSL แต่เรียนรู้เทคนิคการเขียนเฉดสีได้ที่ใด
28 shaders  hlsl 

4
ความแตกต่างระหว่างวัสดุและ Shader
ในเกมวัสดุมักจะมีผลต่อลักษณะที่ปรากฏของวัตถุเท่านั้น ลักษณะที่ปรากฏทางสายตานั้นได้รับผลกระทบจาก shaders ดังนั้นเกี่ยวกับคำศัพท์มีความแตกต่างระหว่างวัสดุและเฉดสีหรือไม่ คุณควรเขียนหนึ่ง shader สำหรับวัสดุหนึ่ง?

3
ผลวัตถุเค้าร่าง
ฉันจะทำให้เอฟเฟกต์เค้าร่างคล้ายกับที่พบใน League of Legends หรือ Diablo III ได้อย่างไร มันใช้ shader หรือไม่? อย่างไร? ฉันต้องการคำตอบที่ไม่เชื่อมโยงกับเอ็นจินใด ๆ โดยเฉพาะ แต่เป็นคำตอบที่ฉันสามารถปรับให้เข้ากับเอนจินที่ฉันกำลังทำงาน

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