рдЕрд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЗрдВрдЬрди 4 - рдкреЛрд╕реНрдЯрдкреНрд░реЛрд╕реЗрд╕ рд╕реНрдХреИрди рдкреНрд░рднрд╛рд╡



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

рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛рдКрдВрдЧрд╛ рдХрд┐ рдЗрд╕ рдкреНрд░рднрд╛рд╡ рдХреЛ UE4 рдкрд░ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдПред рдРрд╕реЗ рдХрдИ рддрд░реАрдХреЗ рд╣реИрдВ рдЬрд┐рдирд╕реЗ рдЖрдк рдЗрд╕ рдкреНрд░рднрд╛рд╡ рдХреЛ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЗрдирдореЗрдВ рд╕реЗ рдПрдХ рддрд░реАрдХрд╛ рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдЪреБрдирд╛ рдЧрдпрд╛ рдерд╛ред

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

рдореБрдЦреНрдп рдШрдЯрдХ


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

рдЗрд╕ рдкреНрд░рднрд╛рд╡ рдореЗрдВ 3 рдореБрдЦреНрдп рдШрдЯрдХ рд╣реЛрддреЗ рд╣реИрдВ:

  • рд╕реНрдлреАрдпрд░рдорд╛рд╕реНрдХ рд╕реНрдХреЗрд▓реЗрдмрд▓ рдлрд╝реАрд▓реНрдб
  • рд╕реЛрдмреЗрд▓-рдПрдЬ рдлрд╝рдВрдХреНрд╢рди (рдореИрдВ рдпрд╣ рдирд╣реАрдВ рдмрддрд╛рдКрдВрдЧрд╛ рдХрд┐ рдпрд╣ рдлрд╝рдВрдХреНрд╢рди рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рдЕрд▓рдЧ рд╡рд┐рд╖рдп рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдЙрд╕ рдХреЛрдб рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░реВрдВрдЧрд╛ рдЬреЛ рдореИрдВрдиреЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдерд╛)
  • рд╡рд┐рд╢реНрд╡ рдЧреНрд░рд┐рдб рдкрд░ рдЕрдиреБрдорд╛рдирд┐рдд рдмрдирд╛рд╡рдЯ рдХреЛ рдУрд╡рд░рд▓реЗ рдХрд░реЗрдВ

рд╕реНрдлреАрдпрд░рдорд╛рд╕реНрдХ рд╕реНрдХреЗрд▓реЗрдмрд▓ рдлрд╝реАрд▓реНрдб


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



рдХреНрд▓реИрдВрдк рдиреЛрдб рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдЕрдкрдиреА рд╕рд╛рдордЧреНрд░реА рдХреЗ рдЙрддреНрд╕рд░реНрдЬрдХ рдЖрдЙрдЯрдкреБрдЯ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ рдФрд░ рдЖрдк рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджреЗрдЦреЗрдВрдЧреЗ



"рдЯреЗрдХреНрд╕рд▓реЛрдХ" рд╡реЗрдХреНрдЯрд░ 3 рд╣реИ , рдЬреЛ рдХрд┐ рдЧреЛрд▓реЗ рдХреЗ рд╕реНрд░реЛрдд рдХреЗ рд╕реНрдерд╛рди рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЗрд╕реЗ рд╕рд╛рдордЧреНрд░реА рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдПрдХ рд╕реЗрдЯ рд╕реЗ рдкрдврд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ, рддрд╛рдХрд┐ рдЗрд╕реЗ рдЦреЗрд▓ рд╕реЗ рднреА рдкрдврд╝рд╛ рдЬрд╛ рд╕рдХреЗ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЦрд┐рд▓рд╛рдбрд╝реА рдХреА рд╕реНрдерд┐рддрд┐ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред

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

рдЕрдм рд╣рдо рдПрдХ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╕рдордп рдЕрдВрддрд░рд╛рд▓ рдХреЗ рд╕рд╛рде рдЧреЛрд▓реЗ рдХреЛ рд╕реНрдХреЗрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред



рдпрд╣ рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрд░рд┐рдгрд╛рдо рджреЗрдЧрд╛



