рдореБрдЧрд▓ рд╢реЗрдбреНрд╕

рдкреНрд░рд╛рдЧрд┐рддрд┐рд╣рд╛рд╕



рд░реВрд╕реА рдореЗрдВ Lammers рдХреА рдПрдХ рдкреБрд╕реНрддрдХ рд╕рд╛рдордиреЗ рдЖрдИ, рдЬреНрдпреЛрддрд┐рд╖рд┐рдпреЛрдВ рдиреЗ рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рдХреА ...


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





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







рдкрд░рд┐рдЪрдп



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



рд╡рд╣ рдЬрд┐рд╕рдХрд╛ рдирд╛рдо рдирд╣реАрдВ рдХрд╣рд╛ рдЬрд╛ рд╕рдХрддрд╛



Unity3D рдиреЗ HLSL рдФрд░ CG (рд╢реЗрдбрд░ рд▓реИрдВрдЧреНрд╡реЗрдЬ) - Shader Lab рдкрд░ рдПрдХ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЖрд╡рд░рдг рдмрдирд╛рдпрд╛ред рдпрд╣ рдЖрдкрдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдирдП рд╢реЗрдб рд▓рд┐рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ рдФрд░ рдмрд╣реБрдд рдХреБрдЫ рд╕реНрд╡рд╛рджрд┐рд╖реНрдЯ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди Shader Lab рдЕрднреА рднреА рдПрдХ рдЖрд╡рд░рдг рд╣реИ, рдФрд░ рдЕрдВрджрд░ рд╣рдо рдЕрднреА рднреА рдЗрдирдореЗрдВ рд╕реЗ рдПрдХ рднрд╛рд╖рд╛ рдореЗрдВ рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рдРрддрд┐рд╣рд╛рд╕рд┐рдХ рд░реВрдк рд╕реЗ рдпрд╣ рд╣реБрдЖ рд╣реИ рдХрд┐ рд▓рдЧрднрдЧ рд╕рднреА рд▓реЛрдЧ CG рдореЗрдВ рд▓рд┐рдЦрддреЗ рд╣реИрдВред рдпреВрдирд┐рдЯреА 3 рдбреА рднреА рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕реВрдЪрдирд╛рдУрдВ рдХреЛ рд╢реЗрдбрд░ рдореЗрдВ рд╣реА рдлреЗрдВрдХрддреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдХреЗрд╡рд▓ рдпрд╣ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдХреНрдпрд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рд╡рд╣рд╛рдВ рдЗрдВрдЬрди рдЗрд╕рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдПрдЧрд╛ред



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



рдкрд╣рд▓рд╛ рд╢реЗрдбрд░ рд▓рд┐рдЦрдирд╛



рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╣рдореЗрдВ рдпрд╣ рдорд┐рд▓рддрд╛ рд╣реИ:

рдЫрд╡рд┐



рд╣рд╛рдБ, рдпрд╣ рдЯреЗрд░реАрди рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЧрдВрджрд╛ рд╣реИред рдиреАрдЪреЗ рдкрдВрдХреНрддрд┐ рд╣реИ:





рдирддреАрдЬрддрди, рд╣рдореЗрдВ рдврд▓рд╛рди рдкреНрд░рджреВрд╖рдг рдорд┐рд▓рддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╣рдо рдореБрдЦреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдФрд░ рдХрд╛рд░реНрдпреЛрдВ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдВрдЧреЗ рдЬреЛ рд╣рд▓ рдХрд░рддреЗ рд╣реИрдВред рдореИрдВ рдХреЛрдб рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░реВрдВрдЧрд╛:



