2014-05-23 8 views
0

작동하지 채우기.CocoonJS 캔버스 이미지 패턴 내가 GUI를 그릴 HTML5 캔버스를 사용하고

이미지 패턴 채우기 (모바일 포함) 브라우저에서 잘 작동하지만 안드로이드 나 아이 패드에 코쿤 JS 런처를 사용하는 경우, 텍스처 패턴은 검은 색으로 표시됩니다. 동일한 이미지와 잘 작동

var pattern = context.createPattern(imageResource,"repeat"); 
context.fillStyle = pattern; 
context.fillRect(0,0,300,300); 

CocoonJS 콘솔에서 보면, 질감이 제대로로드 및 context.drawImage().

워드 프로세서 캔버스 패턴이 지원되는 것을 나타냅니다. 패턴 채우기가 CocoonJS 실행 프로그램에서 작동하지 않는 이유는 무엇입니까?

감사합니다.

답변

0

캔버스 패턴은 CocoonJS에서 지원됩니다. 이 예는 POT 및 NPOT 텍스처 CocoonJS 실행기에 잘 작동 :

var canvas = document.createElement("canvas"); 
canvas.width = window.innerWidth; 
canvas.height = window.innerHeight; 
document.body.appendChild(canvas); 
var ctx = canvas.getContext("2d"); 

var img = new Image(); 
img.onload = function() { 
    var pattern = ctx.createPattern(img,"repeat"); 
    ctx.fillStyle = pattern; 
    ctx.fillRect(0,0,300,300); 
} 
img.src = "img.png"; 

, 공유, 더 많은 코드 문제를 재현하기 바랍니다.

+0

덕분에 - 그것이 실제로 실행에 독립 테스트 케이스로 작동합니까 확인했다. –

+0

차이점은 WebGL 3D (ThreeJS) 환경에서 코드가 실행된다는 점입니다. 캔버스를 메시 용 비트 맵 소스로 사용하고 계속 진행되는 다른 많은 것들이 있습니다. 내 코드를 제거하고 언제 작동하는지 확인해야 할 것입니다. –

0

세 개의 JS (렌더러, 카메라 등)를 초기화 한 후 이미지 리소스를로드하는 사실을 추적 할 수있었습니다. 이미지 리소스가 코쿤 런처 내에서, 나는 '아니오 채우기'문제를 가지고있는 경우, 캔버스 질감 채우기를 시도하기 전에로드를 위해 내가 기다리고 있었다 사실에도 불구하고

. 로드 이미지 자원 먼저, 다음 ThreeJS을 초기화 :

은 내가 한 모든 사물의 순서를 변경했다. 채우기는 발사기 내에서 완벽하게 작동하는 것처럼 보이지만 완전히 이유는 모르겠습니다.