BitmapFileMaterialの透過UZEEEEEEEEEEEEEEEEEEE

※かんぺきになったよ!
PV3Dはネットがなければ死んでしまうほどお世話になっているので役立つかしらんけど恩返ししてみるぜ! 最近頭悪いエントリばっかりで自分がプログラマだってことを忘れそうだぜ!

  • なぜかfillAlphaがうごかない
  • ColorTransformという天才的なメソッドを発見したのでfillAlphaをあきらめてPlaneとかCubeをextendsして自前実装
private var _alpha : int = 255
public function get alpha() : int {
	return this._alpha; 
}

private var bo : BitmapData = this.bitmap.clone();

private var point : Point = new Point(0, 0);

public function set alpha(alpha : int) : void
{
	if (alpha == this._alpha) return;
	
	if (alpha < 0) alpha = 0;
	if (alpha > 255) alpha = 255;
	
	var ba : BitmapData = new BitmapData(
		bo.width,
		bo.height,
		true,
		0x00ffffff + (alpha << 24)
	);
	(this.material as BitmapMaterial).bitmap
		.copyPixels(bo, bo.rect, point, ba, point, false);
	
	this._alpha = alpha;
}
public function FadeOut(time : int) : void
Tweener.addTween(this, {transition:"linear", time:time, alpha:0});
  • 消えるんだけど透過しない、なぜだー
  • いろいろ試してみると透過きくやつと透過きかないやつがある
  • 透過きくやつはpngできかないやつはjpgだ! alpha値くらい内部で追加しろよ。。。

http://www.google.co.jp/search?hl=ja&client=firefox&rls=org.mozilla%3Aja%3Aofficial&hs=vzZ&q=BitmapFileMaterial+%E9%80%8F%E9%81%8E+png&btnG=%E6%A4%9C%E7%B4%A2&lr=lang_ja

JavaScriptな日々
マテリアル設定 material = new BitmapFileMaterial("00.png"); material.doubleSided = true;//裏も表示 ... 画像に関してはアルファ付きpngであきらめるとしても、ブロック要素ごと透過できないのはどうしようもありません。 ...
m035.blog61.fc2.com/?vcr=78af896afbfa7f47deacdd1ff0c23c88 - 59k - キャッシュ - 関連ページ

(リンク先消滅、キャッシュもなしなので)

  • どうやらpngしか透過してくれなさそう(ソースに透過色情報がセットされてないとだめってことね)
  • とりあえずirfanViewpngに変換
  • 透過SINEEEEEEEEE
  • はいはい保存設定で「透過色を設定する」ね→(画像を表示して)「透過色を設定してください」だとー!
  • しょうがないのでPaint.NETで開く→新規レイヤー追加→下にまわす→保存
  • 幸せになった←いまここ