Troika: рдкрд╛рда рдХреА рд░реВрдкрд░реЗрдЦрд╛

рдХреЛ рдирд┐рд░реНрдорд┐рдд 20 рдЕрдЧре░ 2020  ┬╖  39рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: protectwise/troika

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

рдзрдиреНрдпрд╡рд╛рдж!

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

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

рдореИрдВрдиреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдорд╛рдирдХ рдбреЗрд░рд┐рд╡реЗрдЯрд┐рд╡ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ _рд╕реНрдХреНрд░реАрди рд╕реНрдкреЗрд╕_ рд░реВрдкрд░реЗрдЦрд╛ рдкрд░ рдХреБрдЫ рдкреНрд░рдЧрддрд┐ рдХреА рд╣реИред рд╕реНрдХреНрд░реАрди рд╕реНрдкреЗрд╕ рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдЖрдЙрдЯрд▓рд╛рдЗрди рдЬреИрд╕реЗ рдЯреЗрдХреНрд╕реНрдЯ рдХреЗ рдЖрдХрд╛рд░/рдкреИрдорд╛рдиреЗ рдпрд╛ рддрд┐рд░рдЫреЗрдкрди рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛ 1 рд╕реНрдХреНрд░реАрди рдкрд┐рдХреНрд╕реЗрд▓ рдЪреМрдбрд╝рд╛ рд╣реЛрдЧрд╛ред рдпрджрд┐ рд▓рдХреНрд╖реНрдп рдХреЗрд╡рд▓ рдкреГрд╖реНрдарднреВрдорд┐ рдХреЗ рд╕рд╛рде рдХрдВрдЯреНрд░рд╛рд╕реНрдЯ рдЬреЛрдбрд╝рдирд╛ рд╣реИ, рддреЛ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЙрддрдирд╛ рд╣реА рдЕрдЪреНрдЫрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ (рдпрд╛ рдЗрд╕рд╕реЗ рднреА рдмреЗрд╣рддрд░) рдЯреЗрдХреНрд╕реНрдЯ рдЖрдХрд╛рд░ рдХреЗ рд╕рд╛рде рдЙрд╕ рдкреИрдорд╛рдиреЗ рдХреЛ рд░реЗрдЦрд╛рдВрдХрд┐рдд рдХрд░рддрд╛ рд╣реИред рдХреНрдпрд╛ рдЙрд╕ рдкрд░ рдЖрдкрдХреА рдХреЛрдИ рд░рд╛рдп рд╣реИ?

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

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

рдпрд╣ рдХрд░рдирд╛ рдмрд╣реБрдд рдХрдард┐рди рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВрдиреЗ рдХреБрдЫ рд╕рдордп рдкрд╣рд▓реЗ рдЯреЗрдХреНрд╕реНрдЯрдСрдЙрдЯрд▓рд╛рдЗрди рдХреЗ рд╕рд╛рде рдПрдХ рдлреАрдЪрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЦреЗрд▓рдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛ рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдХрднреА рд╕рдорд╛рдкреНрдд рдирд╣реАрдВ рдХрд┐рдпрд╛ред

рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдЧреНрд▓рд┐рдлрд╝ рдХрд┐рдирд╛рд░реЛрдВ рдХреЛ рдХреЗрд╡рд▓ рдХрд┐рдирд╛рд░реЗ рд╕реЗ рдореЗрд▓ рдЦрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рджреВрд░реА рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдорд╛рди рдХреЛ рдмрджрд▓рдХрд░ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╡рд░реНрддрдорд╛рди рд╢реЗрдбрд░ рдХреЛрдб рдореЗрдВ рдпрд╣ 0.5 рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рд╡рд░реНрджреА рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд╕ рдХрд░рдХреЗ рдЗрд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

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

рдореИрдВрдиреЗ рдХреБрдЫ рд╕рдордп рдкрд╣рд▓реЗ рдЯреЗрдХреНрд╕реНрдЯрдСрдЙрдЯрд▓рд╛рдЗрди рдХреЗ рд╕рд╛рде рдПрдХ рдлреАрдЪрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЦреЗрд▓рдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛ рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдХрднреА рд╕рдорд╛рдкреНрдд рдирд╣реАрдВ рдХрд┐рдпрд╛ред

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

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

  • рд░реВрдкрд░реЗрдЦрд╛ рдХреА рдЕрдзрд┐рдХрддрдо рд╕рдВрднрд╛рд╡рд┐рдд рдЪреМрдбрд╝рд╛рдИ рджреВрд░реА рдХреНрд╖реЗрддреНрд░ рдХреА рд╕реАрдорд╛ рддрдХ рд╕реАрдорд┐рдд рд╣реЛрддреА рд╣реИ (~ 64x64 SDF рдмрдирд╛рд╡рдЯ рдореЗрдВ 8 рдЯреЗрдХреНрд╕рд▓реНрд╕)ред
  • рдпрд╣ рд╕рднреА рдЧреНрд▓рд┐рдлрд╝ рдореЗрдВ рдПрдХ рд╕реБрд╕рдВрдЧрдд рджреГрд╢реНрдп рдЖрдХрд╛рд░ рдХреЗ рдЕрдиреБрд░реВрдк рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ SDF рдмрдирд╛рд╡рдЯ рдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдЧреНрд▓рд┐рдлрд╝ рдХреА рд╕реАрдорд╛ рддрдХ рдмрдврд╝рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

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

рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рдЕрднреА рддрдХ рджреБрд░реНрдЧрдо рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЙрддрдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИ рдЬрд┐рддрдирд╛ рдореИрдВрдиреЗ рд╢реБрд░реВ рдореЗрдВ рд╕реЛрдЪрд╛ рдерд╛ред

@lojjic , тАЛтАЛрдЗрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕реЗ рдкреНрдпрд╛рд░ рд╣реИ ЁЯеЗ, рд▓реЗрдХрд┐рди рдкрд╛рда рдХреА рд░реВрдкрд░реЗрдЦрд╛ рд╣рдорд╛рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ ...

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

  • рд░реВрдкрд░реЗрдЦрд╛ рдХреА рдЕрдзрд┐рдХрддрдо рд╕рдВрднрд╛рд╡рд┐рдд рдЪреМрдбрд╝рд╛рдИ рджреВрд░реА рдХреНрд╖реЗрддреНрд░ рдХреА рд╕реАрдорд╛ рддрдХ рд╕реАрдорд┐рдд рд╣реЛрддреА рд╣реИ (~ 64x64 SDF рдмрдирд╛рд╡рдЯ рдореЗрдВ 8 рдЯреЗрдХреНрд╕рд▓реНрд╕)ред
  • рдпрд╣ рд╕рднреА рдЧреНрд▓рд┐рдлрд╝ рдореЗрдВ рдПрдХ рд╕реБрд╕рдВрдЧрдд рджреГрд╢реНрдп рдЖрдХрд╛рд░ рдХреЗ рдЕрдиреБрд░реВрдк рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ SDF рдмрдирд╛рд╡рдЯ рдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдЧреНрд▓рд┐рдлрд╝ рдХреА рд╕реАрдорд╛ рддрдХ рдмрдврд╝рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

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

рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рдЕрднреА рддрдХ рджреБрд░реНрдЧрдо рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЙрддрдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИ рдЬрд┐рддрдирд╛ рдореИрдВрдиреЗ рд╢реБрд░реВ рдореЗрдВ рд╕реЛрдЪрд╛ рдерд╛ред

рдореИрдВ рдЙрддреНрд╕реБрдХ рд╣реВрдВ, рдХреНрдпрд╛ рд╣рдо рд░реВрдкрд░реЗрдЦрд╛ рдФрд░/рдпрд╛ рдЫрд╛рдпрд╛ рдкреНрд░рднрд╛рд╡ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╢реЗрдбрд░реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреА рдкреЛрд╕реНрдЯ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? рдЕрдЧреНрд░рд┐рдо рдореЗрдВ рдзрдиреНрдпрд╡рд╛рдж!
рдпрд╣рд╛рдВ рд╡рд╣ рдкреНрд░рднрд╛рд╡ рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ:
Screen Shot 2020-08-31 at 4 32 03 PM

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдпрд╣ рдореИрдкрдмреЙрдХреНрд╕ рдЬреАрдПрд▓ рд╕реЗ рд╣реИ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рдПрд╕рдбреАрдПрдл рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ https://blog.mapbox.com/drawing-text-with-signed-distance-fields-in-mapbox-gl-b0933af6f817 , рд╢рд╛рдпрдж рд╣рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЙрдиреНрд╣реЛрдВрдиреЗ рдХреНрдпрд╛ рдХрд┐рдпрд╛ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдирдХреЗ рдХреЛрдб рдХреЛ рд╡рд┐рдЪреНрдЫреЗрджрд┐рдд рдХрд░реЗрдВред https://github.com/mapbox/mapbox-gl-js

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

рдореИрдВрдиреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдорд╛рдирдХ рдбреЗрд░рд┐рд╡реЗрдЯрд┐рд╡ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ _рд╕реНрдХреНрд░реАрди рд╕реНрдкреЗрд╕_ рд░реВрдкрд░реЗрдЦрд╛ рдкрд░ рдХреБрдЫ рдкреНрд░рдЧрддрд┐ рдХреА рд╣реИред рд╕реНрдХреНрд░реАрди рд╕реНрдкреЗрд╕ рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдЖрдЙрдЯрд▓рд╛рдЗрди рдЬреИрд╕реЗ рдЯреЗрдХреНрд╕реНрдЯ рдХреЗ рдЖрдХрд╛рд░/рдкреИрдорд╛рдиреЗ рдпрд╛ рддрд┐рд░рдЫреЗрдкрди рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛ 1 рд╕реНрдХреНрд░реАрди рдкрд┐рдХреНрд╕реЗрд▓ рдЪреМрдбрд╝рд╛ рд╣реЛрдЧрд╛ред рдпрджрд┐ рд▓рдХреНрд╖реНрдп рдХреЗрд╡рд▓ рдкреГрд╖реНрдарднреВрдорд┐ рдХреЗ рд╕рд╛рде рдХрдВрдЯреНрд░рд╛рд╕реНрдЯ рдЬреЛрдбрд╝рдирд╛ рд╣реИ, рддреЛ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЙрддрдирд╛ рд╣реА рдЕрдЪреНрдЫрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ (рдпрд╛ рдЗрд╕рд╕реЗ рднреА рдмреЗрд╣рддрд░) рдЯреЗрдХреНрд╕реНрдЯ рдЖрдХрд╛рд░ рдХреЗ рд╕рд╛рде рдЙрд╕ рдкреИрдорд╛рдиреЗ рдХреЛ рд░реЗрдЦрд╛рдВрдХрд┐рдд рдХрд░рддрд╛ рд╣реИред рдХреНрдпрд╛ рдЙрд╕ рдкрд░ рдЖрдкрдХреА рдХреЛрдИ рд░рд╛рдп рд╣реИ?

рд╕реНрдХреЗрд▓рд┐рдВрдЧ рдЪреМрдбрд╝рд╛рдИ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдорд╛рдирдХреАрдХреГрдд рдЪреМрдбрд╝рд╛рдИ рдЕрдзрд┐рдХ рдкрд╕рдВрдж рдХреА рдЬрд╛рддреА рд╣реИред рдпрд╣ рдЗрд╕ рддрд░рд╣ рд╕реЗ рднреА рд╕реАрдПрд╕рдПрд╕ рдХреА рддрд░рд╣ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░реЗрдЧрд╛ред
рдХреЛрдИ рднреА text-shadow рдЬрд┐рд╕реЗ css рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, font-size рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдпрджрд┐ рдЖрдкрдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╕рдорд╛рдзрд╛рди @lojjic рдЙрд╕реА рддрд░рд╣ рд╕реЗ рдкреНрд░рджрд░реНрд╢рди рдХрд░рддрд╛ рд╣реИ, рддреЛ рд╡рд╣ рд╣реЛрдЧрд╛

рдЖрдкрдХреА рддреНрд╡рд░рд┐рдд рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ @lojjic рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

рд▓рдХреНрд╖реНрдп рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рдЬреЛрдбрд╝рдирд╛ рд╣реИ , рдФрд░ рдЖрдкрдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИред рдХреНрдпрд╛ рдЖрдкрдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд░реВрдкрд░реЗрдЦрд╛ рд╕реНрдерд┐рд░ рд╣реЛрдЧреА? рдпрд╛рдиреА рдЗрд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ (рдЬреИрд╕рд╛ рдХрд┐ @stephencorwin рдиреЗ рдЯреЗрдХреНрд╕реНрдЯ-рдЫрд╛рдпрд╛-рдЖрд╢ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рд╣реИ)ред

рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ, рдореИрдВ рдЗрд╕реЗ рдПрдХ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдирд╣реАрдВ рджреЗрдЦрддрд╛, рдЬрдм рддрдХ рдХрд┐ 1 рдкрд┐рдХреНрд╕реЗрд▓ рд╕реБрдкрд░ рдЙрдЪреНрдЪ рдШрдирддреНрд╡ рдбрд┐рд╕реНрдкреНрд▓реЗ рдкрд░ рджрд┐рдЦрд╛рдИ рджреЗ рд░рд╣рд╛ рд╣реИ (рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рд╡рд░реНрддрдорд╛рди рдореЗрдВ "рд╕рдорд╛рди" рдЕрдиреБрдкрд╛рдд рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рд╡рд╛рдЗрд╕ рдкрд┐рдХреНрд╕реЗрд▓ рдЕрдиреБрдкрд╛рдд рджреНрд╡рд╛рд░рд╛ рдлрд╝реЙрдиреНрдЯ-рдЖрдХрд╛рд░ рдХреЛ рдЧреБрдгрд╛ рдХрд░рддреЗ рд╣реИрдВ, рдШрдирддреНрд╡ рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛) , рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЙрдЪреНрдЪ рдбреАрдкреАрдЖрдИ рдЙрдкрдХрд░рдгреЛрдВ рдкрд░ рд░реВрдкрд░реЗрдЦрд╛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкрддрд▓реА рд╣реЛрдЧреА, рдирд╣реАрдВ?

рдЕрдЧреНрд░рд┐рдо рдореЗрдВ рдзрдиреНрдпрд╡рд╛рдж!

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЙрдЪреНрдЪ рдбреАрдкреАрдЖрдИ рдЙрдкрдХрд░рдгреЛрдВ рдкрд░ рд░реВрдкрд░реЗрдЦрд╛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкрддрд▓реА рд╣реЛрдЧреА, рдирд╣реАрдВ?

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

рджреВрд╕рд░рд╛ рдмрдбрд╝рд╛ рдирдХрд╛рд░рд╛рддреНрдордХ рдкрд╣рд▓реВ рдпрд╣ рд╣реИ рдХрд┐ (рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ) рдкреНрд░рднрд╛рдордВрдбрд▓ рдХреА рдореЛрдЯрд╛рдИ рдмрдврд╝рд╛рдиреЗ рд╕реЗ рдЕрдзрд┐рдХ рдмрдирд╛рд╡рдЯ рдкрдврд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдХрд╛рд░рдг рдкреНрд░рджрд░реНрд╢рди рдкреНрд░рднрд╛рд╡ рдкрдбрд╝реЗрдЧрд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореБрдЭреЗ рдЗрд╕ рдкрд░ рд╢реЛрдз рдХрд░рддреЗ рд░рд╣рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред

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

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