рдлрд╝реНрд░реЗрдХ (рд╕рдордп) рдореВрд▓ рд░реВрдк рд╕реЗ рд╣рдореЗрдВ рдПрдХ рдирд┐рд░рдВрддрд░ рдЕрд╡рдзрд┐ рджреЗрддрд╛ рд╣реИ рдЬреЛ 0-1.0-1.0-1 рддрдХ рдЬрд╛рд░реА рд╣реИред рд╣рдо рд╕реНрдХреЗрд▓рд┐рдВрдЧ рдХреА рдЧрддрд┐ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордп 0.25 рд╕реЗ рдЧреБрдгрд╛ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдХреНрд╖реЗрддреНрд░ рдХреЗ рддреНрд░рд┐рдЬреНрдпрд╛ рд╕реЗ рдЧреБрдгрд╛ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ 0 рд╕реЗ 1024 рддрдХ рддреНрд░рд┐рдЬреНрдпрд╛ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рддрд╛ рд╣реИ, рдФрд░ рд╣рдореЗрдВ рдПрдХ рдПрдирд┐рдореЗрдЯреЗрдб рдореБрдЦреМрдЯрд╛ рджреЗрддрд╛ рд╣реИред

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



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



Edge_Mask рдмреНрд▓реЙрдХ рдореЗрдВ рдЧрдгрд┐рддреАрдп рдХрд╛рд░реНрдп рдореВрд▓ рд░реВрдк рд╕реЗ рдЧреНрд░реЗрдбрд┐рдПрдВрдЯ рдорд╛рд╕реНрдХ рдореЗрдВ рд╕реНрдерд┐рддрд┐ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдорд╛рди 0.5 рд╣реИ, рдФрд░ рджрд┐рдП рдЧрдП рдЪреМрдбрд╝рд╛рдИ рдХреЗ рд╕рд╛рде рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рд╕реЗ рдореБрдЦреМрдЯрд╛ рдХреЗ рдХрд┐рдирд╛рд░реЗ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рд╣рдореЗрдВ рдПрдХ рдЕрдВрдЧреВрдареА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдореИрдВ рдореБрдЦреМрдЯрд╛ рдХреЗ рдХрд┐рдирд╛рд░реЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рддрдХрдиреАрдХреА рд╡рд┐рд╡рд░рдг рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдКрдВрдЧрд╛, рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдореИрдВ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрджреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рдмрд╛рдд рдХрд░реВрдВрдЧрд╛ред

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

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

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

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



рдкрд░рд┐рдгрд╛рдо рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рджрд┐рдЦреЗрдЧрд╛



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

рд╕реЛрдмреЗрд▓-рдПрдЬ рдлрдВрдХреНрд╢рди


рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдХреБрдЫ рджреВрд╕рд░реЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рдЕрдиреБрдХреВрд▓рд┐рдд рд╣реИрдВ, рдореИрдВ рдЗрд╕рдХреЗ рд╕рд╛рд░ рдХреЛ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рдЕрд▓рдЧ рд╡рд┐рд╖рдп рд╣реИ, рд▓реЗрдХрд┐рди рдХреАрд╡рд░реНрдб "рд╕реЛрдмреЗрд▓ рдПрдЬ" рдпрд╛ "рд╕реЛрдмреЗрд▓ рдСрдкрд░реЗрдЯрд░" рдХреЗ рд╕рд╛рде рдПрдХ рдирд┐рдпрдорд┐рдд Google рдЦреЛрдЬ рдХрдИ рд╡рд┐рдХрд▓реНрдк рджреЗрдЧрд╛ред ред рдпрд╛ Gepard_vvk рд╕реЗ рд╣рдм рдкрд░ рд▓реЗрдЦ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ - рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рдЖрдХреГрддрд┐ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрд▓реНрдЧреЛрд░рд┐рджрдо ред

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

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

