[英]KineticJS: How can I use an SVG Sprite with KineticJS Sprites?
[英]kineticJS createImageHitRegion for sprites, not images
我正在使用KineticJS,並希望為我的精靈創建一個精確的圖像點擊區域(忽略透明像素)。 我看到了createImageHitRegion如何完成圖像處理 ,但是沒有看到如何將其應用於子畫面 。 換句話說,雖然createImageHitRegion方法是一種可以實現我想要的圖像功能的方法,但精靈似乎沒有類似的方法。 如果我可以僅在每個精靈的一張圖像上創建一個圖像匹配區域,但對我有用,但是包圍該精靈圖像的整個寬度和高度的大矩形區域將無法工作。 有任何解決方法的想法嗎? 也許我錯過了什么?
沒有簡單的方法可以對子畫面上的非透明像素進行命中測試。
我可以想到一些理論上的解決方法...
如果您可以畫出一個輪廓,勾勒出您想要擊中的像素。
Sprite對象允許自定義drawHitFunc
因此您可以使用mySprite.afterFrame
為每個Sprite圖片重新定義自定義點擊區域。
mySprite.afterFrame(0, function() {
mySprite.setDrawHitFunc(function(){
// draw the path you want used for frame#0
});
});
// repeat for all frames
如果您無法繪制概述要擊中像素的路徑。
不要使用精靈,而是使用單個圖像制作自己的精靈。
為此,可以創建一系列圖像(包括createImageHitRegion),並依次使其中一個圖像可見,從而使其看起來像在播放一張Spritesheet。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.