ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Β«WP-BilliardsΒ»

ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°ΡΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρ€ΠΎΠ΄Π΅, трСхмСрная ΠΈΠ³Ρ€Π° Π² Π±ΠΈΠ»ΡŒΡΡ€Π΄ Π΄Π°Π΅Ρ‚ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ свободу для творчСства: ΠΏΠΎΠΌΠΈΠΌΠΎ Π±ΠΈΠ»ΡŒΡΡ€Π΄Π½ΠΎΠ³ΠΎ стола Π½Π° ΡΡ†Π΅Π½Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Ρ‹ ΠΈΠ½Ρ‚Π΅Ρ€ΡŒΠ΅Ρ€Π° Π±ΠΈΠ»ΡŒΡΡ€Π΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ½Π°Ρ‚Ρ‹. Однако ΠΏΡ€ΠΈ этом слСдуСт ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ всС ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΡŽΡ‰ΠΈΠ΅ нас дСйствия Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π° Π±ΠΈΠ»ΡŒΡΡ€Π΄Π½ΠΎΠΌ столС, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π² ΠΏΠ»ΠΎΡΠΊΠΎΡΡ‚ΠΈ (Π·Π° ΠΎΡ‡Π΅Π½ΡŒ Ρ€Π΅Π΄ΠΊΠΈΠΌ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ «ΠΏΠΎΠ΄ΡΠΊΠ°ΠΊΠΈΠ²Π°Π½ΠΈΡ» ΡˆΠ°Ρ€ΠΎΠ² ΠΏΡ€ΠΈ ΡƒΠ΄Π°Ρ€Π΅, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Β«WP-BilliardsΒ» (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ «WP-Billiards»

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈ любая ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Π°Ρ ΠΈΠ³Ρ€Π° Π½Π° ΡΠ΅Π³ΠΎΠ΄Π½ΡΡˆΠ½ΠΈΠΉ дСнь Π² Ρ‚ΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΠΌΠ΅Ρ€Π΅ являСтся Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹ΠΌ прСдставлСниСм Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… явлСний, процСссов ΠΈΠ»ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠΈΡ€Π°. Π’ Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ этому ΠΌΠΎΠΆΠ½ΠΎ привСсти Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Ρ‚Π°ΠΊΠΎΠ³ΠΎ свойства любой динамичСской ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΉ ΠΈΠ³Ρ€Ρ‹ ΠΊΠ°ΠΊ Ρ€Π΅Π°Π»ΠΈΡΡ‚ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒ. Π§Π΅ΠΌ Π»ΡƒΡ‡ΡˆΠ΅ Ρ€Π΅Π°Π»ΠΈΡΡ‚ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒ, Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΠ³Ρ€Π°. Π”Π°Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΊΡ‚ Π½Π΅ ΡΠ²Π»ΡΠ΅Ρ‚ся Ρ‡Π΅ΠΌ-Ρ‚ΠΎ ΠΏΠ°Ρ€Π°Π΄ΠΎΠΊΡΠ°Π»ΡŒΠ½Ρ‹ΠΌ, особСнно Ссли Π²ΡΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ Ρ‡Ρ‚ΠΎ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ ΠΆΠΈΠ²Π΅Ρ‚ Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ ΠΌΠΈΡ€Π΅, Π° ΠΊΠΎΠ³Π΄Π° Ρƒ Π½Π΅Π³ΠΎ появляСтся Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠΎΡ‚Π²ΠΎΡ€ΠΈΡ‚ΡŒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ, Ρ‚ΠΎ ΠΎΠ½ Π΄Π΅Π»Π°Π΅Ρ‚ Π΅Π³ΠΎ ΠΏΠΎ ΠΎΠ±Ρ€Π°Π·Ρƒ ΠΈ ΠΏΠΎΠ΄ΠΎΠ±ΠΈΡŽ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ, ΠΈΡΠΊΠ»ΡŽΡ‡Π°Ρ Π»ΠΈΠ±ΠΎ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½Ρ‹Π΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΠ΅ высокой ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π»ΠΈΠ±ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹, ΠΌΠ΅ΡˆΠ°ΡŽΡ‰ΠΈΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ условий поставлСнной Π·Π°Π΄Π°Ρ‡ΠΈ.

Π’ ΠΏΠΎΠ½ΡΡ‚ΠΈΠ΅ рСалистичности вкладываСтся Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ фотографичСскоС качСство ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ, Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΠΎΠΉ Π½Π° ΡΠΊΡ€Π°Π½ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π°, Π½ΠΎ ΠΈ Ρ‚ΠΎ, насколько Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½Ρ‹ физичСскиС свойства ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ΠΎΠ², Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ масса, ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ, ускорСниС ΠΈ ΡΠ²Π»Π΅Π½ΠΈΡ, ΠΊΠ°ΠΊ соударСниС, взаимопритяТСниС ΠΈ Ρ‚. Π΄. ОсобСнно это Π²Π°ΠΆΠ½ΠΎ для ΠΈΠ³Ρ€-симуляторов, Π² Ρ‚ΠΎΠΌ числС для спортивных симуляторов ΠΈ ΡΠΈΠΌΡƒΠ»ΡΡ‚ΠΎΡ€ΠΎΠ² «Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ…» Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΈΠ³Ρ€, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ… элСмСнт Π΄ΠΈΠ½Π°ΠΌΠΈΠΊΠΈ (Π±ΠΈΠ»ΡŒΡΡ€Π΄). К Π½ΠΈΠΌ ΠΏΡ€Π΅Π΄ΡŠΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΡ‡Π΅Π½ΡŒ большиС трСбования, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ спортивныС ΠΈΠ³Ρ€Ρ‹ — занятиС ΠΈΠ· Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠΈΡ€Π°, Π³Π΄Π΅ всС ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ любой Π·Π°ΠΊΠΎΠ½ Ρ„ΠΈΠ·ΠΈΠΊΠΈ.

ЕстСствСнно, Π²ΠΈΠ΄ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ любой динамичСской ΠΈΠ³Ρ€Ρ‹ ΠΏΠΎ Ρ€ΡΠ΄Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΡ€ΠΈΡ‡ΠΈΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ нСсколько ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ Π΅Π΅ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π°: Π½Π΅ ΡΡ‡ΠΈΡ‚ая ΠΎΠ±Ρ…ΠΎΠ΄Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ, здСсь слСдуСт ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹: ΠΈΠ³Ρ€ΠΎΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·Π±Π°Π²Π»Π΅Π½ ΠΎΡ‚ Π΄Π΅Ρ‚Π°Π»Π΅ΠΉ (ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π² «ΠΆΠΈΠ²ΠΎΠΉ» ΠΈΠ³Ρ€Π΅ ΠΈΠ· Π½Π΅ΠΎΠ±Ρ…одимости), ΠΌΠ΅ΡˆΠ°ΡŽΡ‰ΠΈΡ… Π²ΠΎΡΠΏΡ€ΠΈΡΡ‚ΠΈΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π° ΡΠΊΡ€Π°Π½Π΅; ΠΎΠ½ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π΄ΠΎΠ»Π³ΠΎ Π±Π΅Π·Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, оТидая, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ сдСлаСт свой Ρ…ΠΎΠ΄.

Однако это Π½Π΅ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ динамичСской ΠΈΠ³Ρ€Ρ‹ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄ своим Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌ Π°Π½Π°Π»ΠΎΠ³ΠΎΠΌ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… прСимущСств. Напротив: ΠΈΠ½Π²Π΅Π½Ρ‚Π°Ρ€ΡŒ ΠΈΠ³Ρ€Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ дорогостоящим, ΠΊΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π΅Π³ΠΎ располоТСниС Π² ΠΊΠΎΠΌΠ½Π°Ρ‚Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π½Ρ‹ΠΌ. Π’ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΡƒΡŽ ΠΈΠ³Ρ€Ρƒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΈΠ³Ρ€Π°Ρ‚ΡŒ, Π΄Π°ΠΆΠ΅ Π½Π°Ρ…ΠΎΠ΄ΡΡΡŒ Π² ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π΅ΡΡ‚Π²Π΅, — ΠΎΡ‚ΠΏΠ°Π΄Π°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ наличия ΠΏΠ°Ρ€Ρ‚Π½Π΅Ρ€Π° ΠΏΠΎ ΠΈΠ³Ρ€Π΅. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, любая ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Π°Ρ ΠΈΠ³Ρ€Π°, ΠΈΠΌΠ΅ΡŽΡ‰Π°Ρ свой ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ ΠΌΠΈΡ€Π΅, ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ прСимущСство ΠΏΠΎ ΡƒΡΠΏΠ΅Ρ…Ρƒ ΠΏΠ΅Ρ€Π΅Π΄ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹ΠΌΠΈ ΠΈΠ³Ρ€Π°ΠΌΠΈ Π·Π° ΡΡ‡Π΅Ρ‚ популярности своСго «ΠΆΠΈΠ²ΠΎΠ³ΠΎ» собрата.

БущСствуСт ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ количСство динамичСских ΠΈΠ³Ρ€, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΡƒΡŽ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ. Π‘Ρ€Π΅Π΄ΠΈ Π½ΠΈΡ… остановимся Π½Π° Π±ΠΈΠ»ΡŒΡΡ€Π΄Π΅, ΠΊΠ°ΠΊ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ эффСктных ΠΈΠ³Ρ€, Π² ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΌΠ΅Ρ€Π΅ Π΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°ΠΊΠΎΠ½Ρ‹ ΠΌΠ΅Ρ…Π°Π½ΠΈΠΊΠΈ.

ЦСлью Π΄Π°Π½Π½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ являСтся созданиС ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰Π΅ΠΉ ΠΈΠ³Ρ€Ρƒ Π² Π±ΠΈΠ»ΡŒΡΡ€Π΄ Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅. Π’ ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ названия ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ «WP-Billiards» (Windows Programming Billiards). Для достиТСния этой Ρ†Π΅Π»ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ:

— ΠΏΡ€ΠΎΠΈΠ·Π²Π΅ΡΡ‚ΠΈ сбор Π΄Π°Π½Π½Ρ‹Ρ…: Π²Ρ‹ΡΡΠ½ΠΈΡ‚ΡŒ матСматичСскоС описаниС Π·Π°ΠΊΠΎΠ½ΠΎΠ² Ρ„ΠΈΠ·ΠΈΠΊΠΈ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΡ… Ρ‚Ρ€Π°Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ двиТСния ΡˆΠ°Ρ€ΠΎΠ² ΠΏΠΎ Π±ΠΈΠ»ΡŒΡΡ€Π΄Π½ΠΎΠΌΡƒ столу;

— ΠΏΡ€ΠΎΠΈΠ·Π²Π΅ΡΡ‚ΠΈ Π°Π½Π°Π»ΠΈΠ· ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π°Π½Π°Π»ΠΎΠ³ΠΎΠ² Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°, Π²Ρ‹ΡΡΠ½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΏΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Π·Π½Π°Ρ‡ΠΈΠΌΠΎΡΡ‚ΡŒ;

— ΠΏΡ€ΠΎΠΈΠ·Π²Π΅ΡΡ‚ΠΈ Π°Π½Π°Π»ΠΈΠ· Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… срСд для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒ Π»ΡƒΡ‡ΡˆΠΈΠ΅;

— ΠΏΡ€ΠΎΠΈΠ·Π²Π΅ΡΡ‚ΠΈ Π°Π½Π°Π»ΠΈΠ· Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… срСд Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°, Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΡΡ‰ΡƒΡŽ срСду программирования, Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ срСдства Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ (Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ ΠΈ Ρ‚. Π΄.);

— Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹;

— ΠΏΡ€ΠΎΠΈΠ·Π²Π΅ΡΡ‚ΠΈ тСстированиС ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°.

На ΡΠ΅Π³ΠΎΠ΄Π½ΡΡˆΠ½ΠΈΠΉ дСнь сущСствуСт нСсколько Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ Π±ΠΈΠ»ΡŒΡΡ€Π΄Π° Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅: ΠΎΡ‚ ΡΠ°ΠΌΡ‹Ρ… «ΡΡ‚Π°Ρ€Ρ‹Ρ…» ΠΈΠ³Ρ€ (Video Pool) Π΄ΠΎ Π½ΠΎΠ²Π΅ΠΉΡˆΠΈΡ… (Perfect Pool). Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ‡Π΅Ρ€Ρ‚Ρ‹, Π² ΡΠΎΠ²ΠΎΠΊΡƒΠΏΠ½ΠΎΡΡ‚ΠΈ Π½Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π½ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· ΠΈΠ·Π²Π΅ΡΡ‚Π½Ρ‹Ρ… Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²:

— ΠΊΡ€Π°ΡΠΎΡ‡Π½Π°Ρ Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ прорисованная Π³Ρ€Π°Ρ„ΠΈΠΊΠ° (с ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΎΠΌ трСхмСрности);

— Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ подсчСта ΠΎΡ‡ΠΊΠΎΠ², ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ, ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ…ΠΎΠ΄ΠΎΠ², количСство соударСний ΡˆΠ°Ρ€ΠΎΠ² ΠΈ Ρ‚. Π΄.;

— ΠΎΡ‚сутствиС «ΠΈΠ³Ρ€Ρ‹ с ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠΌ» ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€Π°Π²ΠΈΠ» ΠΈΠ³Ρ€Ρ‹. НаличиС ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° заставило Π±Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ часто ΡΠΈΠ΄Π΅Ρ‚ΡŒ, слоТа Ρ€ΡƒΠΊΠΈ, доТидаясь, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€, Π½Π°ΠΊΠΎΠ½Π΅Ρ†, наиграСтся;

— Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Ρ€Π΅ΠΊΠΎΡ€Π΄ΠΎΠ² (Π΄Π²Π°Π΄Ρ†Π°Ρ‚ΡŒ ΠΈΠΌΠ΅Π½).

Π‘ΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΡ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для ΡˆΠΈΡ€ΠΎΠΊΠΎΠ³ΠΎ ΠΊΡ€ΡƒΠ³Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ: Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ являСтся лишь ΠΎΠ±Ρ‰Π΅Π΅ Π·Π½Π°Π½ΠΈΠ΅ ΠΏΡ€Π°Π²ΠΈΠ» ΠΈΠ³Ρ€Ρ‹ Π² Π±ΠΈΠ»ΡŒΡΡ€Π΄, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²Π»Π°Π΄Π΅Π½ΠΈΠ΅ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€ΠΎΠΉ ΠΈ ΠΌΡ‹ΡˆΠΊΠΎΠΉ.

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π±ΠΈΠ»ΡŒΡΡ€Π΄ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Ρ„ΠΈΠ·ΠΈΠΊΠ°

1. ОписаниС ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области

1.1 ИсслСдованиС ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области

ΠŸΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ двояко: с ΠΎΠ΄Π½ΠΎΠΉ стороны это ΡΠΎΠ²ΠΎΠΊΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ всСх ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… ΠΈΠ³Ρ€, ΡΠ²Π»ΡΡŽΡ‰ΠΈΡ…ΡΡ Π°Π½Π°Π»ΠΎΠ³Π°ΠΌΠΈ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ…, с Π΄Ρ€ΡƒΠ³ΠΎΠΉ — это ΠΈΠ³Ρ€Π° Π² Π±ΠΈΠ»ΡŒΡΡ€Π΄ ΠΈ Π΅Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°ΠΊΠΎΠ½Ρ‹ Ρ„ΠΈΠ·ΠΈΠΊΠΈ, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚Π΅Π» Π²ΠΎ Π²Ρ€Π΅ΠΌΡ столкновСния (имССтся Π² Π²ΠΈΠ΄Ρƒ столкновСниС Π±ΠΈΠ»ΡŒΡΡ€Π΄Π½Ρ‹Ρ… ΡˆΠ°Ρ€ΠΎΠ²).

Рассмотрим сначала ΠΏΠ΅Ρ€Π²ΡƒΡŽ сторону, Π° Ρ‚ΠΎΡ‡Π½Π΅Π΅ коснСмся возмоТностСй Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΠΈΠ»ΡŒΡΡ€Π΄Π° Π² Π²ΠΈΠ΄Π΅ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΉ ΠΈΠ³Ρ€Ρ‹.

Помимо ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ³ΠΎ количСства классификаций ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… ΠΈΠ³Ρ€, ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π° Π΄Π²ΡƒΡ…ΠΌΠ΅Ρ€Π½Ρ‹Π΅ ΠΈ Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½Ρ‹Π΅, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ Π² Π½Π°ΡΡ‚оящСС врСмя Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… ΠΈΠ³Ρ€ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΡΡ‚Π°Ρ€Π°ΡŽΡ‚ΡΡ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½Ρ‹ΠΌΠΈ: Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, наш ΠΌΠΈΡ€ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚Ρ€ΠΈ измСрСния, соотвСтствСнно, Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎΠΉ каТСтся ΠΌΡ‹ΡΠ»ΡŒ, Ρ‡Ρ‚ΠΎ любая игровая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π°Ρ Ρ‚Ρ€Π΅Ρ…ΠΌΠ΅Ρ€Π½Ρ‹ΠΉ Π΄ΠΈΠ·Π°ΠΉΠ½ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π²Π΅Π΄ΠΎΠΌΠΎ Π»ΡƒΡ‡ΡˆΠ΅ Π΄Π²ΡƒΡ…ΠΌΠ΅Ρ€Π½ΠΎΠΉ. На ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅, ΠΊΠΎΠ³Π΄Π° Ρ€Π΅Ρ‡ΡŒ ΠΈΠ΄Π΅Ρ‚ ΠΎ Π²ΡΡΡ‡Π΅ΡΠΊΠΈΡ… симуляторах ΠΈ Π±ΠΎΠ΅Π²ΠΈΠΊΠ°Ρ…, Ρ‚Π°ΠΊ ΠΎΠ½ΠΎ ΠΈ Π΅ΡΡ‚ΡŒ. Π­Ρ‚ΠΎΡ‚ Ρ„Π°ΠΊΡ‚ являСтся Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΌ, Ρ‡Ρ‚ΠΎ Π½Π΅ Π½ΡƒΠΆΠ΄Π°Π΅Ρ‚ся Π½ΠΈ Π² ΠΊΠ°ΠΊΠΎΠΌ Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π΅. ΠžΡ†Π΅Π½ΠΈΠΌ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ трСхмСрности Π² ΠΈΠ³Ρ€Π΅ Π² Π±ΠΈΠ»ΡŒΡΡ€Π΄.

Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρ€ΠΎΠ΄Π΅, трСхмСрная ΠΈΠ³Ρ€Π° Π² Π±ΠΈΠ»ΡŒΡΡ€Π΄ Π΄Π°Π΅Ρ‚ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ свободу для творчСства: ΠΏΠΎΠΌΠΈΠΌΠΎ Π±ΠΈΠ»ΡŒΡΡ€Π΄Π½ΠΎΠ³ΠΎ стола Π½Π° ΡΡ†Π΅Π½Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Ρ‹ ΠΈΠ½Ρ‚Π΅Ρ€ΡŒΠ΅Ρ€Π° Π±ΠΈΠ»ΡŒΡΡ€Π΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ½Π°Ρ‚Ρ‹. Однако ΠΏΡ€ΠΈ этом слСдуСт ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ всС ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΡŽΡ‰ΠΈΠ΅ нас дСйствия Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π° Π±ΠΈΠ»ΡŒΡΡ€Π΄Π½ΠΎΠΌ столС, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π² ΠΏΠ»ΠΎΡΠΊΠΎΡΡ‚ΠΈ (Π·Π° ΠΎΡ‡Π΅Π½ΡŒ Ρ€Π΅Π΄ΠΊΠΈΠΌ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ «ΠΏΠΎΠ΄ΡΠΊΠ°ΠΊΠΈΠ²Π°Π½ΠΈΡ» ΡˆΠ°Ρ€ΠΎΠ² ΠΏΡ€ΠΈ ΡƒΠ΄Π°Ρ€Π΅, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΠ·-Π·Π° большой стСпСни случайности Ρ‚Π°ΠΊΠΎΠ³ΠΎ явлСния). Π˜Π½Ρ‹ΠΌΠΈ словами, для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Π½ΡƒΠΆΠ½Ρ‹Π΅ дСйствия, достаточно Π΄Π²ΡƒΡ… ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠΉ, Π° Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅, Π² ΡΠ»ΡƒΡ‡Π°Π΅ Π΅Π³ΠΎ использования, Π±ΡƒΠ΄Π΅Ρ‚ Π½ΠΎΡΠΈΡ‚ΡŒ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΄Π΅ΠΊΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, использованиС Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅Π³ΠΎ измСрСния, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° ΡΡ‚ΠΎΠ» ΠΏΠΎΠ΄ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΌ ΡƒΠ³Π»ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Ρ‚Π°ΠΊΠΈΠΌ Π½Π΅ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ эффСктам, ΠΊΠ°ΠΊ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ восприятиС расстояния ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΈΠ³Ρ€ΠΎΠ²Ρ‹ΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΈ Ρ‚. Π΄.

Рассмотрим Ρ‚Π°ΠΊΠΆΠ΅ Ρ‚Π°ΠΊΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΊΠ°ΠΊ рСализация искусствСнного ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚Π° ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΈΠΊΠ°. Как ΡƒΠΆΠ΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΎΡΡŒ Ρ€Π°Π½Π΅Π΅, ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΏΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π² ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… ΠΈΠ³Ρ€ (Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ сСтСвых) являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΈΠ³Ρ€Π°Ρ‚ΡŒ Π² Π½ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ, Π½Π΅ ΠΈΠΌΠ΅Ρ рядом ΠΏΠ°Ρ€Ρ‚Π½Π΅Ρ€Π° ΠΏΠΎ ΠΈΠ³Ρ€Π΅. Однако это Π½Π΅ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ любая ΠΈΠ³Ρ€Π°, Π² Ρ‚ΠΎΠΌ числС ΠΈ Ρ€Π°ΡΡΠΌΠ°Ρ‚риваСмая Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ встроСнный искусствСнный ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΈΠΊΠ°. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΡ€Π°ΠΉΠ½Π΅ ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π² ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡Π½Ρ‹Ρ… ΠΈΠ³Ρ€Π°Ρ…. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π»ΠΈ ΠΈΠ³Ρ€Ρƒ Π² Π±ΠΈΠ»ΡŒΡΡ€Π΄ с ΠΊΠ»Π°ΡΡΠΈΡ‡Π΅ΡΠΊΠΈΠΌΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌΠΈ, Ρ‚ΠΎΠ³Π΄Π° вся ΠΈΠ³Ρ€Π° Π±ΡƒΠ΄Π΅Ρ‚ прСдставлСна Π² Π²ΠΈΠ΄Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ «Ρ…ΠΎΠ΄ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ° — Ρ…ΠΎΠ΄ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°», Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΡƒ придСтся ΠΎΠΆΠΈΠ΄Π°Ρ‚ΡŒ врСмя, ΠΏΠΎΠΊΠ° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ Π½Π΅ ΡΠ΄Π΅Π»Π°Π΅Ρ‚ Ρ…ΠΎΠ΄, ΠΈ Π²ΡΠ΅ ΡˆΠ°Ρ€Ρ‹ Π½Π΅ ΠΎΡΡ‚ановятся. ΠŸΡ€ΠΈ этом ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Ρ…ΠΎΠ΄Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒΡΡ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ Π²ΡΠ΅Π³Π΄Π°, Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΈΠΊΠΎΠ² Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π±ΠΈΡ‚ΠΎ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡˆΠ°Ρ€Π°. Π˜Π½Ρ‹ΠΌΠΈ словами, ΠΏΡ€ΠΈ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΈ ΠΏΡ€ΠΎΠ΄ΡƒΠΌΠ°Π½Π½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ искусствСнного ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚Π° ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΈΠΊΠ°, Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ, ΠΏΠ΅Ρ€Π΅Π΄Π°Π² ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· Ρ…ΠΎΠ΄ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ, смоТСт ΠΎΡ‚ΠΊΠΈΠ½ΡƒΡ‚ΡŒΡΡ Π½Π° ΡΠΏΠΈΠ½ΠΊΡƒ крСсла ΠΈ Π±Π΅Π·ΠΌΠΎΠ»Π²Π½ΠΎ Π½Π°Π±Π»ΡŽΠ΄Π°Ρ‚ΡŒ Π·Π° Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ загоняСт Π² Π»ΡƒΠ·Ρ‹ ΡˆΠ°Ρ€ Π·Π° ΡˆΠ°Ρ€ΠΎΠΌ. ЕстСствСнно ΠΎΡ‚ Ρ‚Π°ΠΊΠΎΠΉ ΠΈΠ³Ρ€Ρ‹ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ ΡƒΠ΄ΠΎΠ²ΠΎΠ»ΡŒΡΡ‚Π²ΠΈΡ. Π’ ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΈΠ· Π΄Π°Π½Π½ΠΎΠΉ ситуации ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€Π°Π²ΠΈΠ» ΠΈΠ³Ρ€Ρ‹ Π² ΡΡ‚ΠΎΡ€ΠΎΠ½Ρƒ «ΠΎΠ΄Π½ΠΎΠΈΠ³Ρ€ΠΎΠΊΠΎΠ²ΠΎΡΡ‚ΠΈ». Π‘ΡƒΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠ³ΠΎ измСнСния состоит Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ: Ρ†Π΅Π»ΡŒ ΠΈΠ³Ρ€ΠΎΠΊΠ° — Π·Π°Π±ΠΈΡ‚ΡŒ всС ΡˆΠ°Ρ€Ρ‹, ΠΊΡ€ΠΎΠΌΠ΅ Π±ΡŒΡŽΡ‰Π΅Π³ΠΎ, Π² Π»ΡƒΠ·Ρ‹. Π’ ΡΠ»ΡƒΡ‡Π°Π΅, Ссли ΠΎΠ½ Π·Π°Π±ΠΈΠ²Π°Π΅Ρ‚ Π² Π»ΡƒΠ·Ρƒ Π±ΡŒΡŽΡ‰ΠΈΠΉ ΡˆΠ°Ρ€, тСряСтся ΠΎΠ΄Π½Π° ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ°. ВсСго ΠΏΠΎΠΏΡ‹Ρ‚ΠΎΠΊ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅. Когда ΠΈΠ³Ρ€ΠΎΠΊ Π·Π°Π±ΠΈΠ²Π°Π΅Ρ‚ всС ΡˆΠ°Ρ€Ρ‹ Π² Π»ΡƒΠ·Ρ‹, ΠΎΠ½ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ, Π³Π΄Π΅ всС повторяСтся. ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ Π½Π° ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ добавляСтся ΠΎΠ΄Π½Π° ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ°.

Π˜Π½Ρ‚Π΅Ρ€Π΅ΡΠ½Ρ‹ΠΌ Ρ‚Π°ΠΊΠΆΠ΅ являСтся вопрос ΠΎ Π½Π°Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠΈ ΠΎΡ‡ΠΊΠΎΠ². ЕстСствСнным Π±ΡƒΠ΄Π΅Ρ‚, Ссли количСство ΠΎΡ‡ΠΊΠΎΠ² Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ ΡƒΠ΄Π°Ρ€Π° ΠΈ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ уровня. ΠŸΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ схСма:

1) ΠŸΡ€ΠΈ столкновСнии Π±ΡŒΡŽΡ‰Π΅Π³ΠΎ ΡˆΠ°Ρ€Π° с Π»ΡŽΠ±Ρ‹ΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠΌ — 1 ΠΎΡ‡ΠΊΠΎ;

2) ΠŸΡ€ΠΈ Π·Π°Π±ΠΈΠ²Π°Π½ΠΈΠΈ ΡˆΠ°Ρ€Π° Π² Π»ΡƒΠ·Ρƒ, количСство начисляСмых ΠΎΡ‡ΠΊΠΎΠ² вычисляСтся ΠΏΠΎ Ρ„ΠΎΡ€ΠΌΡƒΠ»Π΅:

