はじめに
「UnityFlashBitmap」を Unity プロジェクトに導入することで
Flash の Bitmap のようにテクスチャを扱うことができるようになります
使用例
Texture2D texture; var srcBmp = new BitmapData(); srcBmp.SetTexture2D( texture ); // 塗りつぶし srcBmp.fillRect( new Rectangle( 0, 0, 10, 10 ), Color.green ); // フィルター var grayScaleFilter = new MatrixFilter( new float[] { 0.298912f, 0.586611f, 0.114478f, 0, 0, 0.298912f, 0.586611f, 0.114478f, 0 ,0, 0.298912f, 0.586611f, 0.114478f, 0 ,0, 0 , 0, 0, 1, 0 } ); distBmp.applyFilter ( srcBmp, new Rectangle( 0, 0, srcBmp.width, srcBmp.height ), null, grayScaleFilter ); distBmp.unlock(); // テクスチャに反映 var matrix = new []{ -1, -1, -1, -1, 8, -1, -1, -1, -1 }; // フィルタカーネル int divisor = 1; int bias = 0; var convolutionFilter = new ConvolutionFilter( matrix, divisor, bias ); distBmp.applyFilter ( srcBmp, new Rectangle( 0, 0, srcBmp.width, srcBmp.height ), new Point( 0, 0 ), convolutionFilter ); distBmp.unlock(); // テクスチャに反映