@FunMiles рдЗрдирдкреБрдЯ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред (рдХреЛрд▓реЛрд░рд╛рдбреЛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреЗ рд╣реИрдВ! )

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рд╢рд╛рдпрдж 1 рдХреА рд░реВрдкрд░реЗрдЦрд╛ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рд╣реИрдВ, рд╢рд╛рдпрдж 2 рдЯреБрдХрдбрд╝реЗ рдореЛрдЯреЗред рдореЗрд░реА рдЪрд┐рдВрддрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЬреИрд╕реЗ-рдЬреИрд╕реЗ рдореЛрдЯрд╛рдИ рдмрдврд╝рддреА рд╣реИ, рдпрд╣ рджреЛрдиреЛрдВ рдмрдирд╛рд╡рдЯ рдХреА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╡рд┐рд╕реНрдлреЛрдЯ рдХрд░ рд░рд╣рд╛ рд╣реИ (рдореЛрдЯрд╛рдИ 4 = 56 рдкрдврд╝рддрд╛ рд╣реИ?) рд▓реЗрдХрд┐рди рдореИрдВ рд╕рд┐рд░реНрдл рдХреБрдЫ рдЪреАрдЬреЛрдВ рдХреЛ рдкрдврд╝рдиреЗ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛ рд░рд╣рд╛ рд╣реВрдВ, рдореИрдВ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдЬреАрдкреАрдпреВ рдХрд╛ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рдирд╣реАрдВ рд╣реВрдВред рдореБрдЭреЗ рд╢рд╛рдпрдж рдмрд╕ рдЗрд╕реЗ рдЖрдЬрдорд╛рдирд╛ рд╣реЛрдЧрд╛ред

@lojjic (рдЖрдк рдореЗрдВ рд╕реЗ рдЙрддреНрддрд░ рдпрд╣рд╛рдБ ЁЯШД ) рдореИрдВрдиреЗ рдЯреБрдХрдбрд╝рд╛ рд╢реЗрдбрд░ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдЦреЛрдЬрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреАред рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рдЪреАрдЬреЛрдВ рдХреЛ рд╕рдордЭрдиреЗ рдореЗрдВ рдХрдард┐рди рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ (рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдЗрд╕реЗ рдХрд╣реАрдВ рдкрдврд╝рд╛ рд╣реИ) рдХрд┐ рдЖрдк рдЗрд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд▓рд┐рдЦрдиреЗ рдХреЗ рдмрдЬрд╛рдп рд╢реЗрдбрд░ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддреЗ рд╣реИрдВред
рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ рдпрд╣ рдирд╣реАрдВ рд╕рдордЭ рд╕рдХрддрд╛ рдХрд┐ рдкреВрд░реНрдг рд╢реЗрдбрд░ рдХреИрд╕рд╛ рд╣реИ рдФрд░ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдореЗрдВ рдХреИрд╕реЗ рдкреНрд▓рдЧ рдЗрди рдХрд░рддреЗ рд╣реИрдВ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдХреБрдЫ рдореВрд▓ рджрд┐рдирдЪрд░реНрдпрд╛ рдорд┐рд▓рддреА рд╣реИ ...

рдЕрднреА рдЖрдк texture2D(uTroikaSDFTexture, vTroikaSDFTextureUV).r; рдХреЗ рд╕рд╛рде рдкрд┐рдХреНрд╕реЗрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрджрд┐рд╢ рджреВрд░реА рдкрдврд╝рддреЗ рд╣реИрдВред рдЕрдЧрд░ рдореИрдВ рд╕рдордЭ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдЖрдкрдиреЗ рдкрд╣рд▓реЗ рдХреНрдпрд╛ рд▓рд┐рдЦрд╛ рдерд╛, рддреЛ рдПрдХ рдореБрджреНрджрд╛ рдЧреНрд▓рд┐рдлрд╝ рдХреЗ рдЖрд╕рдкрд╛рд╕ рдХреЗ рд╕реНрдерд╛рди рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред рдХреНрдпрд╛ рдЖрдк рдЕрдзрд┐рдХ рд╡рд┐рд╡рд░рдг рдореЗрдВ рд╕рдордЭрд╛ рд╕рдХрддреЗ рд╣реИрдВ?
'W' рдФрд░ ',' рдХреЗ рдЕрдкрдиреЗ рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ, рдХреНрдпрд╛ рдмрдирд╛рд╡рдЯ рдореЗрдВ vTroikaSDFTextureUV рд╕реНрдкреИрди рдЧреНрд▓рд┐рдлрд╝ рдХреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рдХрд╕рдХрд░ рдлрд┐рдЯ рдмреИрдарддрд╛ рд╣реИ, рдпрд╛ рдХреБрдЫ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рд╣реИ? рдХреНрдпрд╛ рдЯреБрдХрдбрд╝рд╛ рд╢реЗрдбрд░ рд╡рд░реНрддрдорд╛рди рдЧреНрд▓рд┐рдлрд╝ рдХреЗ рд▓рд┐рдП рдпреВрд╡реА рдХреА рд╕реАрдорд╛ рдХреЛ рдЬрд╛рдирддрд╛ рд╣реИ? рдпрджрд┐ рдРрд╕рд╛ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдПрдХ рдЯреБрдХрдбрд╝реЗ рдХреЗ рд▓рд┐рдП рдЬреЛ рдмрд╛рд╣рд░ рдЧрд┐рд░ рдЬрд╛рдПрдЧрд╛, рдЖрдк рд╡рд░реНрддрдорд╛рди рдпреВрд╡реА рдХреЛ рд╕реАрдорд╛ рддрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдбреЗрдЯрд╛ рдХреЛ рдареАрдХ рдЕрдВрджрд░ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред

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

'W' рдФрд░ ',' рдХреЗ рдЕрдкрдиреЗ рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ, рдХреНрдпрд╛ рдмрдирд╛рд╡рдЯ рдореЗрдВ vTroikaSDFTextureUV рд╕реНрдкреИрди рдЧреНрд▓рд┐рдлрд╝ рдХреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рдХрд╕рдХрд░ рдлрд┐рдЯ рдмреИрдарддрд╛ рд╣реИ, рдпрд╛ рдХреБрдЫ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рд╣реИ?

рдкреНрд░рддреНрдпреЗрдХ рдЧреНрд▓рд┐рдлрд╝ рдХреА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрде рд╕реАрдорд╛ рдХреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рджреВрд░реА рдХреНрд╖реЗрддреНрд░ рдХреЗ рдмрд╛рд╣рд░реА рд╣рд┐рд╕реНрд╕реЛрдВ рдХреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИред рдПрд╕рдбреАрдПрдл рдореЗрдВ рдпрд╣ 8 рдЯреЗрдХреНрд╕рд▓реНрд╕ рд╣реИ, рд▓реЗрдХрд┐рди рдЪреВрдВрдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдПрд╕рдбреАрдПрдл рдПрдХ рд╕рдорд╛рди 64x64 рд╣реИ рдЬреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЖрдХрд╛рд░ рдХреЗ рдЧреНрд▓рд┐рдлрд╝ рдХреНрд╡рд╛рдб рдкрд░ рд╕реНрдХреЗрд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рджреГрд╢реНрдпрдорд╛рди рдорд╛рд░реНрдЬрд┐рди рдЧреНрд▓рд┐рдлрд╝ рд╕реЗ рдЧреНрд▓рд┐рдлрд╝ рдореЗрдВ рднрд┐рдиреНрди рд╣реЛрддрд╛ рд╣реИред

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

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

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

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

