Three.js: Π₯ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ высоту кубичСской сСтки

Π‘ΠΎΠ·Π΄Π°Π½Π½Ρ‹ΠΉ Π½Π° 17 мая 2012  Β·  3ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ  Β·  Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: mrdoob/three.js

МнС ΡƒΠ΄Π°Π»ΠΎΡΡŒ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ высоту гСомСтричСской сСтки ΠΊΡƒΠ±Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ mesh.scale.y, ΠΎΠ΄Π½Π°ΠΊΠΎ это Π½Π΅ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ я Ρ…ΠΎΡ‡Ρƒ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ Π΅Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Π²Π΅Ρ€Ρ… ΠΈΠ»ΠΈ Π²Π½ΠΈΠ·, Π½ΠΎ ΠΊΠΎΠ³Π΄Π° я ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΡŽ Π΅Π΅, ΠΎΠ½Π° измСняСтся Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½ΠΎ Π² ΠΎΠ±ΠΎΠΈΡ… направлСниях Π²Π²Π΅Ρ€Ρ… ΠΈ Π²Π½ΠΈΠ·. Π•ΡΡ‚ΡŒ Π»ΠΈ простой способ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это Π±Π΅Π· ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ обновлСния настройки полоТСния для Π½ΠΈΠ·Π° ΠΈΠ»ΠΈ Π²Π΅Ρ€Ρ…Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ выглядСл Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Π±ΡƒΠ΄Ρ‚ΠΎ ΠΎΠ½ растСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΎΠ΄Π½ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ.

PS - НС ΡƒΠ΄Π°Π»ΠΎΡΡŒ Π½Π°ΠΉΡ‚ΠΈ Ρ„ΠΎΡ€ΡƒΠΌ для ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ этого вопроса, поэтому отказался ΠΎΡ‚ поиска Π² Google ΠΈ размСстил Π΅Π³ΠΎ здСсь. Π’Π°ΠΊΠΆΠ΅ Ρ…ΠΎΡ‚Π΅Π» Π±Ρ‹ ΠΏΠΎΠ±Π»Π°Π³ΠΎΠ΄Π°Ρ€ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Three.js Π·Π° этот ΠΏΠΎΡ‚Ρ€ΡΡΠ°ΡŽΡ‰ΠΈΠΉ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ написаниС простого WebGL, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ я Π΄Π΅Π»Π°Π», заняло слишком ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Π‘Π°ΠΌΡ‹ΠΉ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

mesh.scale.y += delta;
mesh.translateY( delta / 2 );

ВсС 3 ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

mesh.scale.y += delta;
mesh.translateY( delta / 2 );

Π‘ΠΎΠ»ΡŒΡˆΠΎΠ΅ спасибо

Для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ сСйчас наткнулся Π½Π° это, нСбольшоС пояснСниС.

mesh.scale.y += delta измСняСт ΠΌΠ°ΡΡˆΡ‚Π°Π± сСтки, поэтому, Ссли ΠΌΠ°ΡΡˆΡ‚Π°Π± Ρ€Π°Π²Π΅Π½ 1, ΠΈ Π²Ρ‹ добавляСтС 1, сСтка удваиваСтся.

mesh.translateY() ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ сСтку Π½Π° физичСскоС расстояниС. Π˜Ρ‚Π°ΠΊ, Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ y сСтки составляСт 5 пиксСлСй, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ 1 ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ Π΅Π³ΠΎ ΠΊ 6.

ВмСсто translateY(delta/2) Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹ΡΡΠ½ΠΈΡ‚ΡŒ, насколько mesh.scale.y += delta физичСски ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ / ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ сСтку, Π° Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π° ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρƒ этой суммы.

Π‘Ρ‹Π»Π° Π»ΠΈ эта страница ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ?
0 / 5 - 0 Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³ΠΈ