Π³Π΄Π΅ I — порядковый Π½ΠΎΠΌΠ΅Ρ€ ΡˆΠ°Ρ€Π°, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΠ½ Π·Π°Π±ΠΈΠ²Π°Π΅Ρ‚ся Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠΈ этого Ρ…ΠΎΠ΄Π°, L — Π½ΠΎΠΌΠ΅Ρ€ уровня. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π²Ρ‹Π³ΠΎΠ΄Π½ΠΎ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ…ΠΎΠ΄Π° Π·Π°Π±ΠΈΠ²Π°Ρ‚ΡŒ сразу нСсколько ΡˆΠ°Ρ€ΠΎΠ².

3) ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ количСство ΠΎΡ‡ΠΊΠΎΠ² Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒΡΡ ΠΏΠΎ Ρ„ΠΎΡ€ΠΌΡƒΠ»Π΅ .

4) ΠŸΡ€ΠΈ ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠΈ 99-Π³ΠΎ уровня, ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡΡ Π² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 01, Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ 10 000 ΠΎΡ‡ΠΊΠΎΠ² Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ.

1.2 ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅

Π”Ρ€ΡƒΠ³ΠΈΠΌ ваТнСйшим ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ΠΈΠ³Ρ€ являСтся Ρ„ΠΈΠ·ΠΈΠΊΠΎ-матСматичСский Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚. ΠŸΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊ Π±ΠΈΠ»ΡŒΡΡ€Π΄Ρƒ слСдуСт Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΠ΅ особого внимания ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹: ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ скорости ΡˆΠ°Ρ€Π° (ΠΊΠΎΠ³Π΄Π° Π΅Π³ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ ΡƒΠ΄Π°Ρ€ΠΈΠ»ΠΈ ΠΊΠΈΠ΅ΠΌ), ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ направлСния ΡˆΠ°Ρ€Π° ΠΏΡ€ΠΈ столкновСнии со ΡΡ‚Π΅Π½ΠΊΠΎΠΉ ΠΈ Ρ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΡˆΠ°Ρ€Π°ΠΌΠΈ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΎΠ³ΠΎ столкновСния.

