Qt 5.2, Google Play рдХреА рдЗрдЪреНрдЫрд╛ рд╕реЗ

рдирдорд╕реНрдХрд╛рд░ рд╕рд╛рдерд┐рдпреЛрдВ!



рдРрд╕рд╛ рд╣реБрдЖ рдХрд┐ рдореБрдЭреЗ Qt5.2 рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рдФрд░ рдПрдВрдбреНрд░реЙрдЗрдб рдФрд░ рдЖрдИрдУрдПрд╕ рдХреЗ рд▓рд┐рдП рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЬрд▓реНрджреА рдФрд░ рдЖрд╕рд╛рдиреА рд╕реЗ рдмрдирд╛рдиреЗ рдХреА рдЗрд╕рдХреА рдирдИ рдХреНрд╖рдорддрд╛ред рдореИрдВ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдХреНрдпреВрдЯреА рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реВрдВ, рд▓реЗрдХрд┐рди рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдХрд╛рдо рдЕрдиреНрдп рддрдХрдиреАрдХреЛрдВ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ рдФрд░ рдореИрдВрдиреЗ рдЗрд╕рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЛ рдереЛрдбрд╝рд╛ рд╕рд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛ рд╣реИред рдпрд╣ рдЬрд╛рдирдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВ рдХреНрдпреВрдЯреА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдЧрдпрд╛, рдПрдХ рд╕реБрдВрджрд░ рд╡реАрдбрд┐рдпреЛ рджреЗрдЦрд╛, рдЬрд╣рд╛рдВ 10 рдорд┐рдирдЯ рдореЗрдВ рдПрдВрдбреНрд░реЙрдЗрдб рдФрд░ рдЖрдИрдУрдПрд╕ рдХреЗ рддрд╣рдд рд╣реИрд▓реЛрд╡рд░реНрд▓реНрдб рдПрдкреНрд▓рд┐рдХреЗрд╢рди рддреБрд░рдВрдд рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрдВрдкреНрд░реЗрд╢рди рдмрд╣реБрдд рд╕рдХрд╛рд░рд╛рддреНрдордХ рдереЗред



рдореЛрдмрд╛рдЗрд▓ рд╡рд┐рдХрд╛рд╕ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рдЧрдпрд╛ред Google Play рдкрд░ рдЗрд╕рдХреЗ рдкреНрд░рдХрд╛рд╢рди рдХреЗ рд▓рд┐рдП рдЖрд╡реЗрджрди рдХрд░рдиреЗ рдХреА рдЗрдЪреНрдЫрд╛ рд╕реЗ рдЬрд╛рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдереАред рд▓реЗрдХрд┐рди рдкрд╣рд▓реЗ рдЪрд░рдг рдореЗрдВ рдореИрдВ рдЗрд╕рд╕реЗ рдЧреБрдЬрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рддрд╛рдХрд┐ рдпрд╣ рдЕрдлрд╝рд╕реЛрд╕ рди рд╣реЛ рдФрд░ рдХреНрдпрд╛ рдЧрд▓рддрд┐рдпрд╛рдБ рд╣реЛ рд╕рдХрддреА рд╣реИрдВред рдФрд░ рдпрд╣ рд╕рдм рдирдП Qt5.2 рдкрд░ред





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



рд╕реА ++ рдпрд╛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪреБрдирдирд╛



