Three.js: ES6 JSM рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рд╕рд╛рде JS рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬрд╛рд░реА рд░рдЦреЗрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 5 рдЕрдХреНрддреВре░ 2020  ┬╖  51рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: mrdoob/three.js

рдХреНрдпрд╛ рдЖрдкрдХрд╛ рдлреАрдЪрд░ рдЕрдиреБрд░реЛрдз рдХрд┐рд╕реА рд╕рдорд╕реНрдпрд╛ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ?

рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдореЙрдбреНрдпреВрд▓ рдФрд░ рдХреНрд▓рд╛рд╕рд┐рдХ рд╕реНрдерд┐рд░ рдлрд╝рд╛рдЗрд▓ рдЖрдпрд╛рдд рджреЛрдиреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдЕрдЪреНрдЫреА рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕реНрд╡рдЪреНрдЫрддрд╛ рд╣реИред рдпрд╣ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд╡реНрдпрд╛рдкрдХ рд╕рдореВрд╣ рдХреЗ рд▓рд┐рдП рд╕реБрд▓рдн рд░рдЦрддрд╛ рд╣реИ рдФрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЙрдирдХреА рдкрд╕рдВрджреАрджрд╛ рд╢реИрд▓реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реВрдВ, рдореБрдЭреЗ рдРрд╕реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рдкрд╕рдВрдж рд╣реИрдВ рдЬреЛ рдХреНрд▓рд╛рд╕рд┐рдХ рд╕рд░рд▓ рдЬреЗрдПрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рд╕реНрдерд┐рд░ рдлрд╛рдЗрд▓реЗрдВ рд╣реИрдВред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рд╕рд┐рд░реНрдл рдПрдХ рдЕрдЬреАрдм рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирдлрд░рдд рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдХрд┐рддрдиреА рджреВрд░ рдврд╛рдВрдЪреЗ рдЖрдкрдХреЛ рдЪреАрдЬреЛрдВ рд╕реЗ рдЕрдирд╛рд╡рд╢реНрдпрдХ рд░реВрдк рд╕реЗ рдЕрд▓рдЧ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╡реЗ рдкрд╣рд┐рдпреЛрдВ рдХрд╛ рдлрд┐рд░ рд╕реЗ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ рдпрд╛ рдЕрдиреНрдпрдерд╛ рдЖрдкрдХреЛ рдмреНрд▓реИрдХ-рдмреЙрдХреНрд╕ рдХрд░рддреЗ рд╣реИрдВред рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдмрд┐рдирд╛ рдХрд┐рд╕реА рдврд╛рдВрдЪреЗ рдХреЗ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдХрдо рд╕рд╣рдЬ рдЬреНрдЮрд╛рди рдпреБрдХреНрдд рдкрд╛рд░рдВрдкрд░рд┐рдХ рдЬреЗрдПрд╕ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдПрдХ рд╕реНрдерд┐рд░ рдлрд╝рд╛рдЗрд▓ рд╕реЗрдЯрдЕрдк рдХреЗ рднреАрддрд░ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╕рдордп рд╡реЗ рдЕрдХреНрд╕рд░ рдореБрдЭреЗ рд╡рд┐рдлрд▓ рдХрд░ рджреЗрддреЗ рд╣реИрдВред

ES6 рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкреНрд░рддреНрдпреЗрдХ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдХреЗ рд▓рд┐рдП рдЖрджрд░реНрд╢ рдирд╣реАрдВ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╡реЗ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рд╕реНрд╡рд╛рдЧрдд рдпреЛрдЧреНрдп рдЕрддрд┐рд░рд┐рдХреНрдд рд╣реИрдВред рдореИрдВ рдХрдИ рдирдП рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдереНрд░реАрдЬреЗ рд╕рд┐рдЦрд╛рддрд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдкрд╕рдВрдж рд╣реИ рдФрд░ рдЖрдИрдПрдордУ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдореЗрдВ рдЖрдиреЗ рдХрд╛ рдПрдХ рд╢рд╛рдирджрд╛рд░ рдФрд░ рд╕рдВрддреЛрд╖рдЬрдирдХ рддрд░реАрдХрд╛ рд╣реИред рд▓реЛрдЧреЛрдВ рдХреЛ рдмреБрдирд┐рдпрд╛рджреА рд╡реИрдирд┐рд▓рд╛ рд╕реАрдПрд╕рдПрд╕/рдЬреЗрдПрд╕/рдПрдЪрдЯреАрдПрдордПрд▓ рд╕рд┐рдЦрд╛рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИ, рд╕рд╛рде рд╣реА рдкреВрд░реЗ рдиреЛрдб/рдПрдирдкреАрдПрдо + рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЛ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдЙрдирдХреЗ рдЧрд▓реЗ рд╕реЗ рдиреАрдЪреЗ рдзрдХреЗрд▓реЗ рдмрд┐рдирд╛ред рд╕реНрдерд┐рд░ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ/рд╕рдордЭрдирд╛ рдЖрд╕рд╛рди рд╣реИ рдФрд░ рдпрд╣рд╛рдВ рдкреНрд░рд╡реЗрд╢ рдХреА рдмрд╛рдзрд╛ рдХрдо рд╣реИред

рд╕реНрдЯрд╛рдЗрд▓рд┐рд╕реНрдЯрд┐рдХ рд░реВрдк рд╕реЗ, рдореИрдВ рдирдП рдирд╛рдорд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЕрддрд┐рд░рд┐рдХреНрдд рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рд╕рд╛рде рддреАрди рдХреЛ рдУрд╡рд░рд▓реЛрдб рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВ рдЬреЛ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рддреИрд░рддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╡рд░реАрдпрддрд╛ рд╣реИред

рдЖрдк рдЬреЛ рд╕рдорд╛рдзрд╛рди рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЙрд╕рдХрд╛ рд╡рд░реНрдгрди рдХрд░реЗрдВ

рд╢рд╛рдпрдж рдореИрдВ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдФрд░ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдмреЗрд╣рддрд░ рдЙрддреНрддрд░ рджреЗ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдирд┐рд░реНрдгрдп рдХреЗрд╡рд▓ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рд╕рдВрдХреНрд░рдордг рдХреЗ рд▓рд┐рдП рдХреНрдпреЛрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕ рдкрд░ рдПрдХ рд╕реНрдЯреИрдм рд▓реЗ рдЬрд╛рдКрдВрдЧрд╛ред

рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ ES6 рдореЙрдбреНрдпреВрд▓ рд╣рд░ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрди рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдпрд╣ рдПрдХ рдмрдВрдбрд▓рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реИ рдЬреИрд╕реЗ рдХрд┐ рдмреНрд░рд╛рдЙрдЬрд╝рд░рд┐рдлрд╝/рд░реЛрд▓рдЕрдк/рд╡реЗрдмрдкреИрдХ/рдкрд╛рд░реНрд╕рд▓ рдЖрджрд┐ ....

рдореЗрд░реЗ рд╕рдорд╛рдзрд╛рди рдореЗрдВ рдПрдХ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд ES6 рдмрдВрдбрд▓рд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реЛрдЧреА рдЬреЛ /examples/jsm рдореЗрдВ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ /examples/js рдЧреИрд░ рдореЙрдбреНрдпреВрд▓ рд╕рдВрд╕реНрдХрд░рдг рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╛рддреА рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЕрдм рджреЛ рд╕реНрдерд╛рдиреЛрдВ рдкрд░ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдФрд░ рдпрджрд┐ рд╡реЗ рдЪрд╛рд╣реЗрдВ рддреЛ JS рдЧреИрд░-рдореЙрдбреНрдпреВрд▓ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдФрд░ рд╡реИрд╢реНрд╡рд┐рдХ var рдЖрдпрд╛рдд рд╢реИрд▓реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВред

JS рдЧреИрд░-рдореЙрдбреНрдпреВрд▓ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдпрд╣ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкреАрдврд╝реА рдирд┐рд░реНрдорд╛рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ рдпрд╛ рдкреИрдХреЗрдЬ рдореЗрдВ рдПрдХ рдХрдорд╛рдВрдб рд╣реЛ рд╕рдХрддреА рд╣реИред рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЪрд▓рд╛ рд╕рдХрддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкреАрдврд╝реА рдХрд╛ рд╡рд┐рдХрд▓реНрдк рдЪреБрдиреВрдВрдЧрд╛ред

рдЗрд╕ рд╕реНрд╡рдЪрд╛рд▓рди рдХреЛ рдмрдирд╛рдирд╛ рдпрд╛ рдЕрдиреНрдпрдерд╛ рдЗрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ JS рдЧреИрд░-рдореЙрдбреНрдпреВрд▓ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рдмрдирд╛рдП рд░рдЦрдирд╛ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдореИрдВ рдЕрдкрдирд╛ рд╕рдордп рджрд╛рди рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рдпрджрд┐ рдХреЗрд╡рд▓ ES6 рдкрд░ рдХреВрджрдиреЗ рдХреЗ рдкреАрдЫреЗ рддрд░реНрдХ рдХреЗрд╡рд▓ рдПрдХ рд╣реА рдЪреАрдЬрд╝ рдХреЗ рджреЛ рд╕рдорд╛рдирд╛рдВрддрд░ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЛ рджреВрд░ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ, рддреЛ рдореБрдЭреЗ рдЙрди рдЪрд┐рдВрддрд╛рдУрдВ рдХреЛ рджреВрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдиреНрдп рд╕рдорд╛рдзрд╛рдиреЛрдВ рдкрд░ рднреА рдЪрд░реНрдЪрд╛ рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛ред

рдЙрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░реЗрдВ рдЬрд┐рди рдкрд░ рдЖрдкрдиреЗ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рд╣реИ

рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЕрдиреНрдп рд╡рд┐рдЪрд╛рд░ рдЪреАрдЬреЛрдВ рдХреЛ рдЫреЛрдбрд╝ рджреЗрдирд╛ рдФрд░ рд╕рднреА рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рдЬреЗрдПрд╕ рдФрд░ рдЬреЗрдПрд╕рдПрдо рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рдмрдирд╛рдП рд░рдЦрдирд╛ рдЬрд╛рд░реА рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдШреЛрд╖рдгрд╛ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддреЗ рд╣реБрдП рдЗрдиреНрд╣реЗрдВ рдмрд╣рд┐рд╖реНрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдореБрдЭреЗ рдпрд╣ рдХреБрдЫ рд╣рдж рддрдХ рдЕрд╕рдВрднрд╡ рд▓рдЧрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреА рдЬрд┐рдореНрдореЗрджрд╛рд░реА рд▓реЗрдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреА рдХрд┐ рдЕрдЧрд░ рд╣рдо рдЗрд╕ рдорд╛рд░реНрдЧ рдкрд░ рдЬрд╛рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВ рддреЛ рдЬреЗрдПрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЕрдкрдиреЗ рдЬреЗрдПрд╕рдПрдо рд╕рдордХрдХреНрд╖реЛрдВ рдХреЗ рд╕рд╛рде рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЕрджреНрдпрддрд┐рдд рд░рд╣реЗрдВред

рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдВрджрд░реНрдн

рдЗрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдФрд░ рд╣рд░ рдЙрд╕ рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдмрд╣реБрдд рдкреНрдпрд╛рд░ рдЬреЛ рдпрд╛ рддреЛ рдХреЛрдб рдореЗрдВ рдпреЛрдЧрджрд╛рди рджреЗрддрд╛ рд╣реИ рдпрд╛ рдореБрджреНрджреЛрдВ рдХреА рд░рд┐рдкреЛрд░реНрдЯрд┐рдВрдЧ/рдЪрд░реНрдЪрд╛ рдХрд░рддрд╛ рд╣реИред

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдкреЗрд╢реЗрд╡рд░реЛрдВ рдФрд░ рд╡рд┐рдкрдХреНрд╖реЛрдВ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рдХреЛ рдзрдиреНрдпрд╡рд╛рджред рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рд╣рдо рд╕реЛрдЪ-рд╕рдордЭрдХрд░ рдирд┐рд░реНрдгрдп рд▓реЗ рд░рд╣реЗ рд╣реИрдВ, рдЗрдиреНрд╣реЗрдВ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рд╣рдореЗрд╢рд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрддрд╛ рд╣реИред

рдпрд╣ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬреЛ рдореИрдВ рдЗрд╕ рд╡рд░реНрд╖ рдХреБрдЫ рдорд╕реНрддрд┐рд╖реНрдХ рдЪрдХреНрд░ рдЦрд░реНрдЪ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдФрд░ рдореИрдВрдиреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╡рд┐рдХреНрд░реЗрддрд╛рдУрдВ рд╕реЗ рдЙрдирдХреА рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреА рдкреВрдЫрд╛ рд╣реИ рддрд╛рдХрд┐ рдореИрдВ рдЖрдЧреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд╕рдХреВрдВред

рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ ES6 рдореЙрдбреНрдпреВрд▓ рднрд╡рд┐рд╖реНрдп рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдпрд╛рдд рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдХреЗ рдмрд┐рдирд╛ рдЙрдирдХреЗ рд╕рд╛рде рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрдиреЗ рд╕реЗ рднрд╛рд░реА рд╕рд┐рд░рджрд░реНрдж рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЖрдкрдХреЗ рдкреНрд░рд╡рд╛рд╣ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рддреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реИред рдЬрдм рд╣рдордиреЗ examples/js рдХреЛ рдкрджрд╛рд╡рдирдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рддреЛ рдореИрдВ рдЙрдореНрдореАрдж рдХрд░ рд░рд╣рд╛ рдерд╛ рдХрд┐ рдЖрдпрд╛рдд рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдореЗрдВ рдЕрдзрд┐рдХ рдХрд░реНрд╖рдг рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рдЗрд╕ рд╡рдЬрд╣ рд╕реЗ, рдореИрдВрдиреЗ examples/js рдлрд╝реЛрд▓реНрдбрд░ рдмрд╣рд┐рд╖реНрдХрд░рдг рдХреЛ рддрдм рддрдХ рдирд┐рд▓рдВрдмрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдЬрдм рддрдХ рдХрд┐ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЖрдпрд╛рдд рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░ рджреЗрддреЗред рдореИрдВ рдЕрдкрдиреЗ рдкрд╣рд▓реЗ рдШрди рдХреЛ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирдП рд▓реЛрдЧреЛрдВ рдХреЛ рдкреЙрд▓реАрдлрд┐рд▓ рдпрд╛ рдмрдВрдбрд▓рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рдиреЗ рд╕реЗ рдирдлрд░рдд рдХрд░реВрдВрдЧрд╛ред

рдореИрдВ @ рдмрдЧ-рд░реАрдкрд░ рдХреЗ рд╕рдорд╛рди рдирд┐рд╖реНрдХрд░реНрд╖ рдкрд░ рдкрд╣реБрдВрдЪрд╛ред рдЖрдЬ рдореИрдВ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдЬреЛ examples/jsm examples/js рд╣реИред

рд╕рднреА 51 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рд▓реЛрдЧреЛрдВ рдХреЛ рдмреБрдирд┐рдпрд╛рджреА рд╡реИрдирд┐рд▓рд╛ рд╕реАрдПрд╕рдПрд╕/рдЬреЗрдПрд╕/рдПрдЪрдЯреАрдПрдордПрд▓ рд╕рд┐рдЦрд╛рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИ, рд╕рд╛рде рд╣реА рдкреВрд░реЗ рдиреЛрдб/рдПрдирдкреАрдПрдо + рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЛ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдЙрдирдХреЗ рдЧрд▓реЗ рд╕реЗ рдиреАрдЪреЗ рдзрдХреЗрд▓реЗ рдмрд┐рдирд╛ред рд╕реНрдереИрддрд┐рдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдпрд╣рд╛рдБ рдкреНрд░рд╡реЗрд╢ рдХреА рдмрд╛рдзрд╛ рдХреЛ рдХрдо рд░рдЦрддреЗ рд╣реИрдВред

рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдмрдирд╛рдП рдЧрдП рдЬреЗрдПрд╕ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХреЛ рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдиреЛрдб, рдПрдирдкреАрдПрдо, рдпрд╛ рдХрд┐рд╕реА рднреА рдирд┐рд░реНрдорд╛рдг рдврд╛рдВрдЪреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдкреБрд░рд╛рдиреЗ рд╡реИрд╢реНрд╡рд┐рдХ рдЖрдпрд╛рддреЛрдВ рдХреА рддрд░рд╣ рд╣реА рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рд░реВрдк рд╕реЗ рдкреНрд░рд╕реНрддреБрдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рдХреЗрд╡рд▓ es6 рдЖрдпрд╛рдд рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╕рднреА рдЖрдзреБрдирд┐рдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдореЗрдВ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред

рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдмрдирд╛рдП рдЧрдП рдЬреЗрдПрд╕ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХреЛ рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдиреЛрдб, рдПрдирдкреАрдПрдо, рдпрд╛ рдХрд┐рд╕реА рднреА рдирд┐рд░реНрдорд╛рдг рдврд╛рдВрдЪреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдкреБрд░рд╛рдиреЗ рд╡реИрд╢реНрд╡рд┐рдХ рдЖрдпрд╛рддреЛрдВ рдХреА рддрд░рд╣ рд╣реА рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рд░реВрдк рд╕реЗ рдкреНрд░рд╕реНрддреБрдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рдХреЗрд╡рд▓ es6 рдЖрдпрд╛рдд рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╕рднреА рдЖрдзреБрдирд┐рдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдореЗрдВ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред

рд╕рдлрд╛рдИ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж! рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдЕрдЪреНрдЫреА рдмрд╛рдд рд╣реИ!
рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ:

<script type="module">

  import { OrbitControls } from 'https://unpkg.com/three@<VERSION>/examples/jsm/controls/OrbitControls.js';

  const controls = new OrbitControls();

</script>
````
is perhaps less intuitive and harder to understand for newcomers than: 

рдПрдХ рд╕реЗрдХрдВрдб рд░реБрдХрд┐рдП... рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЕрднреА рднреА рд╣реИ:

<script src="path/to/local/build/three.js"></script>

рд╡рд┐рд░реЛрдз рдХреЗ рд░реВрдк рдореЗрдВ:

<script type=module src="path/to/local/build/three.module.js"></script>

рдкрд╣рд▓реА рдПрдХ рд╕реНрдерд┐рд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреБрд░рд╛рдиреЗ-рд╡реИрд╢реНрд╡рд┐рдХ-рддрд░реАрдХреЗ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдХрд┐рд╕реА рдХреЗ html рдХреЗ рднреАрддрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ... рд╣реИ рдирд╛? ES6 рдореЗрдВ рд╕рдВрдХреНрд░рдордг рдХреЗ рдмрд╛рдж рдЖрдк рдХреНрдпрд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рдереЗ?

рдЕрдЧрд░ рдореИрдВ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдпреЛрдЬрдирд╛ рдЕрднреА рднреА "/build/three.module.js" рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд "/build/three.js" рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреА рд╣реИред

рд╣рд╛рдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпрд╣ рд╕рдВрджрд┐рдЧреНрдз рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред рдЬрдм examples/js рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдХреБрдЫ рд╣реА рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдмрдЪреЗ рд╣реЛрддреЗ рд╣реИрдВ рдЬрд╣рд╛рдВ three.js рдФрд░ three.min.js рдЕрднреА рднреА рдЙрдкрдпреЛрдЧреА рд╣реЛрддреЗ рд╣реИрдВред

