рдореБрд░рдмреНрдмрд╛ рдПрд╕рдбреАрдХреЗ рдореЗрдВ рдлрд┐рдХреНрд╕реНрдб рдкреНрд╡рд╛рдЗрдВрдЯ рдореИрде

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

рдкрд╣рд▓рд╛ рднрд╛рдЧред рдкреВрд░реНрдгрд╛рдВрдХ рд╢реИрд▓реА рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ

рд╡рд╛рдгрд┐рдЬреНрдпрд┐рдХ рдЦреЗрд▓ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рдХрдИ рд╡рд░реНрд╖реЛрдВ рдХреЗ рдЕрдиреБрднрд╡ рдХреЗ рдмрд╛рдж, рдореИрдВрдиреЗ рдордИ рдореЗрдВ рдПрдХ рдЯреЛрд░рд╕ (рдореВрд▓) рдХреЛ рдлреЗрдВрдХ рджрд┐рдпрд╛ рдФрд░ рдЗрд╕реЗ рдПрдХ рдореБрд░рдмреНрдмрд╛ рдкреНрд▓рдЧ-рдЗрди рдХреЗ рд╕рд╛рде рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдпрд╛ред рдЗрд╕рдХреЗ рдмрд╛рдж рдПрдХ рдФрд░ рдЕрдзрд┐рдХ рдЖрдХрд░реНрд╖рдХ рд╕рд╡рд╛рд▓ рдерд╛ - рдХреМрди рд╕рд╛ рдореИрдЬрд┐рдХ рдореИрдЯреНрд░рд┐рдХреНрд╕ рдирдВрдмрд░ рдЬреЛ рд╡реНрдпреВ рдореИрдЯреНрд░рд┐рдХреНрд╕ рдФрд░ рдкрд░рд┐рдкреНрд░реЗрдХреНрд╖реНрдп рдореИрдЯреНрд░рд┐рдХреНрд╕ рдХреЛ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИред рдЗрд╕рдХрд╛ рдЙрддреНрддрд░ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдЗрд╕ рдмрд╛рдд рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдореЙрдбрд▓ рдХреЛ рдХреИрд╕реЗ рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдорд╛рдпрд╛ рдлреНрд▓реЛрдЯ рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рдХреЛ рдкреВрд░реНрдгрд╛рдВрдХ рдорд╛рдиреЛрдВ рдореЗрдВ рдХреИрд╕реЗ рдмрджрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИред рдмреЗрд╢рдХ, рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдореИрдВрдиреЗ рдореИрдХреНрд░реЛ IW_FIXED_FROM_FLOAT рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрд╛, рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ 1.f рдХрд╛ 0x1000 рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рд╣реЛрддрд╛ рд╣реИ (рдпрд╣ рдЬреНрдЮрд╛рди рд╕рд╛рдорд╛рдиреНрдпреАрдХреГрдд рд╡реЗрдХреНрдЯрд░ рдХреНрдпрд╛ рд╣реИ, рдпрд╛рдиреА 0x1000 рдХреА рд▓рдВрдмрд╛рдИ рд╡рд╛рд▓рд╛ рдПрдХ рд╡реЗрдХреНрдЯрд░ рд╣реИ) рдХреЛ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИред рдореИрдВ рдЖрдкрдХреЛ рдкреАрдбрд╝рд╛ рдирд╣реАрдВ рджреВрдВрдЧрд╛ рдФрд░ рдореЗрд░реЗ рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реВрдВрдЧрд╛, рдореИрдВ рдЖрдкрдХреЛ рдкрд░рд┐рдгрд╛рдо рдмрддрд╛рдКрдВрдЧрд╛ред рдЖрдпрд╛рдд рдХрд░рддреЗ рд╕рдордп, рдРрд╕рд╛ рдХреЛрдИ рдореИрдХреНрд░реЛрдЬрд╝ рдирд╣реАрдВ рд▓рдЧрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдлреНрд▓реЛрдЯ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрдо рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рдд рдмрд╕ рджрд╢рдорд▓рд╡ рдмрд┐рдВрджреБ рдХреЗ рдмрд╛рдж рд╕рдм рдХреБрдЫ рдХрд╛рдЯ рджрд┐рдпрд╛ред рдЗрд╕рд▓рд┐рдП, рд╣рдо рдорд╛рдпрд╛ рдкрд░ рд▓реМрдЯрддреЗ рд╣реИрдВ рдФрд░ рдПрдХ рдмрдбрд╝реА рдзрд╛рд░ рдмрдирд╛рддреЗ рд╣реИрдВ ... рдЗрд╕рд╕реЗ рднреА рдЕрдзрд┐рдХ, рдФрд░ рдирд╣реАрдВ, рдореИрдВ рднрдпрд╛рдирдХ рд╕рдЯреАрдХрддрд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдЦреИрд░, рдореИрдВрдиреЗ рд╣рдЬрд╝рд╛рд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдХрд┐рдпрд╛ред рд▓реЗрдХрд┐рди рдпрд╣ рдпрд╣рд╛рдБ рдирд╣реАрдВ рдерд╛! рд╕рднреА рдЯреВрдЯ рдЧрдП (рдпрд╛ рдмрд▓реНрдХрд┐ рдХрд╛рдЯ рджрд┐рдП рдЧрдП) рдПрдХ рдЖрд╢рд╛рдЬрдирдХ рдореИрдЯреНрд░рд┐рдХреНрд╕ред рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рд╣рд╛рд▓рд╛рдВрдХрд┐ IwGxSetFarZNearZ рддрд░реНрдХреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ int32 рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ, рдпрд╣ рдХреЗрд╡рд▓ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдЖрдХрд╛рд░ рдкрд░ рдкреНрд░рддрд┐рдмрдВрдз рд▓рдЧрд╛рддреЗ рд╣реБрдП 0xffff рдХреЗ рдЕрдзрд┐рдХрддрдо zFar рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рддреЛ, рдЖрдк рдкрд░реНрдпрд╛рдкреНрдд рд╕рдЯреАрдХрддрд╛ рдФрд░ zFar рд╕реАрдорд╛ рдХреЗ рдмреАрдЪ рд╕рдВрддреБрд▓рди рдХреИрд╕реЗ рдЪреБрдирддреЗ рд╣реИрдВ? рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рдЗрд╖реНрдЯрддрдо рдЖрдХрд╛рд░ 100 рд╕реЗ 1000 рддрдХ рд╣реЛрдЧрд╛ (рдпрд╣ рд╕рдВрд▓рдЧреНрди рд╕реНрдерд╛рдиреЛрдВ рдХреЗ рд▓рд┐рдП 1000 рд╕реЗ 10000 рддрдХ рд╕рдВрднрд╡ рд╣реИ)ред рдпрд╣ рдорд╛рдпрд╛ рдХреЗ рдЖрдпрд╛рдо рдХреЗ рд╕рд╛рде рдЕрдЪреНрдЫрд╛ рд╕рдордЭреМрддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рдЗрдХрд╛рдИ рд╕реЗрдВрдЯреАрдореАрдЯрд░ рд╣реИред рд╣рдо рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 180 рд╕реЗрдореА рдХрд╛ рд╡реНрдпрдХреНрддрд┐ рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдЕрдзрд┐рдХрд╛рдВрд╢ рджреГрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╕рдЯреАрдХрддрд╛ рд╣реЛрдЧреАред рдмреЗрд╢рдХ, рдПрдХ рд╡рд┐рд╕реНрддреГрдд рдЪреЗрд╣рд░реЗ рдХреЛ 1 рд╕реЗрдореА рдХреА рд╕рдЯреАрдХрддрд╛ рдХреЗ рд╕рд╛рде рдореЙрдбрд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕реМрднрд╛рдЧреНрдп рд╕реЗ (рдпрд╛ рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ) рдЗрд╕ рд╕рдордп рдореЛрдмрд╛рдЗрд▓ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдкрд░ рдЖрдкрдХреЛ рджреГрд╢реНрдп рдореЗрдВ рдПрдХ рд╡реНрдпрдХреНрддрд┐ рдХрд╛ рдЪреЗрд╣рд░рд╛ рдирд╣реАрдВ рджреЗрдЦрдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ рдФрд░ рдЙрд╕реА рд╕рдордп рд╣рдорд╛рд░реЗ рд╕реЗ рддреАрди рд╕реМ рдореАрдЯрд░ рдХреА рджреВрд░реА рдкрд░ рдПрдХ рдЬрд╣рд╛рдЬ рд╣реИред

