рдбрд┐рдЬреНрдиреА рдХрд╛рд░реНрдЯреВрди "рдореЛрдЖрдирд╛" рд╕реЗ рдПрдХ рджреГрд╢реНрдп рдХреЗ рдкреНрд░рддрд┐рдкрд╛рджрди рдХрд╛ рдЕрдиреБрдХреВрд▓рдиред рднрд╛рдЧ 1

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

рдпрд╣рд╛рдБ рдЖрдзреБрдирд┐рдХ pbrt рдХреЗ рд╕рд╛рде рдПрдХ рджреГрд╢реНрдп рдХреЛ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдХреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ:


рдореЛрдЖрдирд╛ рд╕реЗ рдПрдХ рджреНрд╡реАрдк 2048x858 рдХреЗ рд╕рдВрдХрд▓реНрдк рдкрд░ pbrt-v3 рджреНрд╡рд╛рд░рд╛ рдкреНрд░рддрд┐ рдкрд┐рдХреНрд╕реЗрд▓ 256 рдирдореВрдиреЛрдВ рдХреЗ рд╕рд╛рде рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛ред Pbrt-v3 рдХреЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде 2 GHz рдХреА рдЖрд╡реГрддреНрддрд┐ рдХреЗ рд╕рд╛рде Google рдХрдВрдкреНрдпреВрдЯ рдЗрдВрдЬрди рдХреЗ 12-рдХреЛрд░ / 24-рдереНрд░реЗрдб рдЙрджрд╛рд╣рд░рдг рдкрд░ рдХреБрд▓ рд░реЗрдВрдбрд░рд┐рдВрдЧ рд╕рдордп 1 рдШрдВрдЯреЗ 44 рдорд┐рдирдЯ 45 рд╕реЗрдХреЗрдВрдб рдерд╛ред

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

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

рд╡рд╣ рд╣реИрд╢ рдЬреЛ рдирд╣реАрдВ рдерд╛


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

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

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

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

рдЖрдЧреЗ рдХреЗ рдЕрдзреНрдпрдпрди рдХреЗ рдмрд╛рдж, рд╣рдордиреЗ рдкрд╛рдпрд╛ рдХрд┐ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИрд╢ рдЯреЗрдмрд▓ рдлрд╝рдВрдХреНрд╢рди рдирд┐рдореНрди рдХреЗ рд╕рдорд╛рди рдерд╛:

int hash(const char *str) { return str[0]; } 

(рдореБрдЭреЗ рдорд╛рдл рдХрд░ рджреЛ, рдкрд┐рдХреНрд╕рд░, рдЕрдЧрд░ рдореИрдВрдиреЗ рддреБрдореНрд╣рд╛рд░реЗ рдЯреЙрдк-рд╕реАрдХреНрд░реЗрдЯ рд░реЗрдВрдбрд░рдореИрди рд╕реЛрд░реНрд╕ рдХреЛрдб рдХрд╛ рдЦреБрд▓рд╛рд╕рд╛ рдХрд┐рдпрд╛ред)

"рд╣реИрд╢" рдлрд╝рдВрдХреНрд╢рди рдХреЛ 1980 рдХреЗ рджрд╢рдХ рдореЗрдВ рд╡рд╛рдкрд╕ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЙрд╕ рд╕рдордп, рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдиреЗ рд╕рдВрднрд╡рддрдГ рдорд╛рдирд╛ рдХрд┐ рд╣реИрд╢ рдорд╛рди рдкрд░ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рд╕рднреА рд╡рд░реНрдгреЛрдВ рдХреЗ рдкреНрд░рднрд╛рд╡ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреА рдХрдореНрдкреНрдпреВрдЯреЗрд╢рдирд▓ рд▓рд╛рдЧрдд рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╣реЛрдЧреА рдФрд░ рдЗрд╕рдХреЗ рд▓рд╛рдпрдХ рдирд╣реАрдВ рд╣реЛрдЧреАред (рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдЧрд░ рджреГрд╢реНрдп рдореЗрдВ рд╣реИрд╢ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдХреЗрд╡рд▓ рдХреБрдЫ рдСрдмреНрдЬреЗрдХреНрдЯ рдФрд░ 256 рддрддреНрд╡ рдереЗ, рддреЛ рд╡рд╣ рдерд╛)ред

