рдХреИрдорд░реЗ рдХреЛ рдереЛрдбрд╝рд╛ рд╕рд╛ рдЬрд╝реВрдо рдЗрди рдФрд░ рдореВрд╡ рдХрд░рдХреЗ рдХрд▓рд╛рдХреГрддрд┐рдпреЛрдВ рдХреЛ рдкреБрди: рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
https://threejs.org/examples/webgl_mirror.html
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВред
рдЗрд╕ рд╡рд┐рд╖рдп рдХреЛ рднреА рджреЗрдЦреЗрдВ: https://github.com/mrdoob/three.js/issues/11885
рдЕрдВрдд рдореЗрдВ рдореБрдЭреЗ рд▓рдЧ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдЖрдИрдирд╛ рдареАрдХ рд╕реЗ рд▓рд╛рдЧреВ рдирд╣реАрдВ рд╣реБрдЖ рд╣реИред
рдореБрдЦреНрдп рдХреИрдорд░рд╛ рдХрд╛ рдкрд╣рд▓реВ рдЕрдиреБрдкрд╛рдд рджрд░реНрдкрдг рдХреИрдорд░реЗ рдХреА рдирдХрд▓ рдирд╣реАрдВ рд╣реИред
// "examples/Mirror.js" (lines 142-146)
mirrorCamera.near = camera.near;
mirrorCamera.far = camera.far;
mirrorCamera.updateMatrixWorld();
mirrorCamera.updateProjectionMatrix();
рдЗрд╕реЗ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП:
mirrorCamera.updateMatrixWorld();
mirrorCamera.projectionMatrix.copy(camera.projectionMatrix);
рдореИрдВ рдмрд╛рдж рдореЗрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдкреАрдЖрд░ рднреЗрдЬреВрдВрдЧрд╛!
рджрд░реНрдкрдг (рдФрд░ рдкреНрд▓реЗрдирд░ рдорд╣рд╛рд╕рд╛рдЧрд░) рдХреЗ рд╕рд╛рде рдПрдХ рдФрд░ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ logarithmicDepthBuffer
рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдкрд░ рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рд╡рд┐рдорд╛рди рдХреА рдХрддрд░рди рдХреЗ рдкрд╛рд╕ рдУрдмреНрд▓рд┐рдХ рдЧрд╣рд░рд╛рдИ рдХреЗ рд╕рд╛рде рдЧрдбрд╝рдмрдбрд╝ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХрднреА рд╣рд▓ рдирд╣реАрдВ рдорд┐рд▓рд╛ред рдХрд╛рд╢ WebGL рдХреЗ рдкрд╛рд╕ glClipPlane
@vanruesc рдореИрдВ рдХреЛрдб рдХреЗ рд╕рд╛рде рдЦрд┐рд▓рд╡рд╛рдбрд╝ рдХрд░ рд░рд╣рд╛ рдерд╛ рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЗрд╕реЗ рд╕реАрдзреЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ред рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж!
@ рдорд░реНрдбреЛрдм рдЕрдЧрд░ рдЖрдк рдЕрднреА рднреА рдЧрдбрд╝рдмрдбрд╝ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рд░рд▓реАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдЬрдЧрд╣ рд╣реИ ...
//mirrorCamera.up.set( 0, - 1, 0 );
//mirrorCamera.up.applyMatrix4( rotationMatrix );
//mirrorCamera.up.reflect( normal ).negate();
mirrorCamera.up.set( 0, 1, 0 ).applyMatrix4( rotationMatrix ).reflect( normal );
@WestLangley рдзрдиреНрдпрд╡рд╛рдж!
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
@ рдорд░реНрдбреЛрдм рдЕрдЧрд░ рдЖрдк рдЕрднреА рднреА рдЧрдбрд╝рдмрдбрд╝ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рд░рд▓реАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдЬрдЧрд╣ рд╣реИ ...