рдорд╛рд░реНрд▓реЗрдЬрд╝реЛрди рдмреИрд▓реЗ рдХрд╛ рджреВрд╕рд░рд╛ рднрд╛рдЧред рдкреВрд░реНрдгрд╛рдВрдХ рд╢реИрд▓реА рдХреЗ рдХреЛрдиреЗ

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

рддреАрд╕рд░рд╛ рднрд╛рдЧред рдЖрд▓реЛрдЪрдирд╛ (рд╡реИрдХрд▓реНрдкрд┐рдХ)

рдФрд░ рдирд┐рд╖реНрдХрд░реНрд╖ рдореЗрдВ, рдореИрдВ рд▓реЗрдЦ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдмрддрд╛рдП рдЧрдП рдкреЛрд╕реНрдЯ рдХреА рдереЛрдбрд╝реА рдЖрд▓реЛрдЪрдирд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдореИрдВ рдЗрд╕ рд▓реЗрдЦ рдХреЗ рдЕрдиреБрд╕рдВрдзрд╛рди рдФрд░ рд▓реЗрдЦрди рдХреА рдкреНрд░реЗрд░рдгрд╛ рдХреЗ рд▓рд┐рдП рд▓реЗрдЦрдХ рдХрд╛ рдЖрднрд╛рд░реА рд╣реВрдВред
рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рдЖрдк рдЙрд╕ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд╛ рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рдЯреБрдХрдбрд╝рд╛ рдкреЛрд╕реНрдЯ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ, рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдкреЛрд╕реНрдЯрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде "рдХреЛрдб рдПрдХ рдЕрдиреБрднрд╡рд╣реАрди рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рд▓рд┐рдП рднреА рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИред" рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╢рд╛рдпрдж рдореИрдВ рдХрд╛рдлреА рдЕрдиреБрднрд╡рд╣реАрди рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдирд╣реАрдВ рд╣реВрдВред рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐рдпреЛрдВ рдиреЗ рд╕рд╡рд╛рд▓ рдЦрдбрд╝реЗ рдХрд┐рдП
CIwSVec3 dd(0xFF, 0xFF, 0xFF); IwGxSetLightDirn(1, &dd); 

