
рдпрд╣ рдпреВрдирд┐рдЯреА рдПрд╕реЗрдЯ рд╕реНрдЯреЛрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд▓рдЧрдЗрди рд▓рд┐рдЦрдиреЗ рдХреЗ рддрд░реАрдХреЗ рдкрд░ рдПрдХ рдХрд╣рд╛рдиреА рд╣реИ, рдЬреЛ рдЧреЗрдо рдореЗрдВ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЬреНрдЮрд╛рдд рдЖрдЗрд╕реЛрдореЗрдЯреНрд░рд┐рдХ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рджрд░рд╛рд░ рд▓реЗрддреА рд╣реИ, рдФрд░ рдЙрд╕ рд╕реЗ рдереЛрдбрд╝рд╛ рдХреЙрдлреА рдкреИрд╕рд╛ рдХрдорд╛рддреА рд╣реИ, рдФрд░ рдпрд╣ рднреА рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдПрдХреНрд╕рдкреЗрдВрдбреЗрдмрд▓ рдпреВрдирд┐рдЯреА рдПрдбрд┐рдЯрд░ рдХреИрд╕рд╛ рд╣реИред рдЪрд┐рддреНрд░, рдХреЛрдб, рд░реЗрдЦрд╛рдВрдХрди рдФрд░ рд╡рд┐рдЪрд╛рд░ рдЕрдВрджрд░ред
рдкреНрд░рд╕реНрддрд╛рд╡рдирд╛
рддреЛ, рдпрд╣ рдПрдХ рд░рд╛рдд рдереА рдЬрдм рдореБрдЭреЗ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдореБрдЭреЗ рдмрд╣реБрдд рдХреБрдЫ рдирд╣реАрдВ рдорд┐рд▓рд╛ рд╣реИред рдЖрдиреЗ рд╡рд╛рд▓рд╛ рд╡рд░реНрд╖ рдореЗрд░реЗ рдкреЗрд╢реЗрд╡рд░ рдЬреАрд╡рди рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрд╢рд╛рдЬрдирдХ рдирд╣реАрдВ рдерд╛ (рд╡реНрдпрдХреНрддрд┐рдЧрдд рдХреЗ рд╡рд┐рдкрд░реАрдд, рд╣рд╛рд▓рд╛рдВрдХрд┐, рд▓реЗрдХрд┐рди рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдиреЛрдЯреЗрд░ рдХрд╣рд╛рдиреА рд╣реИ)ред рд╡реИрд╕реЗ рднреА, рдореБрдЭреЗ рдпрд╣ рд╡рд┐рдЪрд╛рд░ рдкреБрд░рд╛рдиреЗ рд╕рдордп рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдордЬреЗрджрд╛рд░ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдорд┐рд▓рд╛, рдЬреЛ рдХрд╛рдлреА рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╣реЛрдЧрд╛, рдХреБрдЫ рдЕрдкрдиреЗ рджрдо рдкрд░, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рдереЛрдбрд╝рд╛ рд╡рд╛рдгрд┐рдЬреНрдпрд┐рдХ рд▓рд╛рдн рд╣реЛрдЧрд╛ (рдореБрдЭреЗ рд╕рд┐рд░реНрдл рдЙрддрдирд╛ рд╣реА рдЧрд░реНрдо рд▓рдЧ рд░рд╣рд╛ рд╣реИ рдЬрдм рдЖрдкрдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд┐рд╕реА рдФрд░ рдХреЗ рд▓рд┐рдП рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ, рд╕рд┐рд╡рд╛рдп рдЕрдкрдиреЗ рдирд┐рдпреЛрдХреНрддрд╛ рдХреЗ рд▓рд┐рдП)ред рдФрд░ рдпрд╣ рд╕рдм рдЗрд╕ рддрдереНрдп рдХреЗ рд╕рд╛рде рд╣рд╛рде рд╕реЗ рдЪрд▓рд╛ рдЧрдпрд╛ рдХрд┐ рдореИрдВ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдПрдХрддрд╛ рд╕рдВрдкрд╛рджрдХ рд╡рд┐рд╕реНрддрд╛рд░ рдХреА рд╕рдВрднрд╛рд╡рдирд╛рдУрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдФрд░ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдЗрдВрдЬрди рдХреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЛ рдмреЗрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХреЗ рдордВрдЪ рдореЗрдВ рдХреЛрдИ рдЕрдЪреНрдЫрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВред
рдореИрдВрдиреЗ рдПрд╕реЗрдЯ рд╕реНрдЯреЛрд░ рдХрд╛ рдЕрдзреНрдпрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рджрд┐рди рд╕рдорд░реНрдкрд┐рдд рдХрд┐рдпрд╛: рд╡рд┐рднрд┐рдиреНрди рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдореЙрдбрд▓, рд╕реНрдХреНрд░рд┐рдкреНрдЯ, рдПрдХреАрдХрд░рдгред рдФрд░ рдкрд╣рд▓реЗ рдРрд╕рд╛ рд▓рдЧрддрд╛ рдерд╛ рдХрд┐ рд╕рдм рдХреБрдЫ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд▓рд┐рдЦрд╛ рдФрд░ рдПрдХреАрдХреГрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╡рд┐рднрд┐рдиреНрди рдЧреБрдгрд╡рддреНрддрд╛ рдФрд░ рд╡рд┐рд╕реНрддрд╛рд░ рдХреЗ рд╕реНрддрд░ рдХреЗ рдХрдИ рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ, рдмрд╕ рдХреАрдорддреЛрдВ рдФрд░ рд╕рдорд░реНрдерди рдХреЗ рд░реВрдк рдореЗрдВ рдЬреНрдпрд╛рджрд╛ред рддреЛ рдЕрднреА рдореИрдВрдиреЗ рдЗрд╕реЗ рдиреАрдЪреЗ рд╕рдВрдХреБрдЪрд┐рдд рдХрд░ рджрд┐рдпрд╛ рд╣реИ:
- рдХреЗрд╡рд▓ рдХреЛрдб (рдЖрдЦрд┐рд░рдХрд╛рд░, рдореИрдВ рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рд╣реВрдВ)
- рдХреЗрд╡рд▓ 2 рдбреА (рдЪреВрдВрдХрд┐ рдореИрдВ рд╕рд┐рд░реНрдл 2 рдбреА рд╕реЗ рдкреНрдпрд╛рд░ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдЙрдиреНрд╣реЛрдВрдиреЗ рд╕рд┐рд░реНрдл рдПрдХрддрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдЪреНрдЫрд╛ рдЖрдЙрдЯ-рдСрдл-рдж-рдмреЙрдХреНрд╕ рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ рд╣реИ)
рдФрд░ рддрдм рдореБрдЭреЗ рдпрд╛рдж рдЖрдпрд╛ рдХрд┐ рдореИрдВрдиреЗ рдХрд┐рддрдиреЗ рдХреИрдХреНрдЯрд╕ рдЦрд╛рдП рд╣реИрдВ рдФрд░ рдХрд┐рддрдиреЗ рдЪреВрд╣реЛрдВ рдХреА рдореГрддреНрдпреБ рд╣реЛ рдЪреБрдХреА рд╣реИ рдЬрдм рд╣рдо рдкрд╣рд▓реЗ рдПрдХ рдЖрдЗрд╕реЛрдореЗрдЯреНрд░рд┐рдХ рдЧреЗрдо рдмрдирд╛ рд░рд╣реЗ рдереЗред рдЖрдкрдХреЛ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдирд╣реАрдВ рд╣реЛрдЧрд╛ рдХрд┐ рд╣рдордиреЗ рд╡реНрдпрд╡рд╣рд╛рд░реНрдп рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЛ рдЦреЛрдЬрдиреЗ рдореЗрдВ рдХрд┐рддрдирд╛ рд╕рдордп рдорд╛рд░рд╛ рд╣реИ рдФрд░ рдЗрд╕ рд╕рдорд░реВрдкрддрд╛ рдХреЛ рдЫрд╛рдБрдЯрдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕ рдореЗрдВ рд╣рдордиреЗ рдХрд┐рддрдиреА рдкреНрд░рддрд┐рдпрд╛рдБ рддреЛрдбрд╝реА рд╣реИрдВ рдФрд░ рдЙрд╕реЗ рдЦреАрдВрдЪрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдЕрдкрдиреЗ рд╣рд╛рдереЛрдВ рдХреЛ рдЕрднреА рднреА рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрдШрд░реНрд╖ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдореИрдВрдиреЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХреБрдВрдЬреА рдФрд░ рдирд╣реАрдВ-рддреЛ-рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╢рдмреНрджреЛрдВ рджреНрд╡рд╛рд░рд╛ рдЦреЛрдЬ рдХреА рдФрд░ рдЖрдЗрд╕реЛрдореЗрдЯреНрд░рд┐рдХ рдХрд▓рд╛ рдХреЗ рдПрдХ рд╡рд┐рд╢рд╛рд▓ рдвреЗрд░ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреБрдЫ рднреА рдирд╣реАрдВ рдкрд╛ рд╕рдХрд╛, рдЬрдм рддрдХ рдХрд┐ рдореИрдВрдиреЗ рдЖрдЦрд┐рд░рдХрд╛рд░ рдЦрд░реЛрдВрдЪ рд╕реЗ рдПрдХ рдЖрдЗрд╕реЛрдореЗрдЯреНрд░рд┐рдХ рдкреНрд▓рдЧрдЗрди рдмрдирд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ред
рд▓рдХреНрд╖реНрдп рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛
рдкрд╣рд▓реЗ рдореБрдЭреЗ рдпрд╣ рдмрддрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА рдХрд┐ рдЗрд╕ рдкреНрд▓рдЧрдЗрди рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рд╕рдорд╕реНрдпрд╛рдПрдБ рдереАрдВ рдФрд░ рдЗрд╕реЛрдореЗрдЯреНрд░рд┐рдХ рдЧреЗрдореНрд╕ рдбреЗрд╡рд▓рдкрд░ рдЗрд╕рдХрд╛ рдХреНрдпрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛ред рддреЛ, рд╕рдордорд┐рддреАрдп рд╕рдорд╕реНрдпрд╛рдПрдВ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИрдВ:
- рдЙрдиреНрд╣реЗрдВ рдареАрдХ рд╕реЗ рдЦреАрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд╕реНрддреБрдУрдВ рдХреЛ рджреВрд░ рд╕реЗ рд╕реЙрд░реНрдЯ рдХрд░рдирд╛
- рд╕рдВрдкрд╛рджрдХ рдореЗрдВ рдЖрдЗрд╕реЛрдореЗрдЯреНрд░рд┐рдХ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреЗ рдирд┐рд░реНрдорд╛рдг, рд╕реНрдерд┐рддрд┐ рдФрд░ рд╡рд┐рд╕реНрдерд╛рдкрди рдХреЗ рд▓рд┐рдП рд╡рд┐рд╕реНрддрд╛рд░
рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдкрд╣рд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд╕рд╛рде, рдореИрдВрдиреЗ рдЦреБрдж рдХреЛ рдкрд╣рд▓реЗ рдорд╕реМрджрд╛ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП 2-3 рджрд┐рдиреЛрдВ рдХреА рд╕рдордп рд╕реАрдорд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХреАред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдЖрдк рд╕реНрдердЧрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЖрдк рджреЗрдЦрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдЙрддреНрд╕рд╛рд╣ рдПрдХ рдирд╛рдЬреБрдХ рдЪреАрдЬ рд╣реИ рдФрд░ рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рджрд┐рдиреЛрдВ рдореЗрдВ рдХреБрдЫ рддреИрдпрд╛рд░ рдирд╣реАрдВ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдЗрд╕реЗ рдмрд░реНрдмрд╛рдж рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдореМрдХрд╛ рд╣реИред рдФрд░ рдирдП рд╕рд╛рд▓ рдХреА рдЫреБрдЯреНрдЯрд┐рдпрд╛рдВ рдЗрддрдиреА рд▓рдВрдмреА рдирд╣реАрдВ рд╣реИрдВ рдЬрд┐рддрдиреА рд░реВрд╕ рдореЗрдВ рднреА рд▓рдЧ рд╕рдХрддреА рд╣реИрдВ, рдФрд░ рдореИрдВ рдкрд╣рд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рджрд╕ рджрд┐рдиреЛрдВ рдХреЗ рднреАрддрд░ рдЬрд╛рд░реА рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред
рдЫрдВрдЯрд╛рдИ
рдЗрд╕реЗ рдЫреЛрдЯрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдЗрд╕реЛрдореЗрдЯреНрд░реА 3D рдореЙрдбрд▓ рдХреА рддрд░рд╣ рджрд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП 2 рдбреА рд╕реНрдкреНрд░рд╛рдЗрдЯреНрд╕ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдПрдХ рдкреНрд░рдпрд╛рд╕ рд╣реИред рдмреЗрд╢рдХ, рджрд░реНрдЬрдиреЛрдВ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╣реИред рдореБрдЦреНрдп рдпрд╣ рд╣реИ рдХрд┐ рд╕реНрдкреНрд░рд╛рдЗрдЯреНрд╕ рдХреЛ рдЙрд╕ рдХреНрд░рдо рдореЗрдВ рдХреНрд░рдордмрджреНрдз рдХрд░рдирд╛ рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЖрдкрд╕реА рдЕрддрд┐рд╡реНрдпрд╛рдкрди рд╕реЗ рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдкрд░реЗрд╢рд╛рдирд┐рдпреЛрдВ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рдЦреАрдВрдЪрд╛ рдЬрд╛рддрд╛ рдерд╛ред

рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдкрд░ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рд╣рд░реЗ рд░рдВрдЧ рдХрд╛ рд╕реНрдкреНрд░рд╛рдЗрдЯ рд╣реИ рдЬрд┐рд╕реЗ рдкрд╣рд▓реЗ (2,1) рдЦреАрдВрдЪрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдиреАрд▓рд╛ рд░рдВрдЧ рдЬрд╛рддрд╛ рд╣реИ (1,1)

рдмреНрд▓реВ рд╕реНрдкреНрд░рд╛рдЗрдЯ рдХреЗ рдкрд╣рд▓реЗ рдЦреАрдВрдЪреЗ рдЬрд╛рдиреЗ рдкрд░ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдЧрд▓рдд рдЫрдБрдЯрд╛рдИ рджрд┐рдЦрд╛рддрд╛ рд╣реИ
рдЗрд╕ рд╕рд░рд▓ рдорд╛рдорд▓реЗ рдореЗрдВ рдЫрдБрдЯрд╛рдИ рдРрд╕реА рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реЛрдЧреА, рдФрд░ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╡рд┐рдХрд▓реНрдк рд╣реЛрдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ:
- рд╕реНрдХреНрд░реАрди рдкрд░ Y рдХреА рд╕реНрдерд┐рддрд┐ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЫрдВрдЯрдиреА, рдЬреЛ * (isoX + isoY) 0.5 + isoZ ** рд╣реИ
- рд░реАрдореЛрдЯреЗрд╕реНрдЯ рдЖрдЗрд╕реЛрдореЗрдЯреНрд░рд┐рдХ рдЧреНрд░рд┐рдб рд╕реЗрд▓ рдХреЛ рдмрд╛рдПрдВ рд╕реЗ рджрд╛рдПрдВ, рдКрдкрд░ рд╕реЗ рдиреАрдЪреЗ [(3,3), (2,3), (3,2), (1,3), (2,2), (3) рдореЗрдВ рдЖрд░реЗрдЦрдг рдХрд░реЗрдВред 1), ...]
- рдФрд░ рдЕрдиреНрдп рджрд┐рд▓рдЪрд╕реНрдк рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдк рддрд░реАрдХреЗ рдирд╣реАрдВ рдХреА рдПрдХ рдкреВрд░реА рдЧреБрдЪреНрдЫрд╛
рд╡реЗ рд╕рднреА рдмрд╣реБрдд рдЕрдЪреНрдЫреЗ, рддреЗрдЬрд╝ рдФрд░ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдРрд╕реА рдПрдХрд▓-рдХрдХреНрд╖реАрдп рд╡рд╕реНрддреБрдУрдВ рдпрд╛ рд╕реНрддрдВрднреЛрдВ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЖрдЗрд╕реЛрдЬрд╝ рджрд┐рд╢рд╛ рдореЗрдВ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд╣реИрдВ :) рдЖрдЦрд┐рд░рдХрд╛рд░, рдореБрдЭреЗ рдЕрдзрд┐рдХ рд╕рд╛рдорд╛рдиреНрдп рд╕рдорд╛рдзрд╛рди рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдкреА рдереА рдЬреЛ рдПрдХ рд╕рдордиреНрд╡рдп рдХреА рджрд┐рд╢рд╛ рдореЗрдВ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░реЗрдЧрд╛, рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ "рдмрд╛рдбрд╝" рдЬрд┐рдирдХреА рдмрд┐рд▓реНрдХреБрд▓ рдХреЛрдИ рдЪреМрдбрд╝рд╛рдИ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрд╡рд╢реНрдпрдХ рдКрдВрдЪрд╛рдИ рдХреЗ рд╕рдорд╛рди рджрд┐рд╢рд╛ рдореЗрдВ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд╣реИрдВред

рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд╡рд╕реНрддреБрдУрдВ рдХреЛ 3x1 рдФрд░ 1x3 рдХреЛ "рдмрд╛рдбрд╝" рдХреЗ рд╕рд╛рде 3x0 рдФрд░ 0x3 рдХреЛ рдорд╛рдкрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рджрд┐рдЦрд╛рддрд╛ рд╣реИ
рдФрд░ рдпрд╣реАрдВ рд╕реЗ рд╣рдорд╛рд░реА рдкрд░реЗрд╢рд╛рдирд┐рдпрд╛рдВ рд╢реБрд░реВ рд╣реЛрддреА рд╣реИрдВ рдФрд░ рд╣рдореЗрдВ рдЙрд╕ рдЬрдЧрд╣ рдкрд░ рдЦрдбрд╝рд╛ рдХрд░ рджреЗрддреА рд╣реИрдВ рдЬрд╣рд╛рдВ рд╣рдореЗрдВ рдЖрдЧреЗ рдХрд╛ рд░рд╛рд╕реНрддрд╛ рддрдп рдХрд░рдирд╛ рд╣реЛрддрд╛ рд╣реИ:
"рдПрдХрд▓-рдХреЛрд╢рд┐рдХрд╛ рд╡рд╛рд▓реЗ" рд╡рд╕реНрддреБрдУрдВ рдореЗрдВ "рдорд▓реНрдЯреА-рд╕реЗрд▓" рд╡рд╕реНрддреБрдУрдВ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░реЗрдВ, рдЕрд░реНрдерд╛рддреН рдЗрд╕реЗ рд▓рдВрдмрд╡рдд рд░реВрдк рд╕реЗ рдХрд╛рдЯреЗрдВ рдФрд░ рдлрд┐рд░ рд╕реНрдЯреНрд░рд┐рдк рдЙрднрд░реЗред
рдирдИ рдЫрдБрдЯрд╛рдИ рд╡рд┐рдзрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪреЗрдВ, рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдФрд░ рджрд┐рд▓рдЪрд╕реНрдк
рдореИрдВрдиреЗ рджреВрд╕рд░рд╛ рд╡рд┐рдХрд▓реНрдк рдЪреБрдирд╛, рдХрдЯрд┐рдВрдЧ (рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд), рдФрд░ рддрд░реНрдХ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдореЗрдВ рд╣рд░ рд╡рд╕реНрддреБ рдХреЗ рдореБрд╢реНрдХрд┐рд▓ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдЬрд╛рдиреЗ рдХреА рдХреЛрдИ рд╡рд┐рд╢реЗрд╖ рдЗрдЪреНрдЫрд╛ рдирд╣реАрдВ рдереАред рд░рд┐рдХреЙрд░реНрдб рдХреЗ рд▓рд┐рдП, рдЙрдиреНрд╣реЛрдВрдиреЗ рдлреЙрд▓рдЖрдЙрдЯ 1 рдФрд░ рдлреЙрд▓рдЖрдЙрдЯ 2 рдЬреИрд╕реЗ рдХреБрдЫ рдкреНрд░рд╕рд┐рджреНрдз рдЦреЗрд▓реЛрдВ рдореЗрдВ рдкрд╣рд▓рд╛ рддрд░реАрдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ред рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрди рд╕реНрдЯреНрд░рд┐рдкреНрд╕ рдХреЛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдпрджрд┐ рдЖрдк рдЧреЗрдо рдХреЗ рдбреЗрдЯрд╛ рдореЗрдВ рдЖрддреЗ рд╣реИрдВред
рддреЛ, рджреВрд╕рд░рд╛ рд╡рд┐рдХрд▓реНрдк рдХрд┐рд╕реА рднреА рдЫрдБрдЯрд╛рдИ рдорд╛рдкрджрдВрдб рдХрд╛ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдХреЛрдИ рдкреВрд░реНрд╡-рдкрд░рд┐рдХрд▓рд┐рдд рдореВрд▓реНрдп рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рдЖрдк рд╡рд╕реНрддреБрдУрдВ рдХреЛ рд╕реЙрд░реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрджрд┐ рдЖрдк рдореБрдЭ рдкрд░ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ (рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧ рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдХрднреА рдЖрдЗрд╕реЛрдореЗрдЯреНрд░реА рдХреЗ рд╕рд╛рде рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ), рдХрд╛рдЧрдЬ рдХрд╛ рдПрдХ рдЯреБрдХрдбрд╝рд╛ рд▓реЗрдВ рдФрд░ рдЫреЛрдЯреА рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдорд╛рдкреЗрдВ рдЬреИрд╕реЗ рдХрд┐ 2x8 рдФрд░, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 2x2 ред рдпрджрд┐ рдЖрдк рдХрд┐рд╕реА рддрд░рд╣ рдЗрд╕рдХреА рдЧрд╣рд░рд╛рдИ рдФрд░ рдЫрдВрдЯрд╛рдИ рдХреА рдЧрдгрдирд╛ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рдореВрд▓реНрдп рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рддреЗ рд╣реИрдВ - рдмрд╕ рдПрдХ 8x2 рдСрдмреНрдЬреЗрдХреНрдЯ рдЬреЛрдбрд╝реЗрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖ рд╡рд┐рднрд┐рдиреНрди рдкрджреЛрдВ рдореЗрдВ рд╕реЙрд░реНрдЯ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред
рдЗрд╕рд▓рд┐рдП, рдРрд╕рд╛ рдХреЛрдИ рдореВрд▓реНрдп рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдо рдЕрднреА рднреА рдЙрдирдХреЗ рдмреАрдЪ рдирд┐рд░реНрднрд░рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдореЛрдЯреЗ рддреМрд░ рдкрд░ рдмреЛрд▓рдирд╛, рдЬреЛ рдХрд┐ рдЕрддрд┐рд╡реНрдпрд╛рдкреА рд╣реИ) рдЬреЛ рд╕рд╛рдордпрд┐рдХ рдЫрдВрдЯрд╛рдИ рдХреЗ рд▓рд┐рдП рд╣реИ ред рд╣рдо рдЖрдЗрд╕реЛрдореЗрдЯреНрд░рд┐рдХ рдЕрдХреНрд╖ рдкрд░ рдЖрдЗрд╕реЛрдореЗрдЯреНрд░рд┐рдХ рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рдХреЗ рдЕрдиреБрдорд╛рдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд╕реНрддреБрдУрдВ рдХреА рдирд┐рд░реНрднрд░рддрд╛ рдХреА рдЧрдгрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рд▓рд╛рд▓ рдШрди рдкрд░ рдирд┐рд░реНрднрд░рддрд╛ рд╡рд╛рд▓реЗ рдиреАрд▓реЗ рдШрди рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ

рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рд╣рд░реЗ рдШрди рдХреЛ рдиреАрд▓реЗ рд░рдВрдЧ рдкрд░ рдирд┐рд░реНрднрд░рддрд╛ рджрд┐рдЦрд╛рддрд╛ рд╣реИ
рджреЛ рдЕрдХреНрд╖ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрднрд░рддрд╛ рдирд┐рд░реНрдзрд╛рд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдЫрджреНрдордХреЛрд╢ (Z- рдЕрдХреНрд╖ рдХреЗ рд╕рд╛рде рдПрдХ рд╣реА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ):
bool IsIsoObjectsDepends(IsoObject obj_a, IsoObject obj_b) { var obj_a_max_size = obj_a.position + obj_a.size; return obj_b.position.x < obj_a_max_size.x && obj_b.position.y < obj_a_max_size.y; }
рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд╕рд╛рде рд╣рдо рд╕рднреА рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдмреАрдЪ рдирд┐рд░реНрднрд░рддрд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╣реИрдВ, рдЙрдирдХреЗ рдмреАрдЪ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдкреНрд░рджрд░реНрд╢рди Z рд╕рдордиреНрд╡рдп рдХрд░рддреЗ рд╣реИрдВред рд╡рд┐рдзрд┐ рдХрд╛рдлреА рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рд╣реИ, рдФрд░, рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд, рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЖрдк рдЗрд╕ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХрд╛ рд╡рд┐рд╕реНрддреГрдд рд╡рд┐рд╡рд░рдг рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣рд╛рдБ рдпрд╛ рдпрд╣рд╛рдБ ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд╡реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рдлрд╝реНрд▓реИрд╢ рдЖрдЗрд╕реЛрдореЗрдЯреНрд░рд┐рдХ рд▓рд╛рдЗрдмреНрд░реЗрд░реА ( as3isolib ) рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
рдФрд░ рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреА рд╕рдордп рдЬрдЯрд┐рд▓рддрд╛ рдУ (рдПрди ^ 2) рдХреЛ рдЫреЛрдбрд╝рдХрд░ рд╕рдм рдХреБрдЫ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдерд╛ рдХреНрдпреЛрдВрдХрд┐ рд╣рдордиреЗ рдирд┐рд░реНрднрд░рддрд╛ рдкреИрджрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд░ рд╡рд╕реНрддреБ рдХреА рддреБрд▓рдирд╛ рд╣рд░ рджреВрд╕рд░реЗ рд╕реЗ рдХреА рд╣реИред рдореИрдВрдиреЗ рдмрд╛рдж рдХреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рди рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рд╣реИ, рдХреЗрд╡рд▓ рдЖрд▓рд╕реА рдкреБрди: рдЫрдБрдЯрд╛рдИ рдХреЛ рдЬреЛрдбрд╝рд╛ рд╣реИ рддрд╛рдХрд┐ рдХреБрдЫ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рд╣реЛрдиреЗ рддрдХ рдХреБрдЫ рднреА рдирд╣реАрдВ рдЫрдВрдЯреЗред рдЗрд╕рд▓рд┐рдП рд╣рдо рдЕрдиреБрдХреВрд▓рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рдж рдмрд╛рдд рдХрд░рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред
рд╕рдВрдкрд╛рджрдХ рд╡рд┐рд╕реНрддрд╛рд░
рдЕрдм рд╕реЗ, рдореЗрд░реЗ рдкрд╛рд╕ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд▓рдХреНрд╖реНрдп рдереЗ:
- рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдЫрд╛рдВрдЯрдирд╛ рд╕рдВрдкрд╛рджрдХ рдореЗрдВ рдХрд╛рдо рдХрд░рдирд╛ рдерд╛ (рди рдХреЗрд╡рд▓ рдПрдХ рдЦреЗрд▓ рдореЗрдВ)
- рд╡рд╣рд╛рдБ рдПрдХ рдФрд░ рддрд░рд╣ рдХрд╛ рдЧрд┐рдЬрд╝реНрдореЛрд╕-рдПрд░реЛ (рдЪрд▓рддреА рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд▓рд┐рдП рддреАрд░) рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛
- рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ, рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рд╣реЛрдиреЗ рдкрд░ рдЯрд╛рдЗрд▓реНрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдВрд░реЗрдЦрдг рд╣реЛрдЧрд╛
- рдЯрд╛рдЗрд▓реЛрдВ рдХреЗ рдЖрдХрд╛рд░ рдХреЛ рдЖрдЗрд╕реЛрдореЗрдЯреНрд░рд┐рдХ рд╡рд░реНрд▓реНрдб рдЗрдВрд╕реНрдкреЗрдХреНрдЯрд░ рдореЗрдВ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд▓рд╛рдЧреВ рдФрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛
- AABB рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреЛ рдЙрдирдХреЗ рдЖрдЗрд╕реЛрдореЗрдЯреНрд░рд┐рдХ рдЖрдХрд╛рд░реЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
- рд╡рд╕реНрддреБ рдирд┐рд░реАрдХреНрд╖рдХ рдореЗрдВ рдЖрдЗрд╕реЛрдореЗрдЯреНрд░рд┐рдХ рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рдХрд╛ рдЙрддреНрдкрд╛рджрди, рдЬрд┐рд╕реЗ рдмрджрд▓рдХрд░ рд╣рдо рдЦреЗрд▓ рдХреА рджреБрдирд┐рдпрд╛ рдореЗрдВ рд╡рд╕реНрддреБ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдмрджрд▓ рджреЗрдВрдЧреЗ
рдФрд░ рдЗрди рд╕рднреА рд▓рдХреНрд╖реНрдпреЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдПрдХрддрд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдкрдиреЗ рд╕рдВрдкрд╛рджрдХ рдХреЛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд░реВрдк рд╕реЗ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред рдЖрдк рдСрдмреНрдЬреЗрдХреНрдЯ рдЗрдВрд╕реНрдкреЗрдХреНрдЯрд░ рдореЗрдВ рдирдП рдЯреИрдм, рд╡рд┐рдВрдбреЛ, рдмрдЯрди, рдирдП рдлрд╝реАрд▓реНрдб рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рдпрджрд┐ рдЖрдк рдЪрд╛рд╣реЗрдВ, рддреЛ рдЖрдк рдареАрдХ рдЙрд╕реА рдкреНрд░рдХрд╛рд░ рдХреЗ рдШрдЯрдХ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдиреБрдХреВрд▓рд┐рдд рдирд┐рд░реАрдХреНрд╖рдХ рднреА рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреА рдЖрдкрдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЖрдк рд╕рдВрдкрд╛рджрдХ рдХреА рд╡рд┐рдВрдбреЛ (рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, AABB рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдкрд░) рдореЗрдВ рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА рднреА рдЖрдЙрдЯрдкреБрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреЗ рдорд╛рдирдХ рдЪрд╛рд▓ gizmos рдХреЛ рднреА рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред рд╕рдВрдкрд╛рджрдХ рдХреЗ рдЕрдВрджрд░ рдЫрдВрдЯрдиреА рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рдЗрд╕ рдЬрд╛рджреВ ExecuteInEditMode рдЯреИрдЧ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬреЛ рдХрд┐ рд╕рдВрдкрд╛рджрдХ рдореЛрдб рдореЗрдВ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдШрдЯрдХреЛрдВ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдпрд╛рдиреА рдЗрд╕реЗ рдЙрд╕реА рддрд░рд╣ рдХрд░рдирд╛ рд╣реИ рдЬреИрд╕реЗ рдХрд┐ рдПрдХ рдЧреЗрдо рдореЗрдВред
рдпреЗ рд╕рднреА рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреА рдХрдард┐рдирд╛рдЗрдпреЛрдВ рдФрд░ рддрд░рдХреАрдмреЛрдВ рдХреЗ рдмрд┐рдирд╛ рдХрд┐рдП рдЧрдП рдереЗ, рд▓реЗрдХрд┐рди рдПрдХ рднреА рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рдереА рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рдХреБрдЫ рдШрдВрдЯреЛрдВ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рдмрд┐рддрд╛рдпрд╛ рдерд╛ (Google, рдордВрдЪреЛрдВ рдФрд░ рд╕рдореБрджрд╛рдпреЛрдВ рдиреЗ рдореБрдЭреЗ рд╕рднреА рдореБрджреНрджреЛрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХреАред рдЙрддреНрдкрдиреНрди рд╣реЛрддреА рд╣реИрдВ рдЬреЛ рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рдирд╣реАрдВ рдереАрдВ)ред

рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдЖрдЗрд╕реЛрдореЗрдЯреНрд░рд┐рдХ рджреБрдирд┐рдпрд╛ рдХреЗ рднреАрддрд░ рдЖрдВрджреЛрд▓рди рдХреА рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд▓рд┐рдП рдореЗрд░рд╛ рдЧрд┐рдЬрдореЛрд╕ рджрд┐рдЦрд╛рддрд╛ рд╣реИ
рд░рд┐рд╣рд╛рдИ
рдЗрд╕рд▓рд┐рдП, рдореИрдВрдиреЗ рдкрд╣рд▓рд╛ рд╕рдВрд╕реНрдХрд░рдг рддреИрдпрд╛рд░ рдХрд┐рдпрд╛, рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рд▓рд┐рдпрд╛ред рдореИрдВрдиреЗ рдПрдХ рдЖрдЗрдХрди рднреА рдЖрдХрд░реНрд╖рд┐рдд рдХрд┐рдпрд╛ рдФрд░ рдПрдХ рд╡рд┐рд╡рд░рдг рд▓рд┐рдЦрд╛ред рдпрд╣ рд╕рдордп рд╣реИред рдЗрд╕рд▓рд┐рдП, рдореИрдВ $ 5 рдХрд╛ рдирд╛рдордорд╛рддреНрд░ рдореВрд▓реНрдп рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реВрдВ, рд╕реНрдЯреЛрд░ рдореЗрдВ рдкреНрд▓рдЧрдЗрди рдЕрдкрд▓реЛрдб рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдПрдХрддрд╛ рджреНрд╡рд╛рд░рд╛ рдЕрдиреБрдореЛрджрд┐рдд рд╣реЛрдиреЗ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реВрдВред рдореИрдВ рдЬреНрдпрд╛рджрд╛ рдХреАрдордд рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╕реЛрдЪрддрд╛ рдерд╛, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрднреА рддрдХ рдореЛрдЯреА рдХрдорд╛рдИ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред рдореЗрд░рд╛ рдЙрджреНрджреЗрд╢реНрдп рдпрд╣ рдЬрд╛рдирдирд╛ рдерд╛ рдХрд┐ рдХреНрдпрд╛ рдХреЛрдИ рд╕рд╛рдорд╛рдиреНрдп рдорд╛рдВрдЧ рд╣реИ рдФрд░ рдпрджрд┐ рдпрд╣ рдерд╛, рддреЛ рдореИрдВ рдЗрд╕рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореИрдВ рдХрд┐рд╕реА рднреА рддрд░рд╣ рдХреЗ рдЕрд╡рд╕рд░реЛрдВ рдФрд░ рдкрд░рд┐рд╡рд░реНрдзрди рд╕реЗ рд╡рдВрдЪрд┐рдд рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдЖрдЗрд╕реЛрдореЗрдЯреНрд░рд┐рдХ рдЧреЗрдореНрд╕ рдХреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреА рдорджрдж рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред
5 рдмрд▓реНрдХрд┐ рджрд░реНрджрдирд╛рдХ рджрд┐рдиреЛрдВ рдореЗрдВ (рдореИрдВрдиреЗ рдЙрд╕реА рд╕рдордп рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд╣рд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рд▓рд┐рдЦрдиреЗ рдореЗрдВ рдмрд┐рддрд╛рдпрд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдкрддрд╛ рдерд╛ рдХрд┐ рдореИрдВ рдЬреЛ рдХрд░ рд░рд╣рд╛ рдерд╛, рд╡рд╣ рдЖрдЧреЗ рдХреА рд╕реЛрдЪ рдФрд░ рдЙрдЦрд╛рдбрд╝ рдлреЗрдВрдХрдиреЗ рдХреЗ рдмрд┐рдирд╛ рдерд╛, рдЬрд┐рд╕рдиреЗ рдореБрдЭреЗ рдЙрди рд▓реЛрдЧреЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЙрдЪреНрдЪ рдЧрддрд┐ рдкреНрд░рджрд╛рди рдХреА, рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдЕрднреА-рдЕрднреА рдЖрдЗрд╕реЛрдореЗрдЯреНрд░реА рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛ рдерд╛) рдореБрдЭреЗ рдПрдХрддрд╛ рд╕реЗ рдпрд╣ рдХрд╣рддреЗ рд╣реБрдП рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдорд┐рд▓реА рдХрд┐ рдкреНрд▓рдЧрдЗрди рдХреЛ рдордВрдЬреВрд░реА рджреЗ рджреА рдЧрдИ рдереА рдФрд░ рдореИрдВ рдЗрд╕реЗ рд╕реНрдЯреЛрд░ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рджреЗрдЦ рд╕рдХрддрд╛ рдерд╛, рд╕рд╛рде рд╣реА рд╕рд╛рде рдЗрд╕рдХреА рд╢реВрдиреНрдп (рдЕрдм рддрдХ) рдмрд┐рдХреНрд░реА рднреАред рдЗрд╕рдиреЗ рд╕реНрдерд╛рдиреАрдп рдордВрдЪ рдкрд░ рдЬрд╛рдБрдЪ рдХреА, рд╕реНрдЯреЛрд░ рдореЗрдВ рдкреНрд▓рдЧрдЗрди рдХреЗ рдкреЗрдЬ рдореЗрдВ Google рд╡рд┐рд╢реНрд▓реЗрд╖рд┐рдХреА рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ рдФрд░ рдШрд╛рд╕ рдХреЛ рдмрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрдВрддрдЬрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЦреБрдж рдХреЛ рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ред
рдкрд╣рд▓реА рдмрд┐рдХреНрд░реА рд╕реЗ рдкрд╣рд▓реЗ рдмрд╣реБрдд рд╕рдордп рдирд╣реАрдВ рд▓рдЧрд╛, рдмрд╕ рдордВрдЪ рдФрд░ рд╕реНрдЯреЛрд░ рдкрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдПрдВ рдЖрдИрдВред рдЬрдирд╡рд░реА рдХреЗ рд╢реЗрд╖ рджрд┐рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдореЗрд░реЗ рдкреНрд▓рдЧрдЗрди рдХреА 12 рдкреНрд░рддрд┐рдпрд╛рдВ рдмреЗрдЪреА рдЧрдИ рд╣реИрдВ, рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рдЬрдирддрд╛ рдХреЗ рд╣рд┐рдд рдХрд╛ рд╕рдВрдХреЗрдд рдорд╛рдирд╛ рдФрд░ рдЬрд╛рд░реА рд░рдЦрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред
рдЕрдиреБрдХреВрд▓рди
рдЗрд╕рд▓рд┐рдП, рдореИрдВ рджреЛ рдЪреАрдЬреЛрдВ рд╕реЗ рдирд╛рдЦреБрд╢ рдерд╛:
- рдЫрдБрдЯрд╛рдИ рдХреА рд╕рдордп рдЬрдЯрд┐рд▓рддрд╛ - O (N ^ 2)
- рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╣рдг рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдкрд░реЗрд╢рд╛рдиреА
рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо
100 рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдФрд░ O (N ^ 2) рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг рдореЗрд░реЗ рдкрд╛рд╕ рдирд┐рд░реНрднрд░рддрд╛ рдвреВрдВрдврдиреЗ рдХреЗ рд▓рд┐рдП 10,000 рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпрд╛рдВ рдереАрдВ, рдФрд░ рдпрд╣ рднреА рдХрд┐ рдореБрдЭреЗ рдЙрди рд╕рднреА рдХреЛ рдкрд╛рд╕ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рдбрд┐рд╕реНрдкреНрд▓реЗ Z рдХреЛ рд╕реЙрд░реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЙрд╕рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рдорд╛рдзрд╛рди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛ред рдЗрд╕рд▓рд┐рдП, рдореИрдВрдиреЗ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрдХрд░ рд╕реЛ рдирд╣реАрдВ рд╕рдХрд╛ред рд╡реИрд╕реЗ рднреА, рдореИрдВ рдЖрдкрдХреЛ рдЙрди рд╕рднреА рддрд░реАрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рдмрддрд╛рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдБ рдЬреЛ рдореИрдВрдиреЗ рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдЙрд╕ рдПрдХ рдХрд╛ рд╡рд░реНрдгрди рдХрд░реВрдБрдЧрд╛ рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рдЕрднреА рддрдХ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдкрд╛рдпрд╛ рд╣реИред
рд╕рдмрд╕реЗ рдкрд╣рд▓реА рдмрд╛рдд, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рд╣рдо рдХреЗрд╡рд▓ рджреГрд╢реНрдпрдорд╛рди рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдЫрд╛рдВрдЯрддреЗ рд╣реИрдВред рдЗрд╕рдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╣рдореЗрдВ рд▓рдЧрд╛рддрд╛рд░ рдпрд╣ рдЬрд╛рдирдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рд╢реЙрдЯ рдореЗрдВ рдХреНрдпрд╛ рд╣реИред рдпрджрд┐ рдХреЛрдИ рдирдИ рд╡рд╕реНрддреБ рд╣реИ, рддреЛ рд╣рдореЗрдВ рдЗрд╕реЗ рдЫрдВрдЯрдиреА рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рдкрдбрд╝рд╛, рдФрд░ рдпрджрд┐ рдХреЛрдИ рдкреБрд░рд╛рдирд╛ рд╣реЛ рдЧрдпрд╛ рд╣реИ - рддреЛ рдЗрд╕реЗ рдЕрдирджреЗрдЦрд╛ рдХрд░ рджреЗрдВред рдЕрдм, рдПрдХрддрд╛ рджреГрд╢реНрдп рдкреЗрдбрд╝ рдореЗрдВ рдЕрдкрдиреЗ рдмрдЪреНрдЪреЛрдВ рдХреЗ рд╕рд╛рде рдорд┐рд▓рдХрд░ рд╡рд╕реНрддреБ рдХреА рдмрд╛рдЙрдВрдбрд┐рдВрдЧ рдмреЙрдХреНрд╕ рдХрд╛ рдирд┐рд░реНрдзрд╛рд░рдг рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддреА рд╣реИред рдмрдЪреНрдЪреЛрдВ рдХреЗ рдКрдкрд░ рд╕реЗ рдЧреБрдЬрд░реЗрдВ (рд╣рд░ рдмрд╛рд░, рдЪреВрдВрдХрд┐ рдЙрдиреНрд╣реЗрдВ рдЬреЛрдбрд╝рд╛ рдФрд░ рд╣рдЯрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ) рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ - рдмрд╣реБрдд рдзреАрдорд╛ред рд╣рдо OnBecameV рдЕрджреГрд╢реНрдп рдФрд░ рдЕрдиреНрдп рдШрдЯрдирд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рдХреНрдпреЛрдВрдХрд┐ рдпреЗ рдХреЗрд╡рд▓ рдореВрд▓ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рд╣рдо рд╕рднреА рд░реЗрдВрдбрд░рд░ рдШрдЯрдХреЛрдВ рдХреЛ рдЖрд╡рд╢реНрдпрдХ рд╡рд╕реНрддреБ рдФрд░ рдЙрд╕рдХреЗ рдмрдЪреНрдЪреЛрдВ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдмреЗрд╢рдХ, рдпрд╣ рд╣рдорд╛рд░реЗ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫреЗ рд╡рд┐рдХрд▓реНрдк рдХреА рддрд░рд╣ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдкреНрд░рджрд░реНрд╢рди рджреНрд╡рд╛рд░рд╛ рдПрдХ рдФрд░ рддрд░реАрдХрд╛, рдПрдХ рд╣реА рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рдФрд░ рд╕реНрд╡реАрдХрд╛рд░реНрдп рдирд╣реАрдВ рдорд┐рд▓рд╛ред
List<Renderer> _tmpRenderers = new List<Renderer>(); bool IsIsoObjectVisible(IsoObject iso_object) { iso_object.GetComponentsInChildren<Renderer>(_tmpRenderers); for ( var i = 0; i < _tmpRenderers.Count; ++i ) { if ( _tmpRenderers[i].isVisible ) { return true; } } return false; }
GetCompordsInChildren рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдПрдХ рдЫреЛрдЯреА рд╕реА рдЪрд╛рд▓ рд╣реИ рдЬреЛ рдЖрд╡рд╢реНрдпрдХ рдмрдлрд░ рдореЗрдВ рдЖрд╡рдВрдЯрди рдХреЗ рдмрд┐рдирд╛ рдШрдЯрдХреЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдПрдХ рдФрд░ рдПрдХ рдХреЗ рд╡рд┐рдкрд░реАрдд рдЬреЛ рдШрдЯрдХреЛрдВ рдХреА рдирдИ рд╕рд░рдгреА рд▓реМрдЯрд╛рддрд╛ рд╣реИ
рджреВрд╕рд░реЗ, рдореБрдЭреЗ рдЕрднреА рднреА O (N ^ 2) рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдХрд░рдирд╛ рдерд╛ред рдореИрдВрдиреЗ рдкреНрд░рджрд░реНрд╢рди рдЕрдВрддрд░рд┐рдХреНрд╖ рдореЗрдВ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рджреЛ-рдЖрдпрд╛рдореА рдЧреНрд░рд┐рдб рдкрд░ рд░реБрдХрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдореИрдВрдиреЗ рдЕрдВрддрд░рд┐рдХреНрд╖ рдореЗрдВ рдмрдВрдЯрд╡рд╛рд░реЗ рдХреА рдХрдИ рддрдХрдиреАрдХреЛрдВ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ, рдЬрд╣рд╛рдВ рдореИрдВ рдЕрдкрдиреЗ рд╕рдордорд┐рддреАрдп рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд░рддрд╛ рд╣реВрдВред рдРрд╕реЗ рд╣рд░ рд╕реЗрдХреНрдЯрд░ рдореЗрдВ рдЖрдЗрд╕реЛрдореЗрдЯреНрд░рд┐рдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реЛрддреА рд╣реИ рдЬреЛ рдЗрд╕реЗ рдкрд╛рд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рддреЛ, рдпрд╣ рд╡рд┐рдЪрд╛рд░ рд╕рд░рд▓ рд╣реИ: рдпрджрд┐ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдЕрдиреБрдорд╛рдиреЛрдВ рдХреЛ рдкрд╛рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдмреАрдЪ рдирд┐рд░реНрднрд░рддрд╛ рдмрдирд╛рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред рдлрд┐рд░ рд╣рдо рд╕рднреА рджреГрд╢реНрдпрдорд╛рди рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдкрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдХреЗрд╡рд▓ рдЙрди рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рдирд┐рд░реНрднрд░рддрд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╣реИрдВ рдЬрд╣рд╛рдВ рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреА рд╕рдордп рдЬрдЯрд┐рд▓рддрд╛ рдХрдо рд╣реЛрддреА рд╣реИ рдФрд░ рдкреНрд░рджрд░реНрд╢рди рдмрдврд╝рддрд╛ рд╣реИред рд╣рдо рдкреНрд░рддреНрдпреЗрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рдЖрдХрд╛рд░ рдХреЗ рдмреАрдЪ рдФрд╕рдд рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрдХреНрдЯрд░ рдХреЗ рдЖрдХрд╛рд░ рдХреА рдЧрдгрдирд╛ рдХрд░рддреЗ рд╣реИрдВред рдореБрдЭреЗ рд╕рдВрддреЛрд╖рдЬрдирдХ рд╕реЗ рдЕрдзрд┐рдХ рдкрд░рд┐рдгрд╛рдо рдорд┐рд▓рд╛ред
рдмреЗрд╢рдХ, рдореИрдВ рдЗрд╕ рдкрд░ рдПрдХ рдЕрд▓рдЧ рд▓реЗрдЦ рд▓рд┐рдЦ рд╕рдХрддрд╛ рдерд╛ ... рдареАрдХ рд╣реИ, рдЪрд▓реЛ рдЗрд╕реЗ рдЫреЛрдЯрд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдо рдШрдЯрдХреЛрдВ рдХреЛ рднреБрдирд╛ рд░рд╣реЗ рд╣реИрдВ (рд╣рдо рдЙрдиреНрд╣реЗрдВ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП GetComponent рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рддреЗрдЬ рдирд╣реАрдВ рд╣реИ)ред рдореИрдВ рд╕рднреА рдХреЛ рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рдЕрдкрдбреЗрдЯ рдХреЗ рд╕рд╛рде рдЬреЛ рдХреБрдЫ рднреА рдХрд░рдирд╛ рд╣реИ, рдЙрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рдЖрдк рдЦреБрдж рдХреЛ рджреЗрдЦрддреЗ рд░рд╣реЗрдВред рдЖрдкрдХреЛ рд╣рдореЗрд╢рд╛ рдзреНрдпрд╛рди рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдпрд╣ рд╣рд░ рдлреНрд░реЗрдо рдХреЗ рд▓рд┐рдП рд╣реЛрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рд╛рд╡рдзрд╛рди рд░рд╣рдирд╛ рд╣реЛрдЧрд╛ред рд╕рд╛рде рд╣реА рдХрд╕реНрдЯрдо = рдСрдкрд░реЗрдЯрд░ рдЬреИрд╕реА рд╕рднреА рджрд┐рд▓рдЪрд╕реНрдк рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдпрд╛рдж рд░рдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕реА рдЪреАрдЬреЗрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрдВрдд рдореЗрдВ рдЖрдкрдХреЛ рдЙрдирдореЗрдВ рд╕реЗ рд╣рд░ рдПрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рдЪрд▓ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ рдЕрдВрддрд░реНрдирд┐рд░реНрдорд┐рдд рдкреНрд░реЛрдлрд╛рдЗрд▓рд░ рдореЗрдВ рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рдпрд╛рдж рд░рдЦрдирд╛ рдФрд░ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИ :)
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрдЪрд░рд╛ рдХрд▓реЗрдХреНрдЯрд░ рдХреЗ рджрд░реНрдж рдХреЛ рд╕рдордЭрддреЗ рд╣реИрдВред рдЙрдЪреНрдЪ рдкреНрд░рджрд░реНрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ? рдлрд┐рд░ рдХреБрдЫ рднреА рдпрд╛рдж рд░рдЦреЗрдВ рдЬреЛ рд╕реНрдореГрддрд┐ рдХреЛ рдЖрд╡рдВрдЯрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ C # (рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкреБрд░рд╛рдиреЗ рдореЛрдиреЛ рдХрдВрдкрд╛рдЗрд▓рд░ рдореЗрдВ) рдХреБрдЫ рднреА рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдлрд╝реЙрд░рдЪ рд╕реЗ рд▓реЗрдХрд░ (!) рдЙрднрд░рддреЗ рд╣реБрдП рд▓реИрдВрдмрдбрд╛рд╕ рддрдХ, рдХреЗрд╡рд▓ LINQ рдЬреЛ рдЕрдм рдЖрдкрдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рд╕рд░рд▓ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рднреА рдирд┐рд╖рд┐рджреНрдз рд╣реИред рдЕрдВрдд рдореЗрдВ рд╕реА # рдХреЗ рдмрдЬрд╛рдп рдЗрд╕рдХреА рд╕рд┐рдиреНрдЧрдиреЗрдЯрд┐рдХ рд╢реБрдЧрд░ рдХреЗ рд╕рд╛рде рдЖрдкрдХреЛ рд╣рд╛рд╕реНрдпрд╛рд╕реНрдкрдж рдХреНрд╖рдорддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕реА рдХреА рдЭрд▓рдХ рдорд┐рд▓рддреА рд╣реИред
рдпрд╣рд╛рдБ рдореИрдВ рдЖрдкрдХреЛ рдЙрдкрдпреЛрдЧреА рд╡рд┐рд╖рдп рдкрд░ рдХреБрдЫ рд▓рд┐рдВрдХ рджреЗрдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдБ:
рдкрд╛рд░реНрдЯ 1 , рдкрд╛рд░реНрдЯ 2 , рдкрд╛рд░реНрдЯ 3 ред
рдкрд░рд┐рдгрд╛рдо
рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдХрднреА рднреА рдЗрд╕ рдЕрдиреБрдХреВрд▓рди рддрдХрдиреАрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдирд╣реАрдВ рдЬрд╛рдирд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдкрд░рд┐рдгрд╛рдо рджреЗрдЦрдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реБрдИред рдФрд░ рдЕрдЧрд░ рдкрд╣рд▓реЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рдЗрд╕реЗ рдЧреЗрдо рдХреЗ рд▓рд┐рдП рд╢рдмреНрджрд╢рдГ 50 рдЪрд▓рддреА рд╡рд╕реНрддреБрдУрдВ рдореЗрдВ рд▓реЗ рдЬрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ рд╕реНрд▓рд╛рдЗрдб рд╢реЛ рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрдм рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдЬрдм рднреА рдПрдХ рдлреНрд░реЗрдо рдореЗрдВ 800 рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реЛрддреЗ рд╣реИрдВ: рд╢реАрд░реНрд╖ рдЧрддрд┐ рдкрд░ рд╕рдм рдХреБрдЫ рдХрддрд╛рдИ рдФрд░ рдмрд╕ рдХреЗ рд▓рд┐рдП рдлрд┐рд░ рд╕реЗ рдЫрдВрдЯрдиреА 3-6 рдПрдордПрд╕ рдЬреЛ рдХрд┐ рдЗрд╕реЛрдореЗрдЯреНрд░реА рдореЗрдВ рд╡рд╕реНрддреБрдУрдВ рдХреА рдЗрд╕ рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрд░рдВрднреАрдХрд░рдг рдХреЗ рдмрд╛рдж рдпрд╣ рд▓рдЧрднрдЧ рдХрд┐рд╕реА рдлреНрд░реЗрдо рдХреЗ рд▓рд┐рдП рдореЗрдореЛрд░реА рдЖрд╡рдВрдЯрд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ :)
рдЖрдЧреЗ рдХреЗ рдЕрд╡рд╕рд░
рдЬрдм рдореИрдВрдиреЗ рдлреАрдбрдмреИрдХ рдФрд░ рд╕реБрдЭрд╛рд╡ рдкрдврд╝реЗ, рддрдм рдХреБрдЫ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рдереАрдВ, рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВрдиреЗ рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдерд╛ред
2 рдбреА / 3 рдбреА рдорд┐рд╢реНрд░рдг
рдЖрдЗрд╕реЛрдореЗрдЯреНрд░рд┐рдХ рдЧреЗрдореНрд╕ рдореЗрдВ 2 рдбреА рдФрд░ 3 рдбреА рдХрд╛ рдорд┐рд╢реНрд░рдг рдЕрд▓рдЧ-рдЕрд▓рдЧ рдореВрд╡рдореЗрдВрдЯ рдФрд░ рд░реЛрдЯреЗрд╢рди рдСрдкреНрд╢рдВрд╕ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдирд┐рдореЗрдЯреЗрдб рдХреИрд░реЗрдХреНрдЯрд░ рдХреЗ 3 рдбреА рдореЙрдбрд▓) рдХреА рдбреНрд░рд╛рдЗрдВрдЧ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рд╡рд╛рд▓рд╛ рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рдЕрд╡рд╕рд░ рд╣реИред рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореБрд╢реНрдХрд┐рд▓ рдХрд╛рдо рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЫрдБрдЯрд╛рдИ рдкреНрд░рдгрд╛рд▓реА рдХреЗ рднреАрддрд░ рдПрдХреАрдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЖрдкрдХреЛ рдмрд╕ рдЕрдкрдиреЗ рд╕рднреА рдмрдЪреНрдЪреЛрдВ рдХреЗ рд╕рд╛рде рдореЙрдбрд▓ рдХрд╛ рдПрдХ рдмрд╛рдЙрдВрдбрд┐рдВрдЧ рдмреЙрдХреНрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдмреЙрдХреНрд╕ рдХреА рдЪреМрдбрд╝рд╛рдИ рд╕реЗ рдореЙрдбрд▓ рдХреЛ рдбрд┐рд╕реНрдкреНрд▓реЗ рдЬреЗрдб рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ рд╣реИред
Bounds IsoObject3DBounds(IsoObject iso_object) { var bounds = new Bounds(); iso_object.GetComponentsInChildren<Renderer>(_tmpRenderers); if ( _tmpRenderers.Count > 0 ) { bounds = _tmpRenderers[0].bounds; for ( var i = 1; i < _tmpRenderers.Count; ++i ) { bounds.Encapsulate(_tmpRenderers[i].bounds); } } return bounds; }
рдпрд╣ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдХрд┐ рдЖрдк рдЕрдкрдиреЗ рд╕рднреА рдмрдЪреНрдЪреЛрдВ рдХреЗ рд╕рд╛рде рдореЙрдбрд▓ рдХрд╛ рдмрд╛рдЙрдВрдбрд┐рдВрдЧ рдмреЙрдХреНрд╕ рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

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