рдмреЗрд╢рдХ рдореИрдВ рд╕реА ++ рд╕реЗ рдкреНрдпрд╛рд░ рдХрд░рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдЗрд╕ рдкрд░ рдЗрд╕ рддрд░рд╣ рдХреА рдПрдХ рд░рд╛рдЗрдлрд▓ рд▓рд┐рдЦрдиреЗ рдХреА рд╣рд┐рдореНрдордд рдирд╣реАрдВ рдХреАред рд╕реА ++ рдбреЗрд╡рд▓рдкрд░ рдХреЛ рд╕реЛрдЪ-рд╕рдордЭрдХрд░ рд▓рд┐рдЦрдиреЗ рдФрд░ "рдЕрдкрдиреЗ рдкреИрд░ рдХреЛ рдЧреЛрд▓реА рдорд╛рд░рдиреЗ" рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд╡рдзрд╛рди рд░рд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд▓реНрджреА рдФрд░ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг, рдПрдХ XP-рд╢реИрд▓реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред рд╡рд┐рдХрд▓реНрдк QML рдФрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░ рдЧрд┐рд░ рдЧрдпрд╛, рдЙрд╕реА рд╕рдордп рдЗрди рдЗрддрдиреА рдЙрдиреНрдирдд рдбрд┐рдЧрд┐рдпрд╛ рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХрд┐рдпреЛрдВ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рдорд┐рд▓рд╛ред



рдкрд╣рд▓рд╛ рдбреНрд░рд╛рдлреНрдЯ



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





рднреМрддрд┐рдХ рд╡рд┐рдЬреНрдЮрд╛рди



2 рд╕реЗ рдКрдкрд░ рдХреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХрдорд╛рддреНрд░ рд╕рд╣реА рд╕рдорд╛рдзрд╛рди, рдореИрдВрдиреЗ рдкреНрд░рд╕рд┐рджреНрдз Box2D рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ред Qml рдХрд╛ рдкреНрд▓рдЧрдЗрди рдЬрд▓реНрджреА рдорд┐рд▓ рдЧрдпрд╛ - github.com/qml-box2d/qml-box2d ред рдХреБрдЫ рджрд┐рдиреЛрдВ рдХреЗ рдкреНрд░рдпреЛрдЧ, Box2d рдкреНрд░рд▓реЗрдЦрди рдФрд░ рд╕рдм рдХреБрдЫ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдорд╣рд╛рди рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рд╕рдорд╕реНрдпрд╛рдПрдВ рдЕрднреА рднреА рдЖрдЧреЗ рд╣реИрдВред



рдзреНрд╡рдирд┐



рдореИрдВрдиреЗ рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдб рдореНрдпреВрдЬрд╝рд┐рдХ рдХреЛ рдордирд╛ рдХрд░ рджрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдЦреБрдж рдЗрд╕реЗ рдкрд╕рдВрдж рдирд╣реАрдВ рдХрд░рддрд╛, рдФрд░ рдореИрдВ рди рддреЛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рдЪреБрди рд╕рдХрддрд╛ рдерд╛, рдмрд╣реБрдд рдХрдо рдпрд╣ рдЦреБрдж рдХрд┐рдпрд╛ред рддреЛ www.freesound.org рдкрд░ 3 рдзреНрд╡рдирд┐рдпреЛрдВ рдХреЛ рдЙрдард╛рдпрд╛ рдЧрдпрд╛: рдкрдВрдЦреЛрдВ рдХрд╛ рдПрдХ рдкреНрд░рд╛рд▓рдВрдм, рдПрдХ рдЯрдХрд░рд╛рд╡ рдФрд░ рдПрдХ рдирдпрд╛ рдмрд┐рдВрджреБред

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

import QtQuick 2.2 Item { id : audioManager property QtObject effect1: Qt.createQmlObject("import QtMultimedia 5.0; SoundEffect{}", audioManager); property QtObject effect2: Qt.createQmlObject("import QtMultimedia 5.0; SoundEffect{}", audioManager); property int hit: 22 property int point: 33 property int silence: 44 property int wing: 55 property bool effectSwitcher: false; function play( sound) { var effect; if( !effectSwitcher){ effect = effect1; effectSwitcher = true; }else if( effectSwitcher){ effect = effect2; effectSwitcher = false; } if(effect == null) return; switch(sound) { case hit: effect.source = "audio/sfx_hit.wav" break case point: effect.source = "audio/sfx_point.wav" break case silence: effect.source = "audio/sfx_silence.wav" break case wing: effect.source = "audio/sfx_wing.wav" break } effect.play(); } }
      
      







рдкреНрд▓реЗрдмреИрдХ:

 audioManager.play( audioManager.wing);
      
      







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

