ΠΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π΄Π»Ρ C++ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ UI ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π±ΡΡΡΡΠΎΠΉ ΠΈ ΡΠ΄ΠΎΠ±Π½ΠΎΠΉ. Π Π°ΡΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ, Π½Π° ΠΊΠ°ΠΊΠΈΠ΅ ΡΡΠΎΠΈΡ ΠΎΠ±ΡΠ°ΡΠΈΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅ ΠΡ ΡΠΈΡΠ°Π΅ΡΠ΅ ΡΠ»ΡΡΡΠ΅Π½Π½ΡΡ Π²Π΅ΡΡΠΈΡ Π½Π΅ΠΊΠΎΠ³Π΄Π° Π²ΡΠΏΡΡΠ΅Π½Π½ΠΎΠΉ Π½Π°ΠΌΠΈ ΡΡΠ°ΡΡΠΈ.
SFML (Simple and Fast Multimedia Library) β ΠΎΠ΄Π½Π° ΠΈΠ· ΡΠ°ΠΌΡΡ ΡΠ΄ΠΎΠ±Π½ΡΡ ΠΈ Π±ΡΡΡΡΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ Π΄Π»Ρ C++. ΠΡ Π½Π΅ΠΎΡΠΏΠΎΡΠΈΠΌΠΎΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ β ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ ΡΡΠΎΠ²Π½Ρ Π·Π½Π°Π½ΠΈΠΉ ΡΠ·ΡΠΊΠ° ΠΈ Π»ΡΠ³ΠΊΠΎΡΡΡ ΠΎΡΠ²ΠΎΠ΅Π½ΠΈΡ: Π²ΡΠ΅Π³ΠΎ Π·Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄Π½Π΅ΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π²ΠΏΠΎΠ»Π½Π΅ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. Π ΠΏΡΠΈΠΌΠ΅ΡΡ, ΠΏΠ΅ΡΠ²ΠΎΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Β«SFML works!Β» ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π²ΡΠ΅Π³ΠΎ Π·Π° ΠΌΠΈΠ½ΡΡΡ. ΠΡΡ ΠΎΠ΄Π½ΠΎ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ β ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΠΎΡΡΡ: SFML ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΏΠΎΠ΄ Windows, Linux (ΡΠΎΠ»ΡΠΊΠΎ X11, Π½ΠΎ Π½Π΅ Wayland) ΠΈ Mac OS, ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΡΡ Π²ΡΡ ΠΎΠ΄ ΠΏΠΎΠ΄ Android ΠΈ iOS.
SFML Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠΎ Π±ΠΎΠ»ΡΡΠ΅ΠΉ ΡΠ°ΡΡΠΈ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠΌΠΈ ΡΡΠ°ΡΡΠ°ΠΏΠ°ΠΌΠΈ ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°ΠΌΠΈ, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ³Ρ β Ρ ΠΎΠ±Π±ΠΈ. SFML ΠΏΠΎΠΏΡΠ»ΡΡΠ΅Π½ ΡΡΠ΅Π΄ΠΈ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠΎΠΌΡ, ΡΡΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ Π±ΠΎΠ»ΡΡΠΈΡ ΠΎΠ±ΡΡΠΌΠΎΠ² ΠΊΠΎΠ΄Π°.
ΠΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΠΏΡΠΎΠΉΡΠΈ Π½Π°ΡΠ°Π»ΡΠ½ΡΠΉ ΠΊΡΡΡ.
Qt ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΠ΅Π»ΡΠΉ Π½Π°Π±ΠΎΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² Π΄Π»Ρ Π±ΡΡΡΡΠΎΠ³ΠΎ ΠΈ ΡΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ GUI. ΠΠΎΠ½Π΅ΡΠ½ΠΎ ΠΆΠ΅, Π·Π΄Π΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°ΡΡ ΠΈ ΠΈΠ³ΡΡ β ΠΏΠΎΡΠ΅ΠΌΡ Π±Ρ ΠΈ Π½Π΅Ρ? β Π½ΠΎ Qt ΠΏΡΠΈΠ²Π»Π΅ΠΊΠ°Π΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ² Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΠ΅ΠΌ, ΡΡΠΎ ΠΎΠ½Π° ΡΠ²Π»ΡΠ΅ΡΡΡ Π±ΡΡΡΡΠΎΠΉ, ΡΠ΄ΠΎΠ±Π½ΠΎΠΉ, Π³ΠΈΠ±ΠΊΠΎΠΉ ΠΈ ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΠΎΠΉ. ΠΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ Qt ΠΎΠ±ΠΎΠ³Π½Π°Π»Π° Π΄Π°ΠΆΠ΅ SFML: Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π΄ΠΎΡΡΡΠΏΠ½Π° ΠΊΠ°ΠΊ Π½Π° Windows, Linux ΠΈ Mac OS, ΡΠ°ΠΊ ΠΈ Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°Ρ β Windows Mobile, Android ΠΈ iOS.
Qt ΡΠ°ΡΡΠΈΡΡΠ΅Ρ C++ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΠΠ (ΠΠ΅ΡΠ°-ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°) ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΈΠ³Π½Π°Π»Ρ ΠΈ ΡΠ»ΠΎΡΡ). Π’Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ ΠΏΠ»Π°ΡΠ½ΡΡ ΡΠ»ΡΠΆΠ±Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ (ΠΊΠ°ΠΊ ΠΈ ΠΏΠ»Π°ΡΠ½ΡΡ Π»ΠΈΡΠ΅Π½Π·ΠΈΡ). ΠΠ»Ρ Qt Π΅ΡΡΡ Π±ΠΎΠ»ΡΡΠΎΠΉ Π²ΡΠ±ΠΎΡ IDE: QtDesigner, QtCreator, QDevelop, Edyuk, Π° ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΡΡΡΠΏΠ½Π° ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ Visual Studio, Eclipse ΠΈ XCode.
Qt ΡΠ²Π»ΡΠ΅ΡΡΡ open source ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠΌ, Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠ½ΡΡΡ ΡΡΠ°ΡΡΠΈΠ΅. Π Π΄ΡΡΠ³ΠΈΡ open source ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ Π΄Π»Ρ C++ ΡΠΈΡΠ°ΠΉΡΠ΅ Π² Π½Π°ΡΠ΅ΠΉ ΡΡΠ°ΡΡΠ΅.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠΉΡΠΈ Π³ΠΎΡΠΎΠ²ΡΠΉ ΠΊΡΡΡ ΠΏΠΎ Π΄Π°Π½Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅.
Cairo β Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π΄Π»Ρ ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ Π²Π΅ΠΊΡΠΎΡΠ½ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΎΠ΄ Linux, Windows ΠΈ Mac OS. Π ΠΏΡΠΈΠΌΠ΅ΡΡ, ΡΠ°ΠΊΠΎΠΉ ΠΊΡΡΠΏΠ½ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ, ΠΊΠ°ΠΊ Mozilla, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Cairo Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ½ΠΎΠΌ Π΄Π²ΠΈΠΆΠΊΠ΅ Gecko. Π’Π°ΠΊΠΆΠ΅ Cairo Π»Π΅ΠΆΠΈΡ Π² ΠΎΡΠ½ΠΎΠ²Π΅ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ (MorphOS, AmigaOS) ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (InkScape, Synfig, Graphite). ΠΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π±ΡΠ΄ΡΡΠ΅ Π³ΠΎΡΠΎΠ²Ρ ΠΊ ΠΎΡΡΡΡΡΡΠ²ΠΈΡ ΡΡΡΡΠΊΠΎΡΠ·ΡΡΠ½ΡΡ ΡΠ΅ΡΡΡΡΠΎΠ².
Cairo ΠΌΠΎΠΆΠ΅Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ OpenGL Π±ΡΠΊΠ΅Π½Π΄ΠΎΠΌ Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ GPU, ΡΡΠΎ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ ΡΠ΅Π»ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ.
ΠΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Cocos2D-X ΠΏΡΠΈΠ·Π²Π°Π½Π° ΡΠΏΡΠΎΡΡΠΈΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΠΈΠ³Ρ. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π²ΡΠ΅ ΡΠ΅ ΠΆΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ, ΡΡΠΎ ΠΈ Qt. ΠΠ· ΠΏΠ»ΡΡΠΎΠ² ΡΡΠΎΠΈΡ ΠΎΡΠΌΠ΅ΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡ, ΡΠ΄ΠΎΠ±ΡΡΠ²ΠΎ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ° ΠΈΠ³Ρ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ Cocos Creator. Π ΡΠΏΠΈΡΠΊΠ΅ ΠΈΠ³Ρ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΡ Π½Π° Π΄Π²ΠΈΠΆΠΊΠ΅, Π΅ΡΡΡ Π²ΡΠ΅ΠΌΠΈΡΠ½ΠΎ ΠΈΠ·Π²Π΅ΡΡΠ½Π°Ρ BADLAND, ΡΠ°Π±ΠΎΡΠ°ΡΡΠ°Ρ Π½Π° Π²ΡΠ΅Ρ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°Ρ .
ΠΡΠ»ΠΈ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΈΠ³ΡΡ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π³ΡΠ°ΡΠΈΠΊΠΎΠΉ ΠΈ Π°Π½ΠΈΠΌΠ°ΡΠΈΠ΅ΠΉ Π² Π±ΠΎΠ»ΡΡΠΈΡ ΠΎΠ±ΡΡΠΌΠ°Ρ , ΡΠΎ Π»ΡΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Unity Π²ΠΌΠ΅ΡΡΠΎ Cocos2D-X. Unity ΠΈΠΌΠ΅Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠ»Π°Π²Π½ΠΎΠΉ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Ρ ΡΠ°ΠΊΠΈΠΌΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ, ΠΊΠ°ΠΊ Photoshop, Maya ΠΈΠ»ΠΈ Blender. Π Cocos2D-X Π²ΡΡ Π³ΡΠ°ΡΠΈΠΊΠ° Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ ΠΈΠ·Π²Π½Π΅ ΠΈ Π½Π° Π½Π΅Ρ ΡΡΡΠ»Π°ΡΡΡΡ ΠΈΠ· ΠΊΠΎΠ΄Π°.
Π Π ΡΠ½Π΅ΡΠ΅ Π½Π΅Ρ ΡΡΠΎΠΊΠΎΠ² ΠΏΠΎ ΡΡΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅, Π½ΠΎ Π½Π° Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ ΡΠ·ΡΠΊΠ΅ Π΅ΡΡΡΒ ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ ΠΊΡΡΡΒ ΠΎΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ².
Juce β ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΡΠΉ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠΉ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ² Π½Π° ΡΠ·ΡΠΊΠ΅ C++.
ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΠΎ Juce ΠΌΠ½ΠΎΠ³ΠΎ, Π½ΠΎ Π½Π΅ Π½Π° ΡΡΡΡΠΊΠΎΠΌ ΡΠ·ΡΠΊΠ΅. ΠΠΎΡΡΠΎΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°ΡΠ°ΡΡ ΠΊΠ½ΠΈΠ³Ρ Β«ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° C++ Ρ JUCE 4.2.x: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΡΡ ΠΌΡΠ»ΡΡΠΈΠΌΠ΅Π΄ΠΈΠΉΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ JUCE Π½Π° ΠΏΡΠΎΡΡΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ Β».
Juce Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ΅Π½ ΡΡΠ΅Π΄ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π°ΡΠ΄ΠΈΠΎ β ΠΠ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ Π½Π°Π±ΠΎΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ²-ΠΎΠ±ΠΎΠ»ΠΎΡΠ΅ΠΊ Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ Π°ΡΠ΄ΠΈΠΎ ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ².
wxWidgets β ΠΎΠ΄Π½Π° ΠΈΠ· ΡΡΠ°ΡΠ΅ΠΉΡΠΈΡ , Π½ΠΎ Π² ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ Π΄Π»Ρ ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ GUI. ΠΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΏΠ»ΡΡ β ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ. ΠΡΠ»ΠΈ QT ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠΉ ΠΊΠΎΠ΄ Π»ΠΈΡΡ Π΄Π»Ρ ΡΠ°ΠΊΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², ΠΊΠ°ΠΊ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ ΠΏΠΎΠ»ΠΎΡΡ ΠΏΡΠΎΠΊΡΡΡΠΊΠΈ, ΡΠΎ wxWidgets Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ²ΠΎΠΉ, ΠΈ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΡΠΎΠΌΡ Π²ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΏΠΎΡ ΠΎΠΆΠΈΠΌΠΈ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΉ ΡΡΠΈΠ»Ρ.
ΠΠ°ΠΆΠ½Π°Ρ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡ wxWidgets Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Β«ΡΠΎΠ΄Π½ΡΡ Β» Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Π²Π΅Π·Π΄Π΅, Π³Π΄Π΅ ΡΡΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. ΠΡΠΎ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ Π΄Π»Ρ ΠΌΠ½ΠΎΠ³ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ΠΈ ΠΏΡΠΈΠ²ΡΠΊΠ°ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ ΡΡΠ΅Π΄Π΅, Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ ΡΠ°ΡΡΠΎ Π²ΡΠ·ΡΠ²Π°ΡΡ Π·Π°ΡΡΡΠ΄Π½Π΅Π½ΠΈΡ Π² ΠΈΡ ΡΠ°Π±ΠΎΡΠ΅.
Π Π‘Π΅ΡΠΈ Π΅ΡΡΡ ΡΡΠΎΠΊ ΠΏΠΎ ΡΠ°Π±ΠΎΡΠ΅ Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ ΠΎΡ Π΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ².
SDL β ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½Π°Ρ 2D-Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½Π°Ρ Π΄Π»Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΠΈΠ³Ρ). ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ Windows, Linux, Mac OS, Π° ΡΠ°ΠΊΠΆΠ΅ Android, Windows Mobile ΠΈ iOS. ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ β Π±ΡΡΡΡΠΎΡΠ°, Π½Π°Π΄ΡΠΆΠ½ΠΎΡΡΡ ΠΈ Π»ΡΠ³ΠΊΠΎΡΡΡ Π² ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ. Π’Π°ΠΊΠΆΠ΅ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ΡΠΎ Π·Π²ΡΠΊΠΎΠΌ β ΡΡΠΎ Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΏΠ»ΡΡ ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΊΡΡΠΏΠ½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ².
ΠΠΎΠΌΠ±ΠΈΠ½ΠΈΡΡΠ΅ΡΡΡ Ρ wxWidgets ΠΈ Ρ ΠΎΡΠΎΡΠΎ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΡΠ΅ΡΡΡ Ρ OpenGL.
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠ΅Π»ΡΠΉ ΡΠΈΠΊΠ» ΡΡΠΎΠΊΠΎΠ², ΡΠ°Π·ΠΌΠ΅ΡΡΠ½Π½ΡΠΉ Π½Π° Habr.
ΠΠΎΠΆΠ°Π»ΡΠΉ, ΠΎΠ΄Π½Π° ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ. GTK+ β Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ, ΡΠΈΡΠΎΠΊΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΠΉ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ . ΠΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ ΠΎΠ½ Π·Π°Π΄ΡΠΌΡΠ²Π°Π»ΡΡ ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ GIMP, Π½ΠΎ Π·Π° 20 Π»Π΅Ρ ΠΏΠΎΡΠ»Π΅ Π²ΡΠΏΡΡΠΊΠ° ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΎΠ½ Π½Π°ΡΡΠ» ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² ΡΠΎΡΠ½ΡΡ Π΄ΡΡΠ³ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
Π‘Π΅ΠΉΡΠ°Ρ GTK+ β ΡΡΠΎ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΡΠΉ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ, Π½Π΅ ΡΡΡΡΠΏΠ°ΡΡΠΈΠΉ ΡΠΎΠΌΡ ΠΆΠ΅ QT. ΠΠ½ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ°Π·Π½ΡΠ΅ ΡΠ·ΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ ΡΠ°Π·Π²ΠΈΠ²Π°ΡΡΡΡ.
Π ΡΠ²ΠΎΡ Π²ΡΠ΅ΠΌΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΡΠΎΠ·Π΄Π°Π²Π°Π»Π°ΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ Qt, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ»Π° ΠΏΠ»Π°ΡΠ½ΠΎΠΉ. GTK+ β ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½Π΅ΠΌΠ½ΠΎΠ³ΠΈΡ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΠ·ΡΠΊ C. ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½Π°Ρ, Π½ΠΎ Π΅ΡΡΡ ΠΌΠ½Π΅Π½ΠΈΠ΅, ΡΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° Linux Π²ΡΠ³Π»ΡΠ΄ΡΡ Π±ΠΎΠ»Π΅Π΅ Π½Π°ΡΠΈΠ²Π½ΠΎ, ΡΠ΅ΠΌ Π½Π° Windows ΠΈΠ»ΠΈ Mac OS (GTK+ Ρ ΠΎΡΠΎΡΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ Π΄Π°ΠΆΠ΅ Π½Π° KDE). ΠΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ, ΡΡΠΎ ΠΈΠ·-Π·Π° Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Ρ ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΠΎΡΡΡΡ Wireshark ΠΏΠ΅ΡΠ΅ΡΠ»Π° Π½Π° Qt.
ΠΡΠΈΠΌΠ΅Ρ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π½Π° ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ.
FLTK (ΠΏΡΠΎΠΈΠ·Π½ΠΎΡΠΈΡΡΡ ΠΊΠ°ΠΊ Β«βΡΡΠ»Π»ΡΠΈΠΊΒ») β Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π° Windows, Linux (X11) ΠΈ Mac OS. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ 3D Π³ΡΠ°ΡΠΈΠΊΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ OpenGL ΠΈ ΠΈΠΌΠ΅Π΅Ρ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ GLUT ΡΠΈΠΌΡΠ»ΡΡΠΎΡ. ΠΡΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ ΡΠΎΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² β FLUID. ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΏΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π·Π΄Π΅ΡΡ.
Nana β ΡΡΠΎ ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π΄Π»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ GUI Π² ΡΡΠΈΠ»Π΅ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ C++. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ: Windows, Linux (X11) ΠΈ Mac OS (ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎ). ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π‘++11\17 Π΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠΈΡΠΈ C++: Π»ΡΠΌΠ±Π΄Ρ, ΡΠΌΠ½ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ ΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ. Π’Π°ΠΊ ΠΊΠ°ΠΊ ΡΡΠΎ Π½Π΅ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Nana Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ Π²Π»ΠΈΡΠ½ΠΈΡ Π½Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
ΠΠ΄Π΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΈ ΠΏΡΠΈΠΌΠ΅ΡΡ.
ΠΡΠ΅Π³Π΄Π° ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΡΠΈΡΡΠ²Π°ΡΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΡΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ. ΠΡΠΏΠΈΡΠΈΡΠ΅ ΡΠΏΠΈΡΠΎΠΊ ΡΡΠ½ΠΊΡΠΈΠΉ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π΅ΡΡ ΡΠ°Π· ΠΏΡΠΎΡΠΈΡΠ°ΠΉΡΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ Π²ΡΠ΅Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ C++, ΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π²ΡΠ±ΠΈΡΠ°ΠΉΡΠ΅ ΡΠΎ, ΡΡΠΎ ΠΏΠΎΠ΄ΠΎΠΉΠ΄ΡΡ Π²Π°ΠΌ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ.
ΠΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΡΠΎΠΉ ΠΎΡΠ½ΠΎΠ²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° DevIL, ΠΎ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡcΡ Π² ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅.
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Ρ ΡΠ΅Π±Ρ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ:
Π ΡΠ°ΠΉΠ»Π΅ Image.h Π±ΡΠ΄ΡΡ Ρ ΡΠ°Π½ΠΈΡΡΡΡ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ, Π° Π² ΡΠ°ΠΉΠ»Π΅ Image.cpp β ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΡΠ½ΠΊΡΠΈΠΉ.
Π Π½Π°Π·Π²Π°Π½ΠΈΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΈ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ Π²Ρ Π²ΡΡΡΠ΅ΡΠΈΡΠ΅ ΠΏΡΠΈΡΡΠ°Π²ΠΊΡ «ag«, Π²ΠΌΠ΅ΡΡΠΎ Π½Π΅Ρ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ Π»ΡΠ±ΡΡ Π΄ΡΡΠ³ΡΡ. ΠΡΠΎ ΡΠ΄Π΅Π»Π°Π½ΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ Π½Π΅ Π±ΡΠ»ΠΎ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΉ ΠΈΠ»ΠΈ ΠΊΠΎΠ½ΡΡΠ°Π½Ρ Π² ΡΠ°Π·Π½ΡΡ
ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° ΠΏΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° #pragma once Π½ΡΠΆΠ½Π° Π΄Π»Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ: ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΠΏΡΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·.
C++ β ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΌΠΎΡΠ½ΡΡ ΠΈ Π²ΠΎΡΡΡΠ΅Π±ΠΎΠ²Π°Π½Π½ΡΡ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ Π½Π° Π½ΡΠΌ ΠΏΠΈΡΡΡ ΡΠΎΡΠ½ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π·Π°ΡΠ°ΡΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΡ GUI. ΠΠ΄Π½Π°ΠΊΠΎ ΡΠ°Π±ΠΎΡΠ° Ρ Π³ΡΠ°ΡΠΈΠΊΠΎΠΉ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ΄ΠΎΠ±Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ β Π² ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π³ΠΎΡΠΎΠ²ΡΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ. ΠΠ½ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π±ΡΡΡΡΠΎΠΉ ΠΈ ΡΠ΄ΠΎΠ±Π½ΠΎΠΉ.
SFML (Simple and Fast Multimedia Library) β ΠΎΠ΄Π½Π° ΠΈΠ· ΡΠ°ΠΌΡΡ ΡΠ΄ΠΎΠ±Π½ΡΡ ΠΈ Π±ΡΡΡΡΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ Π΄Π»Ρ 2D-Π³ΡΠ°ΡΠΈΠΊΠΈ. ΠΡ Π½Π΅ΠΎΡΠΏΠΎΡΠΈΠΌΠΎΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ β ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ ΡΡΠΎΠ²Π½Ρ Π·Π½Π°Π½ΠΈΠΉ ΡΠ·ΡΠΊΠ° ΠΈ Π»ΡΠ³ΠΊΠΎΡΡΡ ΠΎΡΠ²ΠΎΠ΅Π½ΠΈΡ: Π²ΡΠ΅Π³ΠΎ Π·Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄Π½Π΅ΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π²ΠΏΠΎΠ»Π½Π΅ ΡΠ΅Π±Π΅ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. Π ΠΏΡΠΈΠΌΠ΅ΡΡ, ΠΏΠ΅ΡΠ²ΠΎΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Β«SFML works!Β» ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π²ΡΠ΅Π³ΠΎ Π·Π° ΠΌΠΈΠ½ΡΡΡ. ΠΡΡ ΠΎΠ΄Π½ΠΎ Π½Π΅ΠΎΡΠΏΠΎΡΠΈΠΌΠΎΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ β ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΠΎΡΡΡ: SFML ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΏΠΎΠ΄ Windows, Linux (ΡΠΎΠ»ΡΠΊΠΎ X11, Π½ΠΎ Π½Π΅ Wayland) ΠΈ Mac, ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΡΡ Π²ΡΡ ΠΎΠ΄ ΠΏΠΎΠ΄ Android.
ΠΠΎΠ΅-ΡΡΠΎ Π΅ΡΡ
SFML Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠΎ Π±ΠΎΠ»ΡΡΠ΅ΠΉ ΡΠ°ΡΡΠΈ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠΌΠΈ ΡΡΠ°ΡΡΠ°ΠΏΠ°ΠΌΠΈ ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°ΠΌΠΈ, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ³Ρ β Ρ ΠΎΠ±Π±ΠΈ. SFML ΠΏΠΎΠΏΡΠ»ΡΡΠ΅Π½ ΡΡΠ΅Π΄ΠΈ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠΎΠΌΡ, ΡΡΠΎ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ Π±ΠΎΠ»ΡΡΠΈΡ ΠΎΠ±ΡΡΠΌΠΎΠ² ΠΊΠΎΠ΄Π°.
Qt ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΠ΅Π»ΡΠΉ Π½Π°Π±ΠΎΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² Π΄Π»Ρ Π±ΡΡΡΡΠΎΠ³ΠΎ ΠΈ ΡΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ GUI. ΠΠΎΠ½Π΅ΡΠ½ΠΎ ΠΆΠ΅, Π·Π΄Π΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°ΡΡ ΠΈ ΠΈΠ³ΡΡ β ΠΏΠΎΡΠ΅ΠΌΡ Π±Ρ ΠΈ Π½Π΅Ρ? β Π½ΠΎ Qt ΠΏΡΠΈΠ²Π»Π΅ΠΊΠ°Π΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ² Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΠ΅ΠΌ, ΡΡΠΎ ΠΎΠ½Π° ΡΠ²Π»ΡΠ΅ΡΡΡ Π±ΡΡΡΡΠΎΠΉ, ΡΠ΄ΠΎΠ±Π½ΠΎΠΉ, Π³ΠΈΠ±ΠΊΠΎΠΉ ΠΈ ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΠΎΠΉ. ΠΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ Qt ΠΎΠ±ΠΎΠ³Π½Π°Π»Π° Π΄Π°ΠΆΠ΅ SFML: Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π΄ΠΎΡΡΡΠΏΠ½Π° ΠΊΠ°ΠΊ Π½Π° Windows, Linux ΠΈ Mac, ΡΠ°ΠΊ ΠΈ Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°Ρ β Windows Mobile, Android ΠΈ iOS.
ΠΠΎΠ΅-ΡΡΠΎ Π΅ΡΡ
Qt ΡΠ°ΡΡΠΈΡΡΠ΅Ρ C++ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΠΠ (ΠΠ΅ΡΠ°-ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°) ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΈΠ³Π½Π°Π»Ρ ΠΈ ΡΠ»ΠΎΡΡ). Π’Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ ΠΏΠ»Π°ΡΠ½ΡΡ ΡΠ»ΡΠΆΠ±Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ (ΠΊΠ°ΠΊ ΠΈ ΠΏΠ»Π°ΡΠ½ΡΡ Π»ΠΈΡΠ΅Π½Π·ΠΈΡ). ΠΠ»Ρ Qt Π΅ΡΡΡ Π±ΠΎΠ»ΡΡΠΎΠΉ Π²ΡΠ±ΠΎΡ IDE: QtDesigner, QtCreator, QDevelop, Edyuk, Π° ΡΠ°ΠΊΠΆΠ΅ Π΄ΠΎΡΡΡΠΏΠ½Π° ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ Visual Studio, Eclipse ΠΈ XCode.
Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠΉΡΠΈ Π³ΠΎΡΠΎΠ²ΡΠΉ ΠΊΡΡΡ ΠΏΠΎ Π΄Π°Π½Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅.
Cairo β Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π΄Π»Ρ ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ Π²Π΅ΠΊΡΠΎΡΠ½ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΎΠ΄ Linux, Windows ΠΈ Mac OS. Π ΠΏΡΠΈΠΌΠ΅ΡΡ, ΡΠ°ΠΊΠΎΠΉ ΠΊΡΡΠΏΠ½ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ, ΠΊΠ°ΠΊ Mozilla, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Cairo Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ½ΠΎΠΌ Π΄Π²ΠΈΠΆΠΊΠ΅ Gecko. Π’Π°ΠΊΠΆΠ΅ Cairo Π»Π΅ΠΆΠΈΡ Π² ΠΎΡΠ½ΠΎΠ²Π΅ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ (MorphOS, AmigaOS) ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (InkScape, Synfig, Graphite). ΠΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π±ΡΠ΄ΡΡΠ΅ Π³ΠΎΡΠΎΠ²Ρ ΠΊ ΠΎΡΡΡΡΡΡΠ²ΠΈΡ ΡΡΡΡΠΊΠΎΡΠ·ΡΡΠ½ΡΡ ΡΠ΅ΡΡΡΡΠΎΠ².
ΠΠΎΠ΅-ΡΡΠΎ Π΅ΡΡ
Cairo ΠΌΠΎΠΆΠ΅Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ OpenGL Π±ΡΠΊΠ΅Π½Π΄ΠΎΠΌ Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ GPU, ΡΡΠΎ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ ΡΠ΅Π»ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ.
ΠΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Cocos2D-X ΠΏΡΠΈΠ·Π²Π°Π½Π½Π° ΡΠΏΡΠΎΡΡΠΈΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΠΈΠ³Ρ. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π²ΡΠ΅ ΡΠ΅ ΠΆΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ, ΡΡΠΎ ΠΈ Qt. ΠΠ· ΠΏΠ»ΡΡΠΎΠ² ΡΡΠΎΠΈΡ ΠΎΡΠΌΠ΅ΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΡ, ΡΠ΄ΠΎΠ±ΡΡΠ²ΠΎ ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ° ΠΈΠ³Ρ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ Cocos Creator. Π ΡΠΏΠΈΡΠΊΠ΅ ΠΈΠ³Ρ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΡ Π½Π° Π΄Π²ΠΈΠΆΠΊΠ΅, Π΅ΡΡΡ Π²ΡΠ΅ΠΌΠΈΡΠ½ΠΎ ΠΈΠ·Π²Π΅ΡΡΠ½Π°Ρ BADLAND, ΡΠ°Π±ΠΎΡΠ°ΡΡΠ°Ρ Π½Π° Π²ΡΠ΅Ρ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°Ρ .
ΠΠΎΠ΅-ΡΡΠΎ Π΅ΡΡ
ΠΡΠ»ΠΈ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΈΠ³ΡΡ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π³ΡΠ°ΡΠΈΠΊΠΎΠΉ ΠΈ Π°Π½ΠΈΠΌΠ°ΡΠΈΠ΅ΠΉ Π² Π±ΠΎΠ»ΡΡΠΈΡ ΠΎΠ±ΡΡΠΌΠ°Ρ , ΡΠΎ Π»ΡΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Unity Π²ΠΌΠ΅ΡΡΠΎ Cocos2D-X. Π Unity ΠΈΠΌΠ΅Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠ»Π°Π²Π½ΠΎΠΉ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Ρ ΡΠ°ΠΊΠΈΠΌΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ, ΠΊΠ°ΠΊ Photoshop, Maya ΠΈΠ»ΠΈ Blender. Π Cocos2D-X Π²ΡΡ Π³ΡΠ°ΡΠΈΠΊΠ° Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ ΠΈΠ·Π²Π½Π΅ ΠΈ Π½Π° Π½Π΅Ρ ΡΡΡΠ»Π°ΡΡΡΡ ΠΈΠ· ΠΊΠΎΠ΄Π°.
Π Π ΡΠ½Π΅ΡΠ΅ Π½Π΅Ρ ΡΡΠΎΠΊΠΎΠ² ΠΏΠΎ ΡΡΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅, Π½ΠΎ Π½Π° Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΎΠΌ ΡΠ·ΡΠΊΠ΅ Π΅ΡΡΡ ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ ΠΊΡΡΡ ΠΎΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ².
Juce β ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΡΠΉ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠΉ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ² Π½Π° ΡΠ·ΡΠΊΠ΅ C++.
ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΠΎ Juce ΠΌΠ½ΠΎΠ³ΠΎ, Π½ΠΎ Π½Π΅ Π½Π° ΡΡΡΡΠΊΠΎΠΌ ΡΠ·ΡΠΊΠ΅. ΠΠΎΡΡΠΎΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°ΡΠ°ΡΡ ΠΊΠ½ΠΈΠ³Ρ Β«ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° C++ Ρ JUCE 4.2.x: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΡΡ ΠΌΡΠ»ΡΡΠΈΠΌΠ΅Π΄ΠΈΠΉΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ JUCE Π½Π° ΠΏΡΠΎΡΡΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ Β».
ΠΠΎΠ΅-ΡΡΠΎ Π΅ΡΡ
Juce Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ΅Π½ ΡΡΠ΅Π΄ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π°ΡΠ΄ΠΈΠΎ-ΠΠ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ Π½Π°Π±ΠΎΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ²-ΠΎΠ±ΠΎΠ»ΠΎΡΠ΅ΠΊ Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ Π°ΡΠ΄ΠΈΠΎ-ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ².
wxWidgets β ΠΎΠ΄Π½Π° ΠΈΠ· ΡΡΠ°ΡΠ΅ΠΉΡΠΈΡ , Π½ΠΎ Π² ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ Π΄Π»Ρ ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ GUI. ΠΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΏΠ»ΡΡ β ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ. ΠΡΠ»ΠΈ QT ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠΉ ΠΊΠΎΠ΄ Π»ΠΈΡΡ Π΄Π»Ρ ΡΠ°ΠΊΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², ΠΊΠ°ΠΊ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ ΠΏΠΎΠ»ΠΎΡΡ ΠΏΡΠΎΠΊΡΡΡΠΊΠΈ, ΡΠΎ wxWidgets Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ²ΠΎΠΉ, ΠΈ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΡΠΎΠΌΡ Π²ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΏΠΎΡ ΠΎΠΆΠΈΠΌΠΈ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΉ ΡΡΠΈΠ»Ρ.
ΠΠΎΠ΅-ΡΡΠΎ Π΅ΡΡ
ΠΠ°ΠΆΠ½Π°Ρ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡ wxWidgets Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Β«ΡΠΎΠ΄Π½ΡΡ Β» Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Π²Π΅Π·Π΄Π΅, Π³Π΄Π΅ ΡΡΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. ΠΡΠΎ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ Π΄Π»Ρ ΠΌΠ½ΠΎΠ³ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½ΠΈ ΠΏΡΠΈΠ²ΡΠΊΠ°ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ ΡΡΠ΅Π΄Π΅, Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ ΡΠ°ΡΡΠΎ Π²ΡΠ·ΡΠ²Π°ΡΡ Π·Π°ΡΡΡΠ΄Π½Π΅Π½ΠΈΡ Π² ΠΈΡ ΡΠ°Π±ΠΎΡΠ΅.
Π Π‘Π΅ΡΠΈ Π΅ΡΡΡ ΡΡΠΎΠΊ ΠΏΠΎ ΡΠ°Π±ΠΎΡΠ΅ Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ ΠΎΡ Π΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ².
SDL β ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½Π°Ρ 2D-Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½Π°Ρ Π΄Π»Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΠΈΠ³Ρ). ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ Windows, Linux, Mac OS, Π° ΡΠ°ΠΊΠΆΠ΅ Android, Windows Mobile ΠΈ iOS. ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ β Π±ΡΡΡΡΠΎΡΠ°, Π½Π°Π΄ΡΠΆΠ½ΠΎΡΡΡ ΠΈ Π»ΡΠ³ΠΊΠΎΡΡΡ Π² ΡΠΊΡΠΏΠ»ΡΠ°ΡΠ°ΡΠΈΠΈ. Π’Π°ΠΊΠΆΠ΅ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ΡΠΎ Π·Π²ΡΠΊΠΎΠΌ β ΡΡΠΎ Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΏΠ»ΡΡ ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΊΡΡΠΏΠ½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ².
ΠΠΎΠ΅-ΡΡΠΎ Π΅ΡΡ
ΠΠΎΠΌΠ±ΠΈΠ½ΠΈΡΡΠ΅ΡΡΡ Ρ wxWidgets ΠΈ Ρ ΠΎΡΠΎΡΠΎ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΡΠ΅ΡΡΡ Ρ OpenGL.
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΠ΅Π»ΡΠΉ ΡΠΈΠΊΠ» ΡΡΠΎΠΊΠΎΠ², ΡΠ°Π·ΠΌΠ΅ΡΡΠ½Π½ΡΠΉ Π½Π° Habr.
ΠΠΎΠΆΠ°Π»ΡΠΉ, ΠΎΠ΄Π½Π° ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ. GTK+ β Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ, ΡΠΈΡΠΎΠΊΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΠΌΡΠΉ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ . ΠΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ ΠΎΠ½ Π·Π°Π΄ΡΠΌΡΠ²Π°Π»ΡΡ ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ GIMP, Π½ΠΎ Π·Π° 20 Π»Π΅Ρ ΠΏΠΎΡΠ»Π΅ Π²ΡΠΏΡΡΠΊΠ° ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΠΎΠ½ Π½Π°ΡΡΠ» ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² ΡΠΎΡΠ½ΡΡ Π΄ΡΡΠ³ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
Π‘Π΅ΠΉΡΠ°Ρ GTK+ β ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΡΠΉ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ, Π½Π΅ ΡΡΡΡΠΏΠ°ΡΡΠΈΠΉ ΡΠΎΠΌΡ ΠΆΠ΅ QT. ΠΠ½ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ°Π·Π½ΡΠ΅ ΡΠ·ΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ ΡΠ°Π·Π²ΠΈΠ²Π°ΡΡΡΡ.
ΠΠΎΠ΅-ΡΡΠΎ Π΅ΡΡ
Π ΡΠ²ΠΎΡ Π²ΡΠ΅ΠΌΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΡΠΎΠ·Π΄Π°Π²Π°Π»Π°ΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ Qt, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ»Π° ΠΏΠ»Π°ΡΠ½ΠΎΠΉ. GTK+ β ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½Π΅ΠΌΠ½ΠΎΠ³ΠΈΡ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΠ·ΡΠΊ C. ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½Π°Ρ, Π½ΠΎ Π΅ΡΡΡ ΠΌΠ½Π΅Π½ΠΈΠ΅, ΡΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° Linux Π²ΡΠ³Π»ΡΠ΄ΡΡ Π±ΠΎΠ»Π΅Π΅ Π½Π°ΡΠΈΠ²Π½ΠΎ, ΡΠ΅ΠΌ Π½Π° Windows ΠΈΠ»ΠΈ Mac (GTK+ Ρ ΠΎΡΠΎΡΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ Π΄Π°ΠΆΠ΅ Π½Π° KDE). ΠΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ, ΡΡΠΎ ΠΈΠ·-Π·Π° Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Ρ ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΠΎΡΡΡΡ Wireshark ΠΏΠ΅ΡΠ΅ΡΠ»Π° Π½Π° Qt.
ΠΡΠΈΠΌΠ΅Ρ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π½Π° ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ.
ΠΡΡΠ³ΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ ΡΡΠ°ΡΡΠΈ ΠΏΠΎ C++ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Ρ Π½Π°Ρ Π½Π° ΡΠ°ΠΉΡΠ΅.
ΠΡΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠ΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ GUI Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° C++, Π½ΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΈ Π½Π° Π΄ΡΡΠ³ΠΈΡ ΡΠ·ΡΠΊΠ°Ρ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Qt ΠΈ GTK+). ΠΠ΄Π½Π°ΠΊΠΎ Π²ΡΠ΅Π³Π΄Π° ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΡΠΈΡΡΠ²Π°ΡΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΡΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ. ΠΡΠΏΠΈΡΠΈΡΠ΅ ΡΠΏΠΈΡΠΎΠΊ ΡΡΠ½ΠΊΡΠΈΠΉ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π΅ΡΡ ΡΠ°Π· ΠΏΡΠΎΡΠΈΡΠ°ΠΉΡΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ Π²ΡΠ΅Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ ΠΈ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΎΠ², ΠΈ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π²ΡΠ±ΠΈΡΠ°ΠΉΡΠ΅ ΡΠΎ, ΡΡΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ Π΄Π»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
Π― ΡΠ΅ΡΠΈΠ» ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄Π»Ρ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π½ΠΈΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ (Π΄Π»Ρ ΠΊΡΡΡΠΎΠ²ΠΈΠΊΠ°), Π° Π΅ΡΠ»ΠΈ Π±ΡΡΡ ΡΠΎΡΠ½Π΅Π΅ β ΡΠΈΡΡ (Π±Π°Π·Π° MNIST). ΠΠΎΡΠΈΡΠ°Π» ΡΡΠΎ ΠΏΠΈΡΡΡ ΡΠ°Π·Π½ΡΠ΅ Π»ΡΠ΄ΠΈ ΠΏΠΎ ΡΡΠΎΠΉ ΡΠ΅ΠΌΠ΅ ΠΈ ΡΠ΅ΡΠΈΠ», ΡΡΠΎ ΡΠ΅ΠΌ Π²ΡΠ±ΠΈΡΠ°ΡΡ Π°Π±Ρ ΠΊΠ°ΠΊ ΠΈ ΡΡΠΎ β Π½Π°Π΄ΠΎ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ°ΡΡ Ρ ΠΎΡΠΎΡΡΡ Π»ΠΈΠ±Ρ, ΡΡΠΎΠ±Ρ ΠΏΠΎΡΠΎΠΌ Π½Π΅ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΡΠ²Π°ΡΡ 10 ΡΠ°Π· ΠΊΠΎΠ΄ ΠΈ Π½Π΅ ΠΏΡΠΎΠΊΠ»ΠΈΠ½Π°ΡΡ ΡΠ΅Π±Ρ Π² ΠΏΠ»ΠΎΡ ΠΎΠΌ Π²ΡΠ±ΠΎΡΠ΅.
Π ΠΊΠ°ΠΊΠΎΠΉ IDE ΠΏΠΈΡΠ°ΡΡ ΠΏΠΎΠΊΠ° ΡΠΎΠΆΠ΅ Π½Π΅ ΡΠ΅ΡΠΈΠ» β Π½Π° Π²ΡΠ±ΠΎΡ Ρ ΠΌΠ΅Π½Ρ Borland C++ Builder 6 ΠΈΠ»ΠΈ MS Visual Studio 2008 Pro || 2010 Express.
Π₯ΠΎΡΠ΅ΡΡΡ ΡΡΠ»ΡΡΠ°ΡΡ ΠΎΡΠ²Π΅Ρ Π½Π° Π²ΠΎΠΏΡΠΎΡ ΠΊΠ°ΠΊΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ/ΠΊΠ»Π°ΡΡ Π²ΡΠ±ΡΠ°ΡΡ ΠΈΡΡ ΠΎΠ΄Ρ ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ:
1. ΠΡΠΎΡΡΠ°Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π² ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠ΅ IDE ΠΈΠ»ΠΈ ΡΠ»ΠΎΠΆΠ½Π°Ρ, Π½ΠΎ Ρ ΠΎΡΠΎΡΠΎ (ΡΠΈΡΠ°ΠΉ: ΠΏΠΎΡΠ°Π³ΠΎΠ²ΠΎ) ΡΠ°Π·ΠΎΠ±ΡΠ°Π½Π½Π°Ρ Π³Π΄Π΅-Π½ΠΈΠ±ΡΠ΄Ρ Π½Π° ΠΎΡΡ ΡΠ°ΠΉΡΠ΅.
2. ΠΡΡΡΡΠΎΡΠ° ΡΠ°Π±ΠΎΡΡ Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌΠΈ
3. ΠΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΡΡΡΠΊΠ°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΎΠΉ Π²Π°ΡΠΈΠ°Π½Ρ: ΡΡΡΡΠΊΠ°Ρ ΡΡΡΠΎΠΊ ΡΡΡΠ°ΡΠ΅Π²ΡΠ°Ρ (ΠΊΠ½ΠΈΠ³Π°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ ΡΠ°ΠΉΡ) ΠΈ ΠΎΡΠ΅Π½Ρ ΡΠ²Π΅ΠΆΠ°Ρ Π°Π½Π³Π»ΠΈΠΉΡΠΊΠ°Ρ
4. Π₯ΠΎΡΠΎΡΠ°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ, Π½Π΅ ΠΏΡΠΎΡΡΠΎ ΠΏΠ°ΡΡ ΡΡΡΠΎΠΊ ΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ, Π½ΠΎ ΠΈ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ², Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΈ
5. ΠΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΡ, examples, ΠΏΡΠΈΠΌΠ΅ΡΡ.
P.S.: Π΅ΡΠ»ΠΈ Π²Ρ Π³Π΄Π΅-Π½ΠΈΠ±ΡΠ΄Ρ Π²ΠΈΠ΄Π΅Π»ΠΈ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Π»ΠΈΠ± Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌΠΈ, ΡΠΎ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΠ΅ΡΡ, ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°. Π― Π²ΡΠ³ΡΠ³Π»ΠΈΠ» ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠ°ΡΡ ΡΡΠ°ΡΡΡ ΡΡΠ°ΡΠ΅ΠΉ, Π΄Π° ΠΈ Π΅ΡΡ ΡΠ°ΠΌ Π΄ΠΎ ΠΊΡΡΠΈ ΡΡΠ±ΡΠ΅ΠΊΡΠΈΠ²ΠΈΠ·ΠΌΠ°.
Π§Π΅ΡΡΠ½ΠΎ Π³ΠΎΠ²ΠΎΡΡ Π½Π΅ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ½ΡΠ», Π²Π°ΠΌ Π½ΡΠΆΠ½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π³ΡΠ°ΡΠΈΠΊΠΎΠΉ ΠΈΠ»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΡΠΆΠ΅ ΠΊΠΎΡΠΎΡΠ°Ρ Π·Π°ΡΠΎΡΠ΅Π½Π° ΠΏΠΎΠ΄ Π½Π΅ΠΉΡΠΎΠ½Π½ΡΠ΅ ΡΠ΅ΡΠΈ?
Π§ΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ Π³ΡΠ°ΡΠΈΠΊΠΈ, ΡΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎ ImageMagick.
Π§ΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΊΡΡΡΠΎΠ²ΠΈΠΊΠ°, ΡΠΎ Π²ΠΎΡ Π²Π°ΠΌ Π² ΠΏΠΎΠΌΠΎΡΡ ΡΡΠ°ΡΠ°Ρ ΡΡΠ°ΡΡΡ, Π½ΠΎ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ½ΡΡΠ½Π°Ρ.
ΠΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΡΠΊΠ°ΠΆΡ ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅, Π½ΠΎ ΡΠ°ΡΡΠΊΠ°ΠΆΡ ΠΎΠ΄Π½Ρ ΠΈΡΡΠΎΡΠΈΡ. ΠΠΎΠΉ Ρ ΠΎΡΠΎΡΠΈΠΉ Π΄ΡΡΠ³ ΠΏΠΎΠ΄ΡΠ°Π±Π°ΡΡΠ²Π°Π» ΡΠ΅ΠΌ, ΡΡΠΎ ΠΏΠΈΡΠ°Π» ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄Π»Ρ Π΄ΠΈΠΏΠ»ΠΎΠΌΠΎΠ² ΠΈ ΠΊΡΡΡΠΎΠ²ΠΈΠΊΠΎΠ². ΠΠ΄Π½Π° Π΄Π΅Π²ΡΡΠΊΠ° ΠΎΠ±ΡΠ°ΡΠΈΠ»Π°ΡΡ ΠΊ Π½Π΅ΠΌΡ Ρ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ β Π΅ΠΉ Π·Π°Π΄Π°Π»ΠΈ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠΎΠ².
ΠΠ΅ΡΠ²ΠΎΠ΅, ΡΡΠΎ ΠΎΠ½ ΡΠ΄Π΅Π»Π°Π» β ΡΠ°Π·Π±ΠΈΠ» ΡΠ΅ΠΊΡΡ Π½Π° ΡΡΡΠΎΠΊΠΈ, Π°Π½Π°Π»ΠΈΠ·ΠΈΡΡΡ ΠΏΠ»ΠΎΡΠ½ΠΎΡΡΡ ΡΠΎΡΠ΅ΠΊ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ ΠΏΠΈΠΊΡΠ΅Π»ΠΎΠ².
ΠΡΠΎΡΡΠΌ ΡΠ°Π³ΠΎΠΌ Π±ΡΠ»ΠΎ Π±ΡΠ»Π° ΡΠ°Π·Π±ΠΈΠ²ΠΊΠ° ΡΡΡΠΎΠΊ Π½Π° Π·Π½Π°ΠΊΠΈ, ΠΏΡΠΈΡΡΠΌ, ΠΎΠ½ ΡΡΡΠ», ΡΡΠΎ Π² ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠΈΡΡΠ°Ρ ΡΠΈΡΠΈΠ½Π° ΡΠ°Π·Π½ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ°Π·Π½ΠΎΠΉ.
ΠΠ°ΠΊΠΎΠ½Π΅Ρ, Π½Π°ΠΉΠ΄Π΅Π½Π½ΡΠ΅ Π·Π½Π°ΠΊΠΈ ΠΎΠ½ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π» ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π» Π²Π²Π΅ΡΡΠΈ Ρ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ Π±ΡΠΊΠ²Ρ ΠΈΠ»ΠΈ Π·Π½Π°ΠΊ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΎΠ±ΡΡΠ°Π»Π°ΡΡ.
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π±ΡΠ» ΡΠ΄ΠΈΠ²ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ β ΠΏΠΎΡΠ»Π΅ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π»Π° Π»ΡΡΡΠΈΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ, ΡΠ΅ΠΌ Π»ΡΠ±ΡΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ Π½Π° ΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ° (1995 Π³ΠΎΠ΄).
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΠΈΠΌΠ΅Π»Π° Π΄Π²Π° Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠ° β ΠΆΠ΅ΡΡΠΊΠ°Ρ ΠΏΡΠΈΠ²ΡΠ·ΠΊΠ° ΠΊ ΡΡΠΈΡΡΡ(Π°ΠΌ), Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ(ΡΡ ) ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠ»ΠΎΡΡ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅. Π§Π΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ ΡΡΠΈΡΡΠΎΠ² ΠΏΠΎΠ½ΠΈΠΌΠ°Π»Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°, ΡΠ΅ΠΌ ΠΌΠ΅Π½ΡΡΠ΅ Π±ΡΠ»Π° ΡΠΎΡΠ½ΠΎΡΡΡ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π½ΠΈΡ.
Π‘ ΡΠ΅Ρ ΠΏΠΎΡ ΠΏΡΠΎΡΠ»ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅Ρ. ΠΠ°Π»Ρ, ΡΡΠΎ Π΄ΡΡΠ³ Π±ΠΎΠ»ΡΡΠ΅ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π»ΡΡ ΠΊ ΡΡΠΎΠΉ ΡΠ΅ΠΌΠ΅. ΠΠ³ΠΎ ΠΏΡΠΎΡΡΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π°ΠΆΠ΅ ΡΠ΅ΠΉΡΠ°Ρ ΠΈΠΌΠ΅Π»Π° Π±Ρ ΡΠΌΡΡΠ» Π΄Π»Ρ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π½ΠΈΡ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ°, Π½Π°ΠΏΠ΅ΡΠ°ΡΠ°Π½Π½ΠΎΠ³ΠΎ ΠΎΠ΄Π½ΠΈΠΌ ΡΡΠΈΡΡΠΎΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΠ½ΠΈΠ³.
ΠΡΡΠ°ΡΠΈ, ΡΠΎΠΆΠ΅ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ, Π·Π°ΡΠ΅ΠΌ Π°Π²ΡΠΎΡΡ Π²ΠΎΠΏΡΠΎΡΠ° Π½ΡΠΆΠ½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌΠΈ β ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΌΠΎΠ½ΠΎΡ ΡΠΎΠΌΠ½ΡΠΉ BMP Π½Π° Π²Ρ ΠΎΠ΄Π΅ Β«ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π»ΠΊΠΈΒ». Π‘ΠΌΡΡΠ» ΠΊΡΡΡΠΎΠ²ΠΈΠΊΠ° Π²Π΅Π΄Ρ Π½Π΅ Π² ΡΠ°Π±ΠΎΡΠ΅ Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌΠΈ, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ Π² ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π½ΠΈΠΈ ΡΠ΅ΠΊΡΡΠ°.
Π¦Π΅Π»ΡΡ ΡΡΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠΎΠ½ΡΡΠ½ΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ C Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ Π½Π΅ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΠ»ΠΎΡΡ ΡΡΠ°ΡΠΈΡΡ Π²ΡΠ΅ΠΌΡ Π½Π° ΠΏΠΎΠΈΡΠΊ Π² Google.
ΠΡΠ»ΠΈ Π²Ρ Π·Π½Π°Π΅ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½Π° Π΄ΡΡΠ³ΠΈΠΌ, Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΡΡΡΠ»ΠΊΡ Π½Π° Π½Π΅Π΅ Π·Π΄Π΅ΡΡ. ΠΠ΅Ρ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ Π½Π° ΡΠΎ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΎ, Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ.
Π‘ΡΡΠ°Π½ΠΈΡΠ° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ «ΠΊΠ°ΠΊ Π΅ΡΡΡ» — Ρ Π½Π°Π΄Π΅ΠΆΠ΄ΠΎΠΉ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ, Π½ΠΎ Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ -Π»ΠΈΠ±ΠΎ Π³Π°ΡΠ°Π½ΡΠΈΠΉ. ΠΠ΄Π΅ΡΡ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΡΠ²ΠΈΡΡΡΡ ΡΡΡΠ°ΡΠ΅Π²ΡΠΈΠ΅, Π²Π²ΠΎΠ΄ΡΡΠΈΠ΅ Π² Π·Π°Π±Π»ΡΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠ΅ ΡΡΡΠ»ΠΊΠΈ. ΠΡΠ»ΠΈ Π²Ρ Π·Π°ΠΌΠ΅ΡΠΈΠ»ΠΈ ΠΎΠ΄Π½Ρ ΠΈΠ· Π½ΠΈΡ , Π±ΡΠ»ΠΎ Π±Ρ Π·Π΄ΠΎΡΠΎΠ²ΠΎ, Π΅ΡΠ»ΠΈ Π±Ρ Π²Ρ ΠΈΡΠΏΡΠ°Π²ΠΈΠ»ΠΈ ΠΎΡΠΈΠ±ΠΊΡ.
Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅
|
ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΏΠΎ C++ Π΄Π»Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ, ΠΎΡΠ»ΠΈΡΠ½ΡΡ ΠΎΡ ANSI/ISO |
Π¦Π΅Π»ΡΡ ΡΡΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠΎΠ½ΡΡΠ½ΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ C Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ Π½Π΅ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΠ»ΠΎΡΡ ΡΡΠ°ΡΠΈΡΡ Π²ΡΠ΅ΠΌΡ Π½Π° ΠΏΠΎΠΈΡΠΊ Π² Google.
ΠΡΠ»ΠΈ Π²Ρ Π·Π½Π°Π΅ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½Π° Π΄ΡΡΠ³ΠΈΠΌ, Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΡΡΡΠ»ΠΊΡ Π½Π° Π½Π΅Π΅ Π·Π΄Π΅ΡΡ. ΠΠ΅Ρ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ Π½Π° ΡΠΎ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΎ, Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ.
Π‘ΡΡΠ°Π½ΠΈΡΠ° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ «ΠΊΠ°ΠΊ Π΅ΡΡΡ» — Ρ Π½Π°Π΄Π΅ΠΆΠ΄ΠΎΠΉ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ, Π½ΠΎ Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ -Π»ΠΈΠ±ΠΎ Π³Π°ΡΠ°Π½ΡΠΈΠΉ. ΠΠ΄Π΅ΡΡ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΡΠ²ΠΈΡΡΡΡ ΡΡΡΠ°ΡΠ΅Π²ΡΠΈΠ΅, Π²Π²ΠΎΠ΄ΡΡΠΈΠ΅ Π² Π·Π°Π±Π»ΡΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠ΅ ΡΡΡΠ»ΠΊΠΈ. ΠΡΠ»ΠΈ Π²Ρ Π·Π°ΠΌΠ΅ΡΠΈΠ»ΠΈ ΠΎΠ΄Π½Ρ ΠΈΠ· Π½ΠΈΡ , Π±ΡΠ»ΠΎ Π±Ρ Π·Π΄ΠΎΡΠΎΠ²ΠΎ, Π΅ΡΠ»ΠΈ Π±Ρ Π²Ρ ΠΈΡΠΏΡΠ°Π²ΠΈΠ»ΠΈ ΠΎΡΠΈΠ±ΠΊΡ.
Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅
|