three.js рдФрд░ three.min.js рдХреЛ рд╣рдЯрд╛рдирд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдлрд╛рдпрджреЗрдордВрдж рд╣реЛрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╣рдореЗрдВ npm рдкреИрдХреЗрдЬ рдХреЗ main рдкреНрд░рд╡реЗрд╢ рдмрд┐рдВрджреБ рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛, #19575 рджреЗрдЦреЗрдВред

рдпрджрд┐ рд╣рдо рдЗрддрдиреА рдЖрд╕рд╛рдиреА рд╕реЗ рдРрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдирд┐рд░реНрдорд╛рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ ES6 рдмрдВрдбрд▓рд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЙрдиреНрд╣реЗрдВ рдЙрддреНрдкрдиреНрди рдХрд░рдХреЗ /examples/js рдХрд╛ рд╕рдорд░реНрдерди рдЬрд╛рд░реА рд░рдЦрдирд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред

рд╡рд┐рдЪрд╛рд░ examples/jsm рдХреЛ рдХрдХреНрд╖рд╛рдУрдВ рдЬреИрд╕реА рдЕрдзрд┐рдХ рдЖрдзреБрдирд┐рдХ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рднрд╛рд╖рд╛ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ рд╣реИред рдЪреВрдВрдХрд┐ examples/js рдХреЛ рдЕрднреА рднреА рдкреБрд░рд╛рдиреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЗрд╕рд▓рд┐рдП рдХреЛрдб рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓реЗрд╢рди рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдирдП (рдЙрджрд╛рд╣рд░рдг) рдмрд┐рд▓реНрдб рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдЧрд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдо рдЕрднреА рднреА рдбреБрдкреНрд▓реАрдХреЗрдЯ рдХреЛрдб рдЖрдзрд╛рд░ ( examples/js рдмрдирд╛рдо examples/jsm ) рд░рдЦреЗрдВрдЧреЗ рдЬреЛ рдореЗрд░реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдореЗрдВ рдПрдХ рдЦрд░рд╛рдм рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╣реИред рдпрд╣ рд░рдЦрд░рдЦрд╛рд╡ рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдмрдирд╛рддрд╛ рд╣реИред

рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ ES6 рд╕реЗ ES5 рд░реВрдкрд╛рдВрддрд░рдг рдХрд╛ рдзреНрдпрд╛рди рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ред рдХреЛрдб рдорд┐рдирд┐рдлрд┐рдХреЗрд╢рди рдпрд╛ рдЕрдиреНрдп рдмрд┐рд▓реНрдб-рд╕рдВрдмрдВрдзрд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рдиред

рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ рдХрд┐ рддреБрдо рд╕рд╣реА рд╣реЛред рдЕрдЧрд░ рдореИрдВ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдпреЛрдЬрдирд╛ рдЕрднреА рднреА " /build/three.module.js " рдХреЗ рдЕрд▓рд╛рд╡рд╛ " /build/three.js " рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреА рд╣реИред

рд╕рддреНрдп

/examples рдлреЛрд▓реНрдбрд░ рд╕реЗ рдлрд┐рд▓ рдХрд░рдиреЗ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЬрдм рдЖрдкрдиреЗ /build/three.js рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдерд╛ рддрдм рдЖрдкрдХреЛ /examples/js рд╕реЗ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА рдФрд░ рдЬрдм рдЖрдкрдиреЗ /build/three.module.js рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдерд╛ рддрдм /examples/jsm рдХреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред /build/three.module.js , рдЙрд░реНрдл тАЛтАЛрд▓реЛрдбрд┐рдВрдЧ рд╡рд┐рдзрд┐ рдореЗрдВ рдирд┐рд░рдВрддрд░рддрд╛ рд░рдЦреЗрдВред

рдХреНрдпреЛрдВ? рдХреНрдпреЛрдВрдХрд┐ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдореБрдЦреНрдп THREE рдСрдмреНрдЬреЗрдХреНрдЯ рдПрдХ рд╕рд╛рджрд╛ рдЬреЗрдПрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ THREE = {} рдирд╣реАрдВ рд╣реИ рдмрд▓реНрдХрд┐ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдПрдХ рдЖрдВрддрд░рд┐рдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрд╛ рдореЙрдбреНрдпреВрд▓ рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реИ рдЬрд┐рд╕реЗ рд╕реАрд▓ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (рд╡рд┐рд╕реНрддрд╛рд░ рдпреЛрдЧреНрдп рдирд╣реАрдВ), рдЗрд╕рд▓рд┐рдП, /examples/js рд╕реЗ рдлрд╝рд╛рдЗрд▓реЗрдВ THREE рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдПрдХ рдирдИ рд╕рдВрдкрддреНрддрд┐ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИ рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИред

рддреЛ рдЖрдк import * as THREE from '/build/three.module.js рдФрд░ THREE.WhateverExample = function() ... рдХреЛ рдорд┐рд▓рд╛ рдирд╣реАрдВ рд╕рдХрддреЗ

рдПрдХ рд╕рдВрднрд╛рд╡рд┐рдд рддрд░реАрдХрд╛ рдЖрдпрд╛рддрд┐рдд lib рдХрд╛ рдирд╛рдо THREE рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХрд┐рд╕реА рдФрд░ рдЪреАрдЬрд╝ рдореЗрдВ рдмрджрд▓рдирд╛ рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рд▓рд┐рдЦреЗ рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рджрд╛ рдЬреЗрдПрд╕ THREE рд╡реИрд╢реНрд╡рд┐рдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдирд╛ рд╣реИ ...

рдпрд╣ рдЖрдорддреМрд░ рдкрд░ рдХреА рд╕рдорд╕реНрдпрд╛ рд╣реИ

рдкрд╛рд░рдВрдкрд░рд┐рдХ рдЬреЗрдПрд╕ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ

рдЬреЛ рд╡реИрд╢реНрд╡рд┐рдХ рд╕реНрдерд╛рди рдирд╛рдордХрд░рдг рдХреЛ рджреВрд╖рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рд▓реЛрдб рдХреА рдЧрдИ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдирд╛рдореЛрдВ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдЗрд╕ рддрд░рд╣ рдХреА рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдорд┐рд▓ рд╕рдХрддреА рд╣реИрдВ ...
рджреВрд╕рд░реА рдУрд░, рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рд╛рде, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЖрдпрд╛рдд рдХреЗ рджреМрд░рд╛рди рдирд╛рдордХрд░рдг рдХреА рд╢рдХреНрддрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдЕрдм lib рдХрд╛ рд▓реЗрдЦрдХ рдирд╣реАрдВ рд╣реИ рдЬреЛ рдкрд░рд┐рдгрд╛рдореА рдирд╛рдо рдХрд╛ рдЪрдпрди рдХрд░рддрд╛ рд╣реИ ...

рднреВрддрдкреВрд░реНрд╡:

<script>
// a script you can't modify already use the name THREE
var THREE = document.getElementById('div-nb-3')
</script>

<script type="module">
import * as foo from '/build/three.module.js'

THREE.appendChild( new foo.WebGLRenderer().domElement )
</script>

@ Mugen87 рдЖрдк 100% рд╕рд╣реА рд╣реИрдВред рдпрджрд┐ рд╣рдо /examples/js рдХреЛ рдЫреЛрдбрд╝ рджреЗрддреЗ рд╣реИрдВ рддреЛ рд╣рдо рддреАрди. js рдФрд░ рддреАрди.min.js рдХреЛ рднреА рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдХрд┐рд╕реА рднреА рдРрдб-рдСрди рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рд╛рде рдЕрд╕рдВрдЧрдд рд╣реИрдВред рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓рд╛ рдЖрд▓рд╛ рд╣реЛрдЧрд╛ рдФрд░ рдпрд╣ рднреНрд░рдо рдкреИрджрд╛ рдХрд░рдиреЗ рдХреА рд▓рдЧрднрдЧ рдЧрд╛рд░рдВрдЯреА рд╣реИред

@devingfx рдЖрдк рд╕рд╣реА рдХрд╣ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдлрд╛рдпрджреЗ рд╣реИрдВ рдФрд░ рд╕рдВрднрд╛рд╡рд┐рдд рд╡реИрд╢реНрд╡рд┐рдХ рдирд╛рдо рд╕рдВрдШрд░реНрд╖реЛрдВ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред рдЙрдкрдпреЛрдЧ рдХреЗ рд╡рд░реНрд╖реЛрдВ рдореЗрдВ рдореИрдВрдиреЗ рдХрднреА рднреА рддреАрди рд╡реИрд╢реНрд╡рд┐рдХ рдЪрд░ рдХреЗ рд╕рд╛рде рдХреБрдЫ рднреА рд╕рдВрдШрд░реНрд╖ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдЕрд╕рдВрднрд╡ рдкрд░рд┐рджреГрд╢реНрдп рд╣реИ рд▓реЗрдХрд┐рди рдЖрдкрдХреА рдмрд╛рдд рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ рд╕рд╣реА рд╣реИред

рдЬреЛ рдореЗрд░реА рдирдЬрд░ рдореЗрдВ рдПрдХ рдмреБрд░рд╛ рддрд░реАрдХрд╛ рд╣реИред рдпрд╣ рд░рдЦрд░рдЦрд╛рд╡ рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдмрдирд╛рддрд╛ рд╣реИред

рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ ES6 рд╕реЗ ES5 рд░реВрдкрд╛рдВрддрд░рдг рдХрд╛ рдзреНрдпрд╛рди рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ред рдХреЛрдб рдорд┐рдирд┐рдлрд┐рдХреЗрд╢рди рдпрд╛ рдЕрдиреНрдп рдмрд┐рд▓реНрдб-рд╕рдВрдмрдВрдзрд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рдиред

@ Mugen87 рдХреНрдпрд╛ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдкрд╛рд░рдВрдкрд░рд┐рдХ рдЬреЗрдПрд╕ рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рднрдпрд╛рдирдХ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдПрдХ рд╡реИрд╢реНрд╡рд┐рдХ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рд╣реЛрддрд╛ рд╣реИ? рдХрдИ рдкреБрд╕реНрддрдХрд╛рд▓рдп рджреЛрдиреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЬреЛ рдореИрдВ рдкрд╛рд░рдВрдкрд░рд┐рдХ рдЬреЗрдПрд╕ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдмрддрд╛ рд╕рдХрддрд╛ рд╣реВрдВ рд╡рд╣ рдЕрдХреНрд╕рд░ рдореЙрдбреНрдпреВрд▓ рд╕рдВрд╕реНрдХрд░рдг рд╕рдордХрдХреНрд╖реЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЛрдХрдкреНрд░рд┐рдп рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рджреЛрдиреЛрдВ рдХреЗ рдлрд╛рдпрджреЗ/рдиреБрдХрд╕рд╛рди рд╣реИрдВ рдФрд░ рдЙрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рд╡рд░реАрдпрддрд╛ рдХреЗ рд▓рд┐рдП рдЙрдмрд╛рд▓ рдЬрд╛рддреЗ рд╣реИрдВред рдХреНрдпрд╛ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЧреИрд░-рдореЙрдбреНрдпреВрд▓ рд╕рдВрджрд░реНрдн рдореЗрдВ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рджреЗрдирд╛ рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реИ?

рдореИрдВ рддреАрди. module.js рдФрд░ /examples/jsm рд╕реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рддреАрди.min.js, рддреАрди.js рдФрд░ /examples/js рдЬреЗрдирд░реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдХреЛрдб рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓реЗрд╢рди рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рдмрдирд╛рдиреЗ/рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХрд╛ рдзреНрдпрд╛рди рд░рдЦрдиреЗ рдХреЛ рддреИрдпрд╛рд░ рд╣реВрдВред рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓реЗрд╢рди рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЛ рдЪрд╛рд▓рд╛рдХреА рд╕реЗ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЗрд╕реЗ рдХреБрдЫ рдиреНрдпреВрдирддрдо рд░рдЦрд░рдЦрд╛рд╡ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ рд▓реЗрдХрд┐рди рдпрд╣ != рджреЛ рд╕рдорд╛рдирд╛рдВрддрд░ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рдмрдирд╛рдП рд░рдЦрддрд╛ рд╣реИред рдЕрдзрд┐рдХрд╛рдВрд╢ рднрд╛рдЧ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдХреЛ рдХреЗрд╡рд▓ рдореЙрдбреНрдпреВрд▓ рдлрд╝рд╛рдЗрд▓реЛрдВ рдкрд░ рдЕрджреНрдпрддрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдФрд░ рдХреЗрд╡рд▓ рдХрднреА-рдХрднреА рдЖрдкрдХреЛ рдХреБрдЫ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓реЗрд╢рди рдмрдХрд╡рд╛рд╕ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред

рдореЗрд░реЗ рдкрд╛рд╕ рдкрд░реНрдпрд╛рдкреНрдд рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рд╣реИрдВ рдЬреЛ рдкрд╛рд░рдВрдкрд░рд┐рдХ рд╡реИрд╢реНрд╡рд┐рдХ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рддреА рд╣реИрдВ рдФрд░ рдЗрд╕рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ рдХрд┐ рдореИрдВ рд╡реИрд╕реЗ рднреА рдореЙрдбреНрдпреВрд▓ рдХреЗ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓реЗрд╢рди рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдмрд╣реБрдд рдХрдо рд╕реЗ рдХрдо рд╣рдо package.json рдореЗрдВ рдПрдХ рдХрдорд╛рдВрдб рд╢рд╛рдорд┐рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ "рд▓реАрдЧреЗрд╕реА-рдмрд┐рд▓реНрдб" рдХрд╣ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдореЙрдбреНрдпреВрд▓ рдХреЛ рддреАрди.min.js, three.js рдФрд░ /examples/js рдореЗрдВ рдЯреНрд░рд╛рдВрд╕рдкрд╛рдЗрд▓ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдореВрд▓ рдХреЗ рд╕рдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддреЗ рд╣реИрдВ рдлрд╝рд╛рдЗрд▓реЗрдВ рдЕрдмред рдЗрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд░реЗрдкреЛ рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдмрджреНрдз рд╣реЛрдиреЗ рдпрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдмрдирд╛рдП рдЬрд╛рдиреЗ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рд╣рдо рдпрд╣ рднреА рдЪреЗрддрд╛рд╡рдиреА рджреЗ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╡реЗ рд╡рд┐рд░рд╛рд╕рдд рд╕рдорд░реНрдерди рдХреЗ рд▓рд┐рдП рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рд╣реИ, рд╣рдо рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддреЗ рд╣реИрдВ ...

рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд░реВрдк рд╕реЗ рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЕрдзрд┐рдХ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рд░реЗрдкреЛ рдореЗрдВ рд░рдЦреЗрдВ рдФрд░ рдмрд╕ рдЙрдиреНрд╣реЗрдВ рдмрд┐рд▓реНрдб рдкрд░ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд┐рдВрдЧ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЬреЗрдирд░реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПред

package.json рдореЗрдВ рдПрдХ рдХрдорд╛рдВрдб рдФрд░ рдЗрд╕реЗ "рд▓реАрдЧреЗрд╕реА-рдмрд┐рд▓реНрдб" рдХрд╣рддреЗ рд╣реИрдВ рдЬреЛ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдЯреНрд░рд╛рдВрд╕рдкрд╛рдЗрд▓ рдХрд░рддрд╛ рд╣реИ

рдЙрдЪрд┐рдд рд▓рдЧрддрд╛ рд╣реИред рдмреЗрдмреЗрд▓ рдХрд╛ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рд╡рд┐рд▓рдп рдирд╣реАрдВ рд╣реБрдЖ рдерд╛? рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдРрд╕рд╛ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реЛ рд╕рдХрддрд╛ рд╣реИ

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдирд╣реАрдВ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдирдпрд╛ рдЖрджреЗрд╢ рдХрд┐рд╕реА рдХреЗ рджреНрд╡рд╛рд░рд╛ рдЪрд▓рд╛рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЫреЛрдбрд╝рдХрд░ рдЬреЛ рдирд┐рд░реНрдорд╛рдг рдХрд╣рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ

рдХреНрдпрд╛ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдкрд╛рд░рдВрдкрд░рд┐рдХ рдЬреЗрдПрд╕ рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рднрдпрд╛рдирдХ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдПрдХ рд╡реИрд╢реНрд╡рд┐рдХ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рд╣реЛрддрд╛ рд╣реИ?

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреА рдЬрдЯрд┐рд▓рддрд╛ рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЙрджрд╛рд╣рд░рдг рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рд╕рд╛рде рдпрд╣ рдЗрддрдирд╛ рдЖрд╕рд╛рди рд╣реИред

рдЖрдЗрдП рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ GLTFLoader рдХреЛ рджреЗрдЦреЗрдВред рдЕрднреА рд╕рднреА GLTFLoader рдПрдХ рд╣реА рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рдорд╛рд╣рд┐рдд рд╣реИрдВ рдЬреЛ HTML рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИред рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд╛рднреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдпрд╣ рд╣реИ рдХрд┐ рдХреБрдЫ рдмрдбрд╝реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ GLTFLoader рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЖрдпрд╛рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдПрдХ рдмрд╛рд░ рдЬреАрдПрд▓рдЯреАрдПрдлрд▓реЛрдбрд░ рдЪрд╛рд░ рдмрд╛рд╣рд░реА рдлрд╛рдЗрд▓реЛрдВ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдХреБрдЫ рд╕рд╛рдЭрд╛ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдирд┐рд░реНрдорд┐рдд рд╡реИрд╢реНрд╡рд┐рдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдХреНрдпрд╛ рд╢рд╛рдорд┐рд▓ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП? рдХреНрдпрд╛ рдирд┐рд░реНрдорд┐рдд рд╡реИрд╢реНрд╡рд┐рдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЕрдм рдЙрди рд╕рднреА рдЙрджрд╛рд╣рд░рдг рдЬреЗрдПрд╕ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рд╣реЛрдЧрд╛? рдпрд╛ рдХреБрдЫ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдПрдХ рд╕рд╛рде рдмрдВрдбрд▓ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдлрд╛рдЗрд▓реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдЬреЛ рдПрдХ рд╕рд╛рде рдмрдВрдбрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдареАрдХ рд╣реИрдВ рдФрд░ рдЬреЛ рдирд╣реАрдВ рд╣реИрдВ?

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХрдорд╛рддреНрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реЗрдЯ рдФрд░ рднреВрд▓рдиреЗ рдХрд╛ рдорд╛рдорд▓рд╛ рд╕рднреА рдЙрджрд╛рд╣рд░рдг рдЬреЗрдПрд╕ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдПрдХ рдореЛрдиреЛрд▓рд┐рдерд┐рдХ рдмреНрд▓реЙрдм рдореЗрдВ рдмрд╛рдВрдз рд░рд╣рд╛ рд╣реИ рдЬреЛ рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рдЙрдЪрд┐рдд рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрдирдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рднреА рд╕рдорд╛рдзрд╛рди рдХреЗ рд╕рд╛рде рдХреБрдЫ рдЕрдиреНрдп рд░рд┐рд▓реАрдЬ рдФрд░ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдУрд╡рд░рд╣реЗрдб рднреА рд╣реЛрдВрдЧреЗред

