推荐阅读

利用Photoshop脚本功能制作清晰的景深风景图
景深,就是清晰的范围。风光摄影,一般都需要从近到远都清晰。静物摄影,一般距离比较近,多用中长焦段和微距镜头。这种情况下,即使使用了一个极小光圈,仍然不能把拍摄物体整体都拍清晰。针对这样问题,飞侠来结合案例,和大家说下如果拍出一张景深极大的作品。案例一:静物拍摄珍珠项链如果打算把这条项链,整体都拍清晰,我们是否可以通过一个小光圈就可以呢?大家来实际看看吧。我使用105mm微距镜,f22的小光圈。可是实际的景深效果呢?只是第一张对焦范围内是比较清晰的,其它二张的前景和远景图片都是模糊的。尽管使用了f22小光圈,拍摄物体还不是全部清晰。而且使用了这么小光圈,会导致画质下降。

Flash鼠绘入门第十课:绘制娇艳郁金香
先来看看相关的素材图片:郁金香图片1郁金香图片2 本课程继续学习绘图工具的使用,颜色的填充调整与搭配。 “博爱、体贴、高雅、富贵、能干聪颖……”人们把美好的语言赋给了郁金香。您是否也想把自己亲手绘制的郁金香留在永远的记忆中?请打开FLASH软件,开始吧... 一、画“花瓣” 1、插入一图形元件名“花瓣1”,用椭圆工具,笔触禁止,画一椭圆大小55*128。用黑箭头选择进行调整,中间加画一条线并调整成如图形状。左右分别填充颜色,放射状色码为:左F0A8B7、中D13F4E、右AB1020,填充后删除笔触。新建图层二,复制粘贴图层一的第1帧,填充线性渐变色:左C9D5D5、右EA6D71 (0%)。如图1:步骤图1

