PIXI JS - Как обновить сетку UV? - PullRequest
0 голосов
/ 22 ноября 2018

Я хочу знать, как обновить сетчатые UV-лучи.

УФ-лучи, кажется, хорошо применяются при init.Но если это изменяется динамически, UV не отражают это.Это ошибка в PIXI JS?Или моя ошибка?

...
uvs: Float32Array = new Float32Array([ 0, 0, 1, 0, 1, 1, 0, 1 ]);
mesh: PIXI.mesh.Mesh = new PIXI.mesh.Mesh(texture, vertices, uvs, indices);

во время выполнения

this.mesh.uvs[2] += this.offset;
this.mesh.uvs[4] += this.offset;

не работает.

1 Ответ

0 голосов
/ 22 ноября 2018

Данные, которые PixiJS предоставляет вам, находятся на CPU, но сетка, отображаемая GPU, использует данные в GPU.

Вы обновили только данные CPU, чтобы сделать их доступными для GPU,Вы должны увеличить YourMesh.dirty, чтобы PixiJS знал, что данные изменились и ему необходимо обновить данные графического процессора.

у вас должно быть что-то вроде этого:

this.mesh.uvs[2] += this.offset;
this.mesh.uvs[4] += this.offset;
this.mesh.dirty ++;
...