Shader "Custom/HeightMapTexture" { //       Properties { //    Unity3D _HeightTex ("HeightMap Texture", 2D) = "white" {} // ,     .      _GrassTex ("Grass Texture", 2D) = "white" {} // 2D      _RockTex ("Rock Texture", 2D) = "white" {} } SubShader { Tags { "RenderType"="Opaque" } //   LOD 200 CGPROGRAM //     CG      #pragma surface surf Lambert //  . ,  :  Surface    . sampler2D _GrassTex; //         Properties        sampler2D _RockTex; sampler2D _HeightTex; struct Input { //      ,         float2 uv_GrassTex; //uv   ,        float2 uv_RockTex; float2 uv_HeightTex; }; void surf (Input IN, inout SurfaceOutput o) { //    //      UV float4 grass = tex2D(_GrassTex, IN.uv_GrassTex); // float4 rock = tex2D(_RockTex, IN.uv_RockTex); //\ float4 height = tex2D(_HeightTex, IN.uv_HeightTex); //  o.Albedo = lerp(grass, rock, height); //            //     SurfaceOutput       :) } ENDCG } FallBack "Diffuse" // -      }
      
      







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





рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЧрдпрд╛? рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдЖрдкрдХреЛ рддрддреНрдХрд╛рд▓ рдПрдХ рд╕реЗрдм рдкрд╛рдИ рдЦрд╛рдиреЗ рдФрд░ рдлрд┐рд░ рд╡рд╛рдкрд╕ рдЖрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред 70% рдореЗрдВ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЕрд░реЗ рд╣рд╛рдБ, рд╣рдо рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрд╕реА рд╕реНрдерд╛рди рдкрд░ рдПрдХ shader рдмрдирд╛рддреЗ рд╣реИрдВред рдлрд┐рд░ рд╣рдо рдЗрд╕реЗ рд╕рд╛рдордЧреНрд░реА рдкрд░ рд▓рдЯрдХрд╛рддреЗ рд╣реИрдВ, рдФрд░ рд╣рдо рд╕рд╛рдордЧреНрд░реА рдХреЛ рдЯреЗрд░рд░реАрди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдбрд╛рд▓рддреЗ рд╣реИрдВред





рдпреВрд╡реА



рдореИрдВ рдЖрдкрдХреЛ рдпреБрд╡реА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рдмрддрд╛рдКрдВрдЧрд╛, рдФрд░ рдлрд┐рд░ рдпреБрд╡реА рдиреЗ рдпреБрд╡реА рдХреЛ рдмрддрд╛рдпрд╛ - рдФрд░ рдХрд┐рд╕ рддрд░рд╣ рдХрд╛ рдЬрд╛рдирд╡рд░ рд╕рдордЭ рд╕реЗ рдмрд╛рд╣рд░ рд╣реИред



рд╕рд╛рдзрд╛рд░рдг рдорд╛рдорд▓реЗ рдореЗрдВ, рдпреВрд╡реА рд╕рдордиреНрд╡рдп рдХреЗрд╡рд▓ рдСрдмреНрдЬреЗрдХреНрдЯ рдкрд░ рд╕рдордиреНрд╡рдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИред рдпреВрд╡реА рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ 0 рд╕реЗ 1 рддрдХ рдХреА рд╕реАрдорд╛ рдореЗрдВ рд╣реЛрддреЗ рд╣реИрдВред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдмрдирд╛рд╡рдЯ рдмрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ 1 рд╕реЗ 1 рдХреЛ рдУрд╡рд░рд▓реЗ рдХрд░рддреА рд╣реИ, рд╕реНрдерд╛рдиреЛрдВ рдореЗрдВ рдЦрд┐рдВрдЪрд╛рд╡ рдХрд░рддреА рд╣реИ - рд▓реЗрдХрд┐рди рд╣рдо рдбрд░рддреЗ рдирд╣реАрдВ рд╣реИрдВред рд╣рдо рдкреНрд░рддреНрдпреЗрдХ рд╢реАрд░реНрд╖ рдХреЗ рд▓рд┐рдП рдПрдХ рдпреВрд╡реА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдмрдирд╛рд╡рдЯ рдХреЛ рднрд╛рдЧреЛрдВ рдореЗрдВ рд░рдЦреЗ рдЬрд╛рдиреЗ рдкрд░ рд╣рдореЗрдВ рдПрдХ рд╕реНрдХреИрди рдорд┐рд▓рддрд╛ рд╣реИред рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рдирд╣реАрдВ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдЬреИрд╕реЗ рдХрд┐ рдпреВрдирд┐рдЯреА 3 рдбреА рдЦреБрдж рдЬрд╛рд▓ рд╕реЗ рддреИрдирд╛рддреА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд▓реЗрддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рд╢реЗрдбрд░ рдХреЛ рднреЗрдЬрддрд╛ рд╣реИ рддрд╛рдХрд┐ рд╣рдореЗрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрдиреЗ рдХреА рдЬрд░реВрд░рдд рди рдкрдбрд╝реЗред



рд╕реБрдВрджрд░ рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдЬрд╛рдП рдФрд░ рдПрдХ рджреГрд╢реНрдп рдирд╣реАрдВ рджрд┐рдпрд╛ рдЬрд╛рдПред рдпрд╛ рдиреЙрд░реНрдорд▓ рдореИрдк рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░реЗрдВ



рд╕рд╛рдорд╛рдиреНрдп рдорд╛рдирдЪрд┐рддреНрд░ рдЖрд░рдЬреАрдмреА рдореЗрдВ рдРрд╕реА рдмрдирд╛рд╡рдЯ рд╣реЛрддреА рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╡реИрдХреНрдЯрд░ рдПрдирдХреЛрдбреЗрдб рд╣реЛрддреЗ рд╣реИрдВред рдЕрд░реНрдерд╛рддреН, рд╣рдорд╛рд░реЗ рддреНрд░рд┐-рдЖрдпрд╛рдореА рдЕрдВрддрд░рд┐рдХреНрд╖ рдореЗрдВ, рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд╡реЗрдХреНрдЯрд░ рдореЗрдВ рддреАрди рдШрдЯрдХ рд╣реЛрддреЗ рд╣реИрдВ x, y рдФрд░ zред рдЬреЛ рд╕рд┐рд░реНрдл рдмрдирд╛рд╡рдЯ рдХреЗ рдШрдЯрдХреЛрдВ рдореЗрдВ рдлрд┐рдЯ рдмреИрдарддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдпрд╣ рдмрд╣реБрдд рдЕрдЬреАрдм рд▓рдЧрддрд╛ рд╣реИ рдЬрдм рд╣рдо рдЗрд╕реЗ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдмрдирд╛рд╡рдЯ рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╡рд╣рд╛рдВ рдмреИрдареЗ рдорд╕реНрддрд┐рд╖реНрдХ рд░реЛрдЧ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рд╣реЛрддреЗ рд╣реИрдВред



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



рдХреЛ





рдХреЗ рдмрд╛рдж





рд╢реЗрдбрд░:

 Shader "Custom/BumpMapExample" { Properties { _MainTex ("Base (RGB)", 2D) = "white" {} _BumpMap ("Bump map", 2D) = "bump" {} //     } SubShader { Tags { "RenderType"="Opaque" } LOD 200 CGPROGRAM #pragma surface surf Lambert sampler2D _MainTex; sampler2D _BumpMap; struct Input { float2 uv_MainTex; float2 uv_BumpMap; }; void surf (Input IN, inout SurfaceOutput o) { half4 c = tex2D (_MainTex, IN.uv_MainTex); o.Normal = UnpackNormal(tex2D(_BumpMap, IN.uv_BumpMap)); // o.Albedo = c.rgb; o.Alpha = ca; } ENDCG } FallBack "Diffuse" }
      
      







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



рддреАрди рдЕрдХреНрд╖рдореНрдп рдордВрддреНрд░



рдпрд╣ рдХреИрд╕реЗ рдХрд░рдирд╛ рд╣реИ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рд╕рд╛:





рдирд┐рд╖реНрдХрд░реНрд╖



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



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



All Articles