bumpmapgenerator.as.svn-base
来自「一个2D基于verlet的Flash物理引擎。它用AS3编写而成。Fisix的目」· SVN-BASE 代码 · 共 44 行
SVN-BASE
44 行
package org.papervision3d.materials.utils
{
import flash.display.BitmapData;
import flash.filters.ConvolutionFilter;
import flash.geom.Point;
/**
* @Author Ralph Hauwert.
*/
public class BumpmapGenerator
{
public static function generateBumpmapFrom(bitmapData:BitmapData, output:BitmapData = null):BitmapData
{
var tempMap:BitmapData;
var p:Point = new Point();
var convolve:ConvolutionFilter = new ConvolutionFilter();
convolve.matrixX = 3;
convolve.matrixY = 3;
convolve.divisor = 1;
convolve.bias = 127;
var outputData:BitmapData;
if(!output){
outputData = bitmapData.clone();
}else{
outputData = output;
}
convolve.matrix = new Array(0,0,0,-1,0,1,0,0,0);
tempMap = bitmapData.clone();
tempMap.applyFilter(bitmapData, tempMap.rect, p, convolve);
outputData.copyPixels(tempMap, tempMap.rect,p);
convolve.matrix = new Array(0,-1,0,0,0,0,0,1,0);
tempMap = bitmapData.clone();
tempMap.applyFilter(bitmapData, tempMap.rect, p, convolve);
outputData.copyChannel(tempMap, tempMap.rect, p, 1, 2);
tempMap.dispose();
return outputData;
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?