ΠΠ°Ρ‡Π°Π»ΡŒΠ½Π°Ρ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Π±ΡŒΡŽΡ‰Π΅Π³ΠΎ ΡˆΠ°Ρ€ΠΈΠΊΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ…: Π²Π΅ΠΊΡ‚ΠΎΡ€, ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ ΠΈΠ· Ρ†Π΅Π½Ρ‚Ρ€Π° ΡˆΠ°Ρ€Π° ΠΊ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŽ, сила ΡƒΠ΄Π°Ρ€Π°. ΠΠ°Ρ‡Π°Π»ΡŒΠ½Π°Ρ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ находится Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ систСмы ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ:

.

ΠŸΡ€ΠΈ столкновСнии со ΡΡ‚Π΅Π½ΠΊΠΎΠΉ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π°Ρ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΌΠ΅Π½ΡΡ‚ΡŒ Π·Π½Π°ΠΊ.

ΠŸΡ€ΠΈ столкновСнии ΡˆΠ°Ρ€ΠΎΠ² ΠΈΡ… ΡΠΊΠΎΡ€ΠΎΡΡ‚ΠΈ ΠΏΠ΅Ρ€Π΅Ρ€Π°ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΏΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡƒ:

impactx=ball[j]. vx-ball[i].vx;

