Pixi.js: Установка привязки Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠ΅Ρ€Π΅Ρ€ΠΈΡΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ содСрТимоС ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°

Π‘ΠΎΠ·Π΄Π°Π½Π½Ρ‹ΠΉ Π½Π° 11 Π°ΠΏΡ€. 2018  Β·  4ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ  Β·  Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: pixijs/pixi.js

ΠŸΡ€ΠΈΠ²Π΅Ρ‚,

нСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΡ‡ΠΊΠ° ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚Π° ΠΈ привязка ΠΎΡ‡Π΅Π½ΡŒ ΡΠ±ΠΈΠ²Π°ΡŽΡ‚ с Ρ‚ΠΎΠ»ΠΊΡƒ, Ссли я ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽ привязку ΠΊΠ°ΠΊ Ρ‚Ρƒ ΠΊΡ€ΡƒΠ³Π»ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ я ΠΌΠΎΠ³Ρƒ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π² Ρ„ΠΎΡ‚ΠΎΡˆΠΎΠΏΠ΅ ΠΈΠ»ΠΈ старом Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ Ρ„Π»ΡΡˆ-памяти Π² качСствС Ρ‚ΠΎΡ‡ΠΊΠΈ вращСния, Ρ‚ΠΎ Π² pixi происходит пСрСрисовка всСго содСрТимого ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, устанавливая привязку Π² качСствС источника Ρ‚ΠΎΡ‡ΠΊΠ°.

var app = new PIXI.Application(800, 600, {backgroundColor : 0x1099bb});
document.body.appendChild(app.view);

var bunny = PIXI.Sprite.fromImage('required/assets/basics/bunny.png');

var container = new PIXI.Sprite();
container.addChild(bunny);
container.x = 0;
container.y = 0;

app.stage.addChild(container);

bunny.anchor.set(0.5);
//bunny_c.pivot.set(15,5);

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ я оТидаю, Ρ‡Ρ‚ΠΎ ΠΊΡ€ΠΎΠ»ΠΈΠΊ Π±ΡƒΠ΄Π΅Ρ‚ с привязкой, которая влияСт Π½Π° Π΅Π³ΠΎ Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅, Π½ΠΎ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ пСрСрисован ΠΊΡ€ΠΎΠ»ΠΈΠΊ!

πŸ’Ύ v4.x (Legacy) πŸ€” Question

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

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅: ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ / ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚ / ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚.
Π‘ΠΏΡ€Π°ΠΉΡ‚Ρ‹ ΠΈΠΌΠ΅ΡŽΡ‚ привязку, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ «эта Ρ‚ΠΎΡ‡ΠΊΠ° тСкстуры Π΄ΠΎΠ»ΠΆΠ½Π° Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² (0,0) локальной систСмы ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Β».

Ось вращСния всСгда (0,0) локальной систСмы ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚.

Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ класс Transform ΠΈ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ экзСмпляры исправлСнного Transform для Π·Π°Ρ‚Ρ€ΠΎΠ½ΡƒΡ‚Ρ‹Ρ… элСмСнтов.

https://github.com/pixijs/pixi.js/blob/dev/src/core/display/TransformStatic.js
https://github.com/pixijs/pixi.js/blob/dev/src/core/sprites/Sprite.js#L174

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΊΡ€ΠΎΠ»ΠΈΠΊ - это redrawn ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠ°Π΄Ρ€ Π² пикси. Π’ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ Π½Π΅Ρ‚ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² для отслСТивания всСх ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΎΠ½Π° просто Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС ΠΎΠ½ ΠΌΠΎΠ³ Π±Ρ‹ Π²Π΅ΡΠΈΡ‚ΡŒ 3 ΠœΠ‘ ΠΈΠ»ΠΈ большС :)

Π’ вашСм случаС Π»ΡƒΡ‡ΡˆΠ΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ‚ΠΎΡ‡ΠΊΡƒ ΠΏΠΎΠ²ΠΎΡ€ΠΎΡ‚Π° ΠΏΠΎ Ρ†Π΅Π½Ρ‚Ρ€Ρƒ ΠΊΡ€ΠΎΠ»ΠΈΠΊΠ°. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ константы, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ bunny.texture.width Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½.

@DavidGOrtega Π·Π°ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ это, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ я Ρ‡ΡƒΠ²ΡΡ‚Π²ΡƒΡŽ, Ρ‡Ρ‚ΠΎ Π½Π° ваш вопрос Π±Ρ‹Π» Π΄Π°Π½ ΠΎΡ‚Π²Π΅Ρ‚. НС ΡΡ‚Π΅ΡΠ½ΡΠΉΡ‚Π΅ΡΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ снова, Ссли Ρƒ вас Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹!

Π­Ρ‚ΠΎΡ‚ ΠΏΠΎΡ‚ΠΎΠΊ Π±Ρ‹Π» автоматичСски Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ послС Π΅Π³ΠΎ закрытия Π² послСднСС врСмя Π½Π΅ Π±Ρ‹Π»ΠΎ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… дСйствий. ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Π½ΠΎΠ²ΡƒΡŽ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ для связанных ошибок.

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