推荐阅读

3DMAX制作时尚创意的个性展台效果
本篇教程,我要给大家讲解的就是如何利用3Ds max制作大师作品中的展台。首先我们先看下图中的这个展台框架。像这样镂空比较多的造型,最简便的方法就是结合贴图来制作。首先,我们需要制作一张贴图,如下:第二步,贴图制作好后,我们返回到max中,开始制作展台的外形,在前视图中我们创建一个平面,大家要是初学的话也可以根据我上面的参数来设定。第三步,打开材质编辑器(快捷键:M),在不透明下添加我们制作好的贴图。 第四步,我们需要调整贴图大小。如图所示。

火山文字,PS软件制作火山熔岩文字图片设计教程
漂亮火山熔岩文字重点是纹理部分的制作,用到的滤镜比较多,自己需要细心一点,把岩石的纹理做出来,如果嫌麻烦可以去网上下载一些纹理素材,直接使用。 最终效果 一、photoshop制作文字效果之前,需要先制作一些纹理。新建一个1024 * 768像素的文件,新建一个图层,按字母键“D”把前背景颜色复位到默认的黑白,执行:滤镜 > 渲染 > 云彩,效果如下图。 二、执行:滤镜 > 像素化 > 点状化,大小设置为15,如图3,确定后按Ctrl + Shift + U 去色。然后执行:滤镜 > 模糊 > 高斯模糊,设置为8,效果如图5。 三、执行:滤镜 > 渲染 > 光照效果,只需要在面板的底部选择一个通道,然后把凸起的数值设置到最大,如图6,确定后按Ctrl + F 加强一次,效果如图7。

photoshop绘制Web2.0图标
我们在进行站点设计的过程中,经常需要使用图标表示诸如添加、删除和编辑之类的操作。在Web2.0时代,徽章和细致的3D效果越来越流行。本教程将告诉你如何简单的绘制出带有漂亮3D效果的按钮或图标。步骤1:创建一个新的文件,选择“椭圆形工具”(U),画一个圆形。将圆形填充上随便什么颜色,后面它将被图层样式覆盖。步骤2:双击圆形图层打开图层样式窗口,选择“渐变叠加”,使用蓝色和浅蓝色做渐变色,在“样式”下拉框中选择“径向”。最后参照下图为渐变叠加设置“角度”并添加“斜面和浮雕效果”。小窍门:将渐变叠加移动到圆形顶端:打开图层样式窗口,选中“渐变叠加”选项。按住按钮调整渐变。 步骤3:参照下图,复制圆形图层,并调整到合适大小。

低角度的倒影
低角度倒影 除了平视角度外,低视角下的光影世界亦不可错过。以下列两张照片为例,拍摄于机场航厦候机楼,由于当下我有相当足够的时间去观察环境与旅人动向,所以只要坐在椅子上设定好相机,接着等待理想元素入镜即可;至于图2则拍摄于莺歌陶瓷博物馆,由于馆内水流属于流动的活水,所以原本笔直的支柱在倒影下就会显得十分诡异,于是我便顺势利用翻转屏幕拍下了这张影像作品。 ▲Canon PowerShot G1 X, 光圈F5.0, 快门1/50秒, 单色效果, 自动白平衡, ISO 100, JPEG。 ▲Canon PowerShot G1 X, 光圈F5.6, 快门1/100秒, 单色效果, 自动白平衡, ISO 800, JPEG。 顺光、逆光 除了构图角度外,光源方向掌握亦十分重要。一般来说,粗略可分为顺光与逆光两种,顺光即是所谓的正面光(摄影者拍摄方向与光的照射方向一致),由于光源覆盖面积较大且测光难度不高,所以是目前摄影初学者最容易掌握的用光环境,不过缺点是该光源反差较小,容易造成被摄物色彩趋于平淡且缺乏过渡层次,因此在拍摄时,我会建议读家可适时调整取景角度使被摄物处于半侧光状态,如此便能有效改善上述问题。 至于逆光,由于光源是从被摄物背面直接照射过来,所以拍摄对象在明亮的背景前会形成暗色剪影,尽管画面简洁但却拥有极佳的表现力,只不过在拍摄时最好积极使用遮光罩搭配,才能有效避免炫光问题的产生。
最新发布