impacty=ball[j].vy-ball[i].vy;

r=RasstTT (ball[i]. x, ball[i]. y, ball[j]. x, ball[j]. y); // РасстояниС ΠΎΡ‚ Ρ‚ΠΎΡ‡ΠΊΠΈ Π΄ΠΎ Ρ‚ΠΎΡ‡ΠΊΠΈ

impulsex=(ball[j]. x-ball[i].x)/r;

impulsey=(ball[j].y-ball[i].y)/r;

ImpactSpeed=impactx*impulsex+impacty*impulsey;

impulsex*=ImpactSpeed*ball[i].m*ball[j].m;

impulsey*=ImpactSpeed*ball[i].m*ball[j].m;

ball[i].vx+=impulsex/ball[i].m;

ball[i].vy+=impulsey/ball[i].m;

ball[j].vx-=impulsex/ball[j].m;

ball[j].vy-=impulsey/ball[j].m;

1.3 Анализ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области, выяснСниС Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌΡƒ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Ρƒ

Π˜Ρ‚ΠΎΠ³ΠΎΠΌ исслСдования ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠ²Π»ΡΡ‚ΡŒΡΡ выявлСниС Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ возмоТностям ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π”ΠΎΠ±Π°Π²ΠΈΠ² сюда общСпринятыС, понятныС Π±Π΅Π· Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π² ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² трСбования, ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π½Π°Π±ΠΎΡ€:

1) ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΠ³Ρ€Ρƒ Π² Π±ΠΈΠ»ΡŒΡΡ€Π΄ Π² Π΄Π²ΡƒΡ…ΠΌΠ΅Ρ€Π½ΠΎΠΌ исполнСнии;

2) ΠŸΠΎΠ΄ΡΡ‡Π΅Ρ‚ ΠΎΡ‡ΠΊΠΎΠ² Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒΡΡ с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ слоТности Ρ…ΠΎΠ΄Π° ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π° уровня;

3) РасчСт скоростСй ΡˆΠ°Ρ€ΠΎΠ² Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠ΅Ρ€Π΅ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ, исходя ΠΈΠ· ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Π·Π°ΠΊΠΎΠ½ΠΎΠ² Ρ„ΠΈΠ·ΠΈΠΊΠΈ;

4) ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π»ΡƒΡ‡ΡˆΠΈΡ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² ΠΏΠΎ ΠΎΡ‡ΠΊΠ°ΠΌ, ΡΠΎΡ…Ρ€Π°Π½ΡΠ΅ΠΌΡƒΡŽ Π½Π° Π΄ΠΈΡΠΊΠ΅;

5) Π’Π²ΠΎΠ΄ ΠΈΠΌΠ΅Π½ΠΈ ΠΈΠ³Ρ€ΠΎΠΊΠ° Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΠ³Ρ€ΠΎΠΉ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ‚ΡŒ имя ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΠΎΠΏΠ°Π΄Π°Π½ΠΈΠΈ Π² Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Ρ€Π΅ΠΊΠΎΡ€Π΄ΠΎΠ²;

6) ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠΌΠ΅Ρ‚ΡŒ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ мСню, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ саму ΠΈΠ³Ρ€Ρƒ, ΡΠΌΠ΅Π½ΠΈΡ‚ΡŒ имя ΠΈΠ³Ρ€ΠΎΠΊΠ°, ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Ρ€Π΅ΠΊΠΎΡ€Π΄ΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹ΠΉΡ‚ΠΈ ΠΈΠ· ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π’Ρ‹Π²ΠΎΠ΄Ρ‹

1. ИсслСдована прСдмСтная ΠΎΠ±Π»Π°ΡΡ‚ΡŒ. РассмотрСны Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ построСния ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ³Ρ€Ρ‹ Π² Π±ΠΈΠ»ΡŒΡΡ€Π΄.

2. ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½Π° матСматичСская модСль ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

3. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ трСбования ΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ.

2. ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°

Для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π²Ρ‹Π΄Π²ΠΈΠ½ΡƒΡ‚Ρ‹Ρ… Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ слСдуСт сначала ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½ΠΎ для программиста: Π½Π° ΡΡ‚ΠΎΠΌ этапС вся Π·Π°Π΄Π°Ρ‡Π° структурируСтся, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΠΈΡ… Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΈΠ΅. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΈΠΌΠ΅Π½Π½ΠΎ этапа проСктирования ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ программистом Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΎΡ‚ΠΏΡ€Π°Π²Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΏΡ€ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π§Π΅ΠΌ большС Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π°Ρ‡Π΅Π½ΠΎ сил ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, Ρ‚Π΅ΠΌ ΠΏΡ€ΠΎΡ‰Π΅ Π±ΡƒΠ΄Π΅Ρ‚ этап Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΈ Ρ‚Π΅ΠΌ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Π΅Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

