推荐阅读

3DMAX实例教程:VRay打造精致乡村风格餐厅
如何体现一个充满加州柔和阳光的空间呢?这次以餐厅这个空间作为主题内容。从最初的平面设定到空间的布光和材质的赋给,成图的后期处理,我们在这里将一一进行体现。最终效果图图00空间概要及说明:这是一套300多平米的别墅,在整体的设计风格上,我采用了美式乡村风格,混搭了一些地中海的元素进去,这套方案没有传统美式的原始粗矿和古朴质感,却传承了一点地中海式的精致。在主题上摒弃了繁琐和奢华,以舒适为导向,以享受为原则,强调“回归自然”,给人一种心灵上的释然以及回归大自然的淳朴的思路,打造一个安宁平静、舒适自然的美妙净土。(图01)图01平面设定和分析:分析平面图,首先我考虑的是这部分空间分为两块,即餐厅和厨房。当然以餐厅为重点。在这里我把厨房做成敞开式厨房,为了让这两个空间的衔接更紧密,功能更齐全,于是又考虑增加了一个吧台,有情调且实用。我们都知道餐厅以用餐为主,那么所有的功能都要以满足这个需求来产生。在家具灯具以及材料的选择上,也是要以美式的感觉进行搭配。比如铜艺的灯具,厚重的家具,本色的棉麻以及有着浓郁自然清新味道的植物。(图02)

身影画中游
视频叠加相信很多喜欢多媒体的朋友都尝试过,今天我们换个玩法,让的照片在视频影片里产生奇妙的“画中游”景观。使用的工具是友立公司的PhotoImpact 7和VideoStudio 6,操作方法也很简单。 制作无背景照片 启动PhotoImpact 7,导入准备好的人像照片。 按下主窗口左侧工具栏上的选取工具,根据照片背景的复杂程度,选择使用“魔术棒”或“贝氏曲线工具”来去除照片背景(如图1)。制作“画中游”影片 启动 VideoStudio 6,新建项目后按下主窗口右侧的文件夹图标,将准备好的视频剪辑导入到素材库中。 打开主菜单“故事板”选项,在素材库里选中导入的影片,将其拖至视频编辑窗口的“视频轨”中(如图3)作为背景影片。可以导入几段视频剪辑与后面的人像图片配合。影片长度可在编辑窗口里激活后任意拖拉调整,以符合整个影片剪辑的需要。 打开主菜单“覆盖”选项,激活视频编辑窗口的“覆盖轨”,打开主窗口右上角的“素材类型”卷展栏,选择“图片”素材库,按下主窗口右侧的文件夹图标,将准备好的无背景人像图片导入到图片素材库中,把它拉至“覆盖轨”里,激活后依前法拖拉调整播放长度,使其与背景影片长度吻合。我们这个实例里使用了两段视频和两个无背景人像,其长度分别是对应的。 导入的人像照片需要进一步调整,才能达到我们预期的效果。激活“覆盖轨”里的人像照片后,按下主窗口左上角的“动画”设置钮,进行各项参数的设置(如图4)。 提示:“运动类型”与刚才设置的人像位置是有密切关系的,如果人像从右侧滑入,我们需将人像位置设置在屏幕左侧,反之亦然,设置时最好将人像的位置移出画面二分之一左右,产生滑出画面的效果。 设置完毕按下主窗口里的预览钮看一看,效果不错,为了锦上添花,再为这段影片加上活动的文字标题,使它更加生动。选中主菜单上的“标题”选项激活文字标题编辑线,在预览窗选取你满意的文字渲染方式后,将其拖至编辑窗里的“标题轨”,在左上角参数栏设置好文字字体、颜色、阴影和动画方式。最后拖拉“标题轨”中文字标题调整播放长度,使其与相配合的背景影片长度一致。 VideoStudio有添加音效的功能,朋友们可根据喜好自行设置添加,在此不再赘述。 影片的保存或导出 我们的作品一切OK了!在预览窗中看到随着背景影片的播放,人像慢慢地滑入画面,又慢慢地滑出,下一个人像紧接着滑入进来,画面上还相应出现了绚丽的动画标题文字,融合成为一段天衣无缝的新视频!下面就把我们的作品保存起来。 选中主窗口“完成”选项,在这里可将它存储为自定义的视频文件,或直接创建刻录成VCD、DVD、SVCD等格式的光盘。 保存完影片后,还可以按下[导出]按钮,将这段影片制作成一张颇有新意的电子贺卡,搭配好贺卡页面,调整好影片大小和位置,生成一个自执行的EXE文件,就可以把它发给朋友一起分享你的快乐了