рд╢рд╛рдпрдж рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдмреЗрд╣рддрд░ рддрд░реАрдХрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЬрдм рдореИрдВрдиреЗ рд░реЛрд▓рдЕрдк рдмрд┐рд▓реНрдб рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдЬреЛ рдкрд┐рдЫрд▓реА рд╕рдВрдЧрддрддрд╛ рдпрд╛ рдореМрдЬреВрджрд╛ рдЬреЗрдПрд╕ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдХрдо рд╕реЗ рдХрдо рдПрдХ рд╕реБрд╕рдВрдЧрдд рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдмрдирд╛рдП рд░рдЦрддрд╛ рд╣реИ рддреЛ рдпреЗ рд╡реЗ рдореБрджреНрджреЗ рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдореИрдВ рднрд╛рдЧ рдЧрдпрд╛ рдерд╛ред

рдЕрдЧрд░ рдореИрдВ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдпреЛрдЬрдирд╛ рдЕрднреА рднреА "/build/three.module.js" рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд "/build/three.js" рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреА рд╣реИред

рд╣рд╛рдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпрд╣ рд╕рдВрджрд┐рдЧреНрдз рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред
рдЬрдм example/js рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдХреБрдЫ рд╣реА рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдмрдЪреЗ рд╣реЛрддреЗ рд╣реИрдВ рдЬрд╣рд╛рдБ рддреАрди.js рдФрд░ рддреАрди.min.js рдЕрднреА рднреА рдЙрдкрдпреЛрдЧреА рд╣реЛрддреЗ рд╣реИрдВред

@рдореБрдЧреЗрди 87 @mrdoob

рдорд╛рдЗрдХрд▓,
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ "three.min.js" рдХреЛ рдХрдо рд╕реЗ рдХрдо 2 рд╕рд╛рд▓ рдФрд░ рд░рдЦрдирд╛ рдЬрд░реВрд░реА рд╣реИред
рдЗрд╕рд▓рд┐рдП рдирд╣реАрдВ рдХрд┐ рдореЗрд░реЗ рд╕рд╛рд░реЗ рдирдореВрдиреЗ рдЗрд╕реА рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИрдВред
рд▓реЗрдХрд┐рди рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рдкрд░ рд╣рдЬрд╛рд░реЛрдВ рдлрд╛рдЗрд▓реЗрдВ рдФрд░ рдЧреВрдЧрд▓ рдХреЗ рд╢реАрд░реНрд╖ рдХреБрддреНрддреЗ рдЖрдзрд╛рд░рд┐рдд рд╣реИрдВ!
рдЙрджрд╛рд╣рд░рдг: https://www.google.com/search?source=hp&q=webgl+benchmark

рджреВрд╕рд░реА рдУрд░, рдореЗрд░реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, "three.min.js" рдХрд╛ рдЕрд░реНрде рд╣реИ рддреЗрдЬ рд╡рд┐рдХрд╛рд╕ рдФрд░ рдкрд░реАрдХреНрд╖рдгред
рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдСрдлрд╝рд▓рд╛рдЗрди рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЖрдкрдХреЛ рд╕реНрдерд╛рдиреАрдпрд╣реЛрд╕реНрдЯ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
рдмрд╕ рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдПрдХ рдлреЛрд▓реНрдбрд░ рдореЗрдВ рдХрд╣реАрдВ рд░рдЦ рджреЗрдВ, рдлрд╛рдпрд░рдлреЙрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдФрд░ рдПрдЪрдЯреАрдПрдордПрд▓ рдлрд╛рдЗрд▓ рдкрд░ рдбрдмрд▓ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред
рдореИрдВ рд╣рдореЗрд╢рд╛ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдкреНрдпрд╛рд░ рдХрд░рддрд╛ рдерд╛!

рд░рд┐рдХрд╛рд░реНрдбреЛ рдХреЛ рднреА рдЗрди рд╕рдм рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрдирд╛ рдЪрд╛рд╣рд┐рдПред
рдЪрд┐рдпрд░реНрд╕

three.js рдФрд░ three.min.js рдХреЛ рд╣рдЯрд╛рдиреЗ рдкрд░ рдЪрд░реНрдЪрд╛ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ рдФрд░ examples/js рдХреЗ рдЪрд▓реЗ рдЬрд╛рдиреЗ рдкрд░ рдЗрд╕рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИред рдЬрдм рдЖрдк examples/js рд╕реЗ рдлрд╝рд╛рдЗрд▓реЗрдВ рдЖрдпрд╛рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ, рддреЛ рдЙрдирдХреЗ рдЦреЛрдП рд╣реБрдП рдорд╣рддреНрд╡ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░рдирд╛ рдореЗрд░реЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдерд╛ред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреА рдЬрдЯрд┐рд▓рддрд╛ рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЙрджрд╛рд╣рд░рдг рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рд╕рд╛рде рдпрд╣ рдЗрддрдирд╛ рдЖрд╕рд╛рди рд╣реИред

рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрди рдмрд┐рдВрджреБрдУрдВ рдХреЛ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк рдКрдкрд░ рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдмрдВрдбрд▓рд┐рдВрдЧ рдореЗрдВ рдмрд┐рд▓реНрдХреБрд▓ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рдЬрдЯрд┐рд▓рддрд╛ рд╣реИ рдФрд░ рдиреЗрд╕реНрдЯреЗрдб рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрджрд╛рд╣рд░рдг рдПрдХ рдЕрдЪреНрдЫрд╛ рд╣реИред рдЖрдкрдХреА рдмрд╛рдд рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЙрд╕ рд╕рдордп рдЖрдиреЗ рдкрд░ рдиреЗрд╕реНрдЯреЗрдб рдореЙрдбреНрдпреВрд▓ рдХреЛ рдмрдВрдбрд▓ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рдордЭрджрд╛рд░ рдирд┐рд░реНрдгрдп рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВред рдореИрдВ рдпрд╣ рдирд╣реАрдВ рдХрд╣ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдПрдХ рдмрдВрдбрд▓рд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдПрдХ рд╕реЗрдЯ рд╣реЛрдЧреА рдФрд░ рдЗрд╕реЗ рднреВрд▓ рдЬрд╛рдУ рд╕реНрдерд┐рддрд┐, рдХреЗрд╡рд▓ рдпрд╣ рдХрдо рд░рдЦрд░рдЦрд╛рд╡ рд╣реЛрдЧреАред

рдпрджрд┐ рд╕рдордп рдЖрддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдЗрд╕реЗ рдмрдирд╛рдП рд░рдЦрдирд╛ рдмрд╣реБрдд рдХрдард┐рди рд╣реИ, рддреЛ рд╣рдо рдЗрд╕реЗ рд╣рдореЗрд╢рд╛ рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЙрди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рдХрд╛рд░рдг рдЫреВрдЯ рджреЗрдиреЗ рдХреА рдореВрд░реНрдЦрддрд╛ рд╣реИ рдЬреЛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЕрднреА рддрдХ рдирд╣реАрдВ рд╣реИрдВред рдЕрдм рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рд╣реЛрдЧрд╛ рдЬрдмрдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЕрднреА рднреА /examples/jsm рдФрд░ example /js рдХреЗ рдмреАрдЪ 1 рд╕реЗ 1 рд╕рдорд╛рдирддрд╛ рд╣реИред рд╣рдо рд╕рдВрднрд╡рддрдГ рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ /example/jsm рдореЙрдбреНрдпреВрд▓ рдкрджрд╛рдиреБрдХреНрд░рдо рдХреЛ рдлрд┐рд░ рд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗ рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬрдм рд╣рдо рдХрд░рддреЗ рд╣реИрдВ рддреЛ рд╣рдо рдмрдВрдбрд▓рд░ рдореЗрдВ рд╡реГрджреНрдзрд┐рд╢реАрд▓ рдЕрдкрдбреЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдореИрдВ рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХреЗ рд╕рдмреВрдд рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреВрдВрдЧрд╛ (рдмреЗрдмреЗрд▓ рдХреЗ рд╕рд╛рде рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ?) рдЕрдкрдирд╛ рдкреИрд╕рд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╣рд╛рдВ рдореЗрд░рд╛ рдореБрдВрд╣ рд╣реИ рдЬреИрд╕рд╛ рд╡реЗ рдХрд╣рддреЗ рд╣реИрдВред

рдореБрдЧреЗрди рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, рдпрд╣ рдХреБрдЫ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХрддрд╛ рдХреЛ three.js рдФрд░ three.min.js рддрдХ рдмрдирд╛рдП рд░рдЦрдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ рдЬрдмрдХрд┐ рд╣рдо рдЙрдиреНрд╣реЗрдВ рдмрдирд╛рдП рд░рдЦрдирд╛ рдЬрд╛рд░реА рд░рдЦреЗрдВрдЧреЗред рдпрд╣ рдЙрди рд╕реИрдХрдбрд╝реЛрдВ рд╕рд╛рдЗрдЯреЛрдВ рдХреА рднреА рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдЕрдкрдиреЗ рдЧреИрд░-рдореЙрдбреНрдпреВрд▓ рдЖрдзрд╛рд░рд┐рдд рддреАрди рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рдЕрджреНрдпрддрди рдХреА рддрд▓рд╛рд╢ рдореЗрдВ рд╣реИрдВред рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рддреАрди рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА рд░реАрдлреИрдХреНрдЯрд░рд┐рдВрдЧ рдХрд╛рдлреА рд╡реНрдпрд╛рдкрдХ рд╣реЛ рд╕рдХрддреА рд╣реИ, рднрд▓реЗ рд╣реА рдЖрдк рдЬрд╛рдирддреЗ рд╣реЛрдВ рдХрд┐ рдЖрдк рдХреНрдпрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдореИрдВ рдЕрдиреНрдп рд╕рд╣рдпреЛрдЧрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдмреЛрд▓ рд╕рдХрддрд╛ рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдЕрдкрдирд╛ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдмрджрд▓реВрдВрдЧрд╛ред рдореИрдВ examples/js рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реЛрдЯ рдХрд░рддрд╛ рд╣реВрдВ, рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣рд╛рдВ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рд╣реИ рдФрд░ рдпрд╣рд╛рдВ #18749 рдХреА рдкреНрд░рддрд┐рдмрджреНрдзрддрд╛ рдХреА рдЧрдИ рд╣реИред

рдореИрдВ рдЙрджрд╛рд╣рд░рдг/js рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реЛрдЯ рдХрд░рддрд╛ рд╣реВрдВ, рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣рд╛рдВ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рд╣реИ рдФрд░ рдпрд╣рд╛рдВ #18749 рдХреА рдкреНрд░рддрд┐рдмрджреНрдзрддрд╛ рд╣реИред

рдореБрдЭреЗ рдЗрд╕рд╕реЗ рдХреЛрдИ рджрд┐рдХреНрдХрдд рдирд╣реАрдВ рд╣реИред
рдЬрдм рддрдХ "three.min.js" рдХреБрдЫ рдФрд░ рд╡рд░реНрд╖реЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реИ ...

рдЗрдирдкреБрдЯ рдореБрдЧреЗрди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдореИрдВрдиреЗ рдЙрд╕ рдзрд╛рдЧреЗ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрдврд╝рд╛ рд▓реЗрдХрд┐рди рдпрд╣ рдирд┐рд░реНрдгрдп рдХреЗ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреЗ рд╡рд┐рд░реЛрдз рдореЗрдВ рдПрдХ рдШреЛрд╖рдгрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдзрд┐рдХ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИред рдореЗрд░реА рдзрд╛рд░рдгрд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╕рд░рд▓реАрдХреГрдд рд╡рд┐рдХрд╛рд╕ рдЗрд╕ рджрд┐рд╢рд╛ рдореЗрдВ рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдХрд╛ рдкреНрд░рд╛рдердорд┐рдХ рдХрд╛рд░рдг рд╣реИ, рдХреНрдпрд╛ рдХреЛрдИ рдЕрдиреНрдп рд╣реИрдВ?

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓реЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реЛрдиреЗ рд╕реЗ рд╣рдо /рдЙрджрд╛рд╣рд░рдг/рдЬреЗрдПрд╕ рд╢реИрд▓реА рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣рд╛рдВ рдПрдХ рдареАрдХ рд╕рдордЭреМрддрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕реЗ рдпрд╣рд╛рдВ рдЖрд╡рд╢реНрдпрдХ рд░рдЦрд░рдЦрд╛рд╡/рдЬрдЯрд┐рд▓рддрд╛ рдХреА рдорд╛рддреНрд░рд╛ рдХреЛ рдХрд╛рдлреА рдХрдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВ рднреА рдареАрдХ рд╣реЛрддрд╛ рдЕрдЧрд░ рдпрд╣ package.json рдореЗрдВ рд╕рд┐рд░реНрдл рдПрдХ рдХрдорд╛рдВрдб рд╣реЛрддрд╛ рддреЛ рдЖрдкрдХреЛ рдЕрдкрдиреЗ рджрдо рдкрд░ рдЪрд▓рд╛рдирд╛ рд╣реЛрддрд╛ рдФрд░ рдлрд╛рдЗрд▓реЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЙрддреНрдкрдиреНрди рдирд╣реАрдВ рд╣реЛрддреА рдереАрдВред рдХреБрдЫ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдФрд░ рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд▓рд╛рдн рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рд╡реИрд╕реЗ рднреА рдЯреНрд░рд╛рдВрд╕рдкрд╛рдЗрд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдЬрдм рд╣рдо рд╕рд╣рдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдмреЗрд╣рддрд░ рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп рд░реЗрдкреЛ рдореЗрдВ рдХреБрдЫ рд░рдЦрд╛ рдЬрд╛ рд╕рдХреЗ рддреЛ рд╣рдо рд╕рднреА рдиреЗ рдЕрдкрдиреЗ рдЖрдк рдкрд░ рдПрдХ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓реЗрд╢рди/рдмрдВрдбрд▓ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдирд╣реАрдВ рдмрдирд╛рдпрд╛ рд╣реЛрдЧрд╛ред :)

рдореИрдВрдиреЗ рдЙрд╕ рдзрд╛рдЧреЗ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрдврд╝рд╛ рдерд╛ рд▓реЗрдХрд┐рди рдпрд╣ рдирд┐рд░реНрдгрдп рдХреЗ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреЗ рд╡рд┐рд░реЛрдз рдореЗрдВ рдПрдХ рдШреЛрд╖рдгрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдзрд┐рдХ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИред

рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рд╣рдо рд╣рдореЗрд╢рд╛ рд╕рднреА рдорд╛рдиреНрдп рддрд░реНрдХреЛрдВ рдХреЛ рдПрдХ рд╣реА рдзрд╛рдЧреЗ рдореЗрдВ рдирд╣реАрдВ рдбрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рддреЛ рдХреНрдпреЛрдВрдХрд┐ рдПрдХ рдбрд┐рдЬрд╛рдЗрди рдкрд░рд┐рд╡рд░реНрддрди рдХреА рдкреНрд░рд╛рдкреНрддрд┐ рдзреАрд░реЗ-рдзреАрд░реЗ рд╡рд░реНрд╖реЛрдВ рдореЗрдВ рдХрдИ рдЪрд░реНрдЪрд╛рдУрдВ рдкрд░ рдЖрдЧреЗ рдмрдврд╝рддреА рд╣реИ, рдпрд╛ рд╕рд┐рд░реНрдл рдЗрд╕рд▓рд┐рдП рдХрд┐ рдПрдХ рд╣реА рд╡рд┐рд╖рдп рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрдИ рдзрд╛рдЧреЗ рдмрд╛рд░-рдмрд╛рд░ рдмрдирд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ (рдЬреИрд╕реЗ рдпрд╣ рдПрдХ ) рд╕рд╣рдпреЛрдЧреА рд╢реЛрд░ рдФрд░ рд╡рд┐рднрд╛рдЬрди рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рд╣рдореЗрд╢рд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред

рдореЗрд░реА рдзрд╛рд░рдгрд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╕рд░рд▓реАрдХреГрдд рд╡рд┐рдХрд╛рд╕ рдЗрд╕ рджрд┐рд╢рд╛ рдореЗрдВ рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдХрд╛ рдкреНрд░рд╛рдердорд┐рдХ рдХрд╛рд░рдг рд╣реИ, рдХреНрдпрд╛ рдХреЛрдИ рдЕрдиреНрдп рд╣реИрдВ?

рдореИрдВ рдЬреЛ рд╕рдмрд╕реЗ рдмрдбрд╝рд╛ рджреЗрдЦрддрд╛ рд╣реВрдВ рд╡рд╣ рдЙрдк-рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдФрд░ рдЖрдпрд╛рдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рд╣реИ рдЬреЛ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдХреЛрдб рдХреЛ рдХрдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдкреБрди: рдкреНрд░рдпреЛрдЬреНрдп рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд▓рд┐рдП рдмрдирд╛рддрд╛ рд╣реИред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЕрдзрд┐рдХрд╛рдВрд╢ рд▓реЛрдбрд░ рдХреЛ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреА рдбреЗрдЯрд╛ рдкрд╛рд░реНрд╕рд┐рдВрдЧ рд╕рдВрд░рдЪрдирд╛/рд╡рд░реНрдЧ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЗрд╕рдХрд╛ рдХрд╛рд░рдг рдпрд╣ рд╣реИ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рд▓реЛрдбрд░ рдХреЛ рдЖрддреНрдордирд┐рд░реНрднрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ example/js рдлрд╛рдЗрд▓реЗрдВ рдкреБрди: рдЙрдкрдпреЛрдЧ рдпреЛрдЧреНрдп рд╣реЛрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЕрдЧрд░ рд╣рдо рдЧреИрд░-рдореЙрдбреНрдпреВрд▓рд░ рдкреНрд░рддрд┐рдмрдВрдз рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╣рдЯрд╛ рджреЗрддреЗ рд╣реИрдВ, рддреЛ рд╣рдо DataParser рд╡рд░реНрдЧ рдХрд╛ рдПрдХрд▓ рдЙрджрд╛рд╣рд░рдг рдмрдирд╛рдиреЗ рдФрд░ рд╕рднреА рд▓реЛрдбрд░ рдкрд░ рдЙрд╕ рдорд╛рдирдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рдЖрдпрд╛рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВрдЧреЗ, рдЬрд┐рд╕рд╕реЗ рд╡рд┐рдХрд╛рд╕ рддреБрд░рдВрдд рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдХреЛрдб рдХреЛ рднреА рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рд╕рднреА рд▓реЛрдбрд░ред

рд╣рд╛рдБ, рдЕрдЪреНрдЫрд╛ рдмрд┐рдВрджреБред рд╣рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА Pass рд╡рд░реНрдЧ (рд╕рднреА FX рдкрд╛рд╕реЛрдВ рдХрд╛ рдЖрдзрд╛рд░ рд╡рд░реНрдЧ) рдХреЛ EffectComposer рдореЗрдВ рдПрдореНрдмреЗрдб рдХрд░рдиреЗ рдЬреИрд╕реЗ рдЧрдВрджреЗ рд╣реИрдХ рдХрд░рдиреЗ рд╣реЛрдВрдЧреЗ рддрд╛рдХрд┐ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗ рдХрд┐ рд▓реАрдЧреЗрд╕реА рдХреЛрдб рдЯреВрдЯ рди рдЬрд╛рдПред