深入了解Flash AS中的setInterval方法
相信大家对Flash的setInterval方法肯定非常熟悉,但不少人对其缺乏深入的了解,致使当一个flash里有多个setInterval的时候就容易混淆,该清除的间隔ID没有清除,不该清除的时候却清除了。对于setInterval的语法我就不赘述,很多文章都有详细说明,下面来说一下setInterval的几个重点。 1、setInterval和clearInterval都是全局函数,也就是_global.setInterval()和_global.clearInterval()。 这一点大家应该都知道,但是可能并没有特别注意。不过这点对我们理解他们非常重要。setInterval的返回值是一个间隔ID(数字),所以这个间隔ID也是全局的。 比如下面的代码: 我们用clearInterval(rootID)和用clearInterval(1)的作用是一样的。 2、每一次调用setInterval,就会返回一个间隔ID,这个ID数值为全局setInterval的调用次数。 比如下面的代码: 在这个例子里,我们可以用clearInterval(1)来清除间隔rootID。假如我们先点击btn1再点击btn2,那么就可以用clearInterval(2)来清除点击btn1所产生的间隔ID,而用clearInterval(3)来清除点击btn2所产生的间隔ID。相反,如果我们先是点击btn2再点击btn1,那么clearInterval(2)则是清除点击btn2所产生的间隔ID. 3、给间隔lID添加标识符 在实际编程中,用上面的clearInterval(数字)这样的方式固然可以清除间隔ID,但是一旦ID过多,我们就会无法识别该清除哪个ID。因此给间隔ID添加标识符就显得非常重要。但是必须把他分配到一个对象的成员变量中。

用Flash AS3制作统计饼图动画效果
FLASH演示地址:http://flashview.ddvip.com/2007_08/32664.swf 说明:点击的蓝色按钮可以画出各种饼图,点击饼图中不同色块可以观看效果。

Flash AS实例教程:制作铅笔动画
用一段简单的AS代码就可以实现简单的铅笔动画效果。 直接复制代码,导出就可以看到效果了:_root.createEmptyMovieClip("pen", 1);pen.lineStyle(2, 0x000000);pen._x = 200;pen._y = 200;pen.beginFill(0x444444, 100);pen.lineTo(30, -10);pen.lineTo(200, -10);pen.lineTo(200, 10);pen.lineTo(30, 10);pen.lineTo(30, -10);pen.beginFill(0x333311, 100);endFill(pen);pen.beginFill(0xf9f999, 100);pen.lineTo(0, 0);pen.lineTo(30, 10);pen.lineTo(30, -10);endFill(pen);pen._rotation = -50;n = 0;r = 100;a = 1;k = 10;tt = 0;lineStyle(2);moveTo(Math.cos(0*Math.PI/180)*r+200, pen._y);ss = setInterval(function () {a++;if (a>3) { a = 1;}if (a == 1) { lineStyle(2, 0xff0000);}if (a == 2) { lineStyle(2, 0x00ff00);}if (a == 3) { lineStyle(2, 0x0000ff);}n += 30r -=0.3if (n<20000) { pen._x = Math.cos(n*Math.PI/180)*r+200; pen._y = Math.sin(n*Math.PI/180)*r+200; lineTo(pen._x, pen._y);}updateAfterEvent();if (n>=20000) { aa = setInterval(function () { updateAfterEvent(); tt++; if (tt>5000) { clearInterval(aa); clearInterval(ss); } pen._rotation = Math.sin(n*Math.PI/180)*5+90; }, 5); _root.createTextField("t", 2, 300, 350, 150, 20); t.text = "By FLASH8菜鸟 kingofkofs"; pen._x = 400; pen._y = 120;}}, 5);sp = 0;f = 20;this.onEnterFrame = function() {if (tt>5000) { pen._y -= sp; sp += 2;}if (sp>f) { sp = -f; if (f>=4) { f -= 4; }}};