用Flash 8 AS代码写摄像头拍照功能
因为很久不做 Flash coding 了,所以也就很少关心 Flash 8 的新的 Class,但听大家说过有这个功能。本想从网上找段教程或 code 来做。可是发现国内还没有类似的。就只能自己动手丰衣足食了。 开始做法: 第一步:在库中建立一个视频元件,类型选择:视频(受 ActionScript 控制)。 第二步:将视频元件拖到场景中,并调整尺寸到想要的大小。并起名为“my_video” 第三步:在时间轴中粘入下边的 code。 Testing 发现有问题,拍出来照片只有 160x120 的区域有图像。并且图像变形了。 :eek: 什么地方出了问题呢?@#$%^&* (此处省略2小时 debug 时间……) 最后发现 my_video 复制到场景中调整大小时并不是改变 my_video.width 及 my_video.height 属性,而是改变 my_video._width 及 my_video._height 属性。原有视频元件的尺寸只有 160x120 。这就相当于将 my_video 作了形变。而 BitmapData.draw() 是不会考虑源元件的形变的。用官方的说法是: QUOTE: 源 MovieClip 对象不对此调用使用其任何舞台中转换。该源 MovieClip 对象会被视为存在于库或文件中,没有矩阵转换、没有颜色转换,也没有混合模式。如果您希望通过使用影片剪辑自身的 transform 属性来绘制影片剪辑,则可以使用它的 Transform 对象来传递各种 transformation 属性。

摄影教程:走近你的被摄者
和模特出外约拍,作品却都僵硬死板如木头?拍出来没有情绪,没有感觉? 也许只是你与你的模特还不够接近…… 本文将展示一位摄影师的拍摄心得,与你分享走近被摄者内心的要领~。 再走近一点就好 Robert Capa 说过“如果你的照片没有拍得很棒,那代表你还可以走得更近去拍摄”(If your photographs aren’t good enough, you’re not close enough)。 如果套用在人像摄影上,所谓的“没有走得更近”当然不是在说你跟 Model 的拍摄距离,也并不是叫你每张照片都跑到 Model 面前去拍大头特写,或是用百微去拍摄眼睫毛才叫做有 feel。其实我个人认为照片没有拍好,那是因为很多时候拍摄者并没有“走近”被摄者的“真实性格”和“内心世界”。在作品上,如果只流于“浅”景深、可爱十式或纯粹摄影技巧表现的话,作品难免缺少了深层次的演译,主题亦会变得空洞。 这照片有爱 这个副标题,是有一次跟我的*好友藤原克也先生讨论一辑人像作品时,他评论了某摄影人的作品,说了一句话:那照片有爱。 藤原克也大哥是*拍摄人像的大师级人物,也是《摄影之道-氛围×构图×主题的光影演绎》一书的作者。当时我在向他请教如何去拍摄感性一点的主题,他就回了我一句:“拍这个主题,要有爱”。 原来*摄影人在发表人像作品时,如果拍得很好的话,其它摄影人都会开玩笑式的留言:“有爱”,意思即为揶揄拍摄这个作品的摄影人,一定在拍摄的过程中爱上了这个模特儿,不然不可能拍出如此扣人心弦的作品。虽然听上去有些无聊,但想深一层,如果没有和 Model 做好沟通和引导,没有全神贯注地去发掘被摄者的表情,的确是很难构成一辑佳作。
最新发布