рдмрд╣реБрдд рдЕрдЪреНрдЫреЗ рдЕрдВрдХ рдкреВрд░реЗ рджреМрд░ рдореЗрдВ рдмрдиреЗред

рд▓реЛрдЧреЛрдВ рдХреЛ рдСрди-рдЯреНрд░реИрдХ/рдЕрдк-рдЯреВ-рдбреЗрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдФрд░ рд░рдЦрдирд╛ (рдФрд░ рдореЗрд░реЗ рдЕрдкрдиреЗ рдЕрдиреБрднрд╡ рд╕реЗ) рдПрдХ рдХрдард┐рди рдореБрджреНрджрд╛ рд╣реИред рдЗрд╕ рдкрд░ рдХреБрдЫ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВрдЧреЗред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ "three.min.js" рдХреЛ рдХрдо рд╕реЗ рдХрдо 2 рд╕рд╛рд▓ рдФрд░ рд░рдЦрдирд╛ рдЬрд░реВрд░реА рд╣реИред

рдмреИрдмреЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ ES5 рдмрд┐рд▓реНрдб рдмрдирд╛рдирд╛ рд╣рдореЗрд╢рд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ред рдЬрдм рдпрд╣ рд╕рд╡рд╛рд▓ рдЖрддрд╛ рд╣реИ рддреЛ рд╣рдореЗрдВ рдЬрд┐рд╕ рдкреНрд░рд╢реНрди рдХрд╛ рдЙрддреНрддрд░ рджреЗрдирд╛ рд╣реЛрдЧрд╛, рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░реА рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╣реИ рдпрд╛ рдбреЗрд╡рд▓рдкрд░ рдХреЗ рд╕рд╛рде рд╣реИ рдЬреЛ рддреАрди.рдЬреЗрдПрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИред

рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╣реА рддрдп рдХрд░ рд▓рд┐рдпрд╛ рд╣реИ рдХрд┐ рдЙрджрд╛рд╣рд░рдг рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ ES5 рд╕рдВрд╕реНрдХрд░рдг рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдбреЗрд╡рд▓рдкрд░ рдкрд░ рдирд┐рд░реНрднрд░ рд╣реЛрдЧрд╛, рдЗрд╕рд▓рд┐рдП рд╢рд╛рдпрдж рдмрд┐рд▓реНрдб рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдРрд╕рд╛ рдХрд░рдирд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред рдореЗрд░реЗ рд╡рд┐рдЪрд╛рд░ рд╕реЗ, рдЗрд╕реЗ рдкреВрд░реА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдореЗрдВ рдПрдХ рд░рд┐рд▓реАрдЬ рдореЗрдВ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЗрд╕реЗ рдПрдХ рд░рд┐рд▓реАрдЬ рдореЗрдВ рдХрд░рдирд╛ рднреА рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рддреАрди.min.js рдХреЛ рдереЛрдбрд╝реА рджреЗрд░ рдХреЗ рд▓рд┐рдП рд░рдЦрдирд╛ рднреА рдареАрдХ рд╣реИред

рд▓реЗрдХрд┐рди рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рдкрд░ рд╣рдЬрд╛рд░реЛрдВ рдлрд╛рдЗрд▓реЗрдВ рдФрд░ рдЧреВрдЧрд▓ рдХреЗ рд╢реАрд░реНрд╖ рдХреБрддреНрддреЗ рдЖрдзрд╛рд░рд┐рдд рд╣реИрдВ!
рдЙрджрд╛рд╣рд░рдг: google.com/search?source=hp&q=webgl+benchmark

рдпрд╣ рд╡рд╣ рд╢реАрд░реНрд╖ рд╕рд╛рдЗрдЯ рд╣реИ рдЬреЛ рдЙрд╕ рдЦреЛрдЬ рд╕реЗ рдореЗрд░реЗ рд▓рд┐рдП рд╕рд╛рдордиреЗ рдЖрддреА рд╣реИ, рдФрд░ рд╡реЗ R53 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рдкрд░рд┐рд╡рд░реНрддрди рдЙрдиреНрд╣реЗрдВ рдмрд╣реБрдд рдмреБрд░реА рддрд░рд╣ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░реЗрдЧрд╛: https://www.wirple.com/bmark/

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рддреАрди.рдЬреЗрдПрд╕ рдХреЗ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдг рдЕрднреА рднреА рдареАрдХ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо ES5 рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╣рдЯрд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЕрдВрддрд┐рдо рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмреЗрдмреЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ ES5 рдмрд┐рд▓реНрдб рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рднреА рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╡реЗ рдЙрд╕ рд░рд┐рд▓реАрдЬрд╝ рдХрд╛ рдкреВрд░рд╛ рд░реЗрдкреЛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрд╕ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

@looeee рдЖрдк рдХреБрдЫ рдЕрдЪреНрдЫреЗ рдмрд┐рдВрджреБрдУрдВ рдХреЛ рдЫреВрддреЗ рд╣реИрдВред рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдореИрдВ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рдпрд╣рд╛рдВ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ ES5 three.min.js рдФрд░ three.js рдХреЛ рдкрджрд╛рд╡рдирдд рдХрд░рдирд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред рд╢рд╛рдпрдж рдпрд╣ рдЕрдкрдиреА рдЕрд▓рдЧ рдЪрд░реНрдЪрд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП?

рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдореИрдВ рдореБрдЦреНрдп рд░реЗрдкреЛ рдореЗрдВ рдПрдХ рдмреЗрдмреЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЖрдо рд╕рд╣рдорддрд┐ рдкрд░ рдЖрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреБрд░рд╛рдиреЗ рд╕реНрдХреВрд▓ ES5 рд╢реИрд▓реА /js/example рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╕рд╣рд╛рдпрддрд╛ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИ рдпрд╛ рдирд╣реАрдВред рдореЗрд░реЗ рдЬреИрд╕реЗ рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛ рд╣реИрдВ, рдЬрд┐рдиреНрд╣реЗрдВ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдХреБрдЫ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдФрд░ рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд▓рд╛рдн рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рд╡реИрд╕реЗ рднреА рдЯреНрд░рд╛рдВрд╕рдкрд╛рдЗрд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдЬрдм рд╣рдо рд╕рд╣рдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдмреЗрд╣рддрд░ рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп рд░реЗрдкреЛ рдореЗрдВ рдХреБрдЫ рд░рдЦрд╛ рдЬрд╛ рд╕рдХреЗ рддреЛ рд╣рдо рд╕рднреА рдиреЗ рдЕрдкрдиреЗ рдЖрдк рдкрд░ рдПрдХ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓реЗрд╢рди/рдмрдВрдбрд▓ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдирд╣реАрдВ рдмрдирд╛рдпрд╛ рд╣реЛрдЧрд╛ред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдореБрдЦреНрдп рд░реЗрдкреЛ рдореЗрдВ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдирд╛ рдПрдХ рдЙрдЪрд┐рдд рд╕рдордЭреМрддрд╛ рд╣реИ рддрд╛рдХрд┐ рд╣рдо рдмреЗрдмреЗрд▓ ES6 рд╕реЗ ES5 рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓рд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░ рдПрдХ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд╕рдХреЗрдВред рдХреНрдпрд╛ рд╡рд╣рд╛рдВ рд╡рд╛рдХрдИ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рд╣реИ? рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛рдУрдВ рдХреЛ рдПрдХ рдРрд╕реА рд╕реБрд╡рд┐рдзрд╛ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдирд╛ рдЬреЛ рдЙрдиреНрд╣реЗрдВ рдореБрдЦреНрдп рд░реЗрдкреЛ рдореЗрдВ рдПрдХ рд╕рд╛рде рдЪрд╛рд╣рд┐рдП?

рдореИрдВ рд╕рд╣рдпреЛрдЧрд┐рдпреЛрдВ рд╕реЗ рдРрд╕рд╛ рдХрд░рдиреЗ рдореЗрдВ рдХрд┐рд╕реА рднреА рдорджрдж рдпрд╛ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдХрд╣ рд░рд╣рд╛ рд╣реВрдВ, рдореИрдВ рдмрд╕ рдЖрдкрд╕реЗ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЛ рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣ рд░рд╣рд╛ рд╣реВрдВ, рдЬрд┐рдиреНрд╣реЗрдВ рдореБрдЦреНрдп рд░реЗрдкреЛ рдореЗрдВ рдЗрд╕ рдкрд░ рдПрдХ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЕрдЧрд░ рдореИрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдЬрдирд╕рдВрдкрд░реНрдХ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рддреЛ рдХреНрдпрд╛ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕реЗ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорддрджрд╛рди рдХрд░реЗрдВрдЧреЗ?

рдЕрдЧрд░ рдореИрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рдкреАрдЖрд░ рдмрдирд╛рддрд╛ рд╣реВрдВ рдФрд░ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ

рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ, рдореБрдЭреЗ рдпрд╣ рджреЗрдЦрдХрд░ рдЦреБрд╢реА рд╣реЛ рд░рд╣реА рд╣реИ рдХрд┐ рдпрд╣ рд╢реБрд░реВ рд╣реЛ рдЧрдпрд╛ рд╣реИ

рдХреНрдпрд╛ рдЖрдк рд╡рд╛рдХрдИ рдЗрд╕реЗ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реЛрдЯ рджреЗрдВрдЧреЗ?

рдпрджрд┐ рдпрд╣ рд▓рд╛рдЗрдирд┐рдВрдЧ рдкрд╛рд╕ рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИ рддреЛ рд╕рднреА рджрд╛рдВрд╡ рдмрдВрдж рд╣реЛ рдЬрд╛рдПрдВрдЧреЗ

рдХреНрдпрд╛ рд╡рд╣рд╛рдВ рд╡рд╛рдХрдИ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рд╣реИ?

рд╣рд╛рдВ, рдЪреВрдВрдХрд┐ рднрдВрдбрд╛рд░ рдХреЛ рдмрд╣рд┐рд╖реНрдХреГрдд рдХреЛрдбрд┐рдВрдЧ рдкреИрдЯрд░реНрди рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рдирд╣реАрдВ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╣рд╛рдВ, рдЪреВрдВрдХрд┐ рднрдВрдбрд╛рд░ рдХреЛ рдмрд╣рд┐рд╖реНрдХреГрдд рдХреЛрдбрд┐рдВрдЧ рдкреИрдЯрд░реНрди рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рдирд╣реАрдВ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЗрд╕реЗ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рддреМрд░ рдкрд░ рдЕрднреА рддрдХ рдкрджрд╛рд╡рдирдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдпрджрд┐ рд╣рдо three.js + three.min.js рдХреЛ рдмрд░реНрдЦрд╛рд╕реНрдд рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ (рд╕реНрд╡реАрдХрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдЖрдИрдЯреАрдЯреА рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдЙрдиреНрд╣реЗрдВ рднреА рдмрд░реНрдЦрд╛рд╕реНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП) рдФрд░ рдПрдХ рдмреЗрдмреЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реЛрдиреЗ рдкрд░ рдЖрдкрдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЪрд▓рд╛рдирд╛ рд╣реЛрдЧрд╛ рд╢рд╛рдпрдж рд╣реА рдПрдХ рдЪрдордХрджрд╛рд░ рд╕рдорд░реНрдердиред рдореИрдВ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рд╣рдореЗрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд▓реЛрдЧреЛрдВ рдХреЛ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмреЗрдмреЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдЬреЗрдирд░реЗрдЯ рдХреА рдЧрдИ рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдореИрдВ рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЙрди рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рде рдмреИрдмрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рд╕реЗ рдЕрд╕рд╣рдордд рд╣реВрдВ рдЬреЛ рдХрд┐рд╕реА рднреА рдХрд╛рд░рдг рд╕реЗ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдПрдХ рдмрд╣рд┐рд╖реНрдХреГрдд рдХреЛрдбрд┐рдВрдЧ рдкреИрдЯрд░реНрди рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗ рд░рд╣рд╛ рд╣реИред рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдХреНрдпреЛрдВрдХрд┐ рдЕрднреА рднреА рдРрд╕реА рд╕реНрдерд┐рддрд┐рдпрд╛рдБ рд╣реИрдВ рдЬрд╣рд╛рдБ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЕрд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ/рдЕрд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╣реИред рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдЗрд╕ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЗрд╕ рдкрд░ рдПрдХ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдореИрдВ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рдпрд╣рд╛рдВ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ ES5 рддреАрди.min.js рдФрд░ рддреАрди.js рдХреЛ рдкрджрд╛рд╡рдирдд рдХрд░рдирд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред

рдореЗрд░рд╛ рдорддрд▓рдм рдерд╛ рдХрд┐ рд╣рдореЗрдВ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ example/js, three.min.js, рдФрд░ three.js рдХреЛ рд╣рдЯрд╛ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП, рдпрд╛рдиреА рд╕рднреА ES5 рдХреЛрдб рдХреЛ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ рдлреИрд▓рд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдПрдХ рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ рд╣рдЯрд╛ рджреЗрдВред

@ рдореБрдЧреЗрди87

рд╣рд╛рдВ, рдЪреВрдВрдХрд┐ рднрдВрдбрд╛рд░ рдХреЛ рдмрд╣рд┐рд╖реНрдХреГрдд рдХреЛрдбрд┐рдВрдЧ рдкреИрдЯрд░реНрди рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рдирд╣реАрдВ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЖрдк рдЕрднреА рднреА рд╡рд┐рдВрдбреЛрдЬ 10 рдореЗрдВ рдбреЙрд╕ рдЧреЗрдореНрд╕ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВред
рдФрд░ рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдорд╛рдЗрдХреНрд░реЛрд╕реЙрдлреНрдЯ "рдмрд╣рд┐рд╖реНрдХреГрдд рдХреЛрдбрд┐рдВрдЧ рдкреИрдЯрд░реНрди" рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗ рд░рд╣рд╛ рд╣реИред

рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдмрдирд╛рдП рдЧрдП рдЬреЗрдПрд╕ рдореЙрдбреНрдпреВрд▓ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХреЛ рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдиреЛрдб, рдПрдирдкреАрдПрдо, рдпрд╛ рдХрд┐рд╕реА рднреА рдирд┐рд░реНрдорд╛рдг рдврд╛рдВрдЪреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рдЦреИрд░, рдпрд╣ рди рднреВрд▓реЗрдВ рдХрд┐ рдЙрддреНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдХрд╛ рдорддрд▓рдм рд╣реИ рдЕрдкрдирд╛ рдХреЛрдб рдмрдВрдбрд▓ рдХрд░рдирд╛ :)

рдореИрдВ рд░реЛрд▓рдЕрдк рдЬреИрд╕реЗ рдмрдВрдбрд▓рд┐рдВрдЧ рдЯреВрд▓ рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВ рдЬреЛ рдЙрдкрд▓рдмреНрдз рд╣реИрдВ рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдХреБрдЫ рдкреНрд░рд╢реНрдиреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП:

  • рдХреНрдпрд╛ рдпрд╣ рдорд╛рди рд▓реЗрдирд╛ рдЙрдЪрд┐рдд рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЙрддреНрдкрд╛рджрди рдореЗрдВ рддреАрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рднреА рдЗрдирдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдПрдХ рдмрдВрдбрд▓рд┐рдВрдЧ рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ?
  • рдХреНрдпрд╛ рдЕрдиреНрдп рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЫреЛрдбрд╝рдирд╛ рдЙрдЪрд┐рдд рд╣реИ рдЬреЛ рдЙрджрд╛рд╣рд░рдг рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ ES5/UMD рдореЙрдбреНрдпреВрд▓ рдХреЗ рдЕрдкрдбреЗрдЯ рдкрд░ рдирд┐рд░реНрднрд░ рд╣реИрдВ?

рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореЗрд░реА рд╡реНрдпрдХреНрддрд┐рдЧрдд рднрд╛рд╡рдирд╛рдПрдБ:

рдпрд╣ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдПрдХ рджрд╢рдХ рдкреБрд░рд╛рдирд╛ рд╣реИред рд╡рд╣рд╛рдБ рдПрдХ рд╡рд┐рд╢рд╛рд▓ рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рд╣реИ рдЬреЛ ES5/UMD рдореЗрдВ рд▓рд┐рдЦреЗ рдЧрдП рдЙрджрд╛рд╣рд░рдг рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдореЙрдбреНрдпреВрд▓ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдкреВрд░реЗ рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЫреЛрдбрд╝рдирд╛ рдЙрдЪрд┐рдд рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд▓реЛрдЧ рднреВрд▓ рдЬрд╛рддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдореЙрдбреНрдпреВрд▓ рдмрдВрдбрд▓рд┐рдВрдЧ рдкреИрдЯрд░реНрди рдХреЗ рдмрд┐рдирд╛ рдЕрднреА рднреА ES6 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдореИрдВ рд╣рд░ рд░реЛрдЬ ES6 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди рдЕрдкрдиреЗ рдлреНрд░рдВрдЯрдПрдВрдб рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдореЙрдбреНрдпреВрд▓ рдмрдВрдбрд▓рд┐рдВрдЧ рдкреИрдЯрд░реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реВрдВред рдореИрдВрдиреЗ рдЙрджреНрдпрдо рдХреА рджреБрдХрд╛рдиреЛрдВ рдореЗрдВ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдирд┐рд░реНрдорд╛рдг рдЙрдкрдХрд░рдг рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╕реЗ рдмрд╣реБрдд рдХрд╕реНрдЯрдо рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ рдореЙрдбреНрдпреВрд▓ рдмрдВрдбрд▓рд┐рдВрдЧ рдкреИрдЯрд░реНрди рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде рд╣реЛрдВрдЧреЗред

рдХреНрдпрд╛ рдХрд░реЗ?

рдЖрдЗрдП рдкреНрд░рддреНрдпреЗрдХ рд░рд┐рд▓реАрдЬ рдХреЗ рдмрд╛рдж рджрд┐рдП рдЧрдП рд╡рд┐рддрд░рдг рдХреЗ рд▓рд┐рдП ES6 рдореЙрдбреНрдпреВрд▓ рдХреЛ ES5/UMD рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд░реЗрдВред

