我在我的遊戲中有一個移動的卡車,我希望城市的光線反射(不是背景)在它的身體移動時可見。actionscript 3.0可見遮罩在可見遮罩對象上
站在卡車後面什麼都沒有關係,有的樹木和建築物。
那麼, 我添加背景(不重要); 然後我把卡車加到舞臺上; 然後我添加另一個具有整個舞臺大小的MovieClip(城市燈光和東西),並將其設置爲卡車的遮罩物。
我不想讓卡車消失,我只是想讓遮罩物體在它上面透出一些透明度;
我知道關於掩蔽,也捕獲我的movieclip作爲位圖,但它不會在我的情況下工作;因爲這裏卡車保持完全可見並且面罩半透明。
請幫助我,我的時間不多了:/
編輯
這是基於我當前的代碼關閉asnwers之一:
var buildingHolder: Sprite = new Sprite;
this.addChild(buildingHolder);
var Mask: Sprite = new Sprite()
Mask = Sprite(buildingHolder);
Mask.alpha = 1;
Mask.cacheAsBitmap = true;
this.addChild(Mask);
var reflection: MovieClip = new nightSky1Mask;
reflection.x = 0;
reflection.y = 480;
reflection.alpha = .6;
reflection.scaleX *= 320/reflection.width;
reflection.scaleY = reflection.scaleX;
reflection.cacheAsBitmap = true;
reflection.mask = Mask;
this.addChild(reflection);
for (var i: int = 0; i <= 29; i++){
//some codes are deleted here
var image: MovieClip = new level1Images[i];
image.x = // deleted
image.y = // deleted
image.scaleX *= 30/image.width * 2;
image.scaleY *= 5/image.width * 2;
buildingHolder.addChild(image)
currLevelImages.push(image)
}
顯示你當前的代碼。您需要爲城市燈光影片剪輯創建一個蒙版,因爲您不想掩蓋卡車,所以想遮掩燈光。如果您的卡車是帶有透明度的png或bimtap類型物體,則創建一個可用作燈光面罩的副本非常簡單。如果你顯示你的代碼,可以給出一個具體的例子。 – BadFeelingAboutThis
我認爲這裏的問題是這個Mask是buildingHolder本身,我的意思是當我將它的alpha設置爲0.1時,我看不到它後面的buildingHolder。他們完全一樣不是副本! @LDMS – innerUFOmaker
是的,投射一個物體不會複製它。你正在做的是創建一個新的精靈(在Mask var中),然後在賦值var與buildingHolder var中相同的對象之後。一個對象,兩個引用它的變量。 – BadFeelingAboutThis