Away3D 實現場景中的倒計時

需求:需要在死亡人物處實現一個3D的倒計時

問題:如果用兩個以上的Sprite3D實現,因爲是billboard,總會有一個視角是重疊的

解決:將要顯示的圖片資源先合併,然後再替換Sprite3D的material

代碼

	var num0:int = value / 10;
	var num1:int = value % 10;
	_bitMapData ||= new BitmapData(64, 32, true, 0x00FFFFFF);
	_emptyBmp ||= new BitmapData(19, 26, true, 0x00FFFFFF);
	_rect ||= new Rectangle(0, 0, 19, 26);
	_point ||= new Point();
    if(_lastNum0 != num0){
        _lastNum0 = num0;  
        bmp = asset.getBitmapDataByName(num0 + ".png"); 
        _point.x = 0; 
        _bitMapData.copyPixels(_emptyBmp, _rect, _point);//先清空     
           _bitMapData.copyPixels(bmp, _rect, _point);    }  
    if(_lastNum1 != num1){      
       _lastNum1 = num1;        
       bmp = asset.getBitmapDataByName(num1 + ".png");        
       _point.x = 25;        
       _bitMapData.copyPixels(_emptyBmp, _rect, _point);        
       _bitMapData.copyPixels(bmp, _rect, _point);   
    }
    (sp.material as TextureMaterial).texture.dispose();
    (sp.material as TextureMaterial).texture = Cast.bitmapTexture(bitMapData);

如果想添加文字

則用 bitmapData.draw(new TextField);

可以用來實現怪物跟隨的名字等信息


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章