2.1 Π’Ρ‹Π±ΠΎΡ€ срСды выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Π‘Ρ€Π΅Π΄Π° выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ опрСдСляСт ΠΊΠ°ΠΊ структуру самой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ‚Π°ΠΊ ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ эксплуатационныС ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ характСристики ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π’Π°ΠΊ ΠΊΠ°ΠΊ Π΄Π΅Π»ΠΎ ΠΌΡ‹ ΠΈΠΌΠ΅Π΅ΠΌ с ΠΈΠ³Ρ€ΠΎΠ²Ρ‹ΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ, ΠΏΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ срСды выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ слСдуСт Π² Π±ΠΎΠ»ΡŒΡˆΠ΅ΠΉ стСпСни ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π΅ Π½Π° ΡƒΠ΄ΠΎΠ±ΡΡ‚Π²ΠΎ программирования, Π° Π½Π° ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ срСды. На ΡΠ΅Π³ΠΎΠ΄Π½ΡΡˆΠ½ΠΈΠΉ дСнь Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ популярными ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ систСмами Π²ΠΎ Π²ΡΠ΅ΠΌ ΠΌΠΈΡ€Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы сСмСйства Windows Ρ„ΠΈΡ€ΠΌΡ‹ Microsoft. По Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π΄Π°Π½Π½Ρ‹ΠΌ, ΠΎΠ½ΠΈ установлСны Π½Π° 95% всСх ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ² Π² ΠΌΠΈΡ€Π΅. БСзусловно, ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ наш Π²Ρ‹Π±ΠΎΡ€ ΠΏΠ°Π΄Π΅Ρ‚ ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° ΡΡ‚ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ систСмы. К ΠΈΡ… Ρ‡ΠΈΡΠ»Ρƒ Π±ΡƒΠ΄Π΅ΠΌ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚ΡŒ Windows 95/98/Me/NT/2000/XP/2003 ΠΈ ΠΈΡ… ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ.

Но ΡΠ°ΠΌΠ° опСрационная систСма Windows прСдоставляСт мноТСство возмоТностСй ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. ΠŸΡ€ΠΈ дальнСйшСм ΡƒΡ‚ΠΎΡ‡Π½Π΅Π½ΠΈΠΈ срСды программирования Π±ΡƒΠ΄Π΅ΠΌ Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ Π½Π°Π±ΠΎΡ€ΠΎΠΌ особСнностСй Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°:

1) ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ мноТСство динамичСских ΠΏΠΎΠ»Π½ΠΎΡ†Π²Π΅Ρ‚Π½Ρ‹Ρ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ;

2) Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΏΠ»Π°Π²Π½ΠΎΡΡ‚ΡŒ двиТСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° ΡΠΊΡ€Π°Π½Π΅;

3) ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² ΠΏΠΎΠ»Π½ΠΎΡΠΊΡ€Π°Π½Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ (ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΈΠ³Ρ€Π°Π΅Ρ‚ ΠΈ ΠΈΠ³Ρ€Π° Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΡ‚ Π½Π΅Π³ΠΎ постоянного сосрСдоточСния, никакая посторонняя информация Π½Π° ΡΠΊΡ€Π°Π½Π΅ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π΅Π³ΠΎ ΠΎΡ‚Π²Π»Π΅ΠΊΠ°Ρ‚ΡŒ).

Для удовлСтворСния этих Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ идСально ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ видСопамяти DirectDraw — ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ DirectX. Он ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ свойствами:

1) Быстрый Π²Ρ‹Π²ΠΎΠ΄ повСрхностСй (спрайтов) Π½Π° ΡΠΊΡ€Π°Π½;

2) Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ;

3) Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ простой Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ Π±ΡƒΡ„Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΠΈ;

4) ΠšΠ°Π΄Ρ€ΠΎΠ²Π°Ρ синхронизация ΠΏΡ€ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ;

5) Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² ΠΏΠΎΠ»Π½ΠΎΡΠΊΡ€Π°Π½Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅.

2.2 ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΈΠΌΠ΅Π΅Ρ‚ смысл Π½Π΅ Ρ€Π°Π·Π±ΠΈΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π½Π° ΠΌΠ½ΠΎΠΆΠ΅ΡΡ‚Π²ΠΎ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, Π° Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ всС Π² ΠΎΠ΄Π½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅. Бюда Π½Π΅ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ использованиС модуля ΠΎΡ‚ Microsoft «ddutil.cpp», Ρ€Π°ΡΡˆΠΈΡ€ΡΡŽΡ‰Π΅Π³ΠΎ возмоТности Ρ€Π°Π±ΠΎΡ‚Ρ‹ с DirectDraw.

Основная идСя Ρ€Π°Π±ΠΎΡ‚Ρ‹ с DirectDraw состоит Π² ΠΏΠΎΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΌ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ повСрхностСй Π½Π° ΡΠΊΡ€Π°Π½ ΠΈ ΡΠΌΠ΅Π½Π΅ повСрхностСй Π½Π° ΡΠΊΡ€Π°Π½Π΅. Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ ΠΊ ΡΠΊΡ€Π°Π½Ρƒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ Π΄Π²Π΅ повСрхности (такая схСма являСтся общСпринятой): отобраТаСмая ΠΈ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΠ°Ρ. ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ состоит Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ: Π½Π° Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡƒΡŽ ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠΏΠΈΡ€ΡƒΡŽΡ‚ΡΡ всС спрайты (Ρ‚ΠΎΠΆΠ΅ прСдставлСнныС повСрхностями), послС Ρ‡Π΅Π³ΠΎ повСрхности экрана ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ мСстами, ΠΈ ΡΠΈΡ‚уация повторяСтся. ΠŸΡ€ΠΈ смСнС повСрхностСй автоматичСски оТидаСтся ΠΊΠ°Π΄Ρ€ΠΎΠ²Ρ‹ΠΉ ΡΠΈΠ½Ρ…Ρ€ΠΎΠΈΠΌΠΏΡƒΠ»ΡŒΡ, Ρ‡Π΅ΠΌ достигаСтся кадровая синхронизация, ΠΈ Ρ‚Π΅ΠΌ самым — ΠΏΠ»Π°Π²Π½ΠΎΡΡ‚ΡŒ двиТСния. ΠžΠ±Ρ‰ΠΈΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ обновлСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π° ΡΠΊΡ€Π°Π½Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Π²ΠΈΠ΄Π΅:

1) Π Π΅Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌ повСрхности, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… помСнялось ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅;

2) Π’Ρ‹Π²ΠΎΠ΄ΠΈΠΌ Π½ΡƒΠΆΠ½Ρ‹Π΅ повСрхности Π½Π° Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡƒΡŽ ΡΠΊΡ€Π°Π½Π½ΡƒΡŽ ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ;

3) МСняСм мСстами экранныС повСрхности;

4) ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ ΠΊ ΠΏΡƒΠ½ΠΊΡ‚Ρƒ 1.

Π”Π°Π½Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π² Π³Π»Π°Π²Π½ΠΎΠΌ Ρ†ΠΈΠΊΠ»Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ, Ρ‚Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π΄ΠΎΠ»ΠΆΠ΅Π½ Π΅Ρ‰Π΅ ΠΈ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ приходящиС сообщСния Windows. Π­Ρ‚ΠΎ позволяСт максимально ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ рСсурсы Π­Π’Πœ, Π½Π΅ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ°Ρ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ сообщСний, Ρ‡Π΅Π³ΠΎ нСльзя Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ссли Π±Ρ‹ ΠΌΡ‹ Π΄Π»Ρ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ†ΠΈΠΊΠ»Π° использовали Ρ‚Π°ΠΉΠΌΠ΅Ρ€ с Π²Ρ‹ΡΠΎΠΊΠΎΠΉ частотой.

