рдкреЗрд░рд▓рд┐рди рд╢реЛрд░ рдХреНрдпрд╛ рд╣реИ?
рдкреЗрд░рд▓рд┐рди рдХреЗ рд╢реЛрд░ рдХрд╛ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ 1983 рдореЗрдВ рдХреЗрди рдкреЗрд░рд▓рд┐рди (рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдЗрд╕ рдЙрдкрд▓рдмреНрдзрд┐ рдХреЗ рд▓рд┐рдП рдЕрдореЗрд░рд┐рдХрди рдПрдХреЗрдбрдореА рдСрдл рдореЛрд╢рди рдкрд┐рдХреНрдЪрд░ рдЖрд░реНрдЯреНрд╕ рдПрдВрдб рд╕рд╛рдЗрдВрд╕реЗрдЬ рд╕реЗ рдПрдХ рдкреБрд░рд╕реНрдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдерд╛) рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЖрдк рджреЗрдЦрддреЗ рд╣реИрдВ, рдЙрди рджрд┐рдиреЛрдВ рд╣рд░ рдХреЛрдИ рдлреЛрдЯреЛрд░рд┐рдЕрд▓рд┐рдЬрд╝реНрдо рдХреЗ рд▓рд┐рдП рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣рд╛ рдерд╛, рд▓реЗрдХрд┐рди рдпрд╣ рд╣рдореЗрд╢рд╛ рдХрдореА рдереАред рдХреЗрди рдкреЗрд░реНрд▓рд┐рди рдиреЗ 3 рдбреА рдореЙрдбрд▓реЛрдВ рдХреЗ рджрдпрдиреАрдп "рдХрдВрдкреНрдпреВрдЯрд░" рдЙрдкрд╕реНрдерд┐рддрд┐ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рд╢реЛрд░ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХрд╛ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдХрд┐рдпрд╛ред рдХрдВрдкреНрдпреВрдЯрд░ рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдореЗрдВ рд╢реЛрд░ рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдЬрдирд░реЗрдЯрд░ рд╣реИред рдпрд╣ рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ, рдЕрд╕рдВрд░рдЪрд┐рдд рдкреИрдЯрд░реНрди рд╣реИ, рдФрд░ рдпрд╣ рддрдм рдЙрдкрдпреЛрдЧреА рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдЖрдкрдХреЛ рд╕реНрдкрд╖реНрдЯ рд╕рдВрд░рдЪрдирд╛
1 рдХреА рдХрдореА рд╡рд╛рд▓реЗ рд╡рд┐рд╕реНрддреГрдд рднрд╛рдЧреЛрдВ рдХреЗ рд╕реНрд░реЛрдд рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдкрд░реНрд▓рд┐рди рд╢реЛрд░ рдПрдХ рдмрд╣реБрдЖрдпрд╛рдореА рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдкреНрд░рдХреНрд░рд┐рдпрд╛рддреНрдордХ рдкреАрдврд╝реА, рдмрдирд╛рд╡рдЯ, рдЗрд▓рд╛рдХреЗ рдХреА рдкреАрдврд╝реА, рдорд╛рдирдЪрд┐рддреНрд░ рдкреАрдврд╝реА, рд╕рддрд╣ рдкреАрдврд╝реА, рд╢реАрд░реНрд╖ рдкреАрдврд╝реА, рдФрд░ рдЗрд╕реА рддрд░рд╣ рдЖрдЧреЗ рдФрд░ рдЖрдЧреЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдиреАрдЪреЗ рджреА рдЧрдИ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдкрд░реНрд▓рд┐рди рд╢реЛрд░ рдХреА рдХреНрд╖рдорддрд╛рдУрдВ рдХреА рд╕реАрдорд╛ рджрд░реНрд╢рд╛рдИ рдЧрдИ рд╣реИ:
рдЖрдпрд╛рдореА рд╕реНрд╡рд░реВрдк | рдХрдЪреНрдЪрд╛ рд╢реЛрд░ (рдЧреНрд░реЗрд╕реНрдХреЗрд▓) | рдЖрд╡реЗрджрди |
1 | | рд╣рд╛рде рд╕реЗ рдЦреАрдВрдЪреА рд╣реБрдИ рд╡реЗрдХреНрдЯрд░ рд╡рд╕реНрддреБрдПрдВ
|
2 | | рдкреНрд░рдХреНрд░рд┐рдпрд╛рддреНрдордХ рдмрдирд╛рд╡рдЯ рдФрд░ рдЬреНрд╡рд╛рд▓рд╛ рдЬреИрд╕реА рд╡рд╕реНрддреБрдПрдВ |
3 | | рдорд╛рдЗрдирдХреНрд░рд╛рдлреНрдЯ рд░рд╛рд╣рдд рдореЗрдВ рдкреНрд░рдпреБрдХреНрдд рдкреЗрд░рд▓рд┐рди рд╢реЛрд░ |
рдкреЗрд░реНрд▓рд┐рди рдиреЗ рд╢реЛрд░ рдХреА рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрд░рд┐рднрд╛рд╖рд╛ рджреА: рд╢реЛрд░ рд╢реНрд╡реЗрдд рд╢реЛрд░ рдХрд╛ рдПрдХ рд╕рдиреНрдирд┐рдХрдЯрди рд╣реИ, рдЬреЛ рдПрдХ рд╕рдкреНрддрдХ
3 рдХреА рд╕реАрдорд╛ рддрдХ рд╕реАрдорд┐рдд рд╣реИред рд╢реЛрд░
рдХреА рдФрдкрдЪрд╛рд░рд┐рдХ рдкрд░рд┐рднрд╛рд╖рд╛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:
рдЬрд╣рд╛рдБ
- рд╢реЛрд░ рд╕рдорд╛рд░реЛрд╣ред рдкреЗрд░рд▓рд┐рди рдХрд╛ рд╢реЛрд░
рдкреНрд░рдХреНрд░рд┐рдпрд╛рддреНрдордХ рд╢реЛрд░ рд╣реИред "рд╡рд┐рд╢реЗрд╖рдг
рдкреНрд░рдХреНрд░рд┐рдпрд╛рддреНрдордХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрдВрдкреНрдпреВрдЯрд░ рд╡рд┐рдЬреНрдЮрд╛рди рдореЗрдВ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рд╡рд░реНрдгрд┐рдд рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛрдб рджреНрд╡рд╛рд░рд╛ рд╡рд░реНрдгрд┐рдд рд╕рдВрд╕реНрдерд╛рдУрдВ рдХреЛ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред"
4 рдпрд╣реА рд╣реИ, рдХреБрдЫ
рдЙрддреНрдкрдиреНрди , рдФрд░ рдореБрд╢реНрдХрд┐рд▓ рд╕реЗрдЯ рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдкреНрд░рдХреНрд░рд┐рдпрд╛рддреНрдордХ рд╢реЛрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╢реЛрд░ рдкреИрджрд╛ рдХрд░рдирд╛? рдкреНрд░рдХреНрд░рд┐рдпрд╛рддреНрдордХ рд╢реЛрд░
рдХреЙрдореНрдкреИрдХреНрдЯ рд╣реИ , рдЕрд░реНрдерд╛рддреН рдХрдо рдЬрдЧрд╣ рд▓реЗрддрд╛ рд╣реИред рдпрд╣
рдЕрд╡рд░реНрдгрдиреАрдп рд╣реИ , рдЕрд░реНрдерд╛рдд
рдЕрдкрд╛рдорд╛рд░реНрдЧ ред рдпрд╣
рдкреИрд░рд╛рдореАрдЯреНрд░рд┐рдХ рд╣реИ , рдЗрд╕реЗ
рдмреЗрддрд░рддреАрдм рдврдВрдЧ рд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ; рдЙрд╕рдХреЗ рдкрд╛рд╕ рдХрдИ рдЕрдиреНрдп рдлрд╛рдпрджреЗ рднреА рд╣реИрдВ рдЬреЛ рдХрд▓рд╛рдХрд╛рд░ рдХреЗ рдЬреАрд╡рди рдХреЛ рд╕рд░рд▓ рдмрдирд╛рддреЗ рд╣реИрдВ ... рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рдпрд╣ рд╣рдорд╛рд░рд╛ рдЕрдВрддрд┐рдо рд▓рдХреНрд╖реНрдп рдирд╣реАрдВ рд╣реИ - рдХрд▓рд╛рдХрд╛рд░ рдХреА рд╕реЗрд╡рд╛ рдХрд░рдирд╛? рдХрд▓ рдореИрдВрдиреЗ рдЖрдлреНрдЯрд░ рдЗрдлреЗрдХреНрдЯреНрд╕ рдХреЗ рд▓рд┐рдП рдкреНрд▓рдЧ-рдЗрди рдмрдирд╛рдпрд╛, рдЬреЛ рдореЗрд░реА рдкрд┐рдЫрд▓реА рдкреЛрд╕реНрдЯ рдореЗрдВ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдореИрдВрдиреЗ рдЙрд╕рдореЗрдВ рдХрд▓рд╛рдХрд╛рд░ рдХреЗ рд╣рд┐рддреЛрдВ рдХрд╛ рдзреНрдпрд╛рди рдирд╣реАрдВ рд░рдЦрд╛, рдХреЗрд╡рд▓ рдореЗрд░реЗ рдЕрд╣рдВрдХрд╛рд░ рдХреЗ рд╣рд┐рддреЛрдВ рдХрд╛, рдЗрд╕рд▓рд┐рдП рдХрд┐рд╕реА рдиреЗ рдЗрд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдореИрдВрдиреЗ рд╕рдмрдХ рдХреЛ рд╕рдордЭрд╛: рдХрд▓рд╛рдХрд╛рд░ рдХреА рд╕реЗрд╡рд╛ рдХрд░реЛ, рдЕрдкрдиреЗ рдЖрдк рд╕реЗ рдирд╣реАрдВред
рдкреЗрд░рд▓рд┐рди рд╕реЗ рдкрд╣рд▓реЗ, рдЭрдВрдЭрд░реА рдХреЗ рдЧреНрд░реЗрдбрд┐рдПрдВрдЯ рдХрд╛ рд╢реЛрд░ рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛ред рд╡реЗ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдореВрд▓реНрдпреЛрдВ рдХреЗ рдмреАрдЪ рдкреНрд░рдХреНрд╖реЗрдк рджреНрд╡рд╛рд░рд╛ рдЙрддреНрдкрдиреНрди рд╣реБрдП рдереЗ, рдФрд░ рдкреЗрд░рд▓рд┐рди рд╢реЛрд░ рдореЗрдВ, рдкреНрд░рддреНрдпреЗрдХ рдХреНрдпреВрдЯреЗрдХреНрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ
рдХреНрдпреВрдмрд┐рдХ рдЬрд╛рд▓реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░
рд╕реНрдкрд▓рд╛рдЗрди рдЗрдВрдЯрд░рдкреЛрд▓реЗрд╢рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред "рдПрдХ рдЫрджреНрдо рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдврд╛рд▓ рдЬрд╛рд▓реА рдмрд┐рдВрджреБ рд╕реЗ рд╣реИрд╢рд┐рдВрдЧ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдврд╛рд▓ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдгрд╛рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред" рдпреЗ рд╣реИрд╢ 12 рд╡реИрдХреНрдЯрд░ рдореЗрдВ рдмрджрд▓ рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ рдХреЗрдВрджреНрд░ рд╕реЗ рдХрд┐рдирд╛рд░реЛрдВ рддрдХ рдкрд╛рдВрдЪрд╡реЗрдВ рдбрд┐рдЧреНрд░реА рдХреЗ рдмрд╣реБрдкрдж рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рдХреНрд╖реЗрдкрд┐рдд рд╣реЛрддреЗ рд╣реИрдВред рдпрд╣ рдХрд▓реНрдкрдирд╛ рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ, рд╣реИ рдирд╛? рдЪрд┐рдВрддрд╛ рдордд рдХрд░реЛред рдореИрдВ рдЗрд╕реЗ рдЪрд┐рддреНрд░
6 рдореЗрдВ рдФрд░ рдЫрджреНрдо рдХреЛрдб
7 рдореЗрдВ рджрд┐рдЦрд╛рдКрдВрдЧрд╛ред
"" рдкрд╛рдВрдЪрд╡реАрдВ рдбрд┐рдЧреНрд░реА рдХреЗ рдмрд╣реБрдкрдж рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреЗрдВрджреНрд░ рд╕реЗ рдХрд┐рдирд╛рд░реЛрдВ рддрдХ рдкреНрд░рдХреНрд╖реЗрдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ "рдФрд░ рдпрд╣рд╛рдБ рд╣реИрд╢ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдмрд┐рдирд╛ рдХреНрд▓рд╛рд╕рд┐рдХ рдкреЗрд░реНрд▓рд┐рди рд╕реНрдпреВрдбреЛрдХреЛрдб рд╣реИ:
рдпрд╣ рднреА рдЬрд╛рдирдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ тАЬрдкрд░рд▓рд┐рди рд╢реЛрд░ рдФрд░ рджреБрд░реНрд▓рдн рдХрдирдлреНрд▓реВрдПрдВрд╕ рд╢реЛрд░ рдХреЛ рдЫреЛрдбрд╝рдХрд░, рд╕рднреА рд╢реЛрд░ рдХрд╛рд░реНрдп рд▓рдЧрднрдЧ рдкрдЯреНрдЯреА рдХреА рддрд░рд╣ рд╣реИрдВред рдкреЗрд░рд▓рд┐рди рдХрд╛ рд╢реЛрд░ рдХреЗрд╡рд▓ рдХрдордЬреЛрд░-рдмреИрдВрдб рд╣реИ, рдЬреЛ рд╡рд┐рдХреГрддрд┐ рдФрд░ рд╡рд┐рд╡рд░рдг рдХреЗ рдиреБрдХрд╕рд╛рди рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдПрдВ рдкреИрджрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИред тАЭ
8 рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкреЗрд░реНрд▓рд┐рди рд╢реЛрд░ рдХрд╛ рдХреЛрдИ рдЧреМрд╕рд┐рдпрди рдЖрдпрд╛рдо рд╡рд┐рддрд░рдг рдирд╣реАрдВ рд╣реИред рдпрд╣реА рд╣реИ, рдЧреЙрд╕рд┐рдпрди рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╢реЛрд░ рд╕реНрдкреЙрдЯ рдмрд┐рдЦрд░реЗ рд╣реБрдП рдирд╣реАрдВ рд╣реИрдВ, рдЬрд┐рд╕реЗ рд╣рдо рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдирд╣реАрдВ рдорд╛рдиреЗрдВрдЧреЗред рдРрд╕реА рдХрдИ рдЪреАрдЬреЗрдВ рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдкреЗрд░реНрд▓рд┐рди рдмрд╣реБрдд рд╕рд╣рдЬ рд╣реИ, рд▓реЗрдХрд┐рди рдРрд╕реА рдЪреАрдЬреЗрдВ рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рд╡рд╣ рдмрд╣реБрдд рдХрдордЬреЛрд░ рд╣реИред рдиреАрдЪреЗ рджреА рдЧрдИ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдЖрдк рдЗрд╕реЗ рд╕реНрд╡рдпрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред
рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рдкрд░рд▓рд┐рди рд╢реЛрд░: рдЬреАрдПрд▓рдПрд╕рдПрд▓ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди
рддреЛ, рдЪрд▓реЛ GLSL рдкрд░ рдкреЗрд░рд▓рд┐рди рдХреЗ рд╢реЛрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВред рдкрд░реНрд▓рд┐рди рд╢реЛрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рддрд░рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ, рдлреИрд▓рд╛рдиреЗ рд╡рд╛рд▓реЗ рд░рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ, рдлреИрд▓рд╛рдирд╛ рд╕рд╛рдордЧреНрд░реА рдХреЗ рд░реВрдк рдореЗрдВ, рдЯрд┐рдордЯрд┐рдорд╛рддреЗ рдкреНрд░рдХрд╛рд╢ рдХреЗ рд░реВрдк рдореЗрдВ, рдпрд╛ рдмрдирд╛рд╡рдЯ рдкрд░ рдзрдмреНрдмреЗ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдореИрдВрдиреЗ рдЗрд╕реЗ рд░рдВрдЧ рдХреА рдЭрд┐рд▓рдорд┐рд▓рд╛рд╣рдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред
рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдЗрд╕ рд▓реЗрдЦ рдХреЛ рд▓рд┐рдЦрд╛ рд╣реИ, рдореИрдВ рдПрдХ рдкреНрд▓рдЧ-рдЗрди рдХреЗ рд▓рд┐рдП рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪ рд░рд╣рд╛ рд╣реВрдВ After Effects рдЬреЛ рдХрд┐ рдкреЗрд░рд▓рд┐рди рд╢реЛрд░ рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рдЬреЛрдбрд╝рддрд╛ рд╣реИред
рдкреЗрд░рд▓рд┐рди рдХрд╛ рд╕рдмрд╕реЗ рд╕рд░рд▓ рд╢реЛрд░
10 рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
float rand(vec2 c){ return fract(sin(dot(c.xy ,vec2(12.9898,78.233))) * 43758.5453); } float noise(vec2 p, float freq ){ float unit = screenWidth/freq; vec2 ij = floor(p/unit); vec2 xy = mod(p,unit)/unit;
#define M_PI 3.14159265358979323846 float rand(vec2 co){return fract(sin(dot(co.xy ,vec2(12.9898,78.233))) * 43758.5453);} float rand (vec2 co, float l) {return rand(vec2(rand(co), l));} float rand (vec2 co, float l, float t) {return rand(vec2(rand(co, l), t));} float perlin(vec2 p, float dim, float time) { vec2 pos = floor(p * dim); vec2 posx = pos + vec2(1.0, 0.0); vec2 posy = pos + vec2(0.0, 1.0); vec2 posxy = pos + vec2(1.0); float c = rand(pos, dim, time); float cx = rand(posx, dim, time); float cy = rand(posy, dim, time); float cxy = rand(posxy, dim, time); vec2 d = fract(p * dim); d = -0.5 * cos(d * M_PI) + 0.5; float ccx = mix(c, cx, dx); float cycxy = mix(cy, cxy, dx); float center = mix(ccx, cycxy, dy); return center * 2.0 - 1.0; }
рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдкреЗрд░рд▓рд┐рди рдХреЗ рд╢реЛрд░ рдХрд╛ рдПрдХ рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рд╣реИ, рдЬрд┐рд╕реЗ 2002 рдореЗрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╛рдПрдВ рдХрд┐ рдкреЗрд░реНрд▓рд┐рди рдХрд╛ рдХреНрд▓рд╛рд╕рд┐рдХ рд╢реЛрд░ рдХреИрд╕рд╛ рд╣реИред
рдЦреИрд░, рдЖрдЬ рдХреЗ рд▓рд┐рдП рдмрд╕ рдЗрддрдирд╛ рд╣реАред рдПрдХ рдЫреЛрдЯреА рдкреЛрд╕реНрдЯ, рдореБрдЭреЗ рдкрддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рдореЗрдВ рдореВрд▓ рд╕рд╛рдордЧреНрд░реА рдХрд╛ рдЕрднрд╛рд╡ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрднреА рддрдХ рдореИрдВрдиреЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рд╕реЗ рдмрд╛рд╣рд░ рднрд╛рдЧ рд▓рд┐рдпрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВрдиреЗ рдЕрднреА рддрдХ
рд░рд┐рдпрд▓-рдЯрд╛рдЗрдо рд░реЗрдВрдбрд░рд┐рдВрдЧ рдирд╣реАрдВ рдкрдврд╝рд╛ рд╣реИред рдпрд╣ рдкреБрд╕реНрддрдХ рд╕реАрдЦрдиреЗ рдФрд░ рд╕реАрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдФрд░ рд╡рд┐рдЪрд╛рд░реЛрдВ рд╕реЗ рднрд░реА рд╣реИред рдореИрдВ рдЙрд╕рд╕реЗ рдкреНрдпрд╛рд░ рдХрд░рддрд╛ рд╣реВрдБ!
рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ, рдореИрдВ рдПрдХ рдФрд░ рдХрд┐рддрд╛рдм рдкрдврд╝ рд░рд╣рд╛ рд╣реВрдВ -
рдлрдВрдбрд╛рдореЗрдВрдЯрд▓ рдСрдл рдХрдВрдкреНрдпреВрдЯрд░ рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ ред рдореИрдВ рдЗрдВрдкреНрд▓рд╛рдВрдЯ рдХрд░реНрд╡реНрд╕ рдХреЗ рд╡рд┐рд╖рдп рдкрд░ рдереЛрдбрд╝рд╛ рдЕрдЯрдХ рдЧрдпрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдЕрдкрдиреЗ рд░рд┐рд╢реНрддреЗрджрд╛рд░ рд╕реЗ рдЧрдгрд┐рдд рдореЗрдВ рдкреАрдПрдЪрдбреА рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣реВрдВрдЧрд╛ред
рд╕рдВрджрд░реНрдн рд╕рд╛рдордЧреНрд░реА
- рдкреНрд░рдХреНрд░рд┐рдпрд╛рддреНрдордХ рд╢реЛрд░ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдПрдХ рд╕рд░реНрд╡реЗрдХреНрд╖рдг, рдХрдВрдкреНрдпреВрдЯрд░ рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдлреЛрд░рдо, рд╡реЙрд▓реНрдпреВрдо 29 (2010), рдирдВрдмрд░ 8, рдкреАрдкреА 2379-2600
- рдХреБрд╢рд▓ рдХрдореНрдкреНрдпреВрдЯреЗрд╢рдирд▓ рд╢реЛрд░, рдЬрд░реНрдирд▓ рдСрдлрд╝ рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдЯреВрд▓реНрд╕ рд╡реЙрд▓реНрдпреВрдо 16, рдирд╣реАрдВред 2: 85-94
- рдП рд╕рд░реНрд╡реЗ, рдПрдЯ рдЕрд▓
- flafla2.imtqy.com/2014/08/09/perlinnoise.html
- рдПред рд▓рдЧреБрдП рдПрдЯ рдЕрд▓
- рдПред рд▓рдЧреИ, рдПрдЯ рдЕрд▓
- рдПред рд▓рдЧреИ, рдПрдЯ рдЕрд▓
- Flafla2.imtqy.com/2014/08/09/perlinnoise.html рд╕реЗ
- рд╡рд┐рдХрд┐рдкреАрдбрд┐рдпрд╛ рд╕реЗ
- рдПред рд▓рдЧреИ, рдПрдЯ рдЕрд▓
- рдПред рд▓рдЧреНрдЧреЗ рд╕реЗ рдЕрдиреБрдХреВрд▓рд┐рдд, рдПрдЯ рдЕрд▓
- gist.github.com/patriciogonzalezvivo/670c22f3966e662d2f83