QT += multimedia







рдХреНрдпреЛрдВ рджреЛ рд╕рд╛рдЙрдВрдбрдлреЗрдХреНрдЯ рд╣реИрдВ рдФрд░ рдХреНрдпреЛрдВ sfx_silence рд╕рд╛рдордиреЗ рдЖрдП рдмрдЧреНрд╕ рдХреЗ рд╡рд┐рд╡рд░рдг рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред



рд╕реНрдХреЗрд▓рд┐рдВрдЧ



рд╕реНрдХреЗрд▓рд┐рдВрдЧ рдорд╛рдирдХ рдХреЗ рд░реВрдк рдореЗрдВ рдХреА рдЧрдИ рдереАред рдЖрдзрд╛рд░ 480x800 рдХрд╛ рд╕рдВрдХрд▓реНрдк рдерд╛ (рдЫреЛрдЯреЗ рд▓реЗрдХрд┐рди рд╢рд╛рдпрдж рдЗрд╕ рд╕рдордп рд╕рдмрд╕реЗ рдЖрдо)ред рдЙрд╕рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖, рдкрдХреНрд╖реА рдФрд░ рд╕реНрддрдВрднреЛрдВ рдХреЗ рдЖрдпрд╛рдо рдХрдареЛрд░рддрд╛ рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдП рдЧрдП рдереЗред рдЕрдЧрд▓рд╛, рд╕рдВрджрд░реНрдн рдХреЗ рд╕рд╛рдкреЗрдХреНрд╖ рд╡рд░реНрддрдорд╛рди рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рдХреЗ рд▓рд┐рдП рд╕реНрдХреЗрд▓рд┐рдВрдЧ рдХрд╛рд░рдХ рдХреА рдЧрдгрдирд╛ рдмрд╕ рдХреА рдЧрдИ рдереА, рдФрд░ рдлрд┐рд░ рд╕реНрдХреЗрд▓рд┐рдВрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╡рд╛рд▓реЗ рд╕рднреА рдЖрдХрд╛рд░реЛрдВ рдХреЛ рдмрд╕ рдЗрд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рдЧреБрдгрд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдХреЛ bitbucket.org/wearyinside/cute-plane рджреНрд╡рд╛рд░рд╛ рдЗрди рд╕рднреА рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдорджрдж рдХреА рдЧрдИ рдереА, рд▓реЗрдХрд┐рди рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣ рдмрд╣реБрдд рд╕рд╛рд░реА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

  width: Screen.width height: Screen.height property int defaultWidth: 480 property int defaultHeight: 800 property double measure: Math.min(Math.min(width, height) / defaultWidth, Math.max(width, height) / defaultHeight) property double textScale: Math.sqrt( measure)
      
      





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



рдбрд┐рдЬрд╝рд╛рдЗрди



рдЪреВрдВрдХрд┐ рдореИрдВ рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рд╣реВрдВ, рдореЗрд░реЗ рд▓рд┐рдП рдбрд┐рдЬрд╛рдЗрди рдПрдХ рдШрдиреЗ рдЬрдВрдЧрд▓ рдерд╛, рд▓реЗрдХрд┐рди рдЗрдВрдЯрд░рдиреЗрдЯ рд╕рдм рдХреБрдЫ рд╣реИ рдФрд░ рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рд╡рд┐рднрд┐рдиреНрди рд▓реЗрдЦреЛрдВ рдХреЛ рдкрдврд╝рдиреЗ рдХреЗ рдПрдХ рджрд┐рди рдмрд╛рдж, рд╡реЗрдХреНрдЯрд░ рдЧреНрд░рд╛рдлрд┐рдХреНрд╕ рдФрд░ рдЗрдВрдХрд╕реНрдХреЗрдк рд╕рдВрдкрд╛рджрдХ рдХрд╛ рдЪрдпрди рдХрд┐рдпрд╛ рдЧрдпрд╛ред рдПрдХ рдХрд╛рд░реНрдЯреВрди рдкрдХреНрд╖реА рдХреЛ рдЦреАрдВрдЪрдиреЗ рдореЗрдВ рдХреЗрд╡рд▓ 1-2 рджрд┐рди рд▓рдЧрддреЗ рдереЗред рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ, рдПрдХ рд╕реНрдХреЗрдЪ рдХрд╛рдЧрдЬ рдкрд░ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдХрдИ рд╕рдВрднрд╛рд╡рд┐рдд рд╡рд┐рдХрд▓реНрдк рддреИрдпрд╛рд░ рдХрд┐рдП рдЧрдП рдереЗред рддрдм рд╕рд░реНрд╡рд╢реНрд░реЗрд╖реНрда рдХреЛ svg рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЕрдиреНрдп рд╕рднреА рдЪрд┐рддреНрд░ рд╡реЗрдХреНрдЯрд░ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдмрдирд╛рдП рдЧрдП рдереЗред .Pro рдлрд╝рд╛рдЗрд▓ рдореЗрдВ qml рдореЗрдВ svg рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

 QT += xml svg QTPLUGIN += qsvg
      
      