Π’Ρ‹Π²ΠΎΠ΄Ρ‹

1. РассмотрСны Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ срСды выполнСния ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π’ ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Π²Ρ‹Π±Ρ€Π°Π½Π° опСрационная систСма Windows с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Microsoft DirectX.

2. РассмотрСны ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΡΠΌΠΈ Π² DirectDraw. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

3. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Π°Ρ рСализация ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

3.1 Π’Ρ‹Π±ΠΎΡ€ срСды программирования

ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ срСд программирования, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… ΠΏΠΈΡΠ°Ρ‚ΡŒ прилоТСния для Windows ΠΎΡ‡Π΅Π½ΡŒ Π²Π΅Π»ΠΈΠΊΠΎ. Однако Π²Ρ‹Π±ΠΎΡ€ остановим Π½Π° ΡΡ€Π΅Π΄Π΅ Microsoft Visual C++ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Microsoft Visual Studio 6.0, ΠΊΠ°ΠΊ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ прСимущСства:

— Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ стандартных Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с DirectDraw;

— Π°Π²Ρ‚оматичСскоС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…. Π’Π°ΠΊ ΠΊΠ°ΠΊ всС ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π²ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Π½ΠΈΠ΅ ΠΏΠΎΡ‚Π΅Ρ€ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… прСдставлСны Π² Π²ΠΈΠ΄Π΅ чисСл с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ, Π° ΠΏΡ€ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π΅ Π½Π° ΡΠΊΡ€Π°Π½ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ Ρ†Π΅Π»Ρ‹Π΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹, Ρ‚Π°ΠΊΠΎΠ΅ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ. НапримСр строчка ΠΊΠΎΠ΄Π° Viewball (x, y) Π² Delphi ΠΈΠΌΠ΅Π»Π° Π±Ρ‹ Π²ΠΈΠ΄ ViewBall (round (x), round (y)) Ρ‡Ρ‚ΠΎ довольно Π½Π΅ΡƒΠ΄ΠΎΠ±Π½ΠΎ;

— ΡƒΠ΄ΠΎΠ±Π½Π°Ρ срСда создания исходных тСкстов;

— ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΡ‹ΠΉ ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½Ρ‹ΠΉ ΠΈ Π±Ρ‹ΡΡ‚Ρ€Ρ‹ΠΉ ΠΊΠΎΠ΄;

— Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΡƒΠΆΠ΅ Π³ΠΎΡ‚ΠΎΠ²ΠΎΠ³ΠΎ модуля ddutil ΠΎΡ‚ Microsoft.

3.2 РСализация Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² создания ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π° повСрхностСй

ВсС повСрхности, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π° Π΄Π²Π° Ρ‚ΠΈΠΏΠ°: динамичСскиС ΠΈ ΡΡ‚атичСскиС. БтатичСскими ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‚Π΅ ΠΏΠΎΠ²Π΅Ρ€Ρ…ности, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‚ΡΡ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Π½Π΅ ΠΌΠ΅Π½ΡΡŽΡ‚ своСго содСрТания (изобраТСния ΡˆΠ°Ρ€ΠΎΠ² ΠΈ Ρ‚. Π΄.), ΠΊ Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΠΈΠΌ относятся повСрхности, ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… мСняСтся Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΠΈ ΠΎΡ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ дСйствий (повСрхности с ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π½ΠΎΠΌΠ΅Ρ€Π° уровня ΠΈ Ρ‚. Π΄.). К ΡΡ‚Π°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠΌ относятся повСрхности: GameScreen, BallSurface[11], CrossSurface, GameOverSurface, TitleSurface, PunktSurface[5], ArrowSurface, EnterSurface, AboutSurface. К Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΠΈΠΌ: PlayerSurface, LevelSurface, ScoreSurface, StringSurface, HiScoreSurface.

ΠŸΡ€ΠΈ запускС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ создаСтся ΠΎΠΊΠ½ΠΎ со ΡΡ‚ΠΈΠ»Π΅ΠΌ WS_POPUP (Π±Π΅Π· шапки ΠΈ ΠΊΠ½ΠΎΠΏΠΎΠΊ), инициализируСтся DirectDraw (функция DirectDrawInit), ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ всС повСрхности (функция CreateAllSurfaces), Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‚ΡΡ всС статичСскиС (DrawAllStaticSurfaces). ДинамичСскиС повСрхности Ρ€ΠΈΡΡƒΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ нСобходимости (Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DrawHiScore, DrawString, DrawPlayerName, DrawLevel). ПослС этого Π² ΠΌΠ°ΡΡΠΈΠ² hiscore Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‚ΡΡ Π»ΡƒΡ‡ΡˆΠΈΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ (LoadHiScore).

Π”Π°Π»Π΅Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ счСтчик ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ Π² Ρ†ΠΈΠΊΠ» ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ сообщСний ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ экрана. По ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌΠΈ Windows-прилоТСниями здСсь функция GetMessage Π·Π°ΠΌΠ΅Π½Π΅Π½Π° Π½Π° PickMessage, которая Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΏΠ΅Ρ€Π²ΠΎΠΉ Π½Π΅ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚ ΠΏΡ€ΠΈΡ…ΠΎΠ΄Π° сообщСния, Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠ² ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ сообщСний, Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ свою Ρ€Π°Π±ΠΎΡ‚Ρƒ. Если сообщСния Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π½Π΅ ΠΏΡ€ΠΈΡˆΠ»ΠΎ, Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ экрана, Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΡΠ»ΡƒΡ‡Π°Π΅, Ссли пСрСмСнная GameActive ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true, ΠΈΠ½Π°Ρ‡Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пассивно ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚ сообщСний. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ GameActive зависит ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ сСйчас ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π½Π΅Ρ‚. ИзмСнСниС этой ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ происходит ΠΏΡ€ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ события WM_ACTIVATEAPP.

ΠŸΠ΅Ρ€Π΅Π΄ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ экрана происходит нСбольшая Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ°, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π°Ρ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° процСссора. Π•Π΅ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ — рСализация ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠΉ скорости Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… ΠΊΠ°Π΄Ρ€ΠΎΠ²Ρ‹Ρ… Ρ€Π°Π·Π²Π΅Ρ€Ρ‚ΠΊΠ°Ρ… ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π° (Π±Π΅Π· Π½Π΅Π΅ СдинствСнная Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ — ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ ΠΊΠ°Π΄Ρ€ΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΠ½Ρ…Ρ€ΠΎΠΈΠΌΠΏΡƒΠ»ΡŒΡΠ° ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Flip (ΠΎΠ±ΠΌΠ΅Π½ повСрхностСй экрана)).

Ѐункция UpdateScreen ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ экрана ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠ°Π΄Ρ€. Π’ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΠΈ ΠΎΡ‚ Ρ„Π»Π°Π³ΠΎΠ² CrossMustBeUpdated, BarMustBeUpdated, TurnMustBeUpdated, Gaming, EnteringName, ViewingHiScore, ViewingAbout функция обновляСт Ρ‚Π΅ ΠΈΠ»ΠΈ ΠΈΠ½Ρ‹Π΅ изобраТСния (Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ с ΠΏΡ€Π΅Ρ„иксом View, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ViewTable, ViewBall ΠΈ Ρ‚. Π΄.).