рдореЗрд░реА рд╕рдордЭ рдпрд╣ рд╣реИ рдХрд┐ vTroikaGlyphUV рдореЗрдВ рдЧреНрд▓рд┐рдлрд╝ рдХреЗ рдЕрдВрджрд░ 0 рдФрд░ 1 рдХреЗ рдмреАрдЪ рдХрд╛ рдорд╛рди рд╣реЛрддрд╛ рд╣реИред рдЬрдм рдореИрдВрдиреЗ рдкреНрд░рдХреНрд╖реЗрдкрдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХреА рддреЛ рдореЗрд░рд╛ рдорддрд▓рдм рдпрд╣ рдерд╛ рдХрд┐ рдпрджрд┐ vTroikaGlyphUV рдЙрди рд╕реАрдорд╛рдУрдВ рдХреЗ рдмрд╛рд╣рд░ рд╣реИ, рддреЛ рдЖрдк рдЧреНрд▓рд┐рдлрд╝ рд╕реАрдорд╛ рдкрд░ "рдЕрдиреБрдорд╛рдирд┐рдд" рдмрд┐рдВрджреБ рдХреА рджреВрд░реА рдХреЛ рдкреБрдирдГ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЕрд░реНрдерд╛рддреН, рдпрджрд┐ uv = (1.05, 0.7) рд╣реИ, рддреЛ рдкреНрд░рдХреНрд╖реЗрдкрд┐рдд рдмрд┐рдВрджреБ (1.0, 0.7) рд╣реИред (1.0, 0.7+epsilon) рдФрд░ (1.0, 0.7-epsilon) рдкрд░ рдорд╛рдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрдк рджреВрд░реА рдХреЗ рд▓рд┐рдП рдПрдХ рдврд╛рд▓ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЕрдиреБрдорд╛рдирд┐рдд рджреВрд░реА рдХреА рдЧрдгрдирд╛ (1.05, 0.7) рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЬрдм рдореИрдВрдиреЗ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЕрдкрдирд╛ рдЦреБрдж рдХрд╛ рдХрд╛рдо рдХрд┐рдпрд╛, рддреЛ рдореБрдЭреЗ рдпрд╛рдж рд╣реИ рдХрд┐ рдмрдирд╛рд╡рдЯ рдореЗрдВ рдврд╛рд▓ рдХреЗ рд╕рд╛рде рдПрд╕рдбреАрдПрдл рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рдХрд╛ рд▓реЗрдЦ рднреА рдкрдврд╝рдирд╛ред рдпрд╣ рджреГрд╖реНрдЯрд┐рдХреЛрдг рддреАрди рдЯреЗрдХреНрд╕рд▓реНрд╕ рдХреЛ рдкрдврд╝рдиреЗ рд╕реЗ рдмрдЪрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдмрдирд╛рд╡рдЯ рдХреЛ 3 рдШрдЯрдХ рдмрдирд╛рд╡рдЯ рдмрдирд╛рддрд╛ рд╣реИ рдФрд░ рдмрдирд╛рд╡рдЯ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ рдЬрдЯрд┐рд▓рддрд╛ рдЬреЛрдбрд╝рддрд╛ рд╣реИред

рдХреНрдпрд╛ рдЗрд╕рд╕реЗ рдЖрдкрдХреЗ рд╕рд╡рд╛рд▓ рдХрд╛ рдЬрд╡рд╛рдм рдорд┐рд▓рддрд╛ рд╣реИ?

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

рдкреАрдПрд╕: рдореИрдВрдиреЗ рдЖрдкрдХреЗ "рдкреНрд░рддреНрдпреЗрдХ рдЧреНрд▓рд┐рдл рдХреА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрде рд╕реАрдорд╛рдУрдВ рдХреЗ рдЖрд╕-рдкрд╛рд╕ рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрдЧрд╣" рдХреЛ рдЧрд▓рдд рд╕рдордЭрд╛ рд╣реЛрдЧрд╛ред рдХреНрдпрд╛ рдЖрдк рдХрд╣ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдПрдХ рдПрдХреНрд╕ рдХреЗ рд▓рд┐рдП, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ рдПрдХ рдЖрдпрдд рдореЗрдВ рд╕рдВрд▓рдЧреНрди рд╣реИ рдФрд░ рдЪрд╛рд░ рддреНрд░рд┐рднреБрдЬ рд╣реИрдВ рдЬрд┐рдирдХрд╛ рдХреЛрдИ рдорд╛рдиреНрдп рдорд╛рди рдирд╣реАрдВ рд╣реИ?

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

рдкреАрдПрд╕: рдереЛрдбрд╝рд╛ рдордЬреЗрджрд╛рд░ рдЧрдгрд┐рдд рдиреЛрдЯ:
рдпрджрд┐ рдХрд┐рд╕реА рдХреЛ рдЖрд╢реНрдЪрд░реНрдп рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рджреЛ рдпрд╛ рддреАрди рд╕рдВрд░реЗрдЦрд┐рдд рдмрд┐рдВрджреБрдУрдВ рд╕реЗ рдЧреНрд░реЗрдбрд┐рдПрдВрдЯ рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рдХрд┐рд╕реА рдХреЛ рдпрд╣ рдпрд╛рдж рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рджреВрд░реА рдХреЗ рдЧреНрд░реЗрдбрд┐рдПрдВрдЯ рдХрд╛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдорд╛рдирджрдВрдб (рдЪреБрдиреЗ рд╣реБрдП рдкреИрдорд╛рдиреЗ рдХреЗ рдЖрдзрд╛рд░ рдкрд░) рд╣реЛрддрд╛ рд╣реИред рдФрд░ рдЧреНрд░реЗрдбрд┐рдПрдВрдЯ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЧреНрд▓рд┐рдлрд╝ рдмреЙрдХреНрд╕ рдХреЗ рдмрд╛рд╣рд░ рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рддрд╛ рд╣реИред рддреЛ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдпрджрд┐ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рднреА 3 рдмрд┐рдВрджреБ (1.0, 0.7), (1.0, 0.7+epsilon) рдФрд░ (1.0, 0.7-epsilon) рд╕рдорд╛рди рджреВрд░реА рдкрд░ рд╣реИрдВ, рддреЛ рдЧреНрд░реЗрдбрд┐рдПрдВрдЯ (рд╕реНрдХреЗрд▓, 0) рд╣реИред

рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрдХ рдирд╣реАрдВ рд╣реИ, рдСрдлрд╕реЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред рдореИрдВ react-three-fiber рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдЬреЛ рдбреНрд░реЗрдИ рдкреИрдХреЗрдЬ рдХреЗ рд╕рд╛рде рдЯреНрд░реЛрдЗрдХрд╛-рдЯреЗрдХреНрд╕реНрдЯ рдХрд╛ рд▓рд╛рдн рдЙрдард╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрд╛ рдХрд┐ рдЕрдЧрд░ рдЕрдиреНрдп рд▓реЛрдЧ рд╕реНрдЯреЙрдкрдЧреИрдк рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдорд╛рдзрд╛рди рдХреА рддрд▓рд╛рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рддреЛ рдореИрдВ рд╕рд╛рдЭрд╛ рдХрд░реВрдВрдЧрд╛ рдЬрдм рддрдХ рдХрд┐ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдореВрд▓ рд░реВрдк рд╕реЗ рд╕реНрдЯреНрд░реЛрдХ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛:

import React from 'react';
import {Text} from 'drei';

const StrokedText: React.FC<
  {
    strokeWidth?: number;
    strokeColor?: string;
    strokeResolution?: number;
    bold?: boolean;
  } & any
> = ({
  strokeWidth = 1,
  strokeColor: color = '#000000',
  strokeResolution = 100,
  position,
  bold,
  ...props
}) => {
  const font = bold ? FONTS.BOLD : undefined;
  const sharedProps = {
    ...props,
    font,
    color,
    sdfGlyphSize: 12,
    debugSDF: true,
  };

  let zOffset = 0;
  const offset = () => (zOffset += 0.001);

  return (
    <group name="Stroked Text" position={position}>
      {Array(strokeWidth)
        .fill({})
        .map((_, i) => {
          const s= i / strokeResolution;
          return (
            <React.Fragment key={i}>
              {/* <Text {...sharedProps} position={[-s, 0, offset()]} />*/}
              {/* <Text {...sharedProps} position={[s, 0, offset()]} />*/}
              <Text {...sharedProps} position={[0, -s, offset()]} />
              <Text {...sharedProps} position={[0, s, offset()]} />
              <Text {...sharedProps} position={[-s, -s, offset()]} />
              <Text {...sharedProps} position={[s, s, offset()]} />
              {/* <Text {...sharedProps} position={[-s, s, offset()]} /> */}
              {/* <Text {...sharedProps} position={[s, -s, offset()]} /> */}
            </React.Fragment>
          );
        })}
      <Text name="Text" {...props} position={[0, 0, strokeWidth ? offset() : 0]} />
    </group>
  );
};

export default StrokedText;

рдлрд┐рд░ рдХрд╣реАрдВ рдФрд░, рдореИрдВ рдЗрд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ <Text /> $ рдХреЗ рдмрдЬрд╛рдп <StrokedText /> рдХреЗ рд╕рд╛рде рдХреЙрд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ:

<StrokedText
  color="#ffffff"
  fontSize={fontSize}
  clipRect={[-0.5, -0.15, 0.5, 0.15]}
  textAlign="center"
  position={[0, 0, 0.01]}
>
  {text}
</StrokedText>

image