鼠标滚轮事件滚动有Flash动画的网页
flash插入网页后,当flash获得焦点,也就是开始操作flash后,flash将捕获鼠标滚轮事件,导致浏览器无法响应滚轮事件,只能通过拖动滚动条来浏览网页,非常不便,也让普通用户感觉很疑惑。 通过以下小技巧可以让浏览器重新获得焦点,通过鼠标滚轮事件上下滚动:varmouseListener:Object=newObject();mouseListener.onMouseWheel=function(delta:Number){getURL("javascript:void(window.focus())");};Mouse.addListener(mouseListener); 但是这种效果不是很理想,而且有时候会莫名奇妙地失效,如果不怕麻烦可以采用下面这种方式: flash代码:varmouseListener:Object=newObject();mouseListener.onMouseWheel=function(delta:Number){//getURL("javascript:void(window.focus())");ExternalInterface.call("gundong",delta*-15);};Mouse.addListener(mouseListener); javascirpt代码:functiongundong(value){varposif(document.documentElement&&document.documentElement.scrollTop){ pos=document.documentElement.scrollTop;}elseif(document.body){pos=document.body.scrollTop;} window.scroll(0,pos+value); } 实际上这种方法是使用javascript控制滚动条,效果比第一种好多了,还可以修改flash里面的-15这个数值,更改滚动速度及方向。

AS3教程:Point类计算两点间距离
当要运算两点距离时,我见不少人都是用最原始的运算方法,其实2.0开始就有了Point类,可以计算两点间距离,除此之外,Point类还可用于计算矢量,某些看似复杂的计算,用上Point类就会变得简单。当然,要巧用Point类,必需要有矢量的知识。虽然,3.0的Point类和2.0的区别不大,但我之所以把这帖放在as3讨论区,是因为as3的Point类广泛地被其他类应用。最明显的是globalToLocal和localToGlobal这两个方法,2.0这两个方法的参数和返回值都是Object,但3.0都变为Point类了,使得Point类的应用更名正言顺了。 废话少说,言归正转,首先我们看看Point类的属性: x:Number——该点的水平坐标 y:Number——该点的垂直坐标 length:Number——从(0,0)到此点的线段长度(只读属性) 从length属性我们可以看到,实际上一个Point类的实例是一个以(0,0)为始点,以(x,y)为终点的矢量,因此,我们可以应用Point类进行一些简单的矢量运算。现在我们看看Point类给我们提供什么有用的方法: distance(pt1:Point, pt2:Point):Number——返回 pt1 和 pt2 之间的距离。这个就是大家傻傻地用Math.sqart()写一长串代码计算出来的两点间距离了。 add(v:Point):Point——将另一个点的坐标添加到此点的坐标以创建一个新点。还记得矢量相加的几何意义吗? 设a、b为矢量,则a+b=c,图中矢量c就是矢量a加矢量b的结果。 这个用来计算合力最方便。我们可以把物体的重心放到(0,0)点上,然后可以利用Point类的add方法简单计算各种力的合力。你可能会提出一个问题:如何把力转换成点的坐标呢?下面这个方法可以帮你解决这个问题。

Flash AS教程:文本类对象知识总结
文本是as中经常用到的对象。下面分几方面详细说说有关文本的知识,作为对近段学习的一个总结。同时,希望对正在钻研as的朋友有所帮助。 第一部分 文本的创建与格式的定义 一、有关文本的几个概念 1、文本字段:文本字段是舞台上的可见元素,要通过它向用户显示文本,可使用文本工具或使用 ActionScript 代码创建。简单地说,文本字段就是俗话说的“文字” 。 2、文本:是可在文本字段或用户界面组件中显示的一个或多个字符串系列。 文本与文本字段是两个既有联系又相互区别的两个重要概念。 1、区别:文本所包含的元素有文本框的边框、背景、在舞台上的位置、尺寸大小、里面文字的格式等等。在as中用TextField类的命令来定义。文本字段的元素包含文字的大小、颜色、对齐方式、字体等,在as中用TextFormat类命令来定义。 2、联系:实践中总是通过TextFormat定义好文本格式,然后把这种格式应用于TextField定义的文本。 文本格式设置可应用于文本字段,或文本字段中的某些字符。可应用于文本的一些文本格式设置选项示例有:对齐、缩进、粗体、颜色、字体大小、边距宽度、斜体和字母间距。 二、文本对象的类型type

flash as3利用ContextMenu实现右键响应
flash对右键的按下没有对应的响应事件,但是有的时候需要用到这个事件. 在以前可以根据Key的侦听事件中Key.isDown(2)来判断按下了右键. 但是在as3中Key.isDown函数因为安全原因被删掉了.那么在as3中怎么获取右键的按下事件呢? as3的Mouse和MouseEvent也没有右键的事件.同样在Keyboard和KeyboardEvent中没有右键相关的事件. 但是,如果想想ContextMenu,就有办法了,在flash中,右键响应只关联着右键菜单.所以在ContextMenu里面有右键的响应事件ContextMenuEvent.MENU_Select(在as2里面是ContextMenu.onSelect). as3中文帮助里面对menuSelect的解释:在用户首次生成上下文菜单但尚未显示上下文菜单内容时调度。 这将允许您的程序在显示菜单之前修改上下文菜单项集。 用户通过右键单击指针设备来生成上下文菜单。 所以可以用menuSelect来作为右键的响应事件.在这个事件执行后就会显示右键菜单.在这之前,可以执行响应函数,修改对应的菜单内容. 使用方法: as3:myMenu = new ContextMenu();myMenu.hideBuiltInItems();myMenu.addEventListener(ContextMenuEvent.MENU_Select,menuSelect);this.contextMenu = myMenu;function menuSelect(e:ContextMenuEvent){trace(”menuSelect”);}

Flash as教程:文字散射效果
本文示例源代码或素材下载 提示:这是个很妙的效果,说这句话是为了引起你的阅读兴趣,提供思路为主,以文字为例,更好的效果如把文字换成图片散射依照这个思路应当可以很完美的实现,同时,第三部分的BUG已经清除,所以我对本文章作下修改,谢谢各位的帮忙。 第一部分:同一坐标点散射,类似烟花效果 目标:大量文字从一个原点向四周散射 “大量”———————很显然,要用到duplicatemovieclip或者attachmovie,这里我选择attachmovie,至于 什么原因,以下我将阐述。 “散射”——————x,y偏移,结合Math.random()就是随机偏移.随机数的取值要有正且有负,因为散射是四面八方的X,Y偏移。 “一个原点”————这个效果的原理理解关键点就在这里,一个原点,换句话说就是将复制出来的MC坐标归于一个位置,这样任意一个x,y偏移值,播放起来就是一个散射,他不同于那种“不同坐标点散射”,即如果你把复制出来的坐标值随机设定,加上一个单纯的x,y偏移,MC会到处乱飞,画面会毫无规律。这一点一定要理解。 实现步骤: 1,随便做个带文字的MC,在库中linkage名为mymc

Flash 金属文字特效实例
1.1金属文字 使用Flash制作金属字,也算是老生常谈了,但要制作得象样也并不那么容易,此实例的实现的是制作一蓝底的金属字效果,在制作过程中主要使用了渐变填充等工具,通过简简单单几样工具便创造出了漂亮的金属的效果。难点就在于图形、色彩编辑的技巧和填充工具的使用。最终播放效果如图1所示,要实现这一效果,具*作过程如下: 图1 最终效果 1.新建一个电影,在属性面板中设置其尺寸为500pxX400px,选择一种颜色(本例为#003399)作为背景色。 2.在工具箱中先中文本工具,并在文本属性面板中设置相关属性,本例中设置其字体为 Arial Black,文本大小为96,文本颜色为#3399FF,当然读者可以根据需要自由设置,制作出不同的文字效果。点击舞台,输入Chrome几个字母,当然也可以输入其它字母,如图2所示。 图2 输入文字 3.选中刚输入的文字,选择两次“修改/分离”菜单命令或直接按两次Ctrl+B,将文字分离为色块,与Flash 5不同,Flash MX中对文字个数大于1的文字对象进行打散操作时,要连续进行两次才可以达到将文字打散为色块的目的。仅应用一次打散操作,只能将各个文字独立出来。效果如图3所示。

Flash 制作跳动的文字镜像效果
此实例实现的是制作一个跳动的文字镜像效果。效果实现主要有两个方面,一是通过延迟不同元件的动画开播时间,实现了文字的先后运动。二是通过对中间帧动画变速调整,实现了跳动的弹性效果。而效果的主要制作步骤也是有两个,一是制作字符模板,二即是制作具体效果。难点在于元件转换、元件替换、中间帧动画调速和简单的播放控制。最终播放效果如图1所示,要实现这一效果,具*作过程如下 图1 最终效果 一.制作字符模板 1.新建一个电影,在属性面板中设置其尺寸为550pxX400px,选择一种颜色(本例为#FFCCFF)作为背景色。 2.单击或直接按R键从工具箱中选择矩形工具 。将边框色设定为无,填充色设定为#FF99CC,用Rectangle(矩形)工具在舞台上画一个大矩形,盖住舞台的下半部分,效果如图2所示。 图2 在舞台上绘制的矩形 3.单击或直接按T键从工具箱中选取文本工具 ,并在属性面板中。将字体设定为黑体,字体大小设为96,颜色为#FF99CC,在舞台上写一个“X”大写字母,这个“X”将会被作为所有文字的模板,效果如图3所示:

Flash 扫描显示文字的效果
本例主要通过几个简单的运动中间帧动画与镂空的文字块来实现扫描显示文字的效果。至于本例的设计思路,可以先参看图1所示的影片图层结构图。 图1 影片图层结构图 1.图中所标示的数字1、2、3、4分别代表了三个图层和舞台本身。也就是说,需要建立用来放置不同对象的三个图层。 a)顶层扫描线层:用以放置最右边的首条扫描线。 b)镂空文字层:用以放置写有镂空文字的图块。 c)扫描线层:用以放置从文字上经过的扫描线。 d)底层(舞台):也就是背景。 2. 利用Flash图形层叠覆盖的特性来制作镂空文字色块的方法可以说是此效果中所提到的最实用的技术了,影片影片的最终播放效果如图2所示,要实现这一效果,具*作过程如下:

Flash 文字扭曲的效果
本例通过使用动态遮罩绑定以及简单的影片剪辑复制来实现文字扭曲的效果。至于本例的实现原理,示意如图1: 图1 原理示意图 可以试想现在摆在面前的有一叠6张一模一样带字的圆形纸片,然后把倒数第2张并将其外围剪去宽度为整个圆半径1/6的圆环,把倒数第3张剪去2/6大小的圆环,倒数第4张3/6,第5张4/6,第6张5/6。剪完之后,仍然按照原来的顺序,对齐中心叠好。这样的一叠纸片就能够用来粗略地实现扭曲效果了。还不明白?试着转动不同层次的纸片看看。 图1左边的6个instance就可以看作是上面那个场景中所提到的6张纸片,然后instance 2-6上的黑边就可以看作是被剪去的部分。而图1-76边的那个圆饼就相当于是6张纸片对齐叠好后的样子。也许各位已经发现了:纸片数量越多,产生的模拟扭曲的效果就越好。很显然如果只胡两层,其制作示意如图2所示: 图2 单个instance的制作原理 图1-77展示的是单个instance的制作原理:将用来作为遮罩的影片剪辑Mask和要实现扭曲效果的影片剪辑Text通过Flash MX中的新函数SetMask联系起来。这个SetMask函数的出现,使得可以在运行时任意指定某个影片剪辑作为遮罩,实现动态遮罩绑定,从而大大简化了以往制作动态遮罩的步骤。在制作过程中主要用到了 最终效果如图3所示,要实现这一效果,其具*作步骤如下: 图3 最终效果图