Π’Ρ‹Π²ΠΎΠ΄Ρ‹

1. Π’Ρ‹Π±Ρ€Π°Π½Π° срСда программирования, пСрСчислСны прСимущСства Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π²Ρ‹Π±ΠΎΡ€Π°.

2. РассмотрСны ΠΎΠ±Ρ‰ΠΈΠ΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ обновлСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π° ΡΠΊΡ€Π°Π½Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ DirectDraw.

3. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ обновлСния изобраТСния Π½Π° ΡΠΊΡ€Π°Π½Π΅ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅.

4. ВСстированиС ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠ°

4.1 ВСстированиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ срСдства

ВСстированиС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ ΠΏΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ «Ρ‡Π΅Ρ€Π½ΠΎΠ³ΠΎ ящика» Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. ЦСль тСстирования — выявлСниС ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ большСго количСства ошибок Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅. ΠŸΠ°Ρ€ΠΊ машин, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ тСстировался ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Ρ‹ вСсьма ΠΎΠ±ΡˆΠΈΡ€Π΅Π½: начиная ΠΎΡ‚ Intel Pentium 233/64Mb ΠΈ Π·Π°ΠΊΠ°Π½Ρ‡ΠΈΠ²Π°Ρ AMD Athlon-2500/512Mb. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ систСмами, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… тСстировался ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΡΠ²Π»ΡΡŽΡ‚ΡΡ: Windows 98 SE, Windows 2000 Professional, Windows Me, Windows XP Home, Windows XP Professional, Windows Server 2003.

Π’ Ρ…ΠΎΠ΄Π΅ тСстирования Π±Ρ‹Π»ΠΈ выявлСны ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ошибки ΠΈ Π½Π΅Π΄ΠΎΡ€Π°Π±ΠΎΡ‚ΠΊΠΈ:

1) Иногда ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° зависала ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Ρ€Π΅ΠΊΠΎΡ€Π΄ΠΎΠ².

ΠŸΡ€ΠΈΡ‡ΠΈΠ½Π°: ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ char pn[20], Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ°Π»ΠΈΡΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ Π²Π°ΠΆΠ½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π² ΠΏΠ°ΠΌΡΡ‚ΠΈ.

УстранСниС: ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€ символа, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ.

2) На Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π΅ Π·Π°ΠΏΡƒΡΠΊΠ°Π΅Ρ‚ся с ΠΎΡˆΠΈΠ±ΠΊΠΎΠΉ «Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ DirectDraw».

ΠŸΡ€ΠΈΡ‡ΠΈΠ½Π°: ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π½Π΅ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ графичСского Ρ€Π΅ΠΆΠΈΠΌΠ°.

УстранСниС: смСна ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ Π³Π»ΡƒΠ±ΠΈΠ½Ρ‹ Ρ†Π²Π΅Ρ‚Π° с 32 Π½Π° 16 Π±ΠΈΡ‚.

3) ПослС ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Alt+Tab ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π·Π°Π²Π΅Ρ€ΡˆΠ°Π»Π° свою Ρ€Π°Π±ΠΎΡ‚Ρƒ с ΠΎΡˆΠΈΠ±ΠΊΠΎΠΉ DDERR_SURFACELOST.

ΠŸΡ€ΠΈΡ‡ΠΈΠ½Π°: ΠΏΡ€ΠΈ ΠΏΠΎΡ‚Π΅Ρ€Π΅ фокуса ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π²ΠΈΠ΄Π΅ΠΎΠΏΠ°ΠΌΡΡ‚ΡŒ Π·Π°Ρ‚ΠΈΡ€Π°Π»Π°ΡΡŒ посторонними Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

УстранСниС: Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибки DDERR_SURFACELOST, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π² ΡΠ»ΡƒΡ‡Π°Π΅ Π΅Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ вызываСтся новая функция Restore, ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‰Π°Ρ всС повСрхности.

4.2 ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ характСристик ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ срСдства

ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΠΌ основныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ характСристики ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹:

— ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΈΠ³Ρ€Ρ‹ Π² Π±ΠΈΠ»ΡŒΡΡ€Π΄;

— ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ физичСских процСссов ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΎ Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ высокой Ρ€Π΅Π°Π»ΠΈΡΡ‚ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ;

— ΠΈΠΌΠ΅Π΅Ρ‚ся Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ просмотра ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Π΄Π²Π°Π΄Ρ†Π°Ρ‚ΠΈ Π»ΡƒΡ‡ΡˆΠΈΡ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°Ρ…;

— ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΈΠΌΠ΅Π΅Ρ‚ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ интСрфСйс ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

Π’Ρ‹Π²ΠΎΠ΄Ρ‹:

1. ΠŸΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΎ тСстированиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. ВСстированиС ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ «Ρ‡Π΅Ρ€Π½ΠΎΠ³ΠΎ ящика». Π‘Ρ‹Π»ΠΎ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΎ ΠΈ ΡƒΡΡ‚Ρ€Π°Π½Π΅Π½ΠΎ Ρ‚Ρ€ΠΈ Π½Π΅ΠΏΠΎΠ»Π°Π΄ΠΊΠΈ.

2. ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ характСристики ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ срСдства. ВсС характСристики ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΡΡŽΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ Π½Π° ΡΡ‚Π°ΠΏΠ΅ Π°Π½Π°Π»ΠΈΠ·Π° трСбованиям.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ выполнСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±Ρ‹Π» создан ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ «WP-Billiards», ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‰ΠΈΠΉ всСми Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌΠΈ качСствами, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π½Π°Π·Π²Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠΉ ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ, частично Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ ΠΈΠ³Ρ€Ρ‹ Π² Π±ΠΈΠ»ΡŒΡΡ€Π΄.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° написана Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ C++ Π² ΡΡ€Π΅Π΄Π΅ программирования Visual C++ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Microsoft Visual Studio 6.0. Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π² ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΌΠ΅Ρ€Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π²Ρ‹Π²ΠΎΠ΄Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Microsoft DirectX.

Π’ ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π±Ρ‹Π»ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Ρ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ:

1) ΠŸΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΎ описаниС ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ трСбования ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌΡƒ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Ρƒ;

2) Π‘Ρ‹Π»ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ срСдства: Π²Ρ‹Π±Ρ€Π°Π½Π° срСда выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ срСдства;

3) Π’Ρ‹Π±Ρ€Π°Π½Π° срСда программирования, с Π΅Π΅ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ сдСлана программная рСализация Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹;

4) ΠŸΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΎ тСстированиС ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π‘Ρ‹Π»ΠΎ выявлСно ΠΈ ΡƒΡΡ‚Ρ€Π°Π½Π΅Π½ΠΎ 3 ошибки Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅.

Бписок источников

1. Microsoft Developer Network Library, April 2001.

2. http://www.brsu.brest.by/openphysics1/content/paragraph21/theory.html

3. http://faq.qbasicnews.com/? blast=BallToBallCollision

4. http://freespace.virgin.net/hugo.elias/models/m_snokr.htm

5. http://galileo.phys.virginia.edu/classes/109N/more_stuff/

Applets/Collision/applet.html

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