рдПрдХ рдФрд░ рдЕрдкреНрд░рдЪрд▓рд┐рдд рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдиреЗ рдпреЛрдЧрджрд╛рди рджрд┐рдпрд╛: рдЬрдм рд╕реЗ рдкрд┐рдХреНрд╕рд░ рдиреЗ рдЕрдкрдиреА рдлрд┐рд▓реНрдореЗрдВ рдмрдирд╛рдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛, рддрдм рд╕реЗ рджреГрд╢реНрдпреЛрдВ рдореЗрдВ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдирд╛рдо рдХрд╛рдлреА рдмрдврд╝ рдЧрдП рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, "рдмрдЬрд╝рд▓рд╛рдЗрдЯ / рд▓реЗрдпрд░рдЕрд░рдо / рд╣реИрдВрдб / рдЗрдВрдбреЗрдХреНрд╕рдлрд╝рд┐рдВрдЧрд░ / рдиреЙрдХрд▓ 2"ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХреЗ рдХреБрдЫ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЪрд░рдг рдиреЗ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдирд╛рдореЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд-рд▓рдВрдмрд╛рдИ рд╡рд╛рд▓реЗ рдмрдлрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдФрд░ рд╕рднреА рд▓рдВрдмреЗ рдирд╛рдореЛрдВ рдХреЛ рдЫреЛрдЯрд╛ рдХрд┐рдпрд╛, рдХреЗрд╡рд▓ рдЕрдВрдд рдХреЛ рдмрдирд╛рдП рд░рдЦрд╛, рдФрд░, рднрд╛рдЧреНрдп рдХреЗ рд╕рд╛рде, рд╢реБрд░реБрдЖрдд рдореЗрдВ рдПрдХ рджреАрд░реНрдШрд╡реГрддреНрдд рдЬреЛрдбрд╝рд╛, рдЬрд┐рд╕рд╕реЗ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЧрдпрд╛ рдХрд┐ рдирд╛рдо рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдЦреЛ рдЧрдпрд╛ рдерд╛: "... рд╡рд░реНрд╖ / рд╡рд╛рдордкреНрд░реЗрдо / рд╣рд╛рде / IndexFinger / Knuckle2 "ред

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

рдЧрд╣рди рдирд╡рд╛рдЪрд╛рд░


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

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

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

рдкрд╣рд▓реЗ рд░реЗрдВрдбрд░рд┐рдВрдЧ


рджреГрд╢реНрдп рдХреЛ рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВрдиреЗ рддреБрд░рдВрдд рдЗрд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░ рд▓рд┐рдпрд╛ (рдЗрд╕рдореЗрдВ рдореЗрд░реЗ рдШрд░ рдХреЗ рдЗрдВрдЯрд░рдиреЗрдЯ рдХрдиреЗрдХреНрд╢рди рдХреЗ рд╕рд╛рде рдХрдИ рдШрдВрдЯреЗ рд▓рдЧ рдЧрдП) рдФрд░ рдЗрд╕реЗ рдЯрд╛рд░ рд╕реЗ рдЕрдирдкреИрдХ рдХрд░ рджрд┐рдпрд╛, рдЬрд┐рд╕рдореЗрдВ 29 рдЬреАрдмреА рдХреА Pbrt рдлрд╛рдЗрд▓реЗрдВ рдФрд░ 38 GB рдХреА ptex 2 рдмрдирд╛рд╡рдЯ рдХреЗ рдирдХреНрд╢реЗ рдкреНрд░рд╛рдкреНрдд рд╣реБрдПред рдореИрдВрдиреЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЕрдкрдиреЗ рд╣реЛрдо рд╕рд┐рд╕реНрдЯрдо (16 рдЬреАрдмреА рд░реИрдо рдФрд░ 4-рдХреЛрд░ рд╕реАрдкреАрдпреВ рдХреЗ рд╕рд╛рде) рдкрд░ рджреГрд╢реНрдп рдХреЛ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреАред рдХреБрдЫ рд╕рдордп рдмрд╛рдж рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рд▓реМрдЯрдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВрдиреЗ рджреЗрдЦрд╛ рдХрд┐ рдпрд╣ рдЬрдореА рд╣реБрдИ рдереА, рд╕рднреА рд░реИрдо рднрд░реА рд╣реБрдИ рдереА, рдФрд░ рдкрдмреНрд░реЗрдЯ рдЕрднреА рднреА рджреГрд╢реНрдп рд╡рд┐рд╡рд░рдг рдХреЗ рдкрд╛рд░реНрд╕рд┐рдВрдЧ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рдерд╛ред OS рдиреЗ рд╡рд░реНрдЪреБрдЕрд▓ рдореЗрдореЛрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд╛рд░реНрдп рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рд▓реЗрдХрд┐рди рдпрд╣ рдирд┐рд░рд╛рд╢рд╛рдЬрдирдХ рдерд╛ред рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдкреАрдЯрдиреЗ рдХреЗ рдмрд╛рдж, рдореБрдЭреЗ рдЕрдкрдиреЗ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЬрд╡рд╛рдм рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдгрд╛рд▓реА рд╢реБрд░реВ рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд▓рдЧрднрдЧ рдПрдХ рдорд┐рдирдЯ рдЗрдВрддрдЬрд╛рд░ рдХрд░рдирд╛ рдкрдбрд╝рд╛ред