教你如何去掉网页上的Flash动画虚线框
如果你是个细心的网民,如果你是一个仔细的网页设计者,那么你一定有发现这样一个现象:在浏览带有Flash动画的页面,当你把鼠标移动到Flash动画上时,Flash动画四周就会出现虚线框,点击一下方才可以激活。虽然这并不影响Flash动画的播放,但对于具有交互功能的Flash来说,就会给访问者多加了一个操作步骤,效果无疑会大大折扣。 为什么会出现虚线框? 我们知道在以前Flash动画虚线框是不存在的,那么为什么最近会出现这个现象呢?原来微软考虑到IE浏览器的安全性问题,针对IE发布了一项更新补丁,禁止了IE浏览器的ActiveX控件自动激活功能。这样就造成了本来可以直接点的Flash,现在要先多点一下这个虚线框来激活了。 去掉虚线框 既然能加的上去,就一定能去的掉。首先在网页代码之间插入如下代码: <SCRIPT src="objectSwap.js" type=text/javascript> </SCRIPT> 这样网页在加载的时候会自动对页面中的 object 标签进行重写,实现自动激活。 点击这里下载objectSwap.js文件 上面说的方法是外部JS调用法,其实我们熟悉常用的Dreamweaver最新版8.02版也给出了这个问题的解决方法。大家把Dreamweaver升级到8.02版后,再插入Flash文件时,会加入一个脚本来解决这个问题。

用Flash AS推导三角形面积
本文示例源代码或素材下载 先创建一个三角形,然后复制一个并旋转移动与原图拼成一个平行四边形,平行四边形面积=底×高,所以三角形面积=底×高÷2。 演示文件地址:http://file.ddvip.com/2007_08/1187865825_ddvip_5444.rar [过程] 1、创建一个影片剪辑,在帧上写如下代码: 2、把上面元件拖入到主场景中合适的位置。

Flash AS实例教程:用纯AS制作火焰特效
本文示例源代码或素材下载 首先申明不是偶原创,偶只是把效果综合了一下。粒子变幻效果忘记是谁的了,知道出处的朋友请提醒,偶在以后补上。火焰瑞流效果是来自一位朋友的博客里面的摄像头火焰特效,也无处可考证出处,请知道的朋友提醒,偶以后补上。还有个返回无重复随机数组的函数在里面,是坛子里的朋友的,知道出处的朋友也请告知,呵呵呵... 以下是关键原码和原始文件,感兴趣的朋友可以看看:Fire_ok.as:

用Flash Actionscript简单方法实现复杂的图表
代码如下://这个数组的最前一位和最后一位,在这里的作用只起到占位的作用dataTable=[];dataTable.push(["1851-1860",8,5,5,1,0,19]);dataTable.push(["1861-1870",8,6,1,0,0,15]);dataTable.push(["1871-1880",7,6,7,0,0,20]);dataTable.push(["1881-1890",8,9,4,1,0,22]);dataTable.push(["1891-1900",8,5,5,3,0,21]);dataTable.push(["1901-1910",10,4,4,0,0,18]);dataTable.push(["1911-1920",10,4,4,3,0,21]);dataTable.push(["1921-1930",5,3,3,2,0,13]);dataTable.push(["1931-1940",4,7,6,1,1,19]);dataTable.push(["1941-1950",8,6,9,1,0,24]);dataTable.push(["1951-1960",8,1,5,3,0,17]);dataTable.push(["1961-1970",3,5,4,1,1,14]);dataTable.push(["1971-1980",6,2,4,0,0,12]);dataTable.push(["1981-1990",9,1,4,1,0,15]);dataTable.push(["1991-2000",3,6,4,0,1,14]);dataTable.push(["2001-2005",7,2,3,3,1,9]);//这个函数把数组中的每一个元素中的第n个元素存在一个临时的数组,返回这个数组get2dArrayValues=function(handle,n){temp=[];for(vari=0;i<handle.length;i++){ temp.push(handle[n]);}returntemp;};//重点讲一下这个函数drawGraph=function(handle,values,max,grpWidth,grpHeight,Style,xoffset,yoffset){//这两句确定了每个数据点应该相隔多远varxincrement=grpWidth/values.length;varyincrement=grpHeight/max;//为图表创建占位符,依据xoffset,yoffset移动它.重复利用handle变量名,指向createEmptyMovieClip方法创建的子电影剪辑handle=handle.createEmptyMovieClip("graphline"+getTimer(),handle.getNextHighestDepth());handle._x=xoffset;handle._y=yoffset;//定义beginFill样式,开始点handle.lineStyle(0,0xFFFFFF,4);handle.moveTo(0,grpHeight);handle.beginFill(Style[0],Style[1]);//绘制第一根线条,它的值是变化的,保持把这个lineTo与下面的lineTo值隔离开,x是0,y稍微复杂一点handle.lineTo(0,grpHeight-(values[0]*yincrement));//有了上面的起始位置,那么接下来只要遍历余下的值就可以了for(vari=1;i<values.length;i++){ handle.lineTo((i*xincrement),grpHeight-(values*yincrement));}//数组是以0位开始的,所以这里要减1handle.lineTo((values.length-1)*xincrement,grpHeight);//封闭形状handle.lineTo(0,grpHeight);handle.endFill();};//建立一个MCmyGraph=this.createEmptyMovieClip("graphHolder",0);//调用函数后返回的值赋予F1varF1:Array=get2dArrayValues(dataTable,1);//调用函数,求出每个点的位置drawGraph(myGraph,F1,12,800,200,[0x3C4B6C,5],22);//以下同上varF2:Array=get2dArrayValues(dataTable,2);drawGraph(myGraph,F2,12,800,200,[0x3C4B6C,25],22);varF3:Array=get2dArrayValues(dataTable,3);drawGraph(myGraph,F3,12,800,200,[0x3C4B6C,45],22);varF4:Array=get2dArrayValues(dataTable,4);drawGraph(myGraph,F4,12,800,200,[0x3C4B6C,65],22);varF5:Array=get2dArrayValues(dataTable,5);drawGraph(myGraph,F5,12,800,200,[0x000000,85],22);