рд╣рд╛рдВ, рдЪреВрдВрдХрд┐ рднрдВрдбрд╛рд░ рдХреЛ рдмрд╣рд┐рд╖реНрдХреГрдд рдХреЛрдбрд┐рдВрдЧ рдкреИрдЯрд░реНрди рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рдирд╣реАрдВ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЬреАрд╡рди рдореЗрдВ рд▓рдЧрднрдЧ рд╣рд░ рдЪреАрдЬ рдХреЗ рд▓рд┐рдП рдкреБрд░рд╛рдиреЗ рдкреИрдЯрд░реНрди, рддрдХрдиреАрдХреЛрдВ рдФрд░ рдЯреВрд▓реАрдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдорд╛рдзрд╛рди рдЕрднреА рднреА рдмрд╣реБрдд рдЕрдЪреНрдЫреА рдЧреБрдгрд╡рддреНрддрд╛ рдХрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рд╕рд╛рджреГрд╢реНрдп рдХреЗ рд░реВрдк рдореЗрдВ - рдЕрдкрдиреЗ рдЦрд╛рд▓реА рд╕рдордп рдореЗрдВ рдореБрдЭреЗ рдиреБрдХреАрд▓реЗ рдЫреЗрдиреА рд╕реЗ рдкрддреНрдерд░ рддрд░рд╛рд╢рдиреЗ рдореЗрдВ рдордЬрд╝рд╛ рдЖрддрд╛ рд╣реИред рдЙрдкрдХрд░рдг рдФрд░ рддрдХрдиреАрдХ рдмрд┐рдЬрд▓реА рдЙрдкрдХрд░рдгреЛрдВ рд╕реЗ рдЕрд▓рдЧ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрдВрдд рдореЗрдВ рдореВрд░реНрддрд┐рдХрд▓рд╛ рдЕрднреА рднреА рдЙрдЪреНрдЪ рдЧреБрдгрд╡рддреНрддрд╛ рдХреА рд╣реЛрдЧреАред рдореИрдВрдиреЗ рдмрд┐рдВрджреБ рдЫреЗрдиреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдХрд╛ рдкреНрд░рдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рдордЬрд╝рд╛ рдЖрддрд╛ рд╣реИ рдФрд░ рдореЗрд░реЗ рдкрд╛рд╕ рдХреБрдЫ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдХреМрд╢рд▓ рд╣реИ рдпрд╛ рджреВрд╕рд░реЛрдВ рд╕реЗ рдЦреБрд╢ рд╣реИрдВред

рдореБрдЭреЗ ES5/UMD рдореЙрдбреНрдпреВрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреА рдРрд╕рд╛ рд╣реА рд▓рдЧрддрд╛ рд╣реИред рдореИрдВ рдРрд╕реЗ рдкреИрдЯрд░реНрди, рддрдХрдиреАрдХреЛрдВ рдФрд░ рдЯреВрд▓рд┐рдВрдЧ рдХреЛ рдЦреЛрдЬрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реВрдВ рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрдЪреНрдЪ рдЧреБрдгрд╡рддреНрддрд╛ рд╡рд╛рд▓реЗ рдХреЛрдб рдЖрдзрд╛рд░реЛрдВ рдХреЛ рдмрдирд╛рдП рд░рдЦрддреЗ рд╣реИрдВ рдФрд░ рдЙрд╕ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╡рд░реАрдпрддрд╛ рдХрд╛ рдкреНрд░рдпреЛрдЧ рдЬрд╛рд░реА рд░рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рдЖрдЗрдП рдкреНрд░рддреНрдпреЗрдХ рд░рд┐рд▓реАрдЬ рдХреЗ рдмрд╛рдж рджрд┐рдП рдЧрдП рд╡рд┐рддрд░рдг рдХреЗ рд▓рд┐рдП ES6 рдореЙрдбреНрдпреВрд▓ рдХреЛ ES5/UMD рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд░реЗрдВред

рд▓реВрдИ рдиреЗ рдЬреЛ рдХрд╣рд╛ рдЙрд╕рд╕реЗ рдореИрдВ рд╕рд╣рдордд рд╣реВрдВред

рдХреНрдпрд╛ рдпрд╣ рдорд╛рди рд▓реЗрдирд╛ рдЙрдЪрд┐рдд рд╣реИ [...]

рдХреНрдпрд╛? рд╣рдо рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рд╣рдо рдХрд┐рд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЛ рдкрд╕рдВрдж рдХрд░реЗрдВрдЧреЗ, 'рдзрд╛рд░рдгрд╛' рдмрд╛рдж рдореЗрдВ рдЖрддреА рд╣реИред рд╡рд░реАрдпрддрд╛ рджреВрд╕рд░реЛрдВ рдХреЛ рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд░рдиреЗ рдХреА рдУрд░ рдкреНрд░рддреАрдд рд╣реЛрддреА рд╣реИ, рд▓реЗрдХрд┐рди (рдпрд╣ рдорд╛рдирддреЗ рд╣реБрдП рдХрд┐ рдХреБрдЫ рд▓реЛрдЧ рдЕрднреА рднреА рдкреБрд░рд╛рдиреЗ рддреАрди рдЪрд╛рд╣рддреЗ рд╣реИрдВ) рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╛рд░реНрдЧ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕реЗ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рдЖрдЗрдП рдкреНрд░рддреНрдпреЗрдХ рд░рд┐рд▓реАрдЬ рдХреЗ рдмрд╛рдж рджрд┐рдП рдЧрдП рд╡рд┐рддрд░рдг рдХреЗ рд▓рд┐рдП ES6 рдореЙрдбреНрдпреВрд▓ рдХреЛ ES5/UMD рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд░реЗрдВред

рдпрд╣ рдХреЛрдИ рднреА рдХрд░ рд╕рдХрддрд╛ рд╣реИ; рдЙрд╕ рд▓рд╛рдЧрдд рдХреЛ рддреАрди.рдЬреЗрдПрд╕ рдЕрдиреБрд░рдХреНрд╖рдХреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╡рд╣рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдореИрдВ рджреЛрд╣рд░рд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ @gkjohnson рдиреЗ рдКрдкрд░ рдХреНрдпрд╛ рдХрд╣рд╛, examples/js рдФрд░ examples/jsm рджреЛрдиреЛрдВ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреА рд▓рд╛рдЧрдд рдЕрдзрд┐рдХ рд╣реИред рд╣рдо рдЗрд╕реЗ рдЕрдирд┐рд╢реНрдЪрд┐рдд рдХрд╛рд▓ рддрдХ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ ES6 рдореЙрдбреНрдпреВрд▓ рджреЛ рджреГрд╖реНрдЯрд┐рдХреЛрдгреЛрдВ рдореЗрдВ рд╕реЗ рдЕрдзрд┐рдХ рдЖрдзреБрдирд┐рдХ рд╣реИрдВред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд▓рд╛рдЧрддреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:

  • рд╕реНрд╡рдЪрд╛рд▓рди рдмрдирд╛рдирд╛ рдФрд░ рдмрдирд╛рдП рд░рдЦрдирд╛
  • рдбрд┐рдмрдЧрд┐рдВрдЧ рд░рд┐рд▓реАрдЬ рд╡рд┐рдлрд▓рддрд╛ рдЬрдм рд╕реНрд╡рдЪрд╛рд▓рди рдЯреВрдЯ рдЬрд╛рддрд╛ рд╣реИ
  • рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ рдХрд┐ рд╕рднреА рдкреБрд▓ рдЕрдиреБрд░реЛрдз рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ, рди рдХрд┐ рдЬреЗрдирд░реЗрдЯ рдХреА рдЧрдИ рдлрд╝рд╛рдЗрд▓ рдХреЛ
  • рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдмрдирд╛рдП рд░рдЦрдирд╛ рдЬреЛ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рджреЛрдиреЛрдВ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
  • CJS рдФрд░ ES6 рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рджреЛрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ рдФрд░ рд╕рдорд░реНрдерди рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рдЙрддреНрддрд░ рджреЗрдирд╛

рд╡рд╣ рдЖрдЦрд┐рд░реА рд╡рд╕реНрддреБ рд╕рдВрднрд╡рддрдГ рд╕рдмрд╕реЗ рдмрдбрд╝реА рд╣реИред рдЬрдм рддрдХ рдЗрд╕ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рд╣рд░ рдЪреАрдЬ рдХреА рджреЛ рдкреНрд░рддрд┐рдпрд╛рдВ рдЙрдкрд▓рдмреНрдз рд╣реИрдВ, рджреЛрдиреЛрдВ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдорд░реНрдерд┐рдд рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦрд╛ рдЬрд╛рдПрдЧрд╛ред рд╣рдо рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ рдЙрди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреА рдорджрдж рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рджреЛ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЛ рднреНрд░рдорд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдпрд╛ CJS рдХреЛрд░ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд╕рд╛рде ES6 рдореЙрдбреНрдпреВрд▓ рд▓реЛрдбрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдЬрдЯрд┐рд▓ рддрд░реАрдХреЛрдВ рд╕реЗ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

рд╣рдо рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╕рд░рд▓рддрд╛ рд╕реЗ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ: рд╣рдорд╛рд░реЗ рд╕рднреА рдЙрджрд╛рд╣рд░рдг - рдЬреЛ рдХрд┐ рддреАрди.рдЬреЗрдПрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд▓реЗрдХрд┐рди рд╡реИрдХрд▓реНрдкрд┐рдХ рднрд╛рдЧ рд╣реИрдВ - рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХрд┐рд╕реА рднреА рдореЙрдбреНрдпреВрд▓ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдпреВрдПрдордбреА рдирд╣реАрдВ, рдХреЙрдордирдЬреЗрдПрд╕ рдирд╣реАрдВ, рдИрдПрд╕6 рдореЙрдбреНрдпреВрд▓ рдирд╣реАрдВред рд╡реЗ рдмрд╕ рдПрдХ THREE рд╡реИрд╢реНрд╡рд┐рдХ рдирд╛рдорд╕реНрдерд╛рди рдкреИрдЪ рдХрд░рддреЗ рд╣реИрдВред рд╣рдо рдЗрд╕рдХреЗ рдмрдЬрд╛рдп ES6 рдЖрдпрд╛рдд/рдирд┐рд░реНрдпрд╛рдд рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдФрд░ рдХрдИ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЪреЗрддрд╛рд╡рдирд┐рдпрд╛рдВ рджреА рдЧрдИ рд╣реИрдВ рдХрд┐ рдЗрд╕ рдкрд░рд┐рд╡рд░реНрддрди рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдИ рдЧрдИ рдереАред

рд╡рд╣рд╛рдБ рдПрдХ рд╡рд┐рд╢рд╛рд▓ рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рд╣реИ рдЬреЛ ES5/UMD рдореЗрдВ рд▓рд┐рдЦреЗ рдЧрдП рдЙрджрд╛рд╣рд░рдг рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдореЙрдбреНрдпреВрд▓ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдкреВрд░реЗ рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЫреЛрдбрд╝рдирд╛ рдЙрдЪрд┐рдд рд╣реИред

рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рдХрд╣рдирд╛ рдЙрдЪрд┐рдд рд╣реИ рдХрд┐ рддреАрди.рдЬреЗрдПрд╕ рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рдореЗрдВ рдХреБрдЫ рднреА рд╡реИрд╢реНрд╡рд┐рдХ THREE.* рдирд╛рдорд╕реНрдерд╛рдиреЛрдВ рдкрд░ рдЗрддрдирд╛ рдирд┐рд░реНрднрд░ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдЖрдпрд╛рдд/рдирд┐рд░реНрдпрд╛рдд рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрджреНрдпрддрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдпрд╛ ES5 рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╛ рдмрдВрдбрд▓рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рдпрд╣рд╛рдВ рдХрдИ рд╕рдорд╛рдзрд╛рди рд╣реИрдВ, рдФрд░ рд╣рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╡рд┐рдХрд▓реНрдк рдЦреЛрдЬрдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдирдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред

рдЙрджрд╛рд╣рд░рдг/рдЬреЗрдПрд╕ рдФрд░ рдЙрджрд╛рд╣рд░рдг/рдЬреЗрдПрд╕рдПрдо рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рджреЛрдиреЛрдВ рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреА рд▓рд╛рдЧрдд рдЕрдзрд┐рдХ рд╣реИред

рдореИрдВ рдЗрд╕рдореЗрдВ рдереЛрдбрд╝рд╛ рдФрд░ рдЦреЛрджрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдореИрдВрдиреЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдХрд╕реНрдЯрдо рдЯреВрд▓рд┐рдВрдЧ рд▓рд┐рдЦреЗ рд╣реИрдВ рдФрд░ рдлреНрд░рдВрдЯ рдПрдВрдб рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рдСрдЯреЛрдореЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред

рд╕реНрд╡рдЪрд╛рд▓рди рдмрдирд╛рдирд╛ рдФрд░ рдмрдирд╛рдП рд░рдЦрдирд╛
рдбрд┐рдмрдЧрд┐рдВрдЧ рд░рд┐рд▓реАрдЬ рд╡рд┐рдлрд▓рддрд╛ рдЬрдм рд╕реНрд╡рдЪрд╛рд▓рди рдЯреВрдЯ рдЬрд╛рддрд╛ рд╣реИ

рдореБрдЭреЗ рд░рдЦрд░рдЦрд╛рд╡ рдХрд░ рдХреЛ рдереЛрдбрд╝рд╛ рдФрд░ рд╕рдордЭрдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдВ, рдХреНрдпрд╛ рдпрд╣ рддреАрди рдХреЛрдбрдмреЗрд╕ рдХреЗ рд▓рд┐рдП рдЕрджреНрд╡рд┐рддреАрдп рд╣реИ? рдореЗрд░реЗ рдЕрдиреБрднрд╡ рдореЗрдВ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдХреЛрдб рдЖрдорддреМрд░ рдкрд░ рд╕рдмрд╕реЗ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЬреАрд╡рд┐рдд рд░рд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдо рд╕реЗ рдХрдо рд░рдЦрд░рдЦрд╛рд╡ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдпреЗ рд╡реЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк рдПрдХ рдмрд╛рд░ рд▓рд┐рдЦрддреЗ рд╣реИрдВ рдФрд░ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рджреЛрдмрд╛рд░рд╛ рдирд╣реАрдВ рджреЗрдЦрддреЗ рд╣реИрдВред

рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ рдХрд┐ рд╕рднреА рдкреБрд▓ рдЕрдиреБрд░реЛрдз рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ, рди рдХрд┐ рдЬреЗрдирд░реЗрдЯ рдХреА рдЧрдИ рдлрд╝рд╛рдЗрд▓ рдХреЛ

рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдИ рдЫреЛрдЯреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдпрд╛ рдкрд░реАрдХреНрд╖рдг рд░рд┐рд▓реАрдЬрд╝ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдореЗрдВ рдЗрд╕рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХреЗред

рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдмрдирд╛рдП рд░рдЦрдирд╛ рдЬреЛ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рджреЛрдиреЛрдВ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ

рдореИрдВ рд╡реИрд╢реНрд╡рд┐рдХ рдирд╛рдорд╕реНрдерд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдЫреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рдорддрджрд╛рди рдХрд░реВрдВрдЧрд╛ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рджреЛ рд╡рд░реНрдХрдлрд╝реНрд▓реЛрдЬрд╝ рдХреЗ рд▓рд┐рдП рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ рдореВрд░реНрдЦрддрд╛рдкреВрд░реНрдг рд╣реИред рдпрд╣ рдХреЛрдИ рдмреБрд░реА рдмрд╛рдд рдирд╣реАрдВ рд╣реИред рдЕрдзрд┐рдХрд╛рдВрд╢ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЬреЛ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрджрд░реНрднреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдХреЛрдб рдХреЛ рдмрдВрдбрд▓ рдХрд░рддреЗ рд╣реИрдВ, UMD/ES6 рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдХреЗрд╡рд▓ рдбреЙрдХреНрд╕ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реЛрддрд╛ рд╣реИред

CJS рдФрд░ ES6 рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рджреЛрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ рдФрд░ рд╕рдорд░реНрдерди рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рдЙрддреНрддрд░ рджреЗрдирд╛ред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ рдХреА рдорд╛рддреНрд░рд╛ рддреАрди рдХреА рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдХреЗ рдЖрдХрд╛рд░ рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖ рдЖрддреА рд╣реИред рдЖрдк рдФрд░ рдореИрдВ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рдореБрджреНрджреЛрдВ рдХреЛ рд╕реНрдЯреИрдХ рдУрд╡рд░рдлрд╝реНрд▓реЛ рдкрд░ рд╣рд░ рд╕рдордп рджреЗрдЦрддреЗ рд╣реИрдВред рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЬреЛ рджреЛ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд╕рдВрднрд╡рддрдГ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕реЗ рдкреНрд░реЗрд░рд┐рдд рдПрдХ рдирдпрд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рд╣реИ рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреА рдореВрд▓ рдмрд╛рддреЗрдВ рд╕реАрдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИред

рдпрджрд┐ рд▓рдХреНрд╖реНрдп рджреЛ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЗ рдмреАрдЪ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рднреНрд░рдо рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ рдХреА рдорд╛рддреНрд░рд╛ рдХреЛ рдХрдо рдХрд░рдирд╛ рд╣реИ рддреЛ ES5 рдХреЛрдб рдХреЛ рд╣рдЯрд╛рдиреЗ рд╕реЗ рд╢рд╛рдпрдж рдЗрд╕рд╕реЗ рдорджрдж рдорд┐рд▓реЗрдЧреА - рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░ рдореБрджреНрджреЛрдВ рдХреА рдорд╛рддреНрд░рд╛ рдмрджрд▓ рдЬрд╛рдПрдЧреАред рдПрдХ рдирдпрд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рд╣рдореЗрд╢рд╛ рдЕрдЧрд▓реЗ рдкреНрд░рд╢реНрди рдкрд░ рдЕрдЯрдХрд╛ рд░рд╣реЗрдЧрд╛ рдЬреЛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реЛ рднреА рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдирд╣реАрдВ рднреАред

рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░ рдореБрджреНрджреЛрдВ рдХреА рдорд╛рддреНрд░рд╛ рдХреЛ рдХреИрд╕реЗ рдХрдо рдХрд░реЗрдВ?

рдпрджрд┐ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд▓рдХреНрд╖реНрдп рд╕рдордЧреНрд░ рд░реВрдк рд╕реЗ рдореБрджреНрджреЛрдВ рдХреА рдорд╛рддреНрд░рд╛ рдХреЛ рдХрдо рдХрд░рдирд╛ рд╣реИ, рддреЛ рд╢рд╛рдпрдж рд╕рдЦреНрдд рдореБрджреНрджреЗ рдиреАрддрд┐рдпрд╛рдВ рдЗрд╕рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддреА рд╣реИрдВред рдореИрдВ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдЖрдк рд▓реЛрдЧ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА Help (please use the forum) рдЬреИрд╕реЗ рдЯреИрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреА рдФрд░ рдЪреАрдЬреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛред

рдЖрдо рддреМрд░ рдкрд░ рдХреБрдЫ рдкреНрд░рдХрд╛рд░ рдХреЗ рдореБрджреНрджреЛрдВ рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░рдирд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рддреАрди рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдФрд░ рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рдЗрдЪреНрдЫреБрдХ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рд╡реЗ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХреБрд▓ рдорд╛рддреНрд░рд╛ рд╕реЗ рдЕрднрд┐рднреВрдд рдорд╣рд╕реВрд╕ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдпреБрдЧрд▓ рд╡рд┐рдЪрд╛рд░:

  • рд▓реЗрдЦрди рдХреЗ рд╕рдордп suggestions рдФрд░ enhancements рдореЗрдВ (271) рдЦреБрд▓реЗ рдореБрджреНрджреЗ рд╣реИрдВред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпреЗ рд▓реЗрдмрд▓ рдмрд╣реБрдд рд╢реЛрд░ рдЙрддреНрдкрдиреНрди рдХрд░рддреЗ рд╣реИрдВред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕реБрдЭрд╛рд╡ рдХреЗ рд░реВрдк рдореЗрдВ рдХреЗрд╡рд▓ рдкреАрдЖрд░ рддреИрдпрд╛рд░/рдЪреЗрдХ рдкрд╛рд╕ рдХрд░реЗрдВред рдмрд╛рдХреА рд╕рдм рдХреБрдЫ рдЗрдВрд╕реНрдЯрд╛-рдХреНрд▓реЛрдЬ рдХрд░реЗрдВ рдФрд░ Discussion (please use the forum) рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░реЗрдВред
  • рд▓реЗрдЦрди рдХреЗ рд╕рдордп loaders рдореЗрдВ (61) рдЦреБрд▓реЗ рдореБрджреНрджреЗ рд╣реИрдВред рдпрд╣ рд▓реЗрдмрд▓ рднреА рдмрд╣реБрдд рд╢реЛрд░ рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИред рдореБрдЭреЗ рдЗрд╕ рд▓реЗрдмрд▓ рдХреЗ рд╕рд╛рде suggestions рдФрд░ enhancements рдпрд╛ рдЦрд░рд╛рдм рд░реВрдк рд╕реЗ рдЧрдард┐рдд рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдмрд╣реБрдд рд╕реА рд╕рдорд╕реНрдпрд╛рдПрдВ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИрдВред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХреЗрд╡рд▓ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдмрдирд╛рдИ рдЧрдИ рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ рдФрд░ рдкреАрдЖрд░ рддреИрдпрд╛рд░/рд╕реБрдЭрд╛рд╡реЛрдВ рдХреЗ рд▓рд┐рдП рдкрд╛рд╕ рдХрд┐рдП рдЧрдП рдЪреЗрдХ рд▓реЗрдВред рдмрд╛рдХреА рд╕рдм рдХреБрдЫ рдЗрдВрд╕реНрдЯрд╛-рдХреНрд▓реЛрдЬ рдХрд░реЗрдВ рдФрд░ рдЙрд╕рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдорд╛рд░реНрдХ рдХрд░реЗрдВред

рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рдХрд╣рдирд╛ рдЙрдЪрд┐рдд рд╣реИ рдХрд┐ рддреАрди.рдЬреЗрдПрд╕ рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рдореЗрдВ рдХреБрдЫ рднреА рд╡реИрд╢реНрд╡рд┐рдХ рддреАрди рдкрд░ рдЗрддрдирд╛ рдирд┐рд░реНрднрд░ рд╣реИред * рдирд╛рдорд╕реНрдерд╛рди рдХрд┐ рдЗрд╕реЗ рдЖрдпрд╛рдд/рдирд┐рд░реНрдпрд╛рдд рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╛ ES5 рдореЗрдВ рдЯреНрд░рд╛рдВрд╕рдкрд╛рдЗрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╛ рдПрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрджреНрдпрддрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдмрдВрдбрд▓рд░

рдореИрдВ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рдХреБрдЫ рднреА рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд╣рдо рдЗрди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рд╕рдорд░реНрдерди рдЬрд╛рд░реА рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдереЛрдбрд╝рд╛ рд╕рд╛ рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдвреВрдВрдв рд╕рдХрддреЗ рд╣реИрдВ рддреЛ рдореИрдВ @ рдмрдЧ-рд░реАрдкрд░ рд╕реЗ рд╕рд╣рдордд рд╣реВрдВ:

рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдЬрдм рд╣рдо рд╕рд╣рдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдмреЗрд╣рддрд░ рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп рд░реЗрдкреЛ рдореЗрдВ рдХреБрдЫ рд░рдЦрд╛ рдЬрд╛ рд╕рдХреЗ рддреЛ рд╣рдо рд╕рднреА рдиреЗ рдЕрдкрдиреЗ рдЖрдк рдкрд░ рдПрдХ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓реЗрд╢рди/рдмрдВрдбрд▓ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдирд╣реАрдВ рдмрдирд╛рдпрд╛ рд╣реЛрдЧрд╛ред

рд╣рдо рд╕рд╛рдореВрд╣рд┐рдХ рд░реВрдк рд╕реЗ рдЗрди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ/рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ, рд╕рд┐рд╕реНрдЯрдо рдмрдирд╛рдиреЗ рдФрд░ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХрд░рдиреЗ рд╕реЗ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕рдордп рдмрдЪрд╛рдПрдВрдЧреЗред

рдореИрдВ рдЗрд╕рдореЗрдВ рдереЛрдбрд╝рд╛ рдФрд░ рдЦреЛрджрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдореИрдВрдиреЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдХрд╕реНрдЯрдо рдЯреВрд▓рд┐рдВрдЧ рд▓рд┐рдЦреЗ рд╣реИрдВ рдФрд░ рдлреНрд░рдВрдЯ рдПрдВрдб рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рдСрдЯреЛрдореЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред

рдЕрдЪреНрдЫрд╛ред

рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░ рдореБрджреНрджреЛрдВ рдХреА рдорд╛рддреНрд░рд╛ рдХреЛ рдХреИрд╕реЗ рдХрдо рдХрд░реЗрдВ?

рдХреГрдкрдпрд╛ рдЗрд╕реЗ рдСрди-рдЯреНрд░реИрдХ рд░рдЦреЗрдВред рдПрдХ рдФрд░ рд╕реВрддреНрд░ рдкрд░ рдЖрдЧреЗ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛ рд░рд╣реА рд╣реИред рдпрд╣ рдХреБрдЫ рд╣рдж рддрдХ рдореЗрд░реА рдкрд┐рдЫрд▓реА рдЯрд┐рдкреНрдкрдгреА рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред

рдореИрдВ рдпрд╣ рдХрд╣рдиреЗ рдореЗрдВ @ рдмрдЧ-рд░реАрдкрд░ рд╕реЗ рд╕рд╣рдордд рд╣реВрдВ:

рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рд╣рдо рд╕рднреА рдиреЗ рдПрдХ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓реЗрд╢рди/рдмрдВрдбрд▓ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдирд╣реАрдВ рдмрдирд╛рдпрд╛ рд╣реИ [...]

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рд╕рднреА рдЗрд╕ рдкрд░ рд╕рд╣рдордд рд╣реИрдВред

рдкреЗрд╢реЗрд╡рд░реЛрдВ рдФрд░ рд╡рд┐рдкрдХреНрд╖реЛрдВ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рдХреЛ рдзрдиреНрдпрд╡рд╛рджред рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рд╣рдо рд╕реЛрдЪ-рд╕рдордЭрдХрд░ рдирд┐рд░реНрдгрдп рд▓реЗ рд░рд╣реЗ рд╣реИрдВ, рдЗрдиреНрд╣реЗрдВ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рд╣рдореЗрд╢рд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрддрд╛ рд╣реИред

рдпрд╣ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬреЛ рдореИрдВ рдЗрд╕ рд╡рд░реНрд╖ рдХреБрдЫ рдорд╕реНрддрд┐рд╖реНрдХ рдЪрдХреНрд░ рдЦрд░реНрдЪ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдФрд░ рдореИрдВрдиреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╡рд┐рдХреНрд░реЗрддрд╛рдУрдВ рд╕реЗ рдЙрдирдХреА рдкреНрд░рд╛рдердорд┐рдХрддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреА рдкреВрдЫрд╛ рд╣реИ рддрд╛рдХрд┐ рдореИрдВ рдЖрдЧреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд╕рдХреВрдВред

рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ ES6 рдореЙрдбреНрдпреВрд▓ рднрд╡рд┐рд╖реНрдп рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдпрд╛рдд рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдХреЗ рдмрд┐рдирд╛ рдЙрдирдХреЗ рд╕рд╛рде рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрдиреЗ рд╕реЗ рднрд╛рд░реА рд╕рд┐рд░рджрд░реНрдж рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЖрдкрдХреЗ рдкреНрд░рд╡рд╛рд╣ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рддреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реИред рдЬрдм рд╣рдордиреЗ examples/js рдХреЛ рдкрджрд╛рд╡рдирдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рддреЛ рдореИрдВ рдЙрдореНрдореАрдж рдХрд░ рд░рд╣рд╛ рдерд╛ рдХрд┐ рдЖрдпрд╛рдд рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдореЗрдВ рдЕрдзрд┐рдХ рдХрд░реНрд╖рдг рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рдЗрд╕ рд╡рдЬрд╣ рд╕реЗ, рдореИрдВрдиреЗ examples/js рдлрд╝реЛрд▓реНрдбрд░ рдмрд╣рд┐рд╖реНрдХрд░рдг рдХреЛ рддрдм рддрдХ рдирд┐рд▓рдВрдмрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдЬрдм рддрдХ рдХрд┐ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЖрдпрд╛рдд рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░ рджреЗрддреЗред рдореИрдВ рдЕрдкрдиреЗ рдкрд╣рд▓реЗ рдШрди рдХреЛ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирдП рд▓реЛрдЧреЛрдВ рдХреЛ рдкреЙрд▓реАрдлрд┐рд▓ рдпрд╛ рдмрдВрдбрд▓рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рдиреЗ рд╕реЗ рдирдлрд░рдд рдХрд░реВрдВрдЧрд╛ред

рдореИрдВ @ рдмрдЧ-рд░реАрдкрд░ рдХреЗ рд╕рдорд╛рди рдирд┐рд╖реНрдХрд░реНрд╖ рдкрд░ рдкрд╣реБрдВрдЪрд╛ред рдЖрдЬ рдореИрдВ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдЬреЛ examples/jsm examples/js рд╣реИред

@mrdoob

рдЬрдм рддрдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЖрдпрд╛рдд рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░рддрд╛ рддрдм рддрдХ рдореИрдВрдиреЗ рдЙрджрд╛рд╣рд░рдг/рдЬреЗрдПрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдмрд╣рд┐рд╖реНрдХрд░рдг рдХреЛ рдирд┐рд▓рдВрдмрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ред
рдореИрдВ @ рдмрдЧ-рд░реАрдкрд░ рдХреЗ рд╕рдорд╛рди рдирд┐рд╖реНрдХрд░реНрд╖ рдкрд░ рдкрд╣реБрдВрдЪрд╛ред рдЖрдЬ рдореИрдВ рдПрдХ рдРрд╕реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдиреЗ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓ рд░рд╣рд╛ рд╣реВрдВ рдЬреЛ рдЙрджрд╛рд╣рд░рдгреЛрдВ/рдЬреЗрдПрд╕рдПрдо рдлрд╛рдЗрд▓реЛрдВ рд╕реЗ рдЙрджрд╛рд╣рд░рдг/рдЬреЗрдПрд╕ рдмрдирд╛рддрд╛ рд╣реИред

рдПрдХ рдмреБрджреНрдзрд┐рдорд╛рди рдирд┐рд░реНрдгрдпред
рдореИрдВ

@mrdoob рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЖрдкрдХрд╛ рдирд┐рд░реНрдгрдп рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдЪреВрдХ рдХрд╛ рдЕрд╡рд╕рд░ рд╣реИред рджреЗрд░-рд╕рдмреЗрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рд╡реИрд╢реНрд╡рд┐рдХ рд▓рд┐рдкрд┐рдпреЛрдВ рд╕реЗ рджреВрд░ рдЬрд╛рдирд╛ рд╣реЛрдЧрд╛ред рдФрд░ рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ Import Maps рд╕реЗ рдпрд╣рд╛рдВ рдХреЛрдИ рдЦрд╛рд╕ рдлрд░реНрдХ рдкрдбрд╝реЗрдЧрд╛ред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдмреЗрд╣рддрд░ рдФрд░ рднрд╡рд┐рд╖реНрдп-рд╕рдмреВрдд рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдореЗрдВ "рдордЬрдмреВрд░" рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рд╣рдо рдЙрдиреНрд╣реЗрдВ рд╡реИрд╢реНрд╡рд┐рдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЬрд╛рд░реА рд░рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред 2020 рдореЗрдВред

рдФрд░ рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ Import Maps рд╕реЗ рдпрд╣рд╛рдВ рдХреЛрдИ рдЦрд╛рд╕ рдлрд░реНрдХ рдкрдбрд╝реЗрдЧрд╛ред

рджреВрд╕рд░реЗ рджрд┐рди рдореИрдВрдиреЗ рдХрд┐рд╕реА рдХреЛ рдРрд╕рд╛ рдХрд░рддреЗ рджреЗрдЦрд╛:

<script src="js/three.js"></script>
<script src="https://cdn.rawgit.com/mrdoob/three.js/master/examples/js/loaders/GLTFLoader.js"></script>
<script type="module" src="js/main.js"></script>

рдФрд░, main.js рдХреЗ рдЕрдВрджрд░ рд╡реЗ рдпрд╣ рдХрд░ рд░рд╣реЗ рдереЗ:

import {OrbitControls} from "https://threejsfundamentals.org/threejs/resources/threejs/r119/examples/jsm/controls/OrbitControls.js";

рдФрд░ рдмрд╛рдд рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд╛рдо рдХрд░ рдЧрдИ...

рд╣рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рд╕реЗ рдХреЗрд╡рд▓ рд╕рд╣реА рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ, рд╡реЗ рд╕реАрдЦ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рд╡реЗ рддрдм рддрдХ рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬрдм рддрдХ рдХрд┐ рдХреБрдЫ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ред рдЪреБрдиреМрддреА рдПрдХ рдРрд╕рд╛ рдбрд┐рдЬрд╝рд╛рдЗрди рдвреВрдВрдврдирд╛ рд╣реИ рдЬреЛ рдЙрдиреНрд╣реЗрдВ рд╕рд╛рдХрд╛рд░ рдХрд┐рдП рдмрд┐рдирд╛ рд╕рд╣реА рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗред

рдЖрдпрд╛рдд рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдХреЗ рдмрд┐рдирд╛ ES6 рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ OrbitControls.js рдХреЛ /js рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдХреЙрдкреА рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рд╡реИрд╕реЗ рд╣реА рдЖрдпрд╛рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬреИрд╕реЗ рд╡реЗ рдХрд░рддреЗ рдереЗред рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ OrbitControls.js ../../build/three.module.js рдХреА рддрд▓рд╛рд╢ рдореЗрдВ рд╣реИред

рдЖрдпрд╛рдд рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдХреЗ рд╕рд╛рде, OrbitControls.js рдХреЗрд╡рд▓ three рд╕реЗ рдЖрдпрд╛рдд рдХрд░реЗрдЧрд╛ред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЬрд╣рд╛рдБ рдЪрд╛рд╣реЗ рдХреЙрдкреА рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рдЖрдпрд╛рдд рдорд╛рдирдЪрд┐рддреНрд░ рдореЗрдВ рдкрде рдХреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рдЖрдпрд╛рдд рдорд╛рдирдЪрд┐рддреНрд░ рд╣рдореЗрдВ "рдкреБрд░рд╛рдиреЗ" рджрд┐рдиреЛрдВ рдХреА рддрд░рд╣ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЖрдпрд╛рдд рдХрд░рдиреЗ рдореЗрдВ рдЖрд╕рд╛рдиреА рдХреЗ рдХрд░реАрдм рд▓рд╛рддреЗ рд╣реИрдВред рдпрд╣ рдЙрддрдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдЬрд┐рддрдирд╛ рдкрд╣рд▓реЗ рдерд╛, рд▓реЗрдХрд┐рди рдХрдо рд╕реЗ рдХрдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдлрд╝рд╛рдЗрд▓реЗрдВ рдЖрдпрд╛рдд рдХрд░рддреЗ рд╕рдордп рдСрд░реНрдбрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд╛ рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рдирд╣реАрдВ рд╣реЛрдЧреАред рдХреБрдЫ рдЬреАрддреЛ рдХреБрдЫ рдЦреЛ рджреЛред