рдЕрдЧрд▓рд╛ рдкреНрд░рдпрд╛рд╕ Google рдХрдВрдкреНрдпреВрдЯ рдЗрдВрдЬрди рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдерд╛, рдЬреЛ рдЖрдкрдХреЛ рдЕрдзрд┐рдХ рд░реИрдо (120 рдЬреАрдмреА) рдФрд░ рдЕрдзрд┐рдХ рд╕реАрдкреАрдпреВ (16 рд╕реАрдкреАрдпреВ рдкрд░ 32 рдзрд╛рдЧреЗ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЕрдЪреНрдЫреА рдЦрдмрд░ рдпрд╣ рдереА рдХрд┐ pbrt рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рджреГрд╢реНрдп рдХреЛ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ (рд╣реАрде рдФрд░ рд░реИрд╕рдорд╕ рдХреЗ рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж рдЗрд╕реЗ pbrt рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП)ред рдпрд╣ рджреЗрдЦрдирд╛ рдмрд╣реБрдд рд░реЛрдорд╛рдВрдЪрдХ рдерд╛ рдХрд┐ рдЙрдЪреНрдЪ рдЧреБрдгрд╡рддреНрддрд╛ рд╡рд╛рд▓реА рдлрд┐рд▓реНрдо рд╕рд╛рдордЧреНрд░реА рдХреЗ рд▓рд┐рдП pbrt рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдЕрдЪреНрдЫреЗ рдкрд┐рдХреНрд╕реЗрд▓ рдЙрддреНрдкрдиреНрди рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЧрддрд┐ рдЗрддрдиреА рдЖрд╢реНрдЪрд░реНрдпрдЬрдирдХ рдирд╣реАрдВ рдереА: рдХреЗрд╡рд▓ рджреГрд╢реНрдп рд╡рд┐рд╡рд░рдг рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП 34 рдорд┐рдирдЯ 58 рд╕реЗрдХрдВрдб, рдФрд░ рд░реЗрдВрдбрд░рд┐рдВрдЧ рдХреЗ рджреМрд░рд╛рди 70 рдЬреАрдмреА рд░реИрдо рддрдХ рдЦрд░реНрдЪ рдХреА рдЧрдИ рдкреНрд░рдгрд╛рд▓реАред

рд╣рд╛рдВ, рдЙрд╕ рдбрд┐рд╕реНрдХ рдкрд░ 29 рдЧреАрдЧрд╛рдмрд╛рдЗрдЯ рдХрд╛ рдкрдмреНрд░реЗрдЯ рдлреЙрд░реНрдореЗрдЯ рд╕реАрди рдбрд┐рд╕реНрдХреНрд░рд┐рдкреНрд╢рди рдлрд╛рдЗрд▓ рдерд╛, рдЬрд┐рд╕реЗ рд╕реНрдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рдереА, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдкрд╣рд▓реЗ рдЪрд░рдг рдореЗрдВ рдХреБрдЫ рд╕реЗрдХрдВрдб рдХреА рдЙрдореНрдореАрдж рдирд╣реАрдВ рдереАред рд▓реЗрдХрд┐рди рдХрд┐рд░рдгреЛрдВ рдХреЛ рдЯреНрд░реЗрд╕ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╣реА рдЖрдзреЗ рдШрдВрдЯреЗ рдХрд╛ рд╕рдордп рджреЗрдВ? рдпрд╣ рджреГрд╢реНрдп рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХреЛ рдмрд╣реБрдд рдЬрдЯрд┐рд▓ рдХрд░рддрд╛ рд╣реИред

рджреВрд╕рд░реА рдУрд░, рдЗрд╕ рдЧрддрд┐ рдиреЗ рд╣рдореЗрдВ рдмрддрд╛рдпрд╛ рдХрд┐ рдХреЛрдб рдореЗрдВ рдмрд╣реБрдд рдХреБрдЫ рдмреЗрдИрдорд╛рдиреА-рдорд╣рдХ рдЖ рд░рд╣реА рдереА; рди рдХреЗрд╡рд▓ "рдореИрдЯреНрд░рд┐рдХреНрд╕ рдЙрд▓рдЯрд╛ 10% рддреЗрдЬреА рд╕реЗ рдкреНрд░рджрд░реНрд╢рди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ"; рдмрд▓реНрдХрд┐, "рдУрд╣ рдХреЗ рд╕реНрддрд░ рдкрд░ рдХреБрдЫ, рд╣рдо 100 рд╣рдЬрд╛рд░ рддрддреНрд╡реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╕реЗ рдЧреБрдЬрд░ рд░рд╣реЗ рд╣реИрдВ"ред рдореИрдВ рдЖрд╢рд╛рд╡рд╛рджреА рдерд╛ рдФрд░ рдЖрд╢рд╛ рдХрд░рддрд╛ рдерд╛ рдХрд┐ рдЗрд╕рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдХрд░ рдореИрдВ рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдХрд╛рдлреА рддреЗрдЬреА рд▓рд╛ рд╕рдХрддрд╛ рд╣реВрдВред

рдЖрдВрдХрдбрд╝реЗ рдорджрдж рдирд╣реАрдВ рдХрд░рддреЗ


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

рдмреАрд╡реАрдПрдЪ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдПрдХрдорд╛рддреНрд░ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХрдореНрдкреНрдпреВрдЯреЗрд╢рдирд▓ рдХрд╛рд░реНрдп рд╣реИ рдЬреЛ рджреГрд╢реНрдп рдкрд╛рд░реНрд╕рд┐рдВрдЧ рдХреЗ рджреМрд░рд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ; рдмрд╛рдХреА рд╕рдм рдХреБрдЫ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдЬреНрдпрд╛рдорд┐рддрд┐ рдФрд░ рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╡рд┐рд╡рд░рдг рдХрд╛ рдПрдХ рд╡рд░реНрдгрди рд╣реИред рдпрд╣ рдЬрд╛рдирддреЗ рд╣реБрдП рдХрд┐ рдмреАрд╡реАрдПрдЪ рдмрдирд╛рдиреЗ рдореЗрдВ рдХрд┐рддрдирд╛ рд╕рдордп рд╡реНрдпрддреАрдд рд╣реБрдЖ, рдЗрд╕ рдмрд╛рдд рдХреА рд╕рдордЭ рджреА рдХрд┐ рдХреИрд╕реЗ (рд╕рдВрдпреБрдХреНрдд рд░рд╛рд╖реНрдЯреНрд░) рдкреНрд░рднрд╛рд╡реА рдкреНрд░рдгрд╛рд▓реА рдереА: рд╢реЗрд╖ рд╕рдордп, рдЕрд░реНрдерд╛рддреН рд▓рдЧрднрдЧ 30 рдорд┐рдирдЯ, 29 рдЬреАрдмреА рдбреЗрдЯрд╛ рдкрд╛рд░реНрд╕ рдХрд┐рдпрд╛ рдЧрдпрд╛, рдпрд╛рдиреА рдЧрддрд┐ 16.5 рдПрдордмреА / рд╕реЗрдХреЗрдВрдб рдереАред рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЕрдиреБрдХреВрд▓рд┐рдд JSON рдкрд╛рд░реНрд╕рд░, рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдПрдХ рд╣реА рдХрд╛рд░реНрдп рдХрд░ рд░рд╣реЗ рд╣реИрдВ, 50-200 рдПрдордмреА / рдПрд╕ рдХреА рдЧрддрд┐ рд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдЕрднреА рднреА рд╕реБрдзрд╛рд░ рдХреА рдЧреБрдВрдЬрд╛рдЗрд╢ рд╣реИред

рдпрд╣ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреНрдпрд╛ рд╕рдордп рдмрд░реНрдмрд╛рдж рд╣реЛ рд░рд╣рд╛ рд╣реИ, рдореИрдВрдиреЗ рдПрдХ рд▓рд┐рдирдХреНрд╕ рдкрд░рдлрд╝реЙрд░реНрдо рдЯреВрд▓ рдХреЗ рд╕рд╛рде pbrt рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛, рдЬрд┐рд╕рдХрд╛ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдХрднреА рдЗрд╕реНрддреЗрдорд╛рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛ред рд▓реЗрдХрд┐рди, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ, рд╡рд╣ рдХрд╛рд░реНрдп рдХреЗ рд╕рд╛рде рдореБрдХрд╛рдмрд▓рд╛ рдХрд┐рдпрд╛ред рдореИрдВрдиреЗ рдЙрдиреНрд╣реЗрдВ рдлрд╝рдВрдХреНрд╢рди рдирд╛рдо ( --call-graph dwarf ) рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП DWARF рд╡рд░реНрдгреЛрдВ рдХреА рдЦреЛрдЬ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрджреЗрд╢ рджрд┐рдпрд╛, рдФрд░ рдПрдХ рд╕реМ рдЧреАрдЧрд╛рдмрд╛рдЗрдЯ рдЯреНрд░реЗрд╕ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рдирдореВрдирд╛ рджрд░ 4000 рд╕реЗ 100 рдирдореВрдиреЛрдВ рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб ( -F 100 ) рдХреЛ рдХрдо рдХрд░рдирд╛ рдкрдбрд╝рд╛ред рд▓реЗрдХрд┐рди рдЗрди рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реЛ рдЧрдпрд╛, рдФрд░ рдореБрдЭреЗ рд╕реБрдЦрдж рдЖрд╢реНрдЪрд░реНрдп рд╣реБрдЖ рдХрд┐ рдкреВрд░реНрдг perf report рдЯреВрд▓ рдореЗрдВ рдЕрдЪреНрдЫрд╛ рд╢рд╛рдк рдХреЗ рд╕рд╛рде рдПрдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╣реИред

рдпрд╣рд╛рдБ рд╡рд╣ рд╣реИ рдЬреЛ рдореБрдЭреЗ pbrt рд╕реЗ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдмрддрд╛ рд╕рдХрддрд╛ рд╣реИ:


рдЬрдм рдореИрдВрдиреЗ "рдЕрдЪреНрдЫреЗ рд╢рд╛рдк рдХреЗ рд╕рд╛рде рдЗрдВрдЯрд░рдлрд╝реЗрд╕" рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХреА рддреЛ рдореИрдВ рдордЬрд╛рдХ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рдерд╛ред

рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдзреЗ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рдкрд╛рд░реНрд╕рд┐рдВрдЧ рдпрд╛рдВрддреНрд░рд┐рдХреА рдкрд░ рдЦрд░реНрдЪ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ: yylex() рдмрд╛рдпрд╕рди рджреНрд╡рд╛рд░рд╛ рдЙрддреНрдкрдиреНрди yylex() , рдФрд░ yylex() рдлреНрд▓реЗрдХреНрд╕ рджреНрд╡рд╛рд░рд╛ рдЙрддреНрдкрдиреНрди рд╢рд╛рдмреНрджрд┐рдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ ( yylex() рд╣реИред yylex() рдореЗрдВ рдЖрдзреЗ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп yylex() рдкрд░ рдЦрд░реНрдЪ рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЛ рджреЛрд╣рд░реЗ рдореВрд▓реНрдпреЛрдВ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддрд╛ рд╣реИред рд╣рдо рдЗрд╕ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рддреАрд╕рд░реЗ рд▓реЗрдЦ рддрдХ yylex() yyparse() рдФрд░ yylex() рдкрд░ рд╣рдорд▓реЗ рдХреЛ yyparse() рдХрд░ рджреЗрдВрдЧреЗ, рд▓реЗрдХрд┐рди рдЕрдм рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рдордЭ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд░реЗрдВрдбрд░ рдореЗрдВ рдлреЗрдВрдХрдиреЗ рд╡рд╛рд▓реЗ рдбреЗрдЯрд╛ рдХреА рдорд╛рддреНрд░рд╛ рдХреЛ рдХрдо рдХрд░рдирд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдкрд╛рда рд╕реЗ PLY рддрдХ


рдкрд╛рда рдбреЗрдЯрд╛ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдореЗрдВ рдХрдо рд╕рдордп рдмрд┐рддрд╛рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдбреЗрдЯрд╛ рдХреЛ рдПрдХ рдРрд╕реЗ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП рдЬреЛ рдЕрдзрд┐рдХ рдХреБрд╢рд▓рддрд╛ рд╕реЗ рдкрд╛рд░реНрд╕ рд╣реЛред рдЗрди рджреГрд╢реНрдп рд╡рд┐рд╡рд░рдг рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╕реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ 29 GB рддреНрд░рд┐рдХреЛрдг рдЬрд╛рд▓ рд╣реИрдВ, рдФрд░ pbrt рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА PLY рдкреНрд░рд╛рд░реВрдк рдХреЗ рд▓рд┐рдП рджреЗрд╢реА рд╕рдорд░реНрдерди рд╣реИ, рдЬреЛ рдмрд╣реБрднреБрдЬ рдореЗрд╖реЛрдВ рдХрд╛ рдПрдХ рдкреНрд░рднрд╛рд╡реА рджреНрд╡рд┐рдЖрдзрд╛рд░реА рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ pbrt рдореЗрдВ рдПрдХ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдлреНрд▓реИрдЧ рд╣реЛрддрд╛ рд╣реИ - --toply , рдЬреЛ рджреГрд╢реНрдп рд╡рд┐рд╡рд░рдг рдлрд╝рд╛рдЗрд▓ pbrt рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рддрд╛ рд╣реИ, рд╕рднреА рдкрд╛рдП рдЧрдП рдЯреНрд░рд╛рдпрдВрдЧрд▓ рдореЗрдЬрд╝ рдХреЛ PLY рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдХрдирд╡рд░реНрдЯ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдПрдХ рдирдИ pbrt рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рддрд╛ рд╣реИ рдЬреЛ рдЗрди PLY рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реИред

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

рдореИрдВрдиреЗ рдмрдбрд╝реЗ рдореЗрд╖реЛрдВ рдХреЗ рд▓рд┐рдП PLY рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА *_geometry.pbrt рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдПрдХ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЫреЛрдЯреА рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦреА ред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдпрд╣ рдЙрди рд░рд╛рд╕реНрддреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрдареЛрд░-рдХреЛрдбрд┐рдд рдзрд╛рд░рдгрд╛рдПрдВ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдХрд╣реАрдВ рдФрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдкрд╣рд▓реА рдЧрддрд┐ рдХреЛ рдмрдврд╝рд╛рд╡рд╛


рд╕рднреА рдмрдбрд╝реА рдЬрд╛рд▓рд┐рдпреЛрдВ рдХреЛ PLY рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдбрд┐рд╕реНрдХ рдкрд░ рджреГрд╢реНрдп рд╡рд┐рд╡рд░рдг рдХрд╛ рдЖрдХрд╛рд░ 29 рд╕реЗ рдШрдЯрдХрд░ 22 GB: 16.9 GB pbrt рджреГрд╢реНрдп рдлрд╝рд╛рдЗрд▓реЛрдВ рдФрд░ 5.1 GB PLY рдмрд╛рдЗрдирд░реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рд░реВрдкрд╛рдВрддрд░рдг рдХреЗ рдмрд╛рдж, рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдкрд╣рд▓реЗ рдЪрд░рдг рдХрд╛ рдХреБрд▓ рд╕рдордп рдШрдЯрдХрд░ 27 рдорд┐рдирдЯ 35 рд╕реЗрдХрдВрдб рд╣реЛ рдЧрдпрд╛, рдФрд░ рдмрдЪрдд рдХреА рд░рд╛рд╢рд┐ 7 рдорд┐рдирдЯ 23 рд╕реЗрдХрдВрдб рд╣реЛ рдЧрдИ, рдЕрд░реНрдерд╛рдд, рд╣рдордиреЗ 1.3 рдЧреБрдирд╛ 3 рд╕реЗ рддреНрд╡рд░рд┐рдд рдХрд┐рдпрд╛ред PLY рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдПрдХ pbrt рдкрд╛рда рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рд╕реЗ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХреБрд╢рд▓ рд╣реИ: PLY рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ 40 рд╕реЗрдХрдВрдб рдХреЗ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рд╕рдордп рдмрд┐рддрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ PLY рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд▓рдЧрднрдЧ 130 MB / s рдХреА рдЧрддрд┐ рд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдпрд╛ pbrt рдкрд╛рда рдкреНрд░рд╛рд░реВрдк рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд▓рдЧрднрдЧ 8% рддреЗрдЬрд╝реА рд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ ред

рдпрд╣ рдПрдХ рдЕрдЪреНрдЫреА рдЖрд╕рд╛рди рдЬреАрдд рдереА, рд▓реЗрдХрд┐рди рд╣рдореЗрдВ рдЕрднреА рднреА рдмрд╣реБрдд рдХреБрдЫ рдХрд░рдирд╛ рдерд╛ред

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

рдиреЛрдЯ


  1. рдЕрдм рдЖрдкрдХреЛ рдореЗрд░реА рдУрд░ рд╕реЗ ptex support рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдФрд░ рдкрд┐рдЫрд▓реЗ рд╕рд╛рд▓ pbrt рдХреЛ Disney BSDF рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдиреЗ рдХреА рдкреНрд░реЗрд░рдгрд╛ рдХреА рдмреЗрд╣рддрд░ рд╕рдордЭ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред
  2. рдпрд╣рд╛рдВ рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рдХреЗ рдкрджреЛрдВ рдореЗрдВ рд╣рд░ рд╕рдордп рдбрдмреНрд▓реНрдпреВрдЖрдИрдкреА рд╕рдВрд╕реНрдХрд░рдг (рд╡рд░реНрдХ рдЗрди рдкреНрд░реЛрдЧреНрд░реЗрд╕) рдХреЗ рд▓рд┐рдП рд╕рдВрдХреЗрдд рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдореИрдВрдиреЗ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд░рд┐рд▓реАрдЬ рд╕реЗ рдкрд╣рд▓реЗ рдХрд╛рдо рдХрд┐рдпрд╛ рдерд╛ред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдВрддрд┐рдо рд╕рдВрд╕реНрдХрд░рдг рдереЛрдбрд╝рд╛ рдмрдбрд╝рд╛ рд╣реИред рд╣рдо рдЙрди рдкрд░рд┐рдгрд╛рдореЛрдВ рд╕реЗ рдЪрд┐рдкрдХреЗ рд░рд╣реЗрдВрдЧреЗ рдЬреЛ рдореИрдВрдиреЗ рдореВрд▓ рджреГрд╢реНрдп рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рджрд░реНрдЬ рдХрд┐рдП рдереЗ, рдЗрд╕ рддрдереНрдп рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрд┐ рд╡реЗ рдЕрдВрддрд┐рдо рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рдЕрдиреБрд░реВрдк рдирд╣реАрдВ рд╣реИрдВред рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рдЙрдирд╕реЗ рд╕рдмрдХ рд╕рдорд╛рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
  3. рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЧрддрд┐ рдореЗрдВ рд╡реГрджреНрдзрд┐ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рд╣реИ рдЬреЛ рдЖрдк рдкрд╛рд░реНрд╕рд┐рдВрдЧ рдбреЗрдЯрд╛ рдХреА рдорд╛рддреНрд░рд╛ рдореЗрдВ рд▓рдЧрднрдЧ 50 рдкреНрд░рддрд┐рд╢рдд рдХреА рдХрдореА рдХреЗ рд╕рд╛рде рдЙрдореНрдореАрдж рдХрд░реЗрдВрдЧреЗред рдкреНрд░реЛрдлрд╛рдЗрд▓рд░ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╣рдо рдЬрд┐рддрдирд╛ рд╕рдордп рдмрд┐рддрд╛рддреЗ рд╣реИрдВ рд╡рд╣ рд╣рдорд╛рд░реЗ рд╡рд┐рдЪрд╛рд░ рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рддрд╛ рд╣реИред

Source: https://habr.com/ru/post/hi417407/


All Articles