From bdb7fb3536e8623c2a11dda148a4ca3ee9ce561d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=93=D0=BB=D0=B0=D0=B2=D1=80=D0=B5=D0=B4=20=7C=20Glavred?= Date: Fri, 4 Dec 2020 14:34:26 +0300 Subject: [PATCH] =?UTF-8?q?=D0=98=D0=B7=D0=BC=D0=B5=D0=BD=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D1=8F=20=D0=BE=D1=82=20=D0=93=D0=BB=D0=B0=D0=B2=D1=80?= =?UTF-8?q?=D0=B5=D0=B4=D0=B0=20=D0=93=D0=B8=D1=82=D0=96=D0=A1=20|=20Chang?= =?UTF-8?q?es=20of=20GitJS=20Glavred?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 0000 | 2 +- 🎬.js | 54 +++++++++++++++++++++++++++++++++++++++++++++++ 🎬.Ρ‡Π΅Ρ€Π΅Π΄Π° | 4 +++- 3 files changed, 58 insertions(+), 2 deletions(-) diff --git a/0000 b/0000 index 0f00319..ad126fa 100644 --- a/0000 +++ b/0000 @@ -1,5 +1,5 @@ Π‘Ρ†Π΅Π½Π° МадТонга -0.3.0 +0.4.0 https://git.opengamestudio.org/MAOH/CEHMA x /🎬.js diff --git a/🎬.js b/🎬.js index b2a8ad6..688dca7 100644 --- a/🎬.js +++ b/🎬.js @@ -29,6 +29,60 @@ // // // // +Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒΠžΡ‚Π»Π°Π΄ΠΎΡ‡Π½ΡƒΡŽΠ‘Ρ„Π΅Ρ€ΡƒΠ’Π¦Π΅Π½Ρ‚Ρ€Π΅ΠšΠΎΡ€Π½Ρ = ΠΌΠΈΡ€ => +{ + var Ρ„ΠΎΡ€ΠΌΠ° = new THREE.SphereBufferGeometry(0.5, 32, 32); + var сфСра = new THREE.Mesh(Ρ„ΠΎΡ€ΠΌΠ°); + сфСра.material = new THREE.MeshLambertMaterial({ color: 0xAA00AA }); + ΠΌΠΈΡ€.ΠΊΠΎΡ€Π΅Π½ΡŒΠ‘Ρ†Π΅Π½Ρ‹ΠœΠ°Π΄ΠΆΠΎΠ½Π³Π°.add(сфСра); +}; + + +// // // // + + +Π¦Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΠ€ΠΈΡˆΠΊΠΈΠ‘Ρ†Π΅Π½Ρ‹ = ΠΌΠΈΡ€ => +{ + var ΠΌΠΈΠ½ = { + "x": 1000000, + "z": 1000000, + }; + var макс = { + "x": 0, + "z": 0, + }; + for (var Π½ΠΎΠΌΠ΅Ρ€ in ΠΌΠΈΡ€.Ρ„ΠΈΡˆΠΊΠΈΠ‘Ρ†Π΅Π½Ρ‹) + { + const Ρ„ = ΠΌΠΈΡ€.Ρ„ΠΈΡˆΠΊΠΈΠ‘Ρ†Π΅Π½Ρ‹[Π½ΠΎΠΌΠ΅Ρ€]; + if (Ρ„.position.x < ΠΌΠΈΠ½.x) + { + ΠΌΠΈΠ½.x = Ρ„.position.x; + } + if (Ρ„.position.x > макс.x) + { + макс.x = Ρ„.position.x; + } + if (Ρ„.position.z < ΠΌΠΈΠ½.z) + { + ΠΌΠΈΠ½.z = Ρ„.position.z; + } + if (Ρ„.position.z > макс.z) + { + макс.z = Ρ„.position.z; + } + } + // Π£Π±ΠΈΡ€Π°Π΅ΠΌ пустоту слСва. + ΠΌΠΈΡ€.ΠΊΠΎΡ€Π΅Π½ΡŒΠ‘Ρ†Π΅Π½Ρ‹ΠœΠ°Π΄ΠΆΠΎΠ½Π³Π°.position.x -= ΠΌΠΈΠ½.x; + ΠΌΠΈΡ€.ΠΊΠΎΡ€Π΅Π½ΡŒΠ‘Ρ†Π΅Π½Ρ‹ΠœΠ°Π΄ΠΆΠΎΠ½Π³Π°.position.z -= ΠΌΠΈΠ½.z; + // Π¦Π΅Π½Ρ‚Ρ€ΠΈΡ€ΡƒΠ΅ΠΌ остаток. + ΠΌΠΈΡ€.ΠΊΠΎΡ€Π΅Π½ΡŒΠ‘Ρ†Π΅Π½Ρ‹ΠœΠ°Π΄ΠΆΠΎΠ½Π³Π°.position.x -= (макс.x - ΠΌΠΈΠ½.x) / 2; + ΠΌΠΈΡ€.ΠΊΠΎΡ€Π΅Π½ΡŒΠ‘Ρ†Π΅Π½Ρ‹ΠœΠ°Π΄ΠΆΠΎΠ½Π³Π°.position.z -= (макс.z - ΠΌΠΈΠ½.z) / 2; +}; + + +// // // // + + Π—Π°Π΄Π°Ρ‚ΡŒΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹Π€ΠΈΡˆΠΊΠ°ΠΌΠ‘Ρ†Π΅Π½Ρ‹ = ΠΌΠΈΡ€ => { for (var Π½ in ΠΌΠΈΡ€.Ρ„ΠΈΡˆΠΊΠΈΠ‘Ρ†Π΅Π½Ρ‹) diff --git a/🎬.Ρ‡Π΅Ρ€Π΅Π΄Π° b/🎬.Ρ‡Π΅Ρ€Π΅Π΄Π° index 3e32f3e..32a3038 100644 --- a/🎬.Ρ‡Π΅Ρ€Π΅Π΄Π° +++ b/🎬.Ρ‡Π΅Ρ€Π΅Π΄Π° @@ -1,4 +1,6 @@ Π½Π°Π΄ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ„ΠΈΡˆΠΊΠΈ Π² сцСнС ΡƒΠ±Ρ€Π°Ρ‚ΡŒ старыС Ρ„ΠΈΡˆΠΊΠΈ сцСны ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ Ρ„ΠΈΡˆΠΊΠΈ сцСны - Π·Π°Π΄Π°Ρ‚ΡŒ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹ Ρ„ΠΈΡˆΠΊΠ°ΠΌ сцСны \ No newline at end of file + Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΠΈΡˆΠΊΠΈ сцСны + Π·Π°Π΄Π°Ρ‚ΡŒ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹ Ρ„ΠΈΡˆΠΊΠ°ΠΌ сцСны +# ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½ΡƒΡŽ сфСру Π² Ρ†Π΅Π½Ρ‚Ρ€Π΅ корня \ No newline at end of file