@FunMiles рдЕрдВрдд рдореЗрдВ рдЖрдкрдХреЗ рд╕реБрдЭрд╛рд╡реЛрдВ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрд░реЗ рдкрд╛рд╕ рдХреБрдЫ рд╕рдордп рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдХрд┐ рдЧреНрд▓рд┐рдлрд╝ рдХреЗ рдПрд╕рдбреАрдПрдл рдЖрдпрдд рдХреА рд╕рдВрдкреВрд░реНрдгрддрд╛ рдореЗрдВ рдЙрдкрдпреЛрдЧреА (> 0.0) рджреВрд░реА рдорд╛рди рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ; рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЗрд╕реЗ "рдПрдХреНрд╕" рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдкрдиреЗ рдлреЙрд▓реЛрдЕрдк рдореЗрдВ рдорд╣рд╕реВрд╕ рдХрд░ рд░рд╣реЗ рдереЗ, рдЬрд╣рд╛рдВ рдПрд╕рдбреАрдПрдл рдХреНрд╡рд╛рдб рдХреА рд╕реАрдорд╛ рдХреЗ рднреАрддрд░ рд╢реВрдиреНрдп рддрдХ рдЧрд┐рд░ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдРрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХреНрд╖реЗрддреНрд░ рд╣реИрдВ рдЬрд╣рд╛рдВ рдХреЛрдИ рдЙрдкрдпреЛрдЧреА рджреВрд░реА рдврд╛рд▓ рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕рд╕реЗ рдПрдХреНрд╕рдЯреНрд░рдкрд▓реЗрд╢рди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗ:

image

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

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

