@@ -800,6 +800,8 @@ class RenderWebGL extends EventEmitter {
800
800
const color = __touchingColor ;
801
801
const hasMask = Boolean ( mask3b ) ;
802
802
803
+ drawable . updateCPURenderAttributes ( ) ;
804
+
803
805
// Masked drawable ignores ghost effect
804
806
const effectMask = ~ ShaderManager . EFFECT_INFO . ghost . mask ;
805
807
@@ -969,6 +971,8 @@ class RenderWebGL extends EventEmitter {
969
971
const drawable = this . _allDrawables [ drawableID ] ;
970
972
const point = __isTouchingDrawablesPoint ;
971
973
974
+ drawable . updateCPURenderAttributes ( ) ;
975
+
972
976
// This is an EXTREMELY brute force collision detector, but it is
973
977
// still faster than asking the GPU to give us the pixels.
974
978
for ( let x = bounds . left ; x <= bounds . right ; x ++ ) {
@@ -1423,8 +1427,6 @@ class RenderWebGL extends EventEmitter {
1423
1427
/** @todo remove this once URL-based skin setting is removed. */
1424
1428
if ( ! drawable . skin || ! drawable . skin . getTexture ( [ 100 , 100 ] ) ) return null ;
1425
1429
1426
-
1427
- drawable . updateCPURenderAttributes ( ) ;
1428
1430
const bounds = drawable . getFastBounds ( ) ;
1429
1431
1430
1432
// Limit queries to the stage size.
@@ -1919,14 +1921,14 @@ class RenderWebGL extends EventEmitter {
1919
1921
_getConvexHullPointsForDrawable ( drawableID ) {
1920
1922
const drawable = this . _allDrawables [ drawableID ] ;
1921
1923
1922
- drawable . updateCPURenderAttributes ( ) ;
1923
-
1924
1924
const [ width , height ] = drawable . skin . size ;
1925
1925
// No points in the hull if invisible or size is 0.
1926
1926
if ( ! drawable . getVisible ( ) || width === 0 || height === 0 ) {
1927
1927
return [ ] ;
1928
1928
}
1929
1929
1930
+ drawable . updateCPURenderAttributes ( ) ;
1931
+
1930
1932
/**
1931
1933
* Return the determinant of two vectors, the vector from A to B and the vector from A to C.
1932
1934
*
0 commit comments