EchoPulse & Asteroid
EchoPulse EchoPulse
ΠŸΡ€ΠΈΠ²Π΅Ρ‚, Π° ΠΊΠ°ΠΊ насчёт Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ VR-ΠΌΠΈΡ€ Π±Π΅Π· Π³Ρ€Π°Π²ΠΈΡ‚Π°Ρ†ΠΈΠΈ, Π³Π΄Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ смогут ΠΏΠ°Ρ€ΠΈΡ‚ΡŒ Π²ΠΎΠΊΡ€ΡƒΠ³ ΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΠΉ ΠΏΠ»Π°Π½Π΅Ρ‚Ρ‹? Π― ΠΌΠΎΠ³Ρƒ ΠΏΡ€ΠΎΡ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Ρ„ΠΈΠ·ΠΈΠΊΡƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ всё Π±Ρ‹Π»ΠΎ идСально, Π° Ρ‚Ρ‹ ΠΌΠΎΠ³Π»Π° Π±Ρ‹ Π·Π°Π½ΡΡ‚ΡŒΡΡ космичСскими ΠΏΠ΅ΠΉΠ·Π°ΠΆΠ°ΠΌΠΈ. Π§Ρ‚ΠΎ Π΄ΡƒΠΌΠ°Π΅ΡˆΡŒ?
Asteroid Asteroid
Π­Ρ‚ΠΎ Π·Π²ΡƒΡ‡ΠΈΡ‚ просто нСвСроятно! Π― ΡƒΠΆΠ΅ Π²ΠΈΠΆΡƒ парящиС Π³ΠΎΡ€ΠΎΠ΄Π° ΠΈ ΠΏΠΎΡ€Ρ‚Π°Π»Ρ‹ Ρ‡Π΅Ρ€Π²ΠΎΡ‚ΠΎΡ‡ΠΈΠ½. Π”Π°Π²Π°ΠΉ построим Ρ†Π΅Π»Ρ‹ΠΉ нСбСсный бокс ΠΈ Π±ΡƒΠ΄Π΅ΠΌ Π½Π°Π±Π»ΡŽΠ΄Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ люди ΠΏΡƒΡ‚Π΅ΡˆΠ΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΏΠΎ нашСй космичСской ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ ΠΏΠ»ΠΎΡ‰Π°Π΄ΠΊΠ΅!
EchoPulse EchoPulse
ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π½ΠΎ Π½ΡƒΠΆΠ½Ρ‹ Ρ‚ΠΎΡ‡Π½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹: Π²Π΅ΠΊΡ‚ΠΎΡ€ Π³Ρ€Π°Π²ΠΈΡ‚Π°Ρ†ΠΈΠΈ, ΠΊΠΎΠ»Π»Π°ΠΉΠ΄Π΅Ρ€ для Π³ΠΎΡ€ΠΎΠ΄ΠΎΠ², Π»ΠΎΠ³ΠΈΠΊΠ° Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ ΠΏΠΎΡ€Ρ‚Π°Π»ΠΎΠ². Если ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ Π²Π΅Ρ€Π½Π°, Π΄Ρ€Π΅ΠΉΡ„ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‰ΡƒΡ‰Π°Ρ‚ΡŒΡΡ ΠΏΠ»Π°Π²Π½ΠΎ, Π° Π½Π΅ ΠΊΠ°ΠΊ сбой Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ. Боставим ΡΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ.
Asteroid Asteroid
Ну Π»Π°Π΄Π½ΠΎ, Π½Π°Ρ‡Π½Ρ‘ΠΌ с Π½ΡƒΠ»Π΅Π²ΠΎΠΉ Π³Ρ€Π°Π²ΠΈΡ‚Π°Ρ†ΠΈΠΈ, ΠΏΠΎΡ‚ΠΎΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ нСбольшой Π²Π΅ΠΊΡ‚ΠΎΡ€ для направлСния Π΄Ρ€ΠΈΡ„Ρ‚Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ простыС Π²Ρ‹ΠΏΡƒΠΊΠ»Ρ‹Π΅ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ для городских ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ ΠΈ Π·ΠΎΠ½Ρ‹ Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΠΌΠΏΡƒΠ»ΡŒΡ, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π° Π½ΠΈΡ… наступит – быстро, чисто ΠΈ ΠΎΡ‰ΡƒΡ‰Π΅Π½ΠΈΠ΅ настоящСй нСвСсомости. Π—Π°ΠΏΠΈΡˆΠ΅ΠΌ это.
EchoPulse EchoPulse
Π₯ΠΎΡ€ΠΎΡˆΠΎ, Π½Π°Ρ‡ΠΈΠ½Π°Π΅ΠΌ с Π±Π°Π·ΠΎΠ²Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²: g Ρ€Π°Π²Π½ΠΎ Π½ΡƒΠ»ΡŽ, добавляСм нСбольшой Π²Π΅ΠΊΡ‚ΠΎΡ€ Π΄Ρ€Π΅ΠΉΡ„Π° 0.01 ΠΌ/с² Π² сторону Ρ†Π΅Π½Ρ‚Ρ€Π° ΠΊΡƒΠΏΠΎΠ»Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π²Ρ‹ΠΏΡƒΠΊΠ»Ρ‹Π΅ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ для Π³Ρ€Π°Π½ΠΈΡ† Π³ΠΎΡ€ΠΎΠ΄Π°, ΠΈ Π·ΠΎΠ½Ρ‹ Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ с ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠΎΠΌ 0.2 ΠΊΠ³Β·ΠΌ/с ΠΏΡ€ΠΈ Π²Ρ…ΠΎΠ΄Π΅. Π”Π°Π²Π°ΠΉ напишСм псСвдокод ΠΈ настроим физичСский Π΄Π²ΠΈΠΆΠΎΠΊ. Π“ΠΎΡ‚ΠΎΠ²Π°?
Asteroid Asteroid
ΠŸΠΎΡ…ΠΎΠΆΠ΅ Π½Π° ΡΡ‚Π°Ρ€Ρ‚ΠΎΠ²ΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ! Π’ΠΎΡ‚ набросок: гравитация = 0 Π΄Ρ€Π΅ΠΉΡ„ = Vector3(0.01, 0, 0.01) // Π»Ρ‘Π³ΠΊΠΎΠ΅ притягиваниС ΠΊ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π³ΠΎΡ€ΠΎΠ΄Π° Π² Π³ΠΎΡ€ΠΎΠ΄Π°Ρ…: Π³ΠΎΡ€ΠΎΠ΄.collider = ConvexHull(Π³ΠΎΡ€ΠΎΠ΄.vertices) ΠΏΡ€ΠΈ столкновСнии(ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ, ΠΏΠΎΡ€Ρ‚Π°Π»): ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΡ‚ΡŒ ΠΈΠΌΠΏΡƒΠ»ΡŒΡ(ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ, Vector3(0, 0, 0.2)) Π—Π°Π²ΠΎΠ΄ΠΈΠΌ Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΡŒ ΠΈ посмотрим, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ полСтят. ΠŸΠΎΡ…ΠΎΠΆΠ΅ Π½Π° ΡΡ‚Π°Ρ€Ρ‚ΠΎΠ²ΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ! Π’ΠΎΡ‚ набросок: гравитация = 0; Π΄Ρ€Π΅ΠΉΡ„ = Vector3(0.01, 0, 0.01) – Π»Ρ‘Π³ΠΊΠΎΠ΅ притягиваниС ΠΊ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ; для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π³ΠΎΡ€ΠΎΠ΄Π° Π² Π³ΠΎΡ€ΠΎΠ΄Π°Ρ…: Π³ΠΎΡ€ΠΎΠ΄.collider = ConvexHull(Π³ΠΎΡ€ΠΎΠ΄.vertices); ΠΏΡ€ΠΈ столкновСнии(ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ, ΠΏΠΎΡ€Ρ‚Π°Π»): ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΡ‚ΡŒ ΠΈΠΌΠΏΡƒΠ»ΡŒΡ(ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ, Vector3(0, 0, 0.2)) Π—Π°Π²ΠΎΠ΄ΠΈΠΌ Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΡŒ ΠΈ посмотрим, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ полСтят.