рдореИрдВрдиреЗ рдпрд╣ рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ, рдФрд░ рд╣рд╛рдБ рдпрд╣ рджреВрд░реА рдХреНрд╖реЗрддреНрд░ рдХреЛ рдХреНрд╡рд╛рдб рд╕реАрдорд╛рдУрдВ рд╕реЗ рдкрд░реЗ рдирд┐рдХрд╛рд▓рдиреЗ рдХреА рдЗрдЬрд╛рдЬрдд рджреЗрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЬреИрд╕рд╛ рдХрд┐ рдореБрдЭреЗ рдбрд░ рдерд╛ рдХрд┐ рдпрд╣ рдЧреНрд▓рд┐рдл рдХреА рдЧреБрдгрд╡рддреНрддрд╛ рдХреЛ рдХрд╛рдлреА рдХрдо рдХрд░ рджреЗрддрд╛ рд╣реИред рдпрд╣ рдХреЗрд╡рд▓ 8-рдмрд┐рдЯ рдЧреНрд░реЗрдбрд┐рдПрдВрдЯ рдХреЗ рд╕рд╛рде рдЕрдкреЗрдХреНрд╖рд┐рдд рд╣реИ; рдЗрд╕реЗ рдмрдбрд╝реА рджреВрд░реА рдкрд░ рдлреИрд▓рд╛рдиреЗ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдЯреЗрдХреНрд╕рд▓ рдкрд░ рдХрдо рдкрд░рд┐рд╢реБрджреНрдзрддрд╛ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддреА рд╣реИред :(

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

рдПрдХ рджреВрд╕рд░реЗ рдмрдирд╛рд╡рдЯ рдЪреИрдирд▓ рдореЗрдВ рдПрдиреНрдХреЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ред

@lojjic рдпрд╣ рдмрд╣реБрдд рд╣реА рдЙрдЪрд┐рдд рд▓рдЧрддрд╛ рд╣реИ рдФрд░ рдореВрд▓ рд░реВрдк рд╕реЗ рдЕрднреА рдореЗрд░реЗ рдХрд╛рдордХрд╛рдЬ рдХреА рдирдХрд▓ рдХрд░рддрд╛ рд╣реИред рд╕рд╛рде рд╣реА, рдпрд╣ рдСрдкреНрдЯ-рдЗрди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЖрдЙрдЯрд▓рд╛рдЗрди рдирд╣реАрдВ рдорд╛рдВрдЧрддрд╛ рд╣реИ рддреЛ рдХреЛрдИ рдкреВрд░реНрдг рд╣рд┐рдЯ рдирд╣реАрдВ рд╣реИред

@lojjic @stephencorwin рджреНрд╡рд╛рд░рд╛ рд╕реБрдЭрд╛рдП рдЧрдП рдСрдкреНрдЯ-рдЗрди рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реЛрдЧрд╛ рдХрд┐ рдХреЛрдИ рднреА рднреБрдЧрддрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реЛрдиреЗ рд╕реЗ рдЕрдзрд┐рдХ рднреБрдЧрддрд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рддрдХрдиреАрдХреА рдкрд╣рд▓реВ рдкрд░ рд╡рд╛рдкрд╕ред рдЖрдЗрдП рдЖрдкрдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдПрдХреНрд╕ рдЫрд╡рд┐ рд▓реЗрдВред рдХреНрдпрд╛ рдореИрдВ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдордЭ рд░рд╣рд╛ рд╣реВрдБ рдХрд┐ рд╕рднреА рдЧреНрд▓рд┐рдлрд╝ рдХреЗ рд▓рд┐рдП, рдпрд╣ 64x64 рдкрд┐рдХреНрд╕реЗрд▓ рд╣реИ? 8 рдмрд┐рдЯреНрд╕ рдХреЗ рд╕рд╛рде, рдпрджрд┐ рдЖрдкрдХреЛ рдкреВрд░реА рджреВрд░реА рдХреЗ рд╕реНрдерд╛рди рдХреЛ рдПрдиреНрдХреЛрдб рдХрд░рдирд╛ рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ 2 _fractional_ рдмрд┐рдЯреНрд╕ рдХреА рд╕рдЯреАрдХрддрд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдХрд╣ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рд╕рдЯреАрдХрддрд╛ рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИред

рдмрд╣реБрдд рдХрдо рд▓рд╛рдЧрдд рдкрд░ рд╕рдЯреАрдХрддрд╛ рд╣рд╛рд╕рд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╢рд╛рдпрдж рдПрдХ рддрд░рдХреАрдм рд╣реИред 8 рдмрд┐рдЯреНрд╕ рдХреЗ 64x64 рдХреЗ рдЧреНрд░рд┐рдб рдХреЛ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, 2x2 рдмреНрд▓реЙрдХ рдХреЗ рдбреЗрдЯрд╛ рдХреЛ 32-рдмрд┐рдЯ рдбреЗрдЯрд╛ рдореЗрдВ рд╕рдВрдкреАрдбрд╝рд┐рдд рдХрд░реЗрдВред рджреЛ рдкрд┐рдХреНрд╕рд▓ рдХреЗ рдмреАрдЪ рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рджреВрд░реА рдХреА рдПрдХ рд╕реНрдкрд╖реНрдЯ рд╡рд┐рд╢реЗрд╖рддрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рд╣рдореЗрд╢рд╛ [-1,1] рджрд╛рдПрдВ рдФрд░ рдмрд╛рдПрдВ, рдКрдкрд░ рдФрд░ рдиреАрдЪреЗ рдФрд░ [-sqrt(2), sqrt(2)] рд╡рд┐рдХрд░реНрдг рдореЗрдВ рд╣реЛрддрд╛ рд╣реИред рддреЛ рдХрд▓реНрдкрдирд╛ рдХреАрдЬрд┐рдП рдХрд┐ рдЖрдк 2x2 рдмреНрд▓реЙрдХ рдХреЗ рдХреЗрдВрджреНрд░ рдХреЗ рдПрд╕рдбреА рдХреЗ рд▓рд┐рдП 12 рдмрд┐рдЯреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЖрдкрдХреЗ рдкрд╛рд╕ рдкрд┐рдХреНрд╕реЗрд▓ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЗрдВрджреНрд░ рдХреЗ рд▓рд┐рдП рдЙрдирдХреЗ рдХреЗрдВрджреНрд░ рдФрд░ 2x2 рдХреЗ рдХреЗрдВрджреНрд░ рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдХреЛ рдПрдиреНрдХреЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП 5 рдмрд┐рдЯ рд╣реЛрдВрдЧреЗред рдпреЗ 5 рдмрд┐рдЯ рдЕрдзрд┐рдХрддрдо sqrt(2)/2 рджреВрд░реА рдкрд░ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреЗ рд╣реИрдВред рдкреНрд░рднрд╛рд╡реА рд░реВрдк рд╕реЗ рдЖрдкрдХреЗ рдкрд╛рд╕ 5.5 рдмрд┐рдЯ рд╕рдЯреАрдХрддрд╛ рд╣реИред
рдХреЗрдВрджреНрд░ рдмрд┐рдВрджреБ 12 рдмрд┐рдЯреНрд╕ рдЕрдзрд┐рдХрддрдо 64 рдХреА рджреВрд░реА рдкрд░ рд╕рдЯреАрдХрддрд╛ рдХреЗ рдХрдо рд╕реЗ рдХрдо 6 рдмрд┐рдЯреНрд╕ рдХреЛ рдПрдиреНрдХреЛрдб рдХрд░рддреЗ рд╣реИрдВред рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ рдпрджрд┐ рдмреЙрдХреНрд╕ рдореЗрдВ рдПрдХ рдХреЛрдиреЗ рдкрд░ рдХреЗрд╡рд▓ рдПрдХ рдмрд┐рдВрджреБ рд╣реЛрддрд╛ рд╣реИ рддреЛ 12 рдмрд┐рдЯ рдХреЛ sqrt(2)*64 рддрдХ рдПрдиреНрдХреЛрдб рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдВрднрд╡ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдмреЙрдХреНрд╕ рдкреНрд░рддреНрдпреЗрдХ рдЧреНрд▓рд┐рдлрд╝ рдХреЗ рдЖрд╕рдкрд╛рд╕ рдЙрдЪрд┐рдд рд░реВрдк рд╕реЗ рдХреЗрдВрджреНрд░рд┐рдд рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдХрд┐рд╕реА рднреА рдЧреНрд▓рд┐рдлрд╝ рдХрд┐рдирд╛рд░реЗ рд╕реЗ рдЖрдЧреЗ рдФрд░ рдХрдо рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдбреЗрд▓реНрдЯрд╛ рдХреЛ рдПрдиреНрдХреЛрдб рдХрд░рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ, (рдЬрдм рдЖрдк рдЧреНрд▓рд┐рдлрд╝ рдХрд┐рдирд╛рд░реЗ рд╕реЗ рдмрд╣реБрдд рджреВрд░ рд╣реЛрддреЗ рд╣реИрдВ, рддреЛ рдврд╛рд▓ рдХреНрд╖реЗрддреНрд░ рдПрдХ рдкрдбрд╝реЛрд╕ рдореЗрдВ рд▓рдЧрднрдЧ рдПрдХ рд╕рдорд╛рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ) рдЗрд╕рд▓рд┐рдП рд╕реВрдЪрдирд╛ рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ, рдпрд╣ рд╕рдо рд╣реИ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдореЗрдВ рд╕реБрдзрд╛рд░ рд╕рдВрднрд╡ рд╣реИ
рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рдЕрдзрд┐рдХ рдЕрдВрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП.... рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдЕрдиреБрдХреВрд▓рди рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛ред

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

рдЕрдЧрд░ рдЖрдкрдХреЛ рдорджрдж рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ, рддреЛ рдореИрдВ рдЗрди рд╕рднреА рдХреЗ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ/рдбрд┐рдХреЛрдбрд┐рдВрдЧ рдХреЛ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

рдкреБрдирд╢реНрдЪ: рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдЕрдзрд┐рдХ рдкрд░рд┐рд╖реНрдХреГрдд рдПрд╕рдбреАрдПрдл рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ README.md рдореЗрдВ рд╕реЗ рдПрдХ рдореЗрдВ рдЪрд░реНрдЪрд╛ рджреЗрдЦрдиреЗ рдХреА рд╕реНрдореГрддрд┐ рд╣реИред рдХреНрдпрд╛ рдореИрдВрдиреЗ рд╕рдкрдирд╛ рджреЗрдЦрд╛? ЁЯШЫ рдХреНрдпрд╛ рдХреЛрдИ рдореБрдЭреЗ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд╛рдкрд╕ рдЗрдВрдЧрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╡рд╣ рдЕрдиреНрдп рдкреНрд░рдгрд╛рд▓реА рдпрд╣рд╛рдВ рдорджрдж рдХрд░ рд╕рдХрддреА рд╣реИ?

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

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

рдкреБрдирдГред рдПрдХ "рдЕрдзрд┐рдХ рдкрд░рд┐рд╖реНрдХреГрдд рдПрд╕рдбреАрдПрдл", рдЖрдкрдХрд╛ рдорддрд▓рдм "рдПрдордПрд╕рдбреАрдПрдл" рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдПрдХрд╛рдзрд┐рдХ рд░рдВрдЧ рдЪреИрдирд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ?

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

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

рдЗрд╕рд╕реЗ рдЖрдкрдХреЛ рдЕрдзрд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ рдПрдХ рдмрд┐рдЯ рд╕рдЯреАрдХрддрд╛ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдЧреАред рдЫреАрдВрдХ рдирд╣реАрдВ рдЖрдиреА рдЪрд╛рд╣рд┐рдП рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рдЗрддрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИред

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

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

рдПрд╕рдбреАрдПрдл рдпрд╣рд╛рдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ: https://github.com/protectwise/troika/blob/master/packages/troika-three-text/src/worker/SDFGenerator.js#L134 - рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рдордЭрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмрд╣реБрдд рдХреБрдЫ рдирд╣реАрдВ рд╣реИ, рдЬреНрдпрд╛рджрд╛рддрд░ рдЯреЗрдХреНрд╕рд▓реНрд╕ рдХреЛ рдлреЙрдиреНрдЯ рдпреВрдирд┐рдЯреНрд╕ рдореЗрдВ рдореИрдк рдХрд░рдирд╛ рдФрд░ рдЯреЗрдХреНрд╕рд▓ рд╡реИрд▓реНрдпреВ рдореЗрдВ рдорд╛рдкреА рдЧрдИ рджреВрд░рд┐рдпреЛрдВ рдХреЛ рд▓рд┐рдЦрдирд╛ред рд╣рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ 2x2 рдмреНрд▓реЙрдХ рдХреЗ рдХреЗрдВрджреНрд░ рдмрд┐рдВрджреБ рдХреЗ рд▓рд┐рдП рд╡рд╣рд╛рдВ рдХреБрдЫ рдЕрддрд┐рд░рд┐рдХреНрдд рджреВрд░реА рдорд╛рдк рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ред

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

  • рдпрджрд┐ рдмрд┐рд▓реНрдХреБрд▓ рдПрдХ рдЯреЗрдХреНрд╕рд▓ рдХреЗ рдХреЗрдВрджреНрд░ рдкрд░: рдпрд╛ рддреЛ 2 рдпрд╛ 3 рдмрдирд╛рд╡рдЯ рдХреЗ рдирдореВрдиреЗ
  • рдпрджрд┐ 2x2 рдмреНрд▓реЙрдХ рдХреЗ 4 рдЯреЗрдХреНрд╕рд▓реНрд╕ рдХреЗ рдмреАрдЪ: 4 рдмрдирд╛рд╡рдЯ рдХреЗ рдирдореВрдиреЗ
  • рдпрджрд┐ рджреЛ рдкрдбрд╝реЛрд╕реА рдмреНрд▓реЙрдХреЛрдВ рдХреЗ рдмреАрдЪ: ~9 рдмрдирд╛рд╡рдЯ рдХреЗ рдирдореВрдиреЗ~ рдпрд╛ рддреЛ 7 рдпрд╛ 8 рдмрдирд╛рд╡рдЯ рдХреЗ рдирдореВрдиреЗ
  • рдпрджрд┐ рдЪрд╛рд░ рдкрдбрд╝реЛрд╕реА рдмреНрд▓реЙрдХреЛрдВ рдХреЗ рдмреАрдЪ: ~11 рдмрдирд╛рд╡рдЯ рдХреЗ рдирдореВрдиреЗ~13 рдмрдирд╛рд╡рдЯ рдХреЗ рдирдореВрдиреЗ

рдХреНрдпрд╛ рдореИрдВ рдЗрд╕реЗ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдЯрдЯреЛрд▓ рд░рд╣рд╛ рд╣реВрдБ?

рдУрд╣ рд░реБрдХреЛ, рдореИрдВ рдЕрднреА рднреА рдПрдХрд▓-рдЪреИрдирд▓ рдмрдирд╛рд╡рдЯ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪ рд░рд╣рд╛ рдерд╛ред рдЪрд╛рд░ рдЖрд░рдЬреАрдмреАрдП рдЪреИрдирд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдкреНрд░рддреНрдпреЗрдХ рдбреЗрдЯрд╛ рдмреНрд▓реЙрдХ рдХреЗрд╡рд▓ рдПрдХ рд╣реА рдкрдврд╝рд╛ рдЬрд╛рддрд╛ рд╣реИред рддреЛ рдЕрдзрд┐рдХрддрдо 4 рдмрдирд╛рд╡рдЯ рдХреЗ рдирдореВрдиреЗред

рдореИрдВрдиреЗ SDFGenerator.js рдкрдврд╝рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ рдерд╛ред рдореИрдВ рдЗрд╕реЗ рдФрд░ рджреЗрдЦреВрдВрдЧрд╛ред

рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдЖрдкрдХреЛ рдкреНрд░рддрд┐ рдЦрдВрдб рдПрдХ рдЯреЗрдХреНрд╕рд▓ рдкрдврд╝рдиреЗ рд╕реЗ рдЕрдзрд┐рдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬрдм рддрдХ рдХрд┐ рдЖрдк рдХреЛрдиреЗ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЕрд▓реНрдлрд╛ рд╕рдореНрдорд┐рд╢реНрд░рдг рдореЗрдВ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕реБрдзрд╛рд░ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЬрд╣рд╛рдВ рдЖрдк рд╕рднреА рддрд░рдл рдЧреНрд▓рд┐рдлрд╝ рдХрд┐рдирд╛рд░реЛрдВ рд╕реЗ рдШрд┐рд░реЗ рдмрд┐рдВрджреБ рдкрд░ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдкрдХреЛ рдмрд╕ 2x2 рдмреНрд▓реЙрдХ рдХреЗ рдирд┐рдХрдЯрддрдо рдХреЗрдВрджреНрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдЯреБрдХрдбрд╝реЗ рдХрд╛ рдХреЗрдВрджреНрд░ рд╣реИред
рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореБрдЭреЗ рдПрд╣рд╕рд╛рд╕ рд╣реИ рдХрд┐ рдПрдХ рдРрд╕реА рдХрдард┐рдирд╛рдИ рд╣реЛ рд╕рдХрддреА рд╣реИ рдЬрд┐рд╕рдХреА рдореИрдВрдиреЗ рдХрд▓реНрдкрдирд╛ рдирд╣реАрдВ рдХреА рдереА... рд╡реЗрдмрдЬреАрдПрд▓ 1.0 рдЬреЛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдЙрд╕рдореЗрдВ рдмрд╣реБрдд рд╕реАрдорд┐рдд рд╣реИ рдЬреЛ рдпрд╣рд╛рдВ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рд╣реЛрдЧрд╛: рдХреЛрдИ рдЕрд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреВрд░реНрдгрд╛рдВрдХ рдкреНрд░рдХрд╛рд░ uint 32 рдмрд┐рдЯ рдкреВрд░реНрдгрд╛рдВрдХ рднреА рдирд╣реАрдВ! рдФрд░ рдХреЛрдИ рдмрд┐рдЯрд╡рд╛рдЗрдЬрд╝ рдСрдкрд░реЗрд╢рди рдирд╣реАрдВ ... рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЬреЛ рдХрдВрдкреНрд░реЗрд╢рди рд╕реБрдЭрд╛ рд░рд╣рд╛ рд╣реВрдВ рд╡рд╣ 16 рдмрд┐рдЯ рдкреВрд░реНрдгрд╛рдВрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓рд┐рдЦрдирд╛ рдереЛрдбрд╝рд╛ рдЕрдзрд┐рдХ рдореБрд╢реНрдХрд┐рд▓ рд╣реИред

рдпреЗ рд╕рднреА рд╡реЗрдмрдЬреАрдПрд▓ 2.0 рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИрдВ рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдпрд╣рд╛рдВ рд╡реЗрдмрдЬреАрдПрд▓ 1.0 рдХреЛ рд▓рдХреНрд╖рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?

рдпреЗ рд╕рднреА рд╡реЗрдмрдЬреАрдПрд▓ 2.0 рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИрдВ рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдпрд╣рд╛рдВ рд╡реЗрдмрдЬреАрдПрд▓ 1.0 рдХреЛ рд▓рдХреНрд╖рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?

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

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

рдЕрд░реЗ @lojjic , тАЛтАЛрдмрд╕ рдЗрд╕ рдкрд░ рдЬрд╛рдБрдЪ рдХрд░ рд░рд╣рд╛ рд╣реВрдБред рдХреЛрдИ рдкреНрд░рдЧрддрд┐ рдпрд╛ рдЪреАрдЬреЗрдВ рдЬрд┐рд╕рд╕реЗ рд╣рдо рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

рд╕рд╛рдЗрдб рдиреЛрдЯ: рд╕рдлрд╛рд░реА рдЕрдВрддрддрдГ WebGL2 рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖ рд░рд╣реА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП WebGL1 рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рд╣рдорд╛рд░рд╛ WebGL2 рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛рдлреА рдЕрдЪреНрдЫреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдЗрд╕реЗ рд╡реНрдпрд╛рдкрдХ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕рдХреНрд╖рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
https://trac.webkit.org/changeset/267027/webkit

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

рджрд┐рд▓рдЪрд╕реНрдк рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рд╡реЗрдмрдЬреАрдПрд▓ 1.0 рдореЗрд░реЗ рд╡рд┐рдЪрд╛рд░ рд╕реЗ рднреА рдмрджрддрд░ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИред рдкреВрд░реНрдгрд╛рдВрдХ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИрдВ:

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

рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВрдиреЗ рдЙрдореНрдореАрдж рдирд╣реАрдВ рдЦреЛрдИ рд╣реИред рдореБрдЭреЗ рдмрд╕ рдереЛрдбрд╝рд╛ рд╕рд╛ рдкреБрдирд░реНрд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рд╣реИ ...
рдЗрд╕ рдмреАрдЪ, @lojjic , тАЛтАЛрдХреНрдпрд╛ рдЖрдк рд╣рдореЗрдВ рдмрддрд╛ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдЖрдкрдиреЗ рдХрд┐рд╕ рд╡реИрдХрд▓реНрдкрд┐рдХ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрд╛ рд╣реИ?

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

рдореИрдВрдиреЗ рдЗрд╕реЗ рджреЛ-рд╕реНрддрд░реАрдп рд░реИрдЦрд┐рдХ рдкреИрдорд╛рдиреЗ рдФрд░ рдПрдХ рдШрд╛рддреАрдп рдкреИрдорд╛рдиреЗ рджреЛрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рд╛рдмрд┐рдд рдХрд░ рджрд┐рдпрд╛ рд╣реИред рджреЛрдиреЛрдВ рдХреЗ рдкрдХреНрд╖ рдФрд░ рд╡рд┐рдкрдХреНрд╖ рд╣реИрдВред

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

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

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

рдкреАрдПрд╕: рд╡реЗрдмрдЬреАрдПрд▓ рдкреВрд░реНрдгрд╛рдВрдХ рдмрдХрд╡рд╛рд╕ рдкрдврд╝рдиреЗ рдХреЗ рдмрд╛рдж рдЖрдЬ рдореЗрд░реЗ рдкрд╛рд╕ рд╕рдЯреАрдХрддрд╛ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдЖрдпрд╛ рдерд╛ ... рдЕрдзрд┐рдХ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд╕рд╛рде рдЕрдзрд┐рдХ рдмрд┐рдЯреНрд╕ред рдпрд╛рдиреА rgba рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, a рдФрд╕рдд рдХреЗ 8 рдмрд┐рдЯ рд░рдЦ рд╕рдХрддрд╛ рд╣реИ, рдлрд┐рд░ рдкреНрд░рддреНрдпреЗрдХ rgb рдХреЗ рд▓рд┐рдП, рдЙрди рдкрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗ рдФрд░ рд╕рдВрдХреЗрдд рдкреНрд░рддреНрдпреЗрдХ рд╕рдЯреАрдХрддрд╛ рдХреЗ 1 рдмрд┐рдЯ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░реЗрдЧрд╛ рдФрд╕рдд, рдлрд┐рд░ рдЕрдВрдд рдореЗрдВ рд╢реЗрд╖, рдЬреЛ рдХрд┐ 0-127 рдХреА рд╕реАрдорд╛ рдореЗрдВ рд╣реЛрдЧрд╛, рдХрд╛ рдорд╛рди 64 рдШрдЯрд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдЬреЛ рдЖрд╡рд╢реНрдпрдХ 4 рдореЗрдВ рд╕реЗ 3 рдорд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП 7 рдмрд┐рдЯреНрд╕ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░реЗрдЧрд╛ред рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдорд╛рди рдпрд╣ рдХреЗрдВрджреНрд░ рд╣реЛрдЧрд╛ (0 рд╕реЗ 2^11-1 рддрдХ) + dist_i. рдЪреМрдерд╛ рдорд╛рди рдЙрдирдХреА рд░рд╛рд╢рд┐ рдХреЛ рдШрдЯрд╛рдХрд░ рд╡рд╕реВрд▓ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпреЛрдЧ рдФрд╕рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдПрдХ рдХреЛ рдХреЗрд╡рд▓ 11 рдмрд┐рдЯ рдорд┐рд▓реЗрдВрдЧреЗ, рд▓реЗрдХрд┐рди рдпрд╣ рд╢рд╛рдпрдж рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред рдЕрдзрд┐рдХ рдмрд┐рдЯреНрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдХрд┐ рдХреНрдпрд╛ рдореВрд▓реНрдп рдпрд╛ r , g , рдФрд░ b -64 рд╕реЗ рдЫреЛрдЯреЗ рд╣реИрдВ, рд╕рдХрд╛рд░рд╛рддреНрдордХ рдпрд╛ рдирдХрд╛рд░рд╛рддреНрдордХ, 64 рд╕реЗ рдмрдбрд╝реЗ рд╣реИрдВред рдпрд╣ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рд╣реЛрдЧрд╛ рдХреЗрдВрджреНрд░ рдХреЗ рд▓рд┐рдП 14 рдмрд┐рдЯ рдФрд░ рдЕрдВрддрд░ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ 6 рдмрд┐рдЯ рджреЗрдВред рд╢рд╛рдпрдж рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕рдордЭреМрддрд╛? рдореБрдЭреЗ рдпрд╣ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдХрд┐ рдмрд╣реБрдд рд╣реА рдвреАрд▓реА рдЧрд╛рд░рдВрдЯреА рд╣реИ рдХрд┐ WebGL 1.0 рд╕рдЯреАрдХрддрд╛ рдкрд░ рд░рдЦрддрд╛ рд╣реИ, рдЗрд╕ рд╕реЛрдЪ рдореЗрдВ рд╣рд╕реНрддрдХреНрд╖реЗрдк рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ ....

рд╣рд╛рдБ, рдореЗрд░рд╛ рдпрд╣реА рдорддрд▓рдм рдерд╛, рд╡реЗ рдХреНрд╖реЗрддреНрд░ рдЬрд╣рд╛рдБ U рдФрд░ V рджреЛрдиреЛрдВ 0-1 рд╕реЗ рдмрд╛рд╣рд░ рд╣реИрдВред рдзрдиреНрдпрд╡рд╛рдж, рдореИрдВ рдЗрд╕реЗ рдПрдХ рд╢реЙрдЯ рджреВрдВрдЧрд╛ред

@lojjic рдПрдХ рдЕрд▓рдЧ рдкреНрд░рд╢реНрди рдХреЗ рд░реВрдк рдореЗрдВ, рдкрд┐рдЫрд▓реА рдкреЛрд╕реНрдЯ рдореЗрдВ, рдЖрдк рд╕реНрдореГрддрд┐ рдХреЗ рдХрд╛рд░рдг рдкреНрд░рддрд┐ рдПрд╕рдбреАрдПрдл рдЯреЗрдХреНрд╕рд▓ рдореЗрдВ рджреЛ рдмрдирд╛рд╡рдЯ рдорд╛рди рд░рдЦрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд┐рдд рдереЗред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдореИрдВ рд╕реНрд╡рдпрдВ рдореЗрдореЛрд░реА рдХреЛ рдХрдо рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдБ, 64x64 рдЧреНрд░рд┐рдб рдкрд░ 256 рдЧреНрд▓рд┐рдлрд╝ рдХреЗрд╡рд▓ 1/4MB рдмрдирд╛рд╡рдЯ рдореЗрдореЛрд░реА рдХреА рдЦрдкрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдФрд░ рдЕрдзрд┐рдХ рдЧреНрд▓рд┐рдлрд╝ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА, рдмреАрдмреАрд╕реА рдХрд╛ рдХрд╣рдирд╛ рд╣реИ рдХрд┐ рд╕рдорд╛рдЪрд╛рд░ рдкрддреНрд░ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ 2000/3000 рд╡рд░реНрдгреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рддреЛ 4000 рд╡рд░реНрдг рдПрдХ рдмрд╛рдЗрдЯ рдкреНрд░рддрд┐ рдЯреЗрдХреНрд╕рд▓ рдПрд╕рдбреАрдПрдл рдХреЗ рд╕рд╛рде 4 рдПрдордмреА рдХреЗ рд▓рд┐рдП рдмрдирд╛рдПрдВрдЧреЗред рдЪрд┐рдВрддрд╛ рдХрд░рдиреЗ рд▓рд╛рдпрдХ?

@FunMiles рдореЗрд▓рд╛ рдмрд┐рдВрджреБ, рдФрд░ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрд╕ tbh рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рдЪрд┐рдВрддрд┐рдд рдирд╣реАрдВ рдерд╛ред

рдХреБрдЫ рдмрдХрд╛рдпрд╛ рдХрд╛рдо рдХрд░рдирд╛ рдмрд╛рдХреА рд╣реИ, рд▓реЗрдХрд┐рди b19cd3aff4b0876253d76b3fc66b7e2a1f16a7e5 рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рддрд╛ рд╣реИред рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рддреАрди-рдлрд╛рдЗрдмрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЛрдВ рдХреЗ рд▓рд┐рдП, рдЗрд╕реЗ рдбреНрд░реЗрдИ v2.2.0 . рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ
https://github.com/pmndrs/drei/pull/156

рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмрдВрдж рд╣реИ рд▓реЗрдХрд┐рди рдореИрдВ рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж рдХрд╣рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдореБрдЭреЗ рдпрд╣ рдореЗрд░реЗ рдРрдк рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд┐рд▓рд╛ рд╣реИред рдереЛрдбрд╝рд╛ рд╕рдордЭ рдореЗрдВ рдЖрдпрд╛ рдХрд┐ рдЧреБрдг рд░реВрдкрд░реЗрдЦрд╛ рдЖрдХрд╛рд░ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдПрдХ рд╕рдВрдЦреНрдпрд╛ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдкрд░рд┐рдгрд╛рдо рд╡рд╣реА рд╣реИ рдЬреЛ рдореБрдЭреЗ рдЪрд╛рд╣рд┐рдП рдерд╛ред
Screen Shot 2020-11-09 at 7 44 52 PM

@FunMiles рдЕрдЪреНрдЫрд╛ рд▓рдЧ рд░рд╣рд╛ рд╣реИ! рдЖрдк _ рдЪрд╛рд╣рд┐рдП_ outlineWidth рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдорд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВ, рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рдпрд╣ рдЖрдкрдХреЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ рддреЛ рдореБрдЭреЗ рдмрддрд╛рдПрдВред

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

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

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

atlmtw picture atlmtw  ┬╖  47рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

drcmda picture drcmda  ┬╖  11рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Ocelyn picture Ocelyn  ┬╖  13рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

natarius picture natarius  ┬╖  14рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

asbjornlystrup picture asbjornlystrup  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