рд╕рд╣рдордд рд╣реИрдВ рдХрд┐ рдЖрдпрд╛рдд рдорд╛рдирдЪрд┐рддреНрд░ рдЖрдпрд╛рдд рдХреЛ рд╡рд┐рдиреНрдпрд╛рд╕ рдпреЛрдЧреНрдп рдФрд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЕрдзрд┐рдХ рд▓рдЪреАрд▓рд╛ рдмрдирд╛ рджреЗрдВрдЧреЗред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЕрднреА рднреА рдЖрдпрд╛рдд рдорд╛рдирдЪрд┐рддреНрд░ рдХреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░рдирд╛ рд╣реИ (рдФрд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╕рдордЭреЗрдВ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреНрдпрд╛ рд╣реИ)ред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкреВрд░реА "рдЬреЗрдПрд╕ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдХреЙрдкреА рдХрд░реЗрдВ" рдПрдХ рдмреБрд░рд╛ рд╡рд┐рд░реЛрдзреА рдкреИрдЯрд░реНрди рд╣реИ рдФрд░ рдореИрдВ рдЙрдореНрдореАрдж рдХрд░ рд░рд╣рд╛ рдерд╛ рдХрд┐ рд╣рдо рд╕реАрдбреАрдПрди рдЖрдпрд╛рдд рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ/рд╢реБрд░реБрдЖрддреА рд▓реЛрдЧреЛрдВ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХрд░рдХреЗ рдЗрд╕реЗ рд░реЛрдХ рд╕рдХрддреЗ рд╣реИрдВ (рдЬреЛ рдЙрди рджреЗрд╡реЛрдВ рдХреЗ рд▓рд┐рдП рднреА рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реИ рдЬреЛ ' t рдХрд┐рд╕реА рднреА рдХрд╛рд░рдг рд╕реЗ рдмрд┐рд▓реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ)ред рдЙрдЪрд┐рдд рдРрдкреНрд╕ (рдЪрд╛рд╣рд┐рдП) рд╡реИрд╕реЗ рднреА рдмрд┐рд▓реНрдб рдЯреВрд▓реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рд╡рд┐рд░реЛрдзреА рдкреИрдЯрд░реНрди рдХреЗ рд░реВрдк рдореЗрдВ рдирд╣реАрдВ рджреЗрдЦрддрд╛ред

рдЗрд╕реА рддрд░рд╣ рдореИрдВрдиреЗ рд╡реЗрдмрд╕рд╛рдЗрдЯ рдХрд░рдирд╛ рд╕реАрдЦрд╛ред рдХреЛрдИ .css рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ /css рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд░рдЦреЗрдЧрд╛, рдлрд┐рд░ рдЫрд╡рд┐рдпреЛрдВ рдХреЛ /img рдореЗрдВ рдФрд░ .js рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ /js рдореЗрдВ рд░рдЦреЗрдЧрд╛ред

рдкрд┐рдЫрд▓реЗ рдорд╣реАрдиреЛрдВ рдореЗрдВ рдореИрдВ ES6 рдореЙрдбреНрдпреВрд▓/рд╕реАрдбреАрдПрди рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреБрдЫ рдкреНрд░рдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдпрд╣ рдореБрдЭреЗ рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдПрдХ рдЕрд▓рдЧ рдбреЛрдореЗрди рд╕реЗ рдЖрддреЗ рд╣реИрдВ рдЬрд╣рд╛рдВ рдореЗрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣реИред

рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рди рдмрдирд╛рдиреЗ рдкрд░ рдПрдХ рдмрдбрд╝реА рдЪреАрдЬрд╝ рдЬреЛ рд╣рдо рдЦреЛ рджреЗрддреЗ рд╣реИрдВ, рд╡рд╣ рд╣реИ рдЙрдиреНрд╣реЗрдВ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ред examples/js рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╣рдореЗрд╢рд╛ рдРрд╕реЗ рдЙрджрд╛рд╣рд░рдг рдорд╛рдирд╛ рдЬрд╛рддрд╛ рдерд╛ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк рд╢реАрд░реНрд╖ рдкрд░ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдЧрд░ рдореИрдВрдиреЗ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ OrbitControls.js рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдИ рдФрд░ рдпрд╣ рд╡рд╣реА рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬреЛ рдореБрдЭреЗ рдЪрд╛рд╣рд┐рдП рдерд╛ рддреЛ рдореИрдВ рдЗрд╕реЗ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░ рд╕рдХрддрд╛ рдерд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕рд┐рд░реНрдл рдПрдХ рд╕реНрдерд╛рдиреАрдп рдлрд╝рд╛рдЗрд▓ рдереАред

рдЗрд╕ рддрд░рд╣ рдореИрдВ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рдерд╛:

<script src="js/libs/three.js"></script>
<script src="js/libs/three/OBJLoader.js"></script>
<script src="js/libs/three/OrbitControls.js"></script>
<script>
    console.log( THREE, THREE.OBJLoader, THREE.OrbitControls );
</script>

рдЖрдпрд╛рдд рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдХреЗ рд╕рд╛рде рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦреЗрдЧрд╛:

<script type="importmap">
{
  "imports": {
    "three": "js/libs/three.module.js",
    "OBJLoader": "js/libs/three/OBJLoader.js",
    "OrbitControls": "js/libs/three/OrbitControls.js"
  }
}
</script>
<script type="module">
    import * as THREE from 'three';
    import { OBJLoader } from 'OBJLoader';
    import { OrbitControls } from 'OrbitControls';

    console.log( THREE, OBJLoader, OrbitControls );
</script>

рдкрд╣рд▓реЗ рдЬрд┐рддрдирд╛ рд╕реБрдВрджрд░ рдирд╣реАрдВ рдерд╛, рд▓реЗрдХрд┐рди рдЖрдкрдХреЗ рд▓рд┐рдП рдЖрдпрд╛рдд рдирд┐рд░реНрднрд░рддрд╛/рдЖрджреЗрд╢ рдХрд╛ рдЦреНрдпрд╛рд▓ рд░рдЦрддрд╛ рд╣реИ рдФрд░ рдмрдВрдбрд▓рд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред

рдлрд┐рд░ рднреА рдпрд╣ рдЕрднреА рднреА рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдмрдВрдбрд▓ рдЖрдзрд╛рд░рд┐рдд рд╡рд┐рдХрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рдЙрдирдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдмреЗрд╣рддрд░ рдмрдирд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдРрдбрдСрди рдЕрдм ../../build/three.module.js рдХреЗ рдмрдЬрд╛рдп ../../build/three.module.js three рд╕реЗ рдЖрдпрд╛рдд рдХрд░рддреЗ рд╣реИрдВред

рдФрд░ рдмрд╛рдд рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд╛рдо рдХрд░ рдЧрдИ...

рдПрдлрдбрдмреНрд▓реНрдпреВрдЖрдИрдбрдмреНрд▓реНрдпреВ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреБрдЫ рд╣реА рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЬрдм рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рддреЛ рдпрд╣ рдмреЗрд╣рдж рднреНрд░рдорд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рддрд░реАрдХреЛрдВ рд╕реЗ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЗрд╕рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдХрдИ рдореБрджреНрджреЗ рджрд░реНрдЬ рдХрд┐рдП рдЧрдП рд╣реИрдВ, рдпрд╣ рдирд┐рд░реНрдорд╛рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рд╕рд╛рде рднреА рд╣реЛрддрд╛ рд╣реИред рддрд░реНрдХрд╕рдВрдЧрдд рд░реВрдк рд╕реЗ рдпрджрд┐ рдЖрдк рдиреМрд╕рд┐рдЦрд┐рдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд┐рдд рд╣реИрдВ рддреЛ рдЙрдиреНрд╣реЗрдВ рдПрдХ рд╣реА рдлрд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдХрдИ рддрд░реАрдХреЗ рджреЗ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдЕрдзрд┐рдХ рддреНрд░реБрдЯрд┐ рдкреНрд░рд╡рдг рдФрд░ рднреНрд░рдорд┐рдд рд╣реИред

рд╢рд╛рдпрдж рд╕реНрдкрд░реНрд╢рд░реЗрдЦрд╛ рд▓реЗрдХрд┐рди рдпрд╣ рд▓реЛрдЧреЛрдВ рдХреЛ рд╕реВрдЪрд┐рдд рдХрд░рдиреЗ рд▓рд╛рдпрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЙрдирдХреЗ рдкрд╛рд╕ рдкреГрд╖реНрда рдореЗрдВ рд╢рд╛рдорд┐рд▓ рддреАрди.рдЬреЗрдПрд╕ рдХреА рджреЛ рдкреНрд░рддрд┐рдпрд╛рдВ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ (рднрд▓реЗ рд╣реА рд╡реЗ рдПрдХ рд╣реА рд╕рдВрд╕реНрдХрд░рдг рд╣реЛрдВ) рдЬреЛ рддрдм рддрдХ рд╕рдорд╕реНрдпрд╛рдПрдВ рдкреИрджрд╛ рдХрд░ рд╕рдХрддреА рд╣реИрдВ рдЬрдм рддрдХ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдорд┐рд╢реНрд░рдг рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзреНрдпрд╛рди рдирд╣реАрдВ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред ~ рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рд░рд┐рдПрдХреНрдЯ рдЗрд╕реА рддрд░рд╣ рдХреЗ рдХрд╛рд░рдгреЛрдВ рд╕реЗ рдХрд░рддрд╛ рд╣реИ ~ рд░рд┐рдПрдХреНрдЯ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕реЗ рдПрдХ рддреНрд░реБрдЯрд┐ рдХреЗ рд╕рдВрднрд╛рд╡рд┐рдд рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ рдЗрдВрдЧрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдХрдо рд╕реЗ рдХрдо рд▓реЛрдЧреЛрдВ рдХреЛ рд╕реАрдЦрдиреЗ рдХреЗ рджреМрд░рд╛рди рдЗрди рддреМрд░-рддрд░реАрдХреЛрдВ рдХреЛ рдорд┐рд▓рд╛рдиреЗ рд╕реЗ рджреВрд░ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рдореИрдВ @ рдмрдЧ-рд░реАрдкрд░ рдХреЗ рд╕рдорд╛рди рдирд┐рд╖реНрдХрд░реНрд╖ рдкрд░ рдкрд╣реБрдВрдЪрд╛ред рдЖрдЬ рдореИрдВ рдПрдХ рдРрд╕реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдиреЗ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓ рд░рд╣рд╛ рд╣реВрдВ рдЬреЛ рдЙрджрд╛рд╣рд░рдгреЛрдВ/рдЬреЗрдПрд╕рдПрдо рдлрд╛рдЗрд▓реЛрдВ рд╕реЗ рдЙрджрд╛рд╣рд░рдг/рдЬреЗрдПрд╕ рдмрдирд╛рддрд╛ рд╣реИред

рдпрджрд┐ рдпрд╣ рдирдИ рдпреЛрдЬрдирд╛ рд╣реИ рддреЛ рдореБрдЭреЗ #15526/#15543 (рдЬреЛ рдЕрдм рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реЗ рд╣рдЯрд╛ рджреА рдЧрдИ рд╣реИ) рдХреЛ рдкреБрдирд░реНрдЬреАрд╡рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рдкреНрд░рд╕рдиреНрдирддрд╛ рд╣реЛрдЧреА, рдЬреЛ рдкреНрд░рддреНрдпреЗрдХ рдореЙрдбреНрдпреВрд▓ рдлрд╝рд╛рдЗрд▓ рдХреЛ ES6 рдореЗрдВ рдмрдирд╛рддрд╛ рд╣реИред рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг рдмрд╣реБрдд рд╕рд╛рд░реА рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рдлреИрд▓реЗ рд╣реБрдП рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╢реЗрдбрд░ рдиреЛрдбреНрд╕) рдФрд░ рд╣рдо рдХреБрдЫ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдХрдИ рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд░реБрдЪрд┐ рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╣ рд╢рд╛рдпрдж рдЙрди рдлрд╛рдЗрд▓реЛрдВ рдХреА рдПрдХ рд╕реНрдкрд╖реНрдЯ рд╕реВрдЪреА рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рд░реЛрд▓рдЕрдк рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХреЗ рд▓рд╛рдпрдХ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рд╣рдо рдХрдирд╡рд░реНрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдФрд░ рдЖрдЙрдЯрдкреБрдЯред рд╣рдореЗрдВ рдЙрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдмреАрдЪ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдирд┐рд░реНрднрд░рддрд╛рдПрдБ рдмрдирд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдЖрдЙрдЯрдкреБрдЯ рд╣реИрдВ, рд╕рд╛рде рд╣реАред

рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рди рдмрдирд╛рдиреЗ рдкрд░ рд╣рдо рдПрдХ рдмрдбрд╝реА рдЪреАрдЬрд╝ рдЦреЛ рджреЗрддреЗ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛

рдореИрдВ рд╕рд╣рдордд рд╣реВрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЕрдЧрд░ рд╣рдо рд╕рднреА рдХрдХреНрд╖рд╛рдУрдВ рдореЗрдВ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ рддреЛ рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдХреБрдЫ рдРрд╕рд╛ рд╣реЛрдЧрд╛:

import orbitalcontrols from  orbitalcontrolsURL

class mycontrols extends orbitalcontrols {
// do the edits I care about
}

рдФрд░ рдлрд┐рд░ рдмрд╛рдж рдореЗрдВ

let controls = new myorbitalcontrols

рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рди рдмрдирд╛рдиреЗ рдкрд░ рд╣рдо рдПрдХ рдмрдбрд╝реА рдЪреАрдЬрд╝ рдЦреЛ рджреЗрддреЗ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛

рдореИрдВ рд╕рд╣рдордд рд╣реВрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЕрдЧрд░ рд╣рдо рд╕рднреА рдХрдХреНрд╖рд╛рдУрдВ рдореЗрдВ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ рддреЛ рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдХреБрдЫ рдРрд╕рд╛ рд╣реЛрдЧрд╛:

рдСрд░реНрдмрд┐рдЯрд▓рдХрдВрдЯреНрд░реЛрд▓ рд╕реЗ рдЖрдпрд╛рдд рдХрд░реЗрдВрдСрд░реНрдмрд┐рдЯрд▓рдХрдВрдЯреНрд░реЛрд▓URL

рдХрдХреНрд╖рд╛ mycontrols рдХрдХреНрд╖реАрдп рдирд┐рдпрдВрддреНрд░рдгреЛрдВ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ {
// рд╡реЗ рд╕рдВрдкрд╛рджрди рдХрд░реЗрдВ рдЬрд┐рдирдХреА рдореБрдЭреЗ рдкрд░рд╡рд╛рд╣ рд╣реИ
}

рдФрд░ рдлрд┐рд░ рдмрд╛рдж рдореЗрдВ

рдирд┐рдпрдВрддреНрд░рдг рджреЗрдВ = рдирдпрд╛ myorbitalcontrols

рдЖрдк рдЗрд╕реЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ... рднрд▓реЗ рд╣реА рдорд╛рддрд╛-рдкрд┐рддрд╛ "рд╡рд░реНрдЧ" рд╕рд░рд▓ рдЬреЗрдПрд╕ рдлрд╝рдВрдХреНрд╢рди рд╣реЛ!

рдХреЛрдб рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ (рдбреАрдмрдЧрд░ рддреНрд╡рд░рд┐рдд рдкрд░реАрдХреНрд╖рдг рдореЗрдВ):

Promise.all([
    import('https://unpkg.com/three/build/three.module.js')
        .then( mod=> [mod.Camera, mod.WebGLRenderer] ),
    import('https://unpkg.com/three/examples/jsm/controls/OrbitControls.js')
        .then( mod=> mod.OrbitControls )
])
.then( ([
    [ Camera, WebGLRenderer ],
    OrbitControls
])=> new ( class extends OrbitControls {} )( new Camera, (new WebGLRenderer).domElement )
)
.then( console.log )

... рдпрд╛ рд╕рд░рд▓ рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕:

(async function() {

let { Camera, WebGLRenderer } = await import('https://unpkg.com/three/build/three.module.js')
,   { OrbitControls } = await import('https://unpkg.com/three/examples/jsm/controls/OrbitControls.js')

class Con extends OrbitControls { }

let my = new Con( new Camera, (new WebGLRenderer).domElement )
console.log( my )

})()

рдЙрд╕ aynom рдлрд╝рдВрдХреНрд╢рди рд╕реЗ рдЕрд▓рдЧ рдФрд░ async/рдкреНрд░рддреАрдХреНрд╖рд╛ рд╡рд╛рджреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд╛ рдХрд░рдирд╛, рдЕрдЪреНрдЫрд╛

class mycontrols extend orbitalcontrols {
 // do the edits I care about
 }

рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ, рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рддреЗ рд╕рдордп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдореВрд▓ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдпрд╣ рд╡рд╣ рдкреИрдЯрд░реНрди рд╣реИ рдЬрд┐рд╕рдХрд╛ рд╣рдореЗрдВ рдкреНрд░рдЪрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЙрджрд╛рд╣рд░рдг рд╡рд┐рд╕реНрддрд╛рд░рд╢реАрд▓рддрд╛ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрдХрд░ рдирд╣реАрдВ рд▓рд┐рдЦреЗ рдЧрдП рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЖрдк рдЬреЛ рд╣рд╛рд╕рд┐рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЙрд╕рдХреА рдордЬрдмреВрдд рд╕реАрдорд╛рдПрдБ рд╣реИрдВред рдореЗрд░реЗ рдЕрдиреБрднрд╡ рдореЗрдВ, рдЖрдкрдХреЛ рдЗрд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд╡рд░реНрдЧ рдХреЗ рдирд┐рд░реНрдорд╛рддрд╛ рдореЗрдВ рд╕рдВрдкреВрд░реНрдг рдореВрд▓ рдЙрджрд╛рд╣рд░рдг рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, extend рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, OrbitControls рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЖрдо рдЕрдиреБрд░реЛрдзрд┐рдд рдкрд░рд┐рд╡рд░реНрддрди рдкреИрди рдХреЛ рд╕реАрдорд┐рдд рдХрд░рдирд╛ рд╣реИ ред рдпрд╣ рдЖрд╕рд╛рдиреА рд╕реЗ рдкреВрд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдЙрд╕ рдзрд╛рдЧреЗ рд╕реЗ @ Mugen87 рдХреА рдкрд╣реЗрд▓реА рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред

рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рдЖрдк minPan рдФрд░ maxPan рд╡реИрдХреНрдЯрд░ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рдФрд░ $ controls.update рд╡рд┐рдзрд┐ рдореЗрдВ controls.target рдХреНрд▓реИрдВрдк рдХрд░рддреЗ рд╣реИрдВред

рдореБрдЭреЗ OrbitControls рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдХреЗ рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рдореМрдХрд╛ рдорд┐рд▓рд╛ред рдЖрдк рдПрдХ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд╡рд░реНрдЧ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╕рдорд╕реНрдпрд╛рдПрдБ рддрдм рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЬрд╛рддреА рд╣реИрдВ рдЬрдм рдЖрдк рдмрджрд▓рд╛рд╡ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рдЖрдк рдХреЗрд╡рд▓ update рд╡рд┐рдзрд┐ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ:

class OrbitControlsPanLimit extends OrbitControls {
    constructor(object, domElement) {
        super(object, domElement);
    }

    update() {
        super.update();
        console.log('Custom update function');
    }
}

рдпрд╣ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд╡рд░реНрдЧ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ ( рдЧрдбрд╝рдмрдбрд╝ ), рд▓реЗрдХрд┐рди рдЗрд╕ рдирдИ OrbitControlsPanLimit.update рдкрджреНрдзрддрд┐ рдХреЛ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдореВрд▓ OrbitControls.update рдкрджреНрдзрддрд┐ рдХрд╛ рдЕрднреА рднреА рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЖрдк рдЗрд╕реЗ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдореЗрдВ рдлрд┐рд░ рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдХреЗ рдЗрд╕реЗ рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

class OrbitControlsPanLimit extends OrbitControls {
    constructor(object, domElement) {
        super(object, domElement);

        this.update = () => {
            console.log('Custom update function');
        }
    }
}

рдЖрдк рдпрд╣рд╛рдВ super.update() рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдПрдХрдорд╛рддреНрд░ рд╡рд┐рдХрд▓реНрдк рд╕рдВрдкреВрд░реНрдг рдореВрд▓ рдЕрдкрдбреЗрдЯ рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрдкреА рдХрд░рдирд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рд╡рд┐рдзрд┐ OrbitControls рдХреЗ рднреАрддрд░ рд╕реЗ рдЗрд╕ рд╕рд╛рдордЧреНрд░реА рдкрд░ рдмрд╣реБрдд рдХреБрдЫ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИ, рдЬрд┐рд╕реЗ рд╕рднреА рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдмреАрдЪ рд╕рд╛рдЭрд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

    //
    // internals
    //

    var scope = this;

    var changeEvent = { type: 'change' };
    var startEvent = { type: 'start' };
    var endEvent = { type: 'end' };

    var STATE = {
        NONE: - 1,
        ROTATE: 0,
        DOLLY: 1,
        PAN: 2,
        TOUCH_ROTATE: 3,
        TOUCH_PAN: 4,
        TOUCH_DOLLY_PAN: 5,
        TOUCH_DOLLY_ROTATE: 6
    };

    var state = STATE.NONE;

    var EPS = 0.000001;

    // current position in spherical coordinates
    var spherical = new THREE.Spherical();
    var sphericalDelta = new THREE.Spherical();

    var scale = 1;
    var panOffset = new THREE.Vector3();
    var zoomChanged = false;

    var rotateStart = new THREE.Vector2();
    var rotateEnd = new THREE.Vector2();
    var rotateDelta = new THREE.Vector2();

    var panStart = new THREE.Vector2();
    var panEnd = new THREE.Vector2();
    var panDelta = new THREE.Vector2();

    var dollyStart = new THREE.Vector2();
    var dollyEnd = new THREE.Vector2();
    var dollyDelta = new THREE.Vector2();

рдЕрдВрддрд┐рдо рдкрд░рд┐рдгрд╛рдо рдпрд╣ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рд▓рдЧрднрдЧ рдкреВрд░реЗ рдореВрд▓ OrbitControls рдХреЛ OrbitControlsPanLimit рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдореЗрдВ рдХреЙрдкреА рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЬреЛ рдХрдХреНрд╖рд╛ рдХреЛ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рдЙрджреНрджреЗрд╢реНрдп рдХреЛ рд╣рд░рд╛ рджреЗрддрд╛ рд╣реИред рдЬрдм рддрдХ рд╣рдо рдПрдХреНрд╕реНрдЯреЗрдВрд╕рд┐рдмрд┐рд▓рд┐рдЯреА рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рдПрдХ рд╡рд░реНрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдирд┐рдпрдВрддреНрд░рдг рдирд╣реАрдВ рд▓рд┐рдЦрддреЗ, рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдЗрд╕реЗ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХрд░рдирд╛ рд╡реНрдпрд╡рд╣рд╛рд░реНрдп рд╣реИред

рдзрдиреНрдпрд╡рд╛рдж @looeee рд╡рд╣рд╛рдВ рдЪрд┐рдВрд░рд╛рдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рдореИрдВ рд╕реЛрдЪ рд░рд╣рд╛ рдерд╛ рдХрд┐ рд╢рд╛рдпрдж рдореИрдВ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреЗ рднреАрддрд░ рдПрдХ рдЖрд╕рд╛рди рд╕рдорд╛рдзрд╛рди рд╕реЗ рдЪреВрдХ рдЧрдпрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдЕрдм рдЬрдм рдЖрдк рдЗрд╕рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдмрд╣реБрдд рдЬреНрдпрд╛рджрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдореИрдВ рдЦреБрдж рддрдХ рдкрд╣реБрдВрдЪ рдЧрдпрд╛ред

рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ, рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рддреЗ рд╕рдордп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдореВрд▓ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдпрд╣ рд╡рд╣ рдкреИрдЯрд░реНрди рд╣реИ рдЬрд┐рд╕рдХрд╛ рд╣рдореЗрдВ рдкреНрд░рдЪрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╕рд╛рд╡рдзрд╛рди, рдпрд╣ рдПрдХ рд╡рд┐рд░рд╛рд╕рдд рдмрдирд╛рдо рд░рдЪрдирд╛ рддрд░реНрдХ рдХреА рдУрд░ рдмрд╛рд░реАрдХреА рд╕реЗ рдЪрд▓ рд░рд╣рд╛ рд╣реИред

рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рдХрд┐рд╕реА рднреА рдкреИрдЯрд░реНрди рдХрд╛ рдкреНрд░рдЪрд╛рд░ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдЗрд╕рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдпрд╣ рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХрд╛ рд▓рдХреНрд╖реНрдп рдХреИрд╕реЗ рд░рдЦрддрд╛ рд╣реИред

рдпрд╣ рдПрдХ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ, рд╕реНрдЯреИрдХ, рдмрд┐рд▓реНрдб рд╕рд┐рд╕реНрдЯрдо, рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЛ рднреА рдирд╣реАрдВ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрдЪрд╛рд╣рд┐рдПред рдПрдХ рдорд╣рд╛рди рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рд╕рдХреЗ рдЕрдкрдиреЗ рд╕рдореБрджрд╛рдп рдХреА рдХрдИ рдЬрдЯрд┐рд▓ рдЬрд░реВрд░рддреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рдЖрдЬ рдЬреЛ рдирдпрд╛ рд╣реИ рд╡рд╣ рдХрд▓ рдкреБрд░рд╛рдирд╛ рд╣реИ, рдкреИрдЯрд░реНрди рдЖрддреЗ рд╣реИрдВ рдФрд░ рдЪрд▓реЗ рдЬрд╛рддреЗ рд╣реИрдВред рдПрдХрдорд╛рддреНрд░ рд╕реНрдерд┐рд░ рддрдм рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рд╣реЛрдЧрд╛ рдЬреЛ рдХрдИ рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдирд╛ рдкрд┐рдЫрдбрд╝рд╛ рд╕рдВрдЧрддрддрд╛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╕рдорд░реНрдерди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред

рдЖрдк рдЕрднреА рднреА рд╡рд┐рдВрдбреЛрдЬ 10 рдореЗрдВ рдбреЙрд╕ рдЧреЗрдореНрд╕ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВред

рд╡рд┐рд░рд╛рд╕рдд рдмрдирд╛рдо рд░рдЪрдирд╛ рддрд░реНрдХ

рдХреГрдкрдпрд╛ рдХреЛрдИред рдЗрд╕ 'рддрд░реНрдХ' рдХрд╛ рд╕рдорд╛рдзрд╛рди рдиреМрдХрд░реА рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡реЛрддреНрддрдо рдЙрдкрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИред рд╡рд┐рд░рд╛рд╕рдд, рд╕рдВрд░рдЪрдирд╛, рдХрд╛рд░реНрдпрд╛рддреНрдордХ, рдкрд░реАрдХреНрд╖рдг рд╕рдВрдЪрд╛рд▓рд┐рдд ... рдХреЗ рд▓рд┐рдП рдПрдХ рдЬрдЧрд╣ рд╣реИ рдЖрдк рдЗрд╕реЗ рдирд╛рдо рджреЗрдВред

рдЪреВрдВрдХрд┐ рд╣рдо рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдЕрдиреНрдп рдбреЗрд╡рд▓рдкрд░реНрд╕ (рдЙрдкрдпреЛрдЧ, рдкреБрди: рдЙрдкрдпреЛрдЧ, рд╕рдВрд╢реЛрдзрд┐рдд) рдХреИрд╕реЗ рддреАрди.рдЬреЗрдПрд╕, рдпрд╣ рдПрдХ рдРрд╕реЗ рдкреИрдЯрд░реНрди рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рдиреНрдп рд╣реИ рдЬрд┐рд╕реЗ рдЖрд╕рд╛рдиреА рд╕реЗ рд╕рдордЭрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЬреЗрдПрд╕ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рдмрд╛рд╣рд░ рдХрджрдо рдЙрдард╛рдП рдмрд┐рдирд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдкреНрд░рдЪрд╛рд░ рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреЛрдИ рдЕрд▓рдЧ рд╢реИрд▓реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдирд╛ рдкрд┐рдЫрдбрд╝рд╛ рд╕рдВрдЧрддрддрд╛

рд╣рд╛рдВ рдФрд░ рдирд╛ред

рдЗрд╕реЗ рдЗрд╕рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЗрд╕рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдХреИрд╕реЗ рд╣рд▓ рдХрд░рдирд╛ рд╣реИ

рд╢рд╛рдпрдж рдЗрд╕рд▓рд┐рдП рдХрд┐ рд╣рдо рд╕реНрдкрд╖реНрдЯ рд╣реИрдВ, рдЖрдкрдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рд╕рдорд╕реНрдпрд╛/рд╕реБрд╡рд┐рдзрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╣реИ?

рдпрд╣ рдПрдХ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ, рд╕реНрдЯреИрдХ, рдмрд┐рд▓реНрдб рд╕рд┐рд╕реНрдЯрдо, рдХреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП

рдореИрдВ рдЬреНрдпрд╛рджрд╛рддрд░ рд╕рд╣рдордд рд╣реВрдВред threejs рдЙрдкрдпреЛрдЧ рдХрд╛ рдорд╛рдорд▓рд╛ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╣реИред рдЪреЗрддрд╛рд╡рдиреА рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдХреБрдЫ рд▓реЛрдбрд░ рдХреБрдЫ рдиреЛрдб рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИрдВ рдЬреЛ рдореИрдВрдиреЗ рд╕реБрдирд╛ рд╣реИред

рддрдм рдПрдХрдорд╛рддреНрд░ рд╕реНрдерд┐рд░рд╛рдВрдХ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рд╣реЛрдЧрд╛ рдЬреЛ рд░рд╛рд╕реНрддреЗ рдореЗрдВ рдХрдИ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╕рдорд░реНрдерди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ

рдкрд░рд┐рд╡рд░реНрддрди рд╣реА рд╕реНрдерд╛рдпреА рд╣реИред рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЙрд╕ рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдЙрдиреНрд╣реЗрдВ рдкрд╕рдВрдж рд╣реИ рдФрд░ рдХрднреА-рдХрднреА рд╣рдо рдЕрдиреНрдп рдЪреАрдЬреЛрдВ рдХреЛ рднреА рдЫреЛрдбрд╝ рджреЗрддреЗ рд╣реИрдВред

рд╕реНрд╡рдЧрдд рдХрдерди рдХреЗ рд░реВрдк рдореЗрдВ:

рдЗрд╕реЗ рдЗрд╕рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЗрд╕рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдХреИрд╕реЗ рд╣рд▓ рдХрд░рдирд╛ рд╣реИ

рдЬреЛ рдкрд╣рд▓реЗ рдЖрдпрд╛ рдерд╛? рд╕реБрд╡рд┐рдзрд╛, рдкреИрдЯрд░реНрди рдпрд╛ рд╕рдорд╕реНрдпрд╛?
рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдкреИрдЯрд░реНрди рдиреЗ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХреА рдФрд░ рдлрд┐рд░ рдПрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рдмрди рдЧрдИ
...рдпрд╛ рдпрд╣ рд╡рд╣ рд╡рд┐рд╢реЗрд╖рддрд╛ рдереА рдЬрд┐рд╕рдиреЗ рд╕рдорд╕реНрдпрд╛ рдкреИрджрд╛ рдХреА рдФрд░ рд╣рдореЗрдВ рдЗрд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛?

рдЬреЛ рдкрд╣рд▓реЗ рдЖрдпрд╛ рдерд╛? рд╕реБрд╡рд┐рдзрд╛, рдкреИрдЯрд░реНрди рдпрд╛ рд╕рдорд╕реНрдпрд╛?

рдкрд╣рд▓реЗ рдХреМрди рдЖрдпрд╛? рдореБрд░реНрдЧреА рдпрд╛ рдЕрдВрдбрд╛?
рдХреБрдЫ рд▓реЛрдЧ рдореБрд░реНрдЧрд╛ рдХрд╣рддреЗ рд╣реИрдВ ...

рдЪрд╛рд░реЛрдВ рдУрд░ рд╢рд╛рдирджрд╛рд░ рдЪрд░реНрдЪрд╛, рд╕рднреА рдЗрдирдкреБрдЯ рдХреЗ рд▓рд┐рдП рд╕рднреА рдХреЛ рдзрдиреНрдпрд╡рд╛рджред

рдореБрдЭреЗ рдЗрд╕ рдмрд╛рдд рдХреА рдЙрддреНрд╕реБрдХрддрд╛ рд╣реЛрдЧреА рдХрд┐ рдЖрдк рд▓реЛрдЧ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рд╕реЛрдЪрддреЗ рд╣реИрдВ рдХрд┐ рдХреМрди рд╕рд╛ рдмрдВрдбрд▓рд░ (рд░реЛрд▓рдЕрдк, рдмреЗрдмреЗрд▓, рдкрд╛рд░реНрд╕рд▓, рд╡реЗрдмрдкреИрдХ, рдЖрджрд┐) рд╣рдорд╛рд░реЗ ES6 рдЙрджрд╛рд╣рд░рдг рдореЙрдбреНрдпреВрд▓ рдХреЛ рдЯреНрд░рд╛рдВрд╕рдкрд┐рд▓ рдХрд░рдиреЗ рдХреЗ рдХрд╛рд░реНрдп рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЙрдкрдпреБрдХреНрдд рд╣реИред рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ @gigablox рдиреЗ рдпрд╣рд╛рдВ рдЕрдиреБрднрд╡ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдЕрдиреНрдп рднреА рдРрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВред

рд╡рд░реНрддрдорд╛рди рд░реЗрдкреЛ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдмреЗрдмреЗрд▓, рд░реЛрд▓рдЕрдк рдФрд░ рдХреБрдЫ рд╕рдВрдмрдВрдзрд┐рдд рдкреНрд▓рдЧрдЗрдиреНрд╕ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдореИрдВ рдЖрдЧреЗ рдмрдврд╝ рдЧрдпрд╛ рдФрд░ рдЖрдЬ рд░рд╛рдд рдХреЛ рд╣реИрдХрд┐рдВрдЧ рд╢реБрд░реВ рдХрд░ рджреА рдФрд░ рдореЗрд░реЗ рдкрд╛рд╕ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдмреЗрд╣рдж рдореЛрдЯрд╛ рд░реЛрд▓рдЕрдк рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ:

// jsm-transpiler.js
export default [
  {
    input: './examples/jsm/controls/OrbitControls.js',
    output: {
      banner:"//warning this file was generated automatically",
      file: './examples/js/controls/OrbitControls.js',
      name:'OC',
      footer:'THREE["OrbitControls"]=OC.OrbitControls',
      format: 'umd'
    }
  }
];

рдпрд╣ рд░реЛрд▓рдЕрдк рдХреЙрдиреНрдлрд┐рдЧ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ OrbitControls рдореЙрдбреНрдпреВрд▓ рдХреЛ рдПрдХ рдЧреИрд░-рдореЙрдбреНрдпреВрд▓ .js рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддреА рд╣реИ рдЬрд┐рд╕рдореЗрдВ рддреАрди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реЛрддреЗ рд╣реИрдВред рдЙрдкрдпреБрдХреНрдд рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдХреЛ рдСрд░рд┐рдмрд┐рдЯ рдХрдВрдЯреНрд░реЛрд▓ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдХрд╛рдо рдХрд┐рдпрд╛, рдЬреЛ рдЕрдЪреНрдЫрд╛ рд╣реИ :)! рдЗрд╕рдиреЗ рдереНрд░реА.рдЬреЗрдПрд╕ рдХреА 40k рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рдлрд╛рдЗрд▓ рдореЗрдВ рднреА рдмрдВрдбрд▓ рдХрд┐рдпрд╛, рдЗрддрдирд╛ рдЕрдЪреНрдЫрд╛ рд╣рд╛рд╣рд╛ рдирд╣реАрдВред рдореИрдВ рдСрд░реНрдмрд┐рдЯрдХрдВрдЯреНрд░реЛрд▓ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдХреЛ рддреАрди рдкрд░ рд▓реЗ рдЬрд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП OC рдирд╛рдордХ рдПрдХ рдордзреНрдпрд╕реНрде рд╡реИрд╢реНрд╡рд┐рдХ рд╕рдВрд╕реНрдХрд░рдг рдШреЛрд╖рд┐рдд рдХрд░рдХреЗ рд╡реИрд╢реНрд╡рд┐рдХ рдЪрд░ рд╕реНрдерд╛рди рдХреЛ рдЖрд▓рд╕реА рд░реВрдк рд╕реЗ рдкреНрд░рджреВрд╖рд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд░реЛрд▓рдЕрдк рдореЗрдВ рдХреБрдЫ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВ рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реА рдмрд╣реБрдд рд╕рд╛рд░реА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░ рд╕рдХрддреА рд╣реИрдВред рд╕рд╣реА рдиреЗрд╕реНрдЯреЗрдб рдореЙрдбреНрдпреВрд▓ рдХреЛ рд╢рд╛рдорд┐рд▓/рдмрд╣рд┐рд╖реНрдХреГрдд рдХрд░рдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдореИрдкрд┐рдВрдЧ рдФрд░ рдЕрдиреНрдп рдирд┐рдпрдВрддреНрд░рдгред рд╢реАрд░реНрд╖рд▓реЗрдЦ/рдкрд╛рджрд▓реЗрдЦ/рдкрд░рд┐рдЪрдп/рдЖрдЙрдЯрдкреБрдЯ рдЧреБрдгреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрд╛рд░рджрд░реНрд╢реА рдкреЗрд▓реЛрдб рд╕реЗ рдкрд╣рд▓реЗ рдФрд░ рдмрд╛рдж рдореЗрдВ рдХреЛрдб рдЗрдВрдЬреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ред