рдореБрджреНрд░реАрдХрд░рдг



рдореБрдЦреНрдп рднрд╛рдЧ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рд╡рд┐рдореБрджреНрд░реАрдХрд░рдг рдкрд░ рд╕рд╡рд╛рд▓ рдЦрдбрд╝рд╛ рд╣реБрдЖред рдпрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдПрдХ рдкрд░реАрдХреНрд╖рдг рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕рдореЗрдВ рдореБрджреНрд░реАрдХрд░рдг рд╕реЗ рдирд┐рдкрдЯрдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред рд╡рд┐рдЬреНрдЮрд╛рдкрди рдкреНрд░рд╢рдВрд╕рд╛ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдореБрджреНрд░реАрдХрд░рдг рдХреЛ рдЪреБрдирд╛ рдЧрдпрд╛ рдерд╛ред рдФрд░ рдлрд┐рд░ рдкрд╣рд▓реА рдЧрдВрднреАрд░ рд╕рдорд╕реНрдпрд╛рдПрдВ рд╢реБрд░реВ рд╣реБрдИрдВред рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдХреНрдпреВрдЯреА / рдХреНрдпреВрдПрд▓рдПрдо рдХреЗ рд▓рд┐рдП рдХреЙрдореНрдмреЛ рдПрдореНрдмреЗрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдирд╣реАрдВ рд╣реИрдВред рдПрдХ рдЕрдкреНрд░рдЪрд▓рд┐рдд qadmob рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдФрд░ рдПрдХ рдмрдВрдж V- рдкреНрд▓реЗ AdMob рдкреНрд▓рдЧрдЗрди рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкрд╛рдпрд╛ рдЧрдпрд╛ред рдмрд╛рджрд▓ рдШрдиреЗ рд╣реЛ рдЧрдП рдФрд░ рд╡рд┐рдЪрд╛рд░ рдмреЗрд╣рддрд░ рд╕рдордп рддрдХ рдХреНрдпреВрдЯреА рдЫреЛрдбрд╝рдиреЗ рд▓рдЧреЗред рдкреВрд░реЗ рдЗрдВрдЯрд░рдиреЗрдЯ рдХреЛ рддреЛрдбрд╝ рджреЗрдВ, рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЧрдпрд╛ рдХрд┐ рдЖрдкрдХреЛ рдХреНрдпреВрдЯреА рд╕реНрд░реЛрддреЛрдВ рдХреЛ рдЦреЛрдЬрдиреЗ рдФрд░ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдВрдбреНрд░реЙрдЗрдб рдХреЗ рд▓рд┐рдП рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдФрд░ рдЦреБрджрд╛рдИ рдХреЗ 4 рджрд┐рдиреЛрдВ рдХреЗ рдмрд╛рдж, рдЦреЗрд▓ рдореЗрдВ рдПрдХ рдкрд░реАрдХреНрд╖рдг рд╡рд┐рдЬреНрдЮрд╛рдкрди рдмреИрдирд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдпрд╣рд╛рдБ рдпрд╣ рдХреИрд╕реЗ рдХрд░рдирд╛ рд╣реИ рдЗрд╕рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ github.com/AlexMarlo/AdMob-Qt5.2-Example ред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдмреИрдирд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдПрдХ рд╕рдкреНрддрд╛рд╣ рд▓рдЧрддрд╛ рдерд╛ред