рднреМрддрд┐рдХ рд╡рд┐рдЬреНрдЮрд╛рди
рдФрд░ рдпрд╣рд╛рдБ рдпрд╣ рдЕрдзрд┐рдХ рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдЪреВрдВрдХрд┐ рдЖрдЗрд╕реЛрдореЗрдЯреНрд░реА 3 рдбреА рджреБрдирд┐рдпрд╛ рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рддреА рд╣реИ, рднреМрддрд┐рдХреА рдХреЛ рддреНрд░рд┐-рдЖрдпрд╛рдореА рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╡рд╣ рднреА рдКрдВрдЪрд╛рдИ рдФрд░ рд╕рдм рдХреБрдЫ рдХреЗ рд╕рд╛рдеред рдореИрдВ рдЗрд╕ рдЖрдХрд░реНрд╖рдХ рдЪрд╛рд▓ рдХреЗ рд╕рд╛рде рдЖрдпрд╛ред рдореИрдВ рднреМрддрд┐рдХ рд╡рд┐рдЬреНрдЮрд╛рди рдХреЗ рд╕рднреА рдШрдЯрдХреЛрдВ, рдЬреИрд╕реЗ рдХрд┐ Rigidbody , Collider рдФрд░ рдЗрддрдиреЗ рдкрд░, рд╕рдордорд┐рддреАрдп рджреБрдирд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рджреЛрд╣рд░рд╛рддрд╛ рд╣реВрдВ ред рдЗрди рд╡рд┐рд╡рд░рдгреЛрдВ рдФрд░ рд╕реЗрдЯрдЕрдкреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдореИрдВ рд╕реНрд╡рдпрдВ рдЗрдВрдЬрди рдФрд░ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд PhysX рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрджреГрд╢реНрдп рднреМрддрд┐рдХ рддреНрд░рд┐-рдЖрдпрд╛рдореА рджреБрдирд┐рдпрд╛ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рддрд╛ рд╣реВрдВред рдЙрд╕рдХреЗ рдмрд╛рдж рдореИрдВ рдЧрдгрдирд╛ рдХрд┐рдП рдЧрдП рд╕рд┐рдореБрд▓реЗрд╢рди рдбреЗрдЯрд╛ рд▓реЗрддрд╛ рд╣реВрдВ рдФрд░ рдЖрдЗрд╕реЛрдореЗрдЯреНрд░рд┐рдХ рджреБрдирд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдШрдЯрдХреЛрдВ рдХреЛ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХрд░рддрд╛ рд╣реВрдВред рдлрд┐рд░ рдореИрдВ рдмрдореНрдкрд┐рдВрдЧ рдФрд░ рдЯреНрд░рд┐рдЧрд░ рдШрдЯрдирд╛рдУрдВ рдХреЛ рдЕрдиреБрдХрд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рдРрд╕рд╛ рд╣реА рдХрд░рддрд╛ рд╣реВрдВред