рдореИрдВ рд╕рд╛рд╡рдзрд╛рдиреА рд╕реЗ рдЖрд╢рд╛рд╡рд╛рджреА рд╣реВрдВ рдХрд┐ рд╣рдо рдПрдХ рдЯреНрд░рд┐рдХ рдЖрдЙрдЯ рд░реЛрд▓рдЕрдк рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рдЬреЛ рдЪрд╛рд╣рд┐рдП рдЙрд╕реЗ рдкреВрд░рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рдЬрд┐рд╕рдиреЗ рд╢реЛрдз рдХрд┐рдпрд╛ рд╣реИ/рдХрдИ рдмрдВрдбрд▓рд░реЛрдВ рдХреЗ рдмреАрдЪ рдорддрднреЗрджреЛрдВ рдХреЛ рд╕рдордЭрддрд╛ рд╣реИ рддреЛ рдпрд╣рд╛рдВ рд╡рдЬрди рдХрдо рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдореЙрдбреНрдпреВрд▓ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдХрд╛рдлреА рдордЬрдмреВрдд рдХреБрдЫ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдФрд░ рдЕрдзрд┐рдХ рднрдпрд╛рдирдХ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ рдореИрдВ рдХреБрдЫ рдкрд╛рд░рджрд░реНрд╢реА рдХреЛрдб рджреВрд╕рд░реЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмреЗрд╣рддрд░ рд╢рд░реНрдд рд▓рдЧрд╛рддрд╛ рд╣реВрдВред

рдпрд╣рд╛рдБ рдЗрд╕ рдкрд░ рдореЗрд░реА рд░рд╛рдп рд╣реИ:
https://github.com/mrdoob/three.js/pull/20529

рдпрд╣ рдПрдХ рдкреЙрдХ рдХрд╕реНрдЯрдо рдмрд┐рд▓реНрдб рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ рдЬреЛ рд╕рднреА JSM рдореЙрдбреНрдпреВрд▓ рдХреЛ рд▓рдЧрднрдЧ 30 рд╕реЗрдХрдВрдб рдореЗрдВ JS рдЧреНрд▓реЛрдмрд▓ рдиреЗрдорд╕реНрдкреЗрд╕реНрдб рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдмрджрд▓ рджреЗрддреА рд╣реИред рдЗрд╕ рдкрджреНрдзрддрд┐ рд╕реЗ рдХрд╛рдлреА рдЕрдЪреНрдЫреА рд╕рдлрд▓рддрд╛ рдорд┐рд▓реАред рдЕрдзрд┐рдХ рдкрд░реАрдХреНрд╖рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╣реИрд▓реЛ рд╡рд░реНрд▓реНрдб рдореЗрдВ GLTFLoader рдЬреИрд╕реЗ рдХреБрдЫ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдореЙрдбреНрдпреВрд▓ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдФрд░ рдпрд╣ рдареАрдХ рдерд╛ред

рдХрд┐рд╕реА рднреА рдЕрдиреБрднрд╡реА RegExp рд╡рд┐рдЬрд╝рд╛рд░реНрдб рд╕реЗ рдорджрдж рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ :) рдХреБрдЫ рдХрд┐рдирд╛рд░реЗ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдк рдкреАрдЖрд░ рдореЗрдВ рдФрд░ рдЕрдзрд┐рдХ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред

Chrome рдХрд╛ рдЖрдпрд╛рдд рдорд╛рдирдЪрд┐рддреНрд░ рд╢рд┐рдк рдХрд░рдиреЗ рдХрд╛ рдЗрд░рд╛рджрд╛:
https://groups.google.com/a/chromium.org/g/blink-dev/c/rVX_dJAJ-eI

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

Horray picture Horray  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

clawconduce picture clawconduce  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

jens-duttke picture jens-duttke  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

fuzihaofzh picture fuzihaofzh  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

alexprut picture alexprut  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