CSS应用基础教程(2) 应用方式
C S S 的 声 明 方 式 这章节将开始为您介绍CSS的应用。当然一开始要介绍的是如何去建立个样式表 (Style Sheets),包括了声明的方式和应用在网页上的方法,最後还会为您概述一下CSS的一些特性。概略来说,CSS的声明有三种方式:一、基本声明:最典型的CSS声明方式。 element {property: value} 用中文来表示的话,也就是元件(标签) {性质(属性)名称: 设定值}例如: H3 {COLOR: BLUE} 即为一组声明。二、集体声明:同时声明某个或数个元件(标签)(各元件(标 签)间以逗号分隔)的一组或数组样式规则(性质)(各组规则间以分号分隔)。 元件(标签) {性质(属性)名称1: 设定值1;性质(属性)名称2: 设定值2;... }或是元件A(标签A), 元件B(标签B), 元件C(标签C), ... {性质(属性)名 称1: 设定值1;性质(属性)名称2: 设定值2;...}例如: TD {COLOR: BLUE;font-size: 9pt;}或是TD,P,DIV {COLOR: BLUE;font-size: 9pt; }三、分项声明:将许多样式规则分组再分别声明。 元件A(标签A) {性质(属性)名称1: 设定值1; 性质(属性)名称2: 设定值2; }元件A(标签A) {性质(属性)名称3: 设定值3; 性质(属性)名称4: 设定值4; }例如: TD { COLOR: BLUE; font-size: 9pt}TD { font-family: "标楷体"; line-height: 150%}这样子的声明方式并不会互相抵触,因为所声明的性质是不同的。如果不小心对同样一个性质作了重复的声明,则只有後来声明的设定值才会发生作用。 要附带提一下的是,在您的声明中,只要您的格式正确就会被接受,而不论是大小写、空白或换行都不会对显示的结果 有影响的,您可依自己习惯来编写。 C S S 的 应 用 方 法 接下来要为您介绍的是将所建立的样式表应用在网页上的四种基本方法。一、使用STYLE属性: 将STYLE属性直接加在个别的元件标签里。 <元件(标签) STYLE="性质(属性)1: 设定值1; 性质(属性)2: 设定值2; ...}例如: <TD STYLE="COLOR:BLUE; font-size:9pt; font-family:"标楷体"; line-height:150%>这种用法的优点 是可灵巧应用样式於各标签中,但是缺点则是没有整篇文件的『统一性』。二、使用STYLE标签: 将样式规则写在<STYLE>...</STYLE>标签之中。 <STYLE TYPE="text/css"><!--样式规则表--> </STYLE>例如: <STYLE TYPE="text/css"><!--BODY { color: BLUE; background: #FFFFCC; font-size: 9pt}TD, P { COLOR: GREEN; font-size: 9pt}--></STYLE>通常是将整个的 <STYLE>...</STYLE>结构写在网页的<HEAD> </HEAD>部份之中。这种用法的优点就是在於整篇文件的统一性,只要是有声明的的元件即会套用该样式规则。缺点就是在个别元件的灵活度不足。三、使用 LINK标签: 将样式规则写在.css的样式档案中,再以<LINK>标签引入。 假设我们把样式规则存成一个example.css的档案,我们只要在网页中加入

Maya UV和UV编辑实例系列(4):使用Fix Texture Warp选项
选择NURBS模型,打开属性编辑器,在Texture Map栏中打开Fix Texture Warp选项,可以对纹理的不均匀分布进行修正。而不需要依赖于NURBS表面的UV参数,Grid Div PerSpan U、Grid Div Per Span V、表示U向和V向每跨度的、分割数目,默认数值是4,数值越大纹理分越均匀。 打开Fix Texture Warp选项后,操作视图不能实时显示出来,只有渲染后才能看到。 应用Fix Texture Warp选项后渲染后,与左图相比,纹理虽然有拉伸,但分布相对均匀。 虽然纹理分布均匀,但还是有拉伸,这是应为我们使用的是1:1的纹理贴图,而闹钟壳的NURBS面片长宽比不是1:1。下面进一步调整NURBS模型的纹理,是其比例正确。 在Hypershader窗口中,选择模型的place2dTexture节点,打开属性编辑器,调整Coverage的数值,同时察看渲染视窗的更新效果,使用IPR渲染可快速看到调整结果,直到棋盘格看起来变为正方形为止。 根据IPR渲染结果,判断纹理贴图使用范围,从上面的例子可以看到纹理只使用整个面
最新发布

水汪汪的大眼睛(简单!)
原创:水汪汪的大眼睛(简单!)效果: 步骤:第二步中选眼睛白色的地方。不要选上黑色,只选白色部分。大家第5步问题较多。下面解释一下:转到IR后,什么也先不要动,找到动画面板,点击两次复制帧,现在动画面板共有三个图,选中间的图(即第2帧),按方向下键,然后再选第三个图(第三帧),再按方向右键。如图,这是第二帧的例子保存的时候,选“将优化结果存储为GIF”这样出来的就是动态的了。

GIF合成图中力感的表现方法
GIF合成图中力感的表现方法 此教程适用于已基本掌握GIF合成图制作的朋友参考使用合成图中经常会有人物使出炫目华丽或是力量道惊人的招式或是超杀,怎样能把人物招式中的力量感觉很好地表现出来,就是这篇文章要研究的,因为GIF没有声音,所以怎样在画面中把力量的感觉表现出来,就全靠制作者对人物动作的如何安排,安排得好了,即使没有声音,也能把力量的感觉表现得很真实,其实当今GIF的力感表现方法源于街机,就是用人物的晃动和时间的停顿来表现,但是GIF是在IE中观看,IE支持的最快速度就是6,其实街机中用于表现力感的实际帧数远远大于GIF制作中的帧数,大家可以用kawaks模拟器载入游戏,然后用人物使出一招力道很强的招式,再按回车暂停,然后按shift加空格逐帧递进,来观察在街机上表现力感所使用的帧数,而我们要做的就是如何利用有限的帧数,在速度和视觉上最大程度接近实际效果! 一. 力量的程度之分我在作图中把力量分为三个层次,分别是: 重度力量飞行道具类表现见图四:kof2001依格尼斯超杀二. 力量的方向之分清楚了力量的程度之分后还得知道力量有方向之分,其实只要把方向简单地理解为对空和对地就可以了。对空的力量没什么好说,力感表现方法同上,而对地的力感表现就要好好考虑一下了。对地的力量又可以分为垂直地面的力量和平行地面的力量,比如攻击者跳跃进行攻击或是使用的超杀是从上方向下方或是斜下方攻击,这种力量的方向就是垂直地面的力量,人物震动的幅度大致和重度力量相同,如果图中有背景物体,而作者又想表现极强的震动感,那就把背景和人物一起做位移,方法为重度力量中的飞行道具类超杀表现方法。垂直力量表现方法见图五:阿斯拉超杀 我之所以要把力量的方向分别说明就是想认大家更清楚地明白这些细节,从而对以后的做合成图有更大的帮助。对于合成图和力感掌握不太入门的朋友,教你们一个方法:把合成图高手的作品和你觉得做的不错的作品收藏,并用工具打开那些作品,仔细研究它们每一帧的动作和位移安排,会对你的进步有很大的帮助! 这篇教程就到这里,我所阐述的都是个人观点,难免有所偏差和错误,欢迎大家发表看法,共同进步,也希望更多的喜欢GIF合成图的朋友加入我们的行列!随时欢迎你!谢谢!

关于动态图片更换背景教程
动态图片更换背景 虽然不难 但不少新手因为不明白图层层次的原理 总是提问 所以于海建制作的这个教程,新手一定要看一下! 如果是纯色的有背景图片 可以使用魔术棒选中背景并删除!不同的背景效果:动态教程;

Flash CS3:InteractiveObject的doubleClick事件
我们知道doubleClick事件是在as3中新增加的事件,我们经常需要使用到这个事件,在as2我时代需要自己写函数判断双击,在as3中就可以直接使用这个事件了,但是在使用这个事件的时候有个细节要主要,首先事件是InteractiveObject所属的,因此从InteractiveObject继承下来的对象才能使用该属性,另外一个是要首先设置doubleClickEnabled属性为true,最后这个事件是使用内部的元件接收的(the instance receives doubleClick events within its bounds),所以如果你要侦听的doubleClick事件的元件内部有从InteractiveObject继承的元件,要么设置这些元件的 mouseEnabled为false,要么使用内部原来来侦听doubleClick事件.1.内部元件不是从InteractiveObject继承下来,可以直接使用元件接收事件//----------------------------------------------var a:Sprite = new Sprite();addChild(a);var b = new Shape();a.addChild(b);b.graphics.beginFill(0x0);b.graphics.drawRect(0,0,100,100);b.graphics.endFill();a.doubleClickEnabled = true;//使用a接收a.addEventListener("doubleClick",dc);function dc(e){trace("dc");}2.内部元件有多个从InteractiveObject继承下来,可以使用最上面的元件来接收,或者设置其他元件不接收鼠标事件//----------------------------------------------var a:Sprite = new Sprite();addChild(a);

flash cs3打造跟随鼠标的弹性球运动小游戏
用Flash CS3的AS制作跟随鼠标弹性小游戏,主要是练习AS的使用。 先看演示: 源文件下载: 弹性小球运动.rar修改文档属性。 首先建立4个小的电影剪辑元件,分别设置如下:

flash cs3中关于访问父级parents变量的实例
为了说明访问父级变量的问题,做了下面的实例:先来看看对象的层级关系。在舞台上有一个对象father-|-mytext |-varfather |-ason-|-abutton我们现在要做的工作是:单击按钮abutton输出变量varfather的值和mytext中的文本================================================================开工:第一步:在库中建立一个MC命名为son,为其添加一个按钮,并命名为abutton。第二步:为son这个MC建立关联的代码:son.aspackage{import flash.display.MovieClip;import flash.events.*;public class son extends MovieClip{ //public var abutton:Button //备注1 public function son(){ abutton.addEventListener(MouseEvent.CLICK,onclick)//备注2 } private function onclick(evt:MouseEvent){ var AAA:Object =this.parent; //备注3 trace("变量varfather的值是"+AAA.varfather); trace("文本框mytext中的值是"+AAA.mytext.text); } }}第三步:库中建立一个MC叫做father,添加一个动态文本框mytext第四步:为father添加代码:father.aspackage{import flash.display.MovieClip;import flash.text.TextField;import son;public class father extends MovieClip{ public var varfather:Number=new Number; public function father(){ varfather=123; var ason:son=new son(); this.addChild(ason); //备注4 } }}第五步:拖放一个father的实例到舞台上,测试。单击按钮看到输出:备注==========================================备注1://public var abutton:Button 原本在flash9中是需要这句的,flash cs3中不要了备注2:为按钮添加单击事件处理函数备注3:建立一个空对象用来代表当前对象的父对象,如果直接写trace(this.parent.varfather)会出错的备注4:新建立一个son的实例ason并把它作为当前对象的子对象