Flash 电影字幕显示效果
本例将要实现的是星球大战开场时的那种字幕显示效果。而实时创建影片剪辑,并使用随机函数和影片剪辑的Drawing Method(绘画方法)绘制星空背景则是本节的重点。主要的影片结构如下图所示。 图1 影片结构 从上面这个图片中可以看到,这个例子的结构还是比较简单的。整个影片除去一个黑色背景之外只需要两个图层——用来放置要显示的字幕的第1层和用来“铺星星”作背景的第2层。因此,整个制作过程可以大致划分为字幕的制作与背景的制作两大部分。 字幕的制作相对比较简单,所以就不多说了,这里简要提一下“星空”背景的制作原理。在这个例子中,用到的星空背景将不是用绘图工具一点点画出来的静态背景,而是使用ActionScript动态生成的动态背景。因为每次运行时,对应 N颗星星,程序会随机产生N组横坐标、纵坐标值。再加上每颗星星的大小,亮度也是随机的,所以每次铺出来的背景绝对是不一样的。 在制作过程中主要使用了Free Transform工具的部分功能。并利用Math.random()函数生指定范围内的随机数字的公式,实时创建影片剪辑以及部分绘画方法的使用。最终播放效果如图2所示,要实现这一效果,具*作过程如下 图2 星球大战开场文字最终效果图 一.制作字幕效果 1.新建一个电影,在属性面板中设置其尺寸为550pxX400px,选择一种颜色(本例为#000000)作为背景色。