Flash AS实例教程:用纯AS制作的钟表动画
本文示例源代码或素材下载 [效果] 文章末尾处链接地址可下载 [代码]把以下代码复制到主场景中的第一帧上://画钟表边线this.createEmptyMovieClip("bianxian_mc",1);with(bianxian_mc){lineStyle(2,0xCCCCCC);moveTo(Math.cos(0*Math.PI/180)*96,Math.sin(0*Math.PI/180)*96);for(vari=360;i>=0;i--){ lineTo(Math.cos(i*Math.PI/180)*96,Math.sin(i*Math.PI/180)*96);}_x=100;_y=100;}//创建时间动态文本this.createTextField("my_txt",2,0,0,0,0);with(my_txt){autoSize=true;textColor=0x555555;_x=70;_y=60;}//画12个表格this.createEmptyMovieClip("biaoge_mc",3);with(biaoge_mc){lineStyle(2,0xCCCCCC);moveTo(0,-96);lineTo(0,-92);_x=100;_y=100;}for(i=1;i<12;i++){duplicateMovieClip(biaoge_mc,"biaoge_mc"+i,3+i);setProperty("biaoge_mc"+i,_rotation,i*30);}//画时针this.createEmptyMovieClip("shizhen_mc",16);with(shizhen_mc){lineStyle(4,0x666666);moveTo(0,0);lineTo(0,-60);_x=100;_y=100;}//画分针this.createEmptyMovieClip("fenzhen_mc",17);with(fenzhen_mc){lineStyle(2,0x666666);moveTo(0,0);lineTo(0,-75);_x=100;_y=100;}//画秒针this.createEmptyMovieClip("miaozhen_mc",18);with(miaozhen_mc){lineStyle(1,0x666666);moveTo(0,0);lineTo(0,-90);_x=100;_y=100;}//让时针、分针、秒针动起来this.createEmptyMovieClip("time_mc",19);time_mc.onEnterFrame=function(){my_date=newDate();shi=my_date.getHours();fen=my_date.getMinutes();miao=my_date.getSeconds();shizhen_mc._rotation=shi/12*360+fen/60*30;fenzhen_mc._rotation=fen/60*360+miao/60*6;miaozhen_mc._rotation=miao/60*360;if(shi<10){ shi="0"+shi;} if(fen<10){ fen="0"+fen;} if(miao<10){ miao="0"+miao;} my_txt.text=shi+":"+fen+":"+miao;};//画中心圆this.createEmptyMovieClip("yuan_mc",20);with(yuan_mc){beginFill(0x555555);moveTo(Math.cos(0*Math.PI/180)*4,Math.sin(0*Math.PI/180)*4);for(vari=360;i>=0;i--){ lineTo(Math.cos(i*Math.PI/180)*4,Math.sin(i*Math.PI/180)*4);}_x=100;_y=100;}

面向Flash AS初学者的实例教程:单选题
本文示例源代码或素材下载 [前言] 1、写本教程得到了“终极讨厌”老师的大力帮助,在此表示感谢! 2、初学者写的教程面向初学者,让我们成为高手吧! [效果] [步骤] 第一步:在主场景中从下到上依次创建几个图层——“背景”、“标题”、“题目”、“答案显示”、“答案按钮”、“成绩”、“判断”、“交卷”、“动作”。(“背景”、“标题”、“题目”图层中设置较简单,这里不再叙述)。 第二步:在“答案显示”图层中,拉出几个动态文本框,分别放在每一题的括号中,变量名依次为daan1、daan2、daan3、daan4。 第三步:创建按钮元件,画一个矩形,把矩形拖到最后一帧;打开库,把刚才制作的按钮分别拖到“答案按钮”图层上,放在每一题的选项上,第一题各按钮实例名分别为t1_btn1、t1_btn2、t1_btn3、t1_btn4,第二题把t1改为t2,依次类推。

Flash电子杂志常用滚动区域控制代码
做Flash电子杂志经常需要做文字滚动和图片滚动,于是我编写了这个代码可以方便快捷的使用,提高工作效率。 我一直都在使用这个代码,比较实用,希望大家也喜欢。 使用方法: 做两个按钮做滚动:up_btn,down_btn 做遮罩定下显示的范围:mask_mc 移动的mc:move_mc 把代码贴上去就OK!! 我整理了一下,与大家分享 设置代码CODE: /*program : hqlulumail : hqlulu@163.comwebsite : http://www.aslibra.compublish : 2006-10-31*///判断是否移动var move_it:Boolean = false;//移动方向var dir:Number = 1;//移动速度var speed:Number = 5;//按下的移动速度加倍var scale:Number = 3;//滚轮的移动速度加倍var scale_mouse:Number = 2;//设置上下的边距var margin:Number = 2;//计算移动的范围var max1:Number = mask_mc._y+margin;var min1:Number = mask_mc._y-move_mc._height+mask_mc._height-margin;//是否自动设置遮罩var is_set_mask:Boolean = false;//是否支持鼠标var is_mouse_enable:Boolean = true;//设置按钮、遮罩和移动的对象var my_move_mc:MovieClip = move_mc;var my_up_btn:Button = up_btn;var my_down_btn:Button = down_btn;var my_mask_mc:MovieClip = mask_mc;