рдЯреВрд▓рд╕реЗрдЯ рднреМрддрд┐рдХ рдбреЗрдореЛ GIF
рдЙрдкрд╕рдВрд╣рд╛рд░ рдФрд░ рдирд┐рд╖реНрдХрд░реНрд╖
рдордВрдЪ рд╕реЗ рд╕рднреА рд╕реБрдЭрд╛рд╡реЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВрдиреЗ рдХреАрдордд 40 рдбреЙрд▓рд░ рддрдХ рдмрдврд╝рд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдХреЛрдб рдХреА рдкрд╛рдВрдЪ рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рд╕рд╛рде рд╕рд┐рд░реНрдл рдПрдХ рдФрд░ рд╕рд╕реНрддреЗ рдкреНрд▓рдЧрдЗрди рдХреА рддрд░рд╣ рдирд╣реАрдВ рд▓рдЧреЗрдЧрд╛ :) рдореБрдЭреЗ рд╕рд╡рд╛рд▓реЛрдВ рдХреЗ рдЬрд╡рд╛рдм рджреЗрдиреЗ рдореЗрдВ рдмрд╣реБрдд рдЦреБрд╢реА рд╣реЛрдЧреА рдЕрдкрдиреА рд╕рд▓рд╛рд╣ рд╕реБрдиреЛред рдЪреВрдВрдХрд┐ рдпрд╣ рдкрд╣рд▓реА рдмрд╛рд░ рд╣реИ рдЬрдм рдореИрдВ рд╣реЗрдмрд░ рдкрд░ рдХреБрдЫ рд▓рд┐рдЦ рд░рд╣рд╛ рд╣реВрдВ, рдореИрдВ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреА рдЖрд▓реЛрдЪрдирд╛ рдХрд╛ рд╕реНрд╡рд╛рдЧрдд рдХрд░рддрд╛ рд╣реВрдВ, рдзрдиреНрдпрд╡рд╛рдж! рдФрд░ рдЕрдм, рдХреБрдЫ рдореИрдВ рдкрд┐рдЫрд▓реЗ рдорд╣реАрдиреЗ рдХреЗ рд▓рд┐рдП рдмрдЪрд╛ рд░рд╣рд╛ рдерд╛, рдмрд┐рдХреНрд░реА рдХреЗ рдорд╣реАрдиреЗ рдХреЗ рдЖрдБрдХрдбрд╝реЗ:
рдорд╛рд╣ | 5 $ | 40 $ |
---|
рдЬрдирд╡рд░реА | 12 | 0 |
рдлрд░рд╡рд░реА | 22 | 0 |
рдорд╛рд░реНрдЪ | 17 | 0 |
рдЕрдкреНрд░реИрд▓ | 9 | 0 |
рдордИ | 9 | 0 |
рдЬреВрди | 9 | 0 |
рдЬреБрд▓рд╛рдИ | 7 | 4 |
рдЕрдЧрд╕реНрдд | 0 | 4 |
рд╕рд┐рддрдВрдмрд░ | 0 | 5 |
рдпреВрдирд┐рдЯреА рдПрд╕реЗрдЯ рд╕реНрдЯреЛрд░ рдкреЗрдЬ рд▓рд┐рдВрдХ: рдЖрдЗрд╕реЛрдореЗрдЯреНрд░рд┐рдХ 2.5 рдбреА рдЯреВрд▓рд╕реЗрдЯ