рдХреАрдбрд╝реЗ



рдлрд┐рд░ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЧрдпрд╛ рдХрд┐ рд╕рднреА рдореБрдЦреНрдп рднрд╛рдЧреЛрдВ рдХреЛ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдмрд╛рдж рдХреЗ рд▓рд┐рдП рд╕реНрдердЧрд┐рдд рдХрд┐рдП рдЧрдП рдорд╛рдореВрд▓реА рдХреАрдбрд╝реЗ рдХреЛ рдареАрдХ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛ред



рд╕реНрдореГрддрд┐ рд░рд┐рд╕рд╛рд╡



рдореЗрдореЛрд░реА 100 рдПрдордмреА рдкреНрд░рддрд┐ рдорд┐рдирдЯ рдХреЗ рдЦреЗрд▓ рдореЗрдВ рд▓реАрдХ рд╣реЛ рдЧрдИред рд╕рдордп-рд╕рдордп рдкрд░ qml рдХреЛрдб рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░рдиреЗ рдФрд░ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╕рдорд╕реНрдпрд╛ рдкрд╛рдИ рдЧрдИред рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рд╕реНрдореГрддрд┐ рдЗрд╕ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдХреЗ рд╕рд╛рде рд▓реАрдХ рд╣реБрдИ рдереА:

  linearVelocity.x = 220; linearVelocity.y = -420;
      
      





рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдХреЛ рдмрджрд▓ рд░рд╣рд╛ рд╣реИ

  var flyImpulseVelosityY = -420 * measure; var flyImpulseVelosityX = 220 * measure; var impulse; impulse = Qt.point( flyImpulseVelosityX, flyImpulseVelosityY); applyLinearImpulse( impulse, getWorldCenter());
      
      





рд▓реАрдХ рдмрдВрдж рд╣реЛ рдЧрдпрд╛ред рдпрд╣ qml-box2d рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдорд╕реНрдпрд╛ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдЧрд╣рд░реА рдЦреБрджрд╛рдИ рдирд╣реАрдВ рдХреА рд╣реИред



рдзреНрд╡рдирд┐ рдХреА рд╣рд╛рдирд┐



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



рдЬрд╝реВрдо рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдХреЗ рд╕рд╛рде Box2D рдореЗрдВ рдореБрдЦрд░ рдкрд░ рдЖрд╡реЗрджрди рд╕рдорд╛рдкреНрдд



  width: Screen.width height: Screen.height property int defaultWidth: 480 property int defaultHeight: 800 property double measure: Math.min(Math.min(width, height) / defaultWidth, Math.max(width, height) / defaultHeight)
      
      





рд╕рдорд╕реНрдпрд╛ рдкрд╣рд▓реА 2 рд▓рд╛рдЗрдиреЛрдВ рдореЗрдВ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рдирд┐рдХрд▓рд╛, рдЬрдм рддрдХ рдХрд┐ qml рддрддреНрд╡ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛, рдЬрд┐рд╕рдореЗрдВ рд╕реНрдХреНрд░реАрди, рд╕реНрдХреНрд░реАрдиред рд╕реНрдХреНрд░реАрди рдФрд░ Screen.height рдХрд╣рд▓рд╛рддреЗ рд╣реИрдВ, рд╡реЗ 0. рд╣реЛрдВрдЧреЗред рдпрд╣ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рд╕реНрдХреЗрд▓рд┐рдВрдЧ рдлреИрдХреНрдЯрд░ рд╢реБрд░реВ рдореЗрдВ 0 рд╣реИ рдФрд░ рдпрд╣рд╛рдВ рдмреЙрдХреНрд╕ 2d рдПрд╕реЗрд▓рд░ рдкрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░ рджреЗрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рднреМрддрд┐рдХ рд╡рд╕реНрддреБрдПрдВ рд╢реВрдиреНрдп рдЖрдХрд╛рд░ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВред

рдпрд╣ рдХреЗрд╡рд▓ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдЙрд╕ рд╕рдордп рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдареАрдХ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдерд╛ рдЬрдм рд╕реНрдХреЗрд▓рд┐рдВрдЧ рдХрд╛рд░рдХ рдПрдХ рдЧреИрд░-рд╢реВрдиреНрдп рдорд╛рди рд▓реЗрддрд╛ рд╣реИред



рдирд┐рд╖реНрдХреНрд░рд┐рдп рдорд╛рддреНрд░рд╛ рдкрд░ рдирд┐рдпрдВрддреНрд░рдг



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

  @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if ( keyCode == KeyEvent.KEYCODE_VOLUME_UP) { AudioManager am = (AudioManager) this.getSystemService(Context.AUDIO_SERVICE); int index = am.getStreamVolume( AudioManager.STREAM_MUSIC) + 1; if( index <= am.getStreamMaxVolume( AudioManager.STREAM_MUSIC)) am.setStreamVolume( AudioManager.STREAM_MUSIC, index, 0); } if( keyCode == KeyEvent.KEYCODE_VOLUME_DOWN){ AudioManager am = (AudioManager) this.getSystemService(Context.AUDIO_SERVICE); int index = am.getStreamVolume( AudioManager.STREAM_MUSIC) - 1; if( index >= 0) am.setStreamVolume( AudioManager.STREAM_MUSIC, index, 0); } return super.onKeyDown(keyCode, event); }
      
      







рд╡рд┐рднрд┐рдиреНрди рдЙрдкрдХрд░рдгреЛрдВ рдФрд░ рдлрд┐рд░ рдмрдЧ рдкрд░ рдкрд░реАрдХреНрд╖рдг



рдЕрдЧрд▓рд╛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдПрдВрдбреНрд░реЙрдЗрдб рдкрд░ рдкрд░реАрдХреНрд╖рдг рдЪрд░рдг рдЖрдпрд╛, рдпрд╣рд╛рдВ рдЙрдкрдХрд░рдгреЛрдВ рдХреА рдПрдХ рдЕрдиреБрдорд╛рдирд┐рдд рд╕реВрдЪреА рд╣реИ:





рд╕реИрдорд╕рдВрдЧ



рдФрд░ рд╕рднреА рд╕рдорд╕реНрдпрд╛рдПрдВ рд╕реИрдорд╕рдВрдЧ рдкрд░ рдмрд╛рд╣рд░ рд╣реЛ рдЧрдИрдВ, рдФрд░ рдлреЛрди рдЬрд┐рддрдирд╛ рдмреЗрд╣рддрд░ рдмрдЧ рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛, рдФрд░ рдЗрди рдЖрдВрдХрдбрд╝реЛрдВ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП www.appbrain.com/stats/top-android-phones, рд╕реИрдорд╕рдВрдЧ рдкрд░ рдмрдЧ рдХреЛ рдЫреЛрдбрд╝рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИред



рдкрд╣рд▓реА рдзреНрд╡рдирд┐ рдмрдЬрд╛рдиреЗ рдкрд░ рд▓рдЧреЗрдВ