void mainImage( out vec4 fragColor, in vec2 fragCoord ) { vec2 uv = fragCoord.xy / iResolution.xy; vec3 TL = texture(iChannel0, uv + vec2(-1, 1)/ iResolution.xy).rgb; vec3 TM = texture(iChannel0, uv + vec2(0, 1)/ iResolution.xy).rgb; vec3 TR = texture(iChannel0, uv + vec2(1, 1)/ iResolution.xy).rgb; vec3 ML = texture(iChannel0, uv + vec2(-1, 0)/ iResolution.xy).rgb; vec3 MR = texture(iChannel0, uv + vec2(1, 0)/ iResolution.xy).rgb; vec3 BL = texture(iChannel0, uv + vec2(-1, -1)/ iResolution.xy).rgb; vec3 BM = texture(iChannel0, uv + vec2(0, -1)/ iResolution.xy).rgb; vec3 BR = texture(iChannel0, uv + vec2(1, -1)/ iResolution.xy).rgb; vec3 GradX = -TL + TR - 2.0 * ML + 2.0 * MR - BL + BR; vec3 GradY = TL + 2.0 * TM + TR - BL - 2.0 * BM - BR; fragColor.r = length(vec2(GradX.r, GradY.r)); fragColor.g = length(vec2(GradX.g, GradY.g)); fragColor.b = length(vec2(GradX.b, GradY.b)); } 


UE4 рдореЗрдВ, рдпрд╣ рдРрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ



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



рджреЛ рдХрд╕реНрдЯрдо рдиреЛрдбреНрд╕ рдЧреНрд░реИрдбрдПрдХреНрд╕ рдФрд░ рдЧреНрд░реИрдбреА , рдЙрдиреНрд╣реЗрдВ рдПрдХ рд╕рдорд╛рди рддрд░реАрдХреЗ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ



рдЧреНрд░реИрдбрдПрдХреНрд╕ :

 return -TL + TR - 2.0 * ML + 2.0 * MR - BL + BR; 

рдЧреНрд░реЗрдб :

 return TL + 2.0 * TM + TR - BL - 2.0 * BM - BR; 

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

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



рд╣рдо рдХрд┐рд╕реА рднреА рд░рдВрдЧ рдХреЗ рдХрд┐рдирд╛рд░реЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдпрдорд┐рдд рд╡реЗрдХреНрдЯрд░ 3 рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдЧреБрдгрд╛ рдХрд░рддреЗ рд╣реИрдВред



рдирддреАрдЬрддрди, рдХрд┐рдирд╛рд░реЗ рдХрд╛ рд░рдВрдЧ рдмрджрд▓ рдЬрд╛рддрд╛ рд╣реИред



рдЧреНрд░рд┐рдб рдмрдирд╛рд╡рдЯ рдУрд╡рд░рд▓реЗ рджреБрдирд┐рдпрд╛


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



рдпрджрд┐ рдЖрдк рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдЙрддреНрд╕рд░реНрдЬрдХ рдЖрдЙрдЯрдкреБрдЯ рд╕реЗ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рджреЗрдЦреЗрдВрдЧреЗ



рдпрд╣ рд╕рдм рдПрдХ рд╕рд╛рде рд░рдЦрдирд╛


рдЕрдм рд╣рдо рдЕрдкрдиреЗ рдкреЛрд╕реНрдЯ рдЗрдлреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рд╕рднреА рддреАрди рднрд╛рдЧреЛрдВ рдХреЛ рдПрдХ рд╕рд╛рде рд░рдЦреЗрдВрдЧреЗ!

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдо рд╕реЛрдмреЗрд▓-рдПрдЬ рдФрд░ рд╡рд┐рд╢реНрд╡-рд╕рдВрд░реЗрдЦрд┐рдд-рдЧреНрд░рд┐рдб рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рдПрдХ рд╕рд╛рде рд░рдЦрддреЗ рд╣реИрдВ



рдлрд┐рд░ рд╣рдо рдПрдХ рд╕реАрдирдЯреЗрдХреНрд╕реНрдЪрд░ рдиреЛрдб рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рдкрд░рд┐рдгрд╛рдо рдХреЛ рд╕реЛрдмреЗрд▓-рдПрдЬ рдФрд░ рд╡рд┐рд╢реНрд╡-рд╕рдВрд░реЗрдЦрд┐рдд-рдЧреНрд░рд┐рдб рд╕реЗ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред

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



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



рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдпрд╣ рдЬрд╛рдирдХрд╛рд░реА рдЙрдкрдпреЛрдЧреА рд▓рдЧреА, рд╕рднреА рдХреЛ рд╢реБрднрдХрд╛рдордирд╛рдПрдБ :)

рдЗрд╕ shader рдХреЗ рд╕рд╛рде рдПрдХ рдЙрджрд╛рд╣рд░рдг рдкрд░рд┐рдпреЛрдЬрдирд╛ github рдкрд░ рдкрд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИред

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


All Articles