`
hacker47
  • 浏览: 340461 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

使用杂点功能制作纹理

 
阅读更多

若要修改位图的外观,可以使用 noise() 方法或 perlinNoise() 方法对位图应用杂点效果。可以把杂点效果比作未调谐的电视屏幕的静态外观。

若要对位图应用杂点效果,请使用 noise() 方法。此方法对位图图像的指定区域中的像素应用随机颜色值。

此方法接受五个参数:

  • randomSeed (int):决定图案的随机种子数。不管名称具有什么样的含义,只要传递的数字相同,此数字就会生成相同的结果。为了获得真正的随机结果,请使用 Math.random() 方法为此参数传递随机数字。

  • low (uint):此参数指要为每个像素生成的最低值(0 至 255)。默认值为 0。将此参数设置为较低值会产生较暗的杂点图案,而将此参数设置为较高值会产生较亮的图案。

  • high (uint):此参数指要为每个像素生成的最高值(0 至 255)。默认值为 255。将此参数设置为较低值会产生较暗的杂点图案,而将此参数设置为较高值会产生较亮的图案。

  • channelOptions (uint):此参数指定将向位图对象的哪个颜色通道应用杂点图案。此数字可以是四个颜色通道 ARGB 值的任意组合。默认值为 7。

  • grayScale (Boolean):设置为 true 时,此参数对位图像素应用 randomSeed 值,可有效地褪去图像中的所有颜色。此参数不影响 Alpha 通道。默认值是 false

以下示例创建一个位图图像,并对它应用蓝色杂点图案:

 

import flash.display.Bitmap; 
import flash.display.BitmapData; 
 
var myBitmap:BitmapData = new BitmapData(250, 250,false, 0xff000000); 
myBitmap.noise(500, 0, 255, BitmapDataChannel.BLUE,false); 
var image:Bitmap = new Bitmap(myBitmap); 
addChild(image);

 

如果要创建更好的有机外观纹理,请使用 perlinNoise() 方法。perlinNoise() 方法可生成逼真、有机的纹理,是用于烟雾、云彩、水、火或爆炸的理想图案。

由于 perlinNoise() 方法是由算法生成的,因此它使用的内存比基于位图的纹理少。但还是会对处理器的使用有影响,特别是对于旧计算机,会降低 Flash 所创建的内容的处理速度,使屏幕重绘的速度比帧速率慢。这主要是因为需要进行浮点计算,以便处理 Perlin 杂点算法。

此方法接受九个参数(前六个是必需参数):

  • baseX (Number):决定创建的图案的 x(大小)值。

  • baseY (Number):决定创建的图案的 y(大小)值。

  • numOctaves (uint):要组合以创建此杂点的 octave 函数或各个杂点函数的数目。octave 数目越大,创建的图像越精细,但这需要更多的处理时间。

  • randomSeed (int):随机种子数的功能与在 noise() 函数中的功能完全相同。为了获得真正的随机结果,请使用 Math.random() 方法为此参数传递随机数字。

  • stitch (Boolean):如果设置为 true,则此方法尝试缝合(或平滑)图像的过渡边缘以形成无缝的纹理,用于作为位图填充进行平铺。

  • fractalNoise (Boolean):此参数与此方法生成的渐变的边缘有关。如果设置为 true,则此方法生成的碎片杂点会对效果的边缘进行平滑处理。如果设置为 false,则将生成湍流。带有湍流的图像具有可见的不连续性渐变,可以使用它处理更接近锐化的视觉效果,例如,火焰或海浪。

  • channelOptions (uint):channelOptions 参数的功能与在 noise() 方法中的功能完全相同。它指定对哪个颜色通道(在位图上)应用杂点图案。此数字可以是四个颜色通道 ARGB 值的任意组合。默认值为 7。

  • grayScale (Boolean):grayScale 参数的功能与在 noise() 方法中的功能完全相同。如果设置为 true,则对位图像素应用 randomSeed 值,可有效地褪去图像中的所有颜色。默认值是 false

  • offsets (Array):对应于每个 octave 的 x 和 y 偏移的点数组。通过处理偏移值,可以平滑滚动图像层。偏移数组中的每个点将影响一个特定的 octave 杂点函数。默认值为 null

以下示例创建一个 150 x 150 像素的 BitmapData 对象,该对象调用 perlinNoise() 方法来生成绿色和蓝色的云彩效果:

 

 

import flash.display.Bitmap; 
import flash.display.BitmapData; 
 
var myBitmapDataObject:BitmapData = new BitmapData(150, 150, false, 0x00FF0000); 
 
var seed:Number = Math.floor(Math.random() * 100); 
var channels:uint = BitmapDataChannel.GREEN | BitmapDataChannel.BLUE  
myBitmapDataObject.perlinNoise(100, 80, 6, seed, false, true, channels, false, null); 
 
var myBitmap:Bitmap = new Bitmap(myBitmapDataObject); 
addChild(myBitmap);

 

分享到:
评论

相关推荐

    ActionScript 3.0 开发人员指南中文官网上下的

    - **使用杂点功能制作纹理**:杂点(Noise)功能可用于生成随机像素,这在制作纹理效果时非常有用。 - **滚动位图**:通过位移显示对象可以在视觉上实现位图的滚动效果。 - **利用mipmap处理**:mipmap 技术可以...

    ActionScript开发人员指南中文版

    使用杂点功能制作纹理 滚动位图 利用mipmap处理 位图示例:带动画效果的旋转的月亮 位图图像的异步解码 第章:过滤显示对象 过滤显示对象的基础知识 创建和应用滤镜 可用的显示滤镜 筛选显示对象示例:...

    actionScript学习文档

    - **使用杂点功能制作纹理**:介绍如何利用杂点功能来创建纹理。 - **滚动位图**:说明如何滚动位图。 - **利用 mipmap 处理**:讲解如何利用 mipmap 技术提高位图的质量。 - **位图示例**:通过一个具体的示例——...

    ActionScript3.0开发人员指南

    - **使用杂点功能制作纹理**:展示如何利用杂点算法生成随机纹理,适用于创建自然的背景或表面。 - **滚动位图**:教授如何实现场景的平滑滚动,通常用于游戏和动画背景。 - **利用mipmap处理**:解释mipmap(多级...

    fushi.zip_杂点

    标题中的“fushi.zip_杂点”可能是一个压缩包,其中包含了实现这一功能的源代码,即`fushi.cpp`。下面将详细解释相关知识点。 1. **二值图像**: 二值图像是一种特殊的图像类型,它只有两种颜色或灰度级别,通常用...

    ASP验证码(字母+数字+随机杂点)

    ASP验证码(字母+数字+随机杂点).ASP验证码(字母+数字+随机杂点).

    ps教程入门-Photoshop制作广告经典海报.doc

    在 Photoshop 中,我们可以使用“添加杂色”功能来添加杂点,制作燥点感受。我们可以设置合适的数量和分布方式,并勾选单色。通过这种方式,我们可以使图像变得更加生动。 四、图层混合模式 在 Photoshop 中,图层...

    用ps制作网页.doc

    这个教程不仅教你如何构建网页的基本布局,还教授了一些高级设计技巧,如使用渐变、添加纹理、制作阴影以及利用剪贴蒙版。通过这些步骤,你可以创建出具有专业外观的网页设计,为你的网站增添视觉吸引力。这个过程...

    自制php验证码(兼容中文,支持纯色杂色,杂点线条)

    使用`imageline`绘制线条,`imagefilledellipse`或`imagesetpixel`添加杂点。 7. **保存与显示**:最后,使用`imagepng`或`imagejpeg`将图像输出到浏览器,同时将生成的验证码字符保存到服务器端,以便后续验证。 ...

    Vray渲染深度剖析,怎么样让图边线轮廓清晰,无杂点斑点.pdf

    V-Ray是一款广泛应用于3D建模软件中的高级渲染引擎,其强大的功能可以帮助用户创建出高质量的图像和动画。本文将深度剖析如何通过调整V-Ray的参数设置,来优化渲染效果,使得图像边缘清晰,无杂点斑点。 首先,我们...

    aspJpeg图片水印有杂点的完美解决方法

    当我们在ASP程序中使用aspJpeg组件给图片添加水印时,有时会遇到添加的水印有杂点的问题,这可能是由于水印图片的格式、背景或者图像质量所导致的。 首先,解决水印图片有杂点问题的关键在于选择合适的图片格式。...

    验证码二值化,清除杂点算法源码-易语言

    在易语言环境下,实现这个功能需要掌握以下几个核心知识点: 1. 图像基础:了解图像的基本构成,包括像素、色彩模式(如RGB、灰度、二值)等。二值化是将图像转换为只有黑(通常用0表示)和白(通常用255表示)两种...

    第十二章 综合实例(photoshop 滤镜).doc

    在制作银币图案时,需要使用 Photoshop 的滤镜功能,包括增加杂色、模糊、动感模糊等效果。首先,新建一个图像文件,并使用油漆桶工具填充灰色背景,然后使用杂色滤镜增加杂点图案。接着,使用模糊滤镜制作银币底纹...

    Vray渲染深度剖析,怎么样让图边线轮廓清晰,无杂点斑点.docx

    2. 自适应采样(Adaptive Dome Light)和自适应细分(Adaptive DMC):这两项功能可以根据场景的不同区域自动调整采样密度,有助于减少不必要的计算,提高渲染效率。 3. 光子映射(Photon Mapping)或 irradiance ...

    水面杂点滤镜

    BitmapWater,水面杂点滤镜 package { import flash.display.Bitmap; import flash.display.BitmapData; import flash.display.BitmapDataChannel; import flash.display.Sprite; import flash.events....

    ps做条形码教程 ——ps高手之路系列

    2. **制作杂点效果**: - 使用【滤镜】|【杂色】|【添加杂色…】命令,设置“数量”为400%,选择“平均分布”和“单色”选项。这将生成一个均匀的杂点图案,为后续的条形码效果打下基础。 3. **动感模糊处理**: ...

    用Photoshop制作钻石特效字(完整版)实用资料.doc

    本教程详细介绍了如何使用Adobe Photoshop软件制作具有钻石效果的文字。以下是步骤详解: 1. **创建文档与基础文本** 首先,创建一个660x200像素的白色背景文档,然后用粗体字(如Impact,140Pt大小)输入文本,并...

    ACDSee_5.0_简体中文版看图软件使用教程整理.pdf

    如果图像有杂点,还可以使用“去斑”功能优化图像质量。 10. **抓图功能**:ACDSee 5.0的抓图功能,允许用户快速捕捉屏幕内容,便于记录和分享视觉信息。 综上所述,ACDSee 5.0不仅是一款优秀的看图软件,还集成了...

Global site tag (gtag.js) - Google Analytics