рдХрд┐рд╕реА рдХрд╛рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рд╛рдЙрдВрдбрдлреЗрдХреНрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрд╣рд▓реА рдзреНрд╡рдирд┐ рдкреНрд▓реЗрдмреИрдХ рд▓рдЯрдХрд╛ рдФрд░ рдлрд┐рд░ рд╕рдм рдХреБрдЫ рдареАрдХ рдХрд╛рдо рдХрд┐рдпрд╛ред рдпрд╣ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕реИрдорд╕рдВрдЧ рдЧреИрд▓реЗрдХреНрд╕реА рдПрд╕ 3 рдкрд░ рд╕реНрдкрд╖реНрдЯ рдерд╛, рдЕрдиреНрдп рд╕реИрдорд╕рдВрдЧ рдкрд░ рдпрд╣ рдерд╛, рд▓реЗрдХрд┐рди рдЗрддрдирд╛ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рдирд╣реАрдВ рдерд╛ред рдЕрдиреНрдп рдирд┐рд░реНрдорд╛рддрд╛рдУрдВ рдХреЗ рдЙрдкрдХрд░рдгреЛрдВ рдкрд░ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рдереАред рдпрд╣рд╛рдБ sfx_silence.wav рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛ред рдпрд╣ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдПрдХ рдЦрд╛рд▓реА рдзреНрд╡рдирд┐ рдлрд╝рд╛рдЗрд▓ рд╣реИ рдЬреЛ рдЧреЗрдо рд▓реЛрдб рд╣реЛрдиреЗ рдкрд░ рдЦреЗрд▓рддреА рд╣реИред



Lag рдЬрдм рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ Box2D рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛ рд░рд╣рд╛ рд╣реИ



рдЕрдЧрд▓реА рд╕рдорд╕реНрдпрд╛ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдереА рдХрд┐ рдмреЙрдХреНрд╕ 2 рдбреА рд╡рд╕реНрддреБрдУрдВ рдХреЛ рд╕рд╣реА рд╕реНрдХреЗрд▓рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдпрд╣ рдирд┐рд░реНрдорд╛рдг рд╕реИрдорд╕рдВрдЧ рдкрд░, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕рдорд╛рди рд╕реИрдорд╕рдВрдЧ рдЧреИрд▓реЗрдХреНрд╕реА рдПрд╕ 3 рдкрд░ рдмрд╣реБрдд рдзреАрдорд╛ рдерд╛ред

рднреВрдорд┐ рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг:

рдПрдХ рдиреЗрдХреНрд╕рд╕ 97 рдорд┐
рд╕реИрдорд╕рдВрдЧ рдЧреИрд▓реЗрдХреНрд╕реА рдПрд╕ рдбреБрдУрд╕ 986 рдорд┐


рдЕрдВрддрд░ рдкрд░рд┐рдорд╛рдг рдХрд╛ рдПрдХ рдХреНрд░рдо рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдЦреБрдж qml-box2d рдФрд░ Box2D рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреА рдмрд╛рд░реАрдХрд┐рдпреЛрдВ рдХреЛ рдирд╣реАрдВ рд╕рдордЭрддрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдЦреЗрд▓ рдХреЗ рд▓реЛрдб рд╣реЛрдиреЗ рдХреЗ рд╕рдордп рдмрд╕ рдкреВрд░реА рд░рдЪрдирд╛ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛ред рдЗрд╕реЗ рд▓реЛрдб рдХрд░рдиреЗ рдореЗрдВ рдЕрдзрд┐рдХ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЦреЗрд▓ рдХреЗ рджреМрд░рд╛рди рдмреНрд░реЗрдХ рдирд╣реАрдВ рд▓рдЧрддреЗ рд╣реИрдВред



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



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



рдЬрд┐рди рдордВрддреНрд░рд╛рд▓рдпреЛрдВ рдХреЛ рд╣рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрд╛ рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рдЖрд╡реЗрджрди рдХрд╛ рдмрдбрд╝рд╛ рдЖрдХрд╛рд░ рдерд╛:



рд╕рдмрд╕реЗ рджреБрдЦрдж рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рд▓рдЧрднрдЧ 70% рдХреНрдпреВрдЯреА рдХреЗ рд╣реА рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реИрдВ рдФрд░ рдЗрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рджреВрд╕рд░реА рдУрд░, рдЖрдзреБрдирд┐рдХ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЖрдХрд╛рд░ рдЗрддрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИред



рдкреБрдирд╢реНрдЪ:

рдкрд░рд┐рдгрд╛рдо рдХрд╛ рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ:

рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ 1






рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ 2






рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ 3






рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ 4







All Articles