рд╡реЗрдХреНрдЯрд░ рдХреЗ рд╕рднреА рдШрдЯрдХ 0xFF рдФрд░ рд╕рд┐рд░реНрдл (1,1,1) рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реИрдВ? рдХреНрдпрд╛ рдпрд╣ рдХреБрдЫ рд╕рдЪреЗрдд рдпрд╛ рдХреЙрдкреА-рдкреЗрд╕реНрдЯ рд▓рд╛рдЧрдд рд╣реИ? рд╢рд╛рдпрдж рд╡реЗрдХреНрдЯрд░ рдХреЛ рд╕рд╛рдорд╛рдиреНрдп рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП? рд╡реИрд╕реЗ, рдлрд╝рдВрдХреНрд╢рди рдирд╛рдо рдореЗрдВ рдЕрдВрддрд┐рдо рдЕрдХреНрд╖рд░ n рдпрд╣ рд╕рдВрдХреЗрдд рджреЗрддрд╛ рд╣реИ ... рд╣рдо рд╡рд┐рд╡рд░рдг рдкрдврд╝рддреЗ рд╣реИрдВ рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ - рд╡реЗрдХреНрдЯрд░ рдХреЛ рд╕рд╛рдорд╛рдиреНрдпреАрдХреГрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЬрд╛рд╣рд┐рд░ рд╣реИ, рд╡реЗрдХреНрдЯрд░ (0xFF, 0xFF, 0xFF) рд╕рд╛рдорд╛рдиреНрдпреАрдХреГрдд рдирд╣реАрдВ рд╣реИ, рдореИрдВрдиреЗ рдКрдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рдирд┐рд╢реНрдЪрд┐рдд рдореБрд░рдмреНрдмрд╛ рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рдЗрдХрд╛рдИ 0x1000 рд╣реИред рдЙрджрд╛рд╣рд░рдг рд╕реЗ рд╡реЗрдХреНрдЯрд░ рдХреА рд▓рдВрдмрд╛рдИ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдХрдо рд╣реИред рд╕рд╛рдорд╛рдиреНрдпреАрдХрд░рдг рдЬреЛрдбрд╝реЗрдВ - рдФрд░ рд╡реЙрдпрд▓рд╛, рдкреНрд░рдХрд╛рд╢ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрддрд╛ рд╣реИред рд╡реИрд╕реЗ, рдпрд╣ рд╡реНрдпрд░реНрде рдирд╣реАрдВ рдерд╛ рдХрд┐ рдореИрдВрдиреЗ рдорд╛рдпрд╛ рд╕реЗ рдПрдХ рдЯреЛрд░рд╕ рдХрд╛ рдирд┐рд░реНрдпрд╛рдд рдХрд┐рдпрд╛ рдерд╛, рди рдХрд┐ рдПрдХ рдмреЙрдХреНрд╕ - рдмрдирд╛рдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕ рд╕рдорд╛рди рд╣реИрдВ, рдФрд░ рдкреНрд░рдХрд╛рд╢ рдХреА рд╕рдорд╕реНрдпрд╛рдПрдВ, рд╕рдордиреНрд╡рдп рд╕рдЯреАрдХрддрд╛, рдЖрджрд┐ рддреБрд░рдВрдд рдЯреЛрд░рд╕ рдкрд░ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИрдВред рдпрд╣рд╛рдВ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдХрд╖реНрдЯрдкреНрд░рдж рдмрдЧ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдкреНрд░рдХрд╛рд╢ рдХреИрд╕реЗ рдмрджрд▓ рдЧрдпрд╛ред


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

рд▓реЗрдЦрдХ рдХрд╛ рдЧрдгрд┐рддреАрдп рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЕрджреНрднреБрдд рд╣реИред рдЗрд╕рдХреА рд╕рднреА рдорд╣рд┐рдорд╛ рдореЗрдВ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рдкреНрд░рд╣рд╛рд░ рдХреА рд╡рд┐рдзрд┐ред
рдорджрдж рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдПрдХрдорд╛рддреНрд░ рдкреИрд░рд╛рдореАрдЯрд░ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреА рд╣реИ "рдХреИрдорд░реЗ рд╕реЗ рджреЗрдЦрдиреЗ рдХреЗ рд╡рд┐рдорд╛рди рдХреА рджреВрд░реА"ред рдФрд░ рдХреНрдпреЛрдВ рдирд╣реАрдВ FOV - рдХреНрд╖реИрддрд┐рдЬ рджреЗрдЦрдиреЗ рдХреЗ рдХреЛрдг, рдЬреИрд╕рд╛ рдХрд┐ рд╕рднреА рдЧреЛрд░реЗ рд▓реЛрдЧ рдкреВрдЫрддреЗ рд╣реИрдВ? рд╕рд░реНрд╡рд╢рдХреНрддрд┐рдорд╛рди Google рдиреЗ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рдХрд┐ "рд╡рд┐рдорд╛рди рдХреЛ рджреЗрдЦрдиреЗ" рд╕реЗ рдореБрд░рдмреНрдмрд╛ рдХрд╛ рдХреНрдпрд╛ рдЕрд░реНрде рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЗрд╕ рджреВрд░реА рдкрд░ FOV рдХреЗ рдЕрдиреБрд╡рд╛рдж рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рд╕рд░рд▓ рд╕реВрддреНрд░ рд╣реИ:
  int32 perspMul = IwGxGetDeviceWidth() / (2*tan(fov/2)); IwGxSetPerspMul(perspMul); 

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

рдЖрдЧреЗ рдЬрд╛рдХрд░тАж
  CIwMat view = CIwMat::g_Identity; view.tz = -80; view.ty = 80; view.tx = -60; view.LookAt(view.GetTrans(), CIwVec3(0, 0, 0), -CIwVec3::g_AxisY); 

рд▓реЗрдЦрдХ рдХреА рдХреЛрдИ рд╕рдордЭрджрд╛рд░ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдирд╣реАрдВ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХреЛрдб рдХреА рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдЕрддрд┐рд░реЗрдХ рддреБрд░рдВрдд рд╕реНрдкрд╖реНрдЯ рд╣реИред рд╕рд┐рд░реНрдл рд▓рд┐рдЦрддреЗ рдХреНрдпреЛрдВ рдирд╣реАрдВ
 view.LookAt(CIwVec3(-60,80,-80), CIwVec3(0, 0, 0), -CIwVec3::g_AxisY); 

рдореИрдВрдиреЗ рд▓рд┐рдЦрд╛ рд╣реИред рд▓реЗрдХрд┐рди рд╡рд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рд╕рд╣рд╛рдпрддрд╛ рдиреЗ рдХрд╣рд╛ рдХрд┐ LookAt рд╕реНрдерд┐рддрд┐ рдирд╣реАрдВ рдмрджрд▓рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдПрдХ рд░реЛрдЯреЗрд╢рди рдореИрдЯреНрд░рд┐рдХреНрд╕ рдмрдирд╛рддрд╛ рд╣реИред рдпрд╛рдиреА рдЕрдиреБрд╡рд╛рдж рдШрдЯрдХ рдХреЛ рдЕрд▓рдЧ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣рд╛рдБ рдореИрдВ рдореБрд░рдмреНрдмрд╛ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдмрдЧреАрдЪреЗ рдореЗрдВ рдПрдХ рдмрдбрд╝рд╛ рдкрддреНрдерд░ рдлреЗрдВрдХрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ - рдпрджрд┐ рдЖрдк рд▓реБрдХрдПрдЯ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдЗрд╕реЗ рдбреА 3 рдбреАрдПрдХреНрд╕рдореИрдЯреНрд░рд┐рдХреНрд╕рд▓реВрдХреИрдЯ рдФрд░ рдЧреНрд▓реВ рд▓реБрдХреИрдЯ рдХреЗ рд╕рдорд╛рди рдХрд╛рдо рдХрд░рдирд╛ рд╣реЛрдЧрд╛ - рд╣рдо рдирд░рдХ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдпрд╣ рдореИрдВ рдирд╣реАрдВ рдерд╛ рдЬреЛ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрдпрд╛ рдХрд┐ рдпрд╣ рдХрд╛рдо рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рджрд░рдЕрд╕рд▓, рдЬрдм рдЖрдк рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХрдИ рд╡рд░реНрд╖реЛрдВ рд╕реЗ рдЬрд╛рдирддреЗ рд╣реИрдВ рддреЛ рдорджрдж рдХреНрдпреЛрдВ рдкрдврд╝реЗрдВ :)
PS рдереЛрдбрд╝рд╛ рдЧрдбрд╝рдмрдбрд╝ рд╣реБрдЖ, рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдЖрдкрдХреЗ рдХреЛрдИ рдкреНрд░рд╢реНрди рд╣реИрдВ - рдкреВрдЫреЗрдВ рдореИрдВ рдореБрд░рдмреНрдмреЗ рдХрд╛ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рдирд╣реАрдВ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рдЬрд╡рд╛рдм рджреЗрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реВрдВред

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

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


All Articles