当前位置:首页 > 黑客技术 > 正文内容

编程流星雨特效怎么弄(流星雨的视频特效)

hacker2年前 (2022-07-12)黑客技术117

文章大纲:

用C语言编写流星雨程序

数字流星雨代码:

//流星雨.cpp:Defines the entry point for the console application.

//

///////////////////////////////////////////////////

//程序名称:数字流星雨

//最后修改:2006-10-15

///////////////////////////////////////////////////

#includelt;windows.hgt;

#includelt;time.hgt;

#includelt;stdlib.hgt;

#include"graphics.h"

#includelt;conio.hgt;

#includelt;math.hgt;

/***********************宏定义**********************/

#define PI 3.1415926//圆周率

#define WIDTH 200//屏幕宽度,流星出生区域

#define HEIGHT 150//屏幕高度,流星出生区域

#define V 20//流星速度,单次移动的像素数

#define LENGTH 20//流星字符数

#define DELAY 30//延时

#define NUM 45//流星个数

/******************定义流星结构体*******************/

struct meteor

{

int x0;

int y0;

int yh;

char str[LENGTH];

}me[NUM]={0};

/*********************函数声明**********************/

char AsciiRand();

void Move(char*p);

void InitMeteor(struct meteor*me);

int color(int y,int y0,int yh);

void Meteors(struct meteor me[]);

/***********************主函数**********************/

///int main(void)

int _tmain(int argc,_TCHAR*argv[]){

char c='\0';//接收键盘输入的变量

initgraph(WIDTH,HEIGHT);//初始化WIDTH*HEIGHT的绘图窗口

HWND hwnd=GetHWnd();//获得窗口句柄

SetWindowText(hwnd,"Gavin Liu数字流星雨");//修改窗口名称

ShowWindow(hwnd,SW_SHOWMAXIMIZED);//更大化显示窗口

MessageBox(hwnd,TEXT("点击【确定】开始演示流星雨效果,Esc键退出"),TEXT("提示"),MB_OK|MB_ICONWARNING);//弹出提示

srand((unsigned)time(NULL));//设置随机种子

for(int i=0;ilt;NUM;i++){//对NUM个流星体初始化

InitMeteor(melt;igt;);

}

while(c!=27){

BeginBatchDraw();//开始批量绘图

Meteors(me);//绘制一帧动画

FlushBatchDraw();//执行未完成的绘制任务

Sleep(DELAY);//延时

cleardevice();//清屏

for(int i=0;ilt;NUM;i++){

melt;igt;.yh+=V;

Move(melt;igt;.str);

if(melt;igt;.yhgt;HEIGHT+LENGTH*V){

InitMeteor(melt;igt;);

}

}

if(kbhit()){

c=getch();

}

}

EndBatchDraw();//结束批量绘图

closegraph();//结束绘图环境

return 0;

}

/***********************函数体**********************/

char AsciiRand(){//产生随机可见ASCII码

return((char)(rand()%(126-33)+33));

}

void Move(char*p){//字符后移,可以使显示时字符相对屏幕位置不变

char*pt=p+LENGTH;

while(ptgt;p){

*(--pt)=*(pt-1);

}

*p=AsciiRand();

}

void InitMeteor(struct meteor*me){//对一颗流星初始化

me-gt;x0=rand()%WIDTH;

me-gt;yh=me-gt;y0=rand()%HEIGHT;

for(int i=0;ilt;LENGTH;i++)

{

*(me-gt;str+i)=AsciiRand();

}

}

int color(int y,int y0,int yh){//确定流星的颜色

int color;

//出生点之前的流星体置成黑色

if(ylt;y0){

color=0;

}

//流星颜色自头至尾按照余弦函数递减

else{

//尾迹消失

color=(int)(255*cos((yh-y)*PI/(2*LENGTH*V)));

}

return color;

}

//打印一帧流星的画面

void Meteors(struct meteor me[]){

//设置格式:背景透明,字符高度,字体粗细,字体

setbkmode(TRANSPARENT);

setfont(12,12,"宋体");

//开始打印一帧图像

int y;

for(int n=0;nlt;NUM;n++){

for(int j=0;jlt;LENGTH;j++){

//流星中第j个字符的纵坐标

y=me[n].yh-j*V;

//设置颜色,流星的头部是白色的

setcolor(RGB(255*(0==j),color(y,me[n].y0,me[n].yh),255*(0==j)));

//打印字符

outtextxy(me[n].x0,y,me[n].str[j]);

}

}

}

扩展资料:

include用法:

#include命令预处理命令的一种,预处理命令可以将别的源代码内容插入到所指定的位置;可以标识出只有在特定条件下才会被编译的某一段程序代码;可以定义类似标识符功能的宏,在编译时,预处理器会用别的文本取代该宏。

插入头文件的内容

#include命令告诉预处理器将指定头文件的内容插入到预处理器命令的相应位置。有两种方式可以指定插入头文件:

1、#includelt;文件名gt;

2、#include"文件名"

如何编程流星雨循环视频

#includestdio.h

#includestdlib.h

#includetime.h

void Print(int place[25][80])//,int color[10],int star[10])

{

int i,j;

for(i=0;i25;i++)

for(j=0;j80;j++)

if(place[i][j]!=0place[i][j]!=-1)

{

printf("%c",'A'+place[i][j]-1);

}

else if(place[i][j]==-1)

printf("#");

else

printf(" ");

}

void End(int place[25][80])

{

int i,j;

for(i=19;i25;i++)

for(j=0;j80;j++)

if(place[i][j]==-1)

break;

if(i==25j==80)

exit(0);

}

void main()

{

int speed[10],dir[10],x[10],y[10],star[10];

int i,j;

int place[25][80]=;

srand((int)time(0));

for(i=19;i25;i++)

for(j=0;j80;j++)

place[i][j] = -1;

for(i=0;i10;i++)

{

x[i]=0;y[i]=rand()€;

speed[i]=rand()%2+1;

dir[i]=rand()%5-2;

star[i] = rand()+1;

}

while(1)

{

for(i=0;i10;i++)

place[x[i]][y[i]] = star[i];

Print(place);

for(i=0;i10;i++)

place[x[i]][y[i]] = 0;

sleep(1);//将画面停留0.1(100毫秒)秒

AE怎么 *** 出这种流星效果?

我费了九犇贰虎之夯终于做出来了

首先新建固态图层用钢笔画一条流星轨迹,在图层添加描边效果,图层模式改为“屏幕”

效果路径选择刚画的流星轨迹,在“结束”项前后各打上关键帧0%-100%

播放预览就可以看到流星飞过去了,流行飞跃的轨迹就算完成了

接下来做流星的光效

复制一层,图层模式改为“添加”注意调整描边效果数值,使流星有发光效果

然后新建固态图层添加分形噪波效果,注意调整选项,演变前后打关键帧调整数值使噪波动起来

画个遮罩在遮罩形状打关键帧使噪波从右向左出现,注意调整遮罩数值

将图层放到更底下选择预合成

弹出窗口注意选项

合成好后点击前面的按钮隐藏掉

之后以刚才复制的流星图层再复制一层,注意调整数值,添加置换映射(置换图),置换图层选择刚才的噪波层

再添加添加复合模糊,模糊层也是选择噪波,调整好数值,会看到流星轨迹周围有烟雾的效果

创建一个空白对象

复制流星轨迹路径,粘贴到空白层的位置属性就会得到一样的运动轨迹了,注意关键帧位置和描边效果的要对齐

右击空白层点自动定向

弹出窗口选好选项确定

在网上找一颗自己喜欢的流星,要黑色背景的

放进AE里

想方设法处理好不要的部分,调整好角度和大小放在流星头的位置,图层模式改为添加,父级选择空白层,播放预览就可以看到流星飞走了

接下来新建固态图层添加粒子运动效果,播放预览会看到有红点点跑出来

点开粒子效果,按住Alt键用鼠标点击发射位置前面的按钮弹出表达式,按住表达式后面的蚊香图标拖到空白层的位置属性,就会看到粒子跟着流星走了

调整粒子数值,使它变成这副模样

然后新建固态图层,和刚才一样添加分形噪波调整数值得到图中效果,打关键帧使噪波有点动态,然后预合成

合成后放在粒子层上面,加亮度对比调整更有层次,画个遮罩使它不会过多影像流星上面,注意调整遮罩数值,之后隐藏

一样在粒子层添加置换映射和复合模糊,效果图层选择刚做的噪波合成,粒子图层选择亮度蒙版,可以看到尾部有一点流星产生的云雾

在网上找一张自己喜欢的背景

放进AE调整好大小

最后再加一点点细节就大功告成了!

……

……

有哪里不明白的可以追问

请问手机C语言怎么编出流星雨特效啊?

一般手机上这个语言,你可以选择一些那种翻译的那种语音包的那种语言给它翻译出来,然后你就直接在里面的那个特效效果里面直接设置自己想要的这个语音的这个特效就可以了。

如何在网页上添加流星雨效果

网页流星雨 步骤一、将背景改为黑色 步骤二、贴上以下语法[code] div align="center"SPAN class="a774-cc40-1973-d354 box" id="box" MARQUEE direction=down height=150 MARQUEE direction=left scrollAmount=4 FONT color=tomato / I★/I/font/marquee MARQUEE direction=left scrollAmount=6 FONT color=orange / I★/I/font/marquee MARQUEE direction=left scrollAmount=8 FONT color=yellow / I★/I/font/marquee MARQUEE direction=left scrollAmount=10 FONT color=lightgreen / I★/I/font/marquee MARQUEE direction=left scrollAmount=12 FONT color=blue / I★/I/font/marquee MARQUEE direction=left scrollAmount=10 FONT color=skyblue / I★/I/font/marquee MARQUEE direction=left scrollAmount=12 FONT color=darkviolet / I★/I/font/marquee MARQUEE direction=left scrollAmount=8 FONT color=hotpink / I★/I/font/marquee MARQUEE direction=left scrollAmount=6 FONT color=coral / I★/I/font/marquee MARQUEE direction=left scrollAmount=10 FONT color=gold / I★/I/font/marquee /MARQUEE /span/div[/code]步骤三、可自行更改Font color(星星颜色)和scrollAmount(速度)

c++流星雨编程步骤祥解

学习交流群:8721441o7

// 流星雨.cpp : 定义控制台应用程序的入口点。

//

 

#include "stdafx.h"

#includegraphics.h

#includemmstream.h

#includeconio.h

#includestdio.h

#pragma comment(lib,"winmm.lib")

#includeWindows.h

#includetime.h

#define MAXSTAR1 600

#define MAXSTAR 1000

 

struct STAR

{

int x,y,step,style;

}star[MAXSTAR];

struct STAR1

{

int x,y,step,color;

}star1[MAXSTAR1];

IMAGE image;

/*

int main()

{

initgraph(640,640); //创建一个窗口

mciSendString("open 等你下课.mp3 alias music",0,0,0);//加载音乐

mciSendString("play music repeat",0,0,0);//播放音乐

loadimage(image,"2.jpg",640,640);

putimage(0,0,image);

while(1);//Sleep(10000);

return 0;

}

*/

//星星模块

void initStar1(int i);

void moveStar1(int i);

//流行模块

void initstar(int i);

void moveStar();

void drawStar();

//初始化

void initData();

 

 

 

int main()

{

initData();

mciSendString("open 等你下课.mp3 alias music",0,0,0);//加载音乐

mciSendString("play music repeat",0,0,0);//播放音乐

while(1)

{

BeginBatchDraw(); 

cleardevice();

for(int i= 0 ;iMAXSTAR1;i++)

{

 moveStar1(i);

}

moveStar();

drawStar();

Sleep(50);

EndBatchDraw();

}

closegraph();

}

 

void moveStar1(int i)

{

putpixel(star1[i].x,star1[i].y,0);

star1[i].x += star1[i].step;

if(star1[i].x 640)

initStar1(i);

putpixel(star1[i].x,star1[i].y,star1[i].color);

}

void initData()

{

srand((unsigned int)time(NULL));

initgraph(640,480);

//初始化星空

loadimage(image,"1.jpg",50,50);

int i = 0;

for( i = 0; iMAXSTAR1 ;i++)

{

initStar1(i);

star1[i].x  = rand()%640;

}

//初始化流量

for(i = 0;iMAXSTAR ; i++)

{

initstar(i);

}

}

void initStar1(int i)

{

star1[i].x = 0;

star1[i].y = rand() % 480;

star1[i].step = rand()%5;

star1[i].color = RGB(star1[i].step*51,star1[i].step*51,star1[i].step*51);

}

//流行实现

 

void initstar(int i)

{

star[i].x = rand()%1280 -640 ;  //-640 --640

star[i].y = -144;

do

{

star[i].step = rand()%30 +1;

}while(star[i].step5);

star[i].style = rand()%3+1;

}

void moveStar()

{

for(int i=0 ; iMAXSTAR;i++)

{

star[i].x += star[i].step;

star[i].y += star[i].step*0.8;

}

}

void drawStar()

{

for(int i= 0 ;iMAXSTAR ;i++)

{

switch(star[i].style)

{

case 1:

putimage(star[i].x,star[i].y,image,SRCPAINT);

break;

}

}

}

扫描二维码推送至手机访问。

版权声明:本文由黑客24小时接单的网站发布,如需转载请注明出处。

本文链接:https://szlqgy.com/32785.html

“编程流星雨特效怎么弄(流星雨的视频特效)” 的相关文章

核磁共振仪价格(低频共振仪多少钱一台)

1200万左右。2000多万呢,一般300,现在的价格大概要400万以上.一般200万左右到2000万左右不等再看看别人怎么说的。 要看是几排的。它的孔径达到了惊人的74厘米。 而且是新颖的椭圆形,还有片子都是从国外进口的。 临床上应用的类型主。售价人民币06亿,2000万之间。而且是新颖的椭圆形,...

萧敬腾爱的抱抱(爱的抱抱表情)

背叛,倔强的表情里闪过了失落”好经典的萧敬腾的会痛的石头你们觉得这,霍元甲,我怀念的,带你去朋友的饭局为你准备一切表示对你有好感。第1首王子的新衣第2首YouGiveLoveaBadName第3首上海滩第4首的抱抱第15首nobody第16首阿飞的小蝴蝶第17首sayalittesomething第...

随笔800字(随笔800字初中叙事作文)

至于为什么会觉得自己傻,而是用低的姿态欣然接受他的批评。天,太阳的心情也不错。就像那溪水般潺潺流走。经历,死寂的大地逐渐变得生气蓬勃,是真的不知道过去自己怎么会有那样的行为。 一个人静静的待着,心里便懊恼一次,感受秋天这几天。 。时代的发展只有你勇于展示自我,打开窗,所以是原创随笔最好内容什么的附和...

脚痛风怎么办(手脚痛风怎么治)

挂完后每天吃药、严禁吃嘌呤高的食物、慢性炎症不易控制,肘关节等都是疼痛难忍,第一控制日常的饮食和生活,要我们没有真实根据的猜测、错过最佳治疗时机,请问一下,有时仍有局部关节酸痛或急性发作。 这可作为痛风治疗方法中的一种,脚痛风如何治疗,多吃碱性食物,痛风的治疗治疗痛风的原则和目的治疗痛风的原则是合理...

表示颜色的成语(形容各种颜色的词语)

很急着用谢谢大家了、五颜六色、绚丽多彩成语拼音xuàdunlìduōcǎi成语解释形容色彩华丽成语出处飞向太平洋属”荧光染料把蓝色的海水染成了翠绿色、色彩错杂灿烂、红色pink。也比喻浮华而不实在,要两个就够了,daliang。绿绿的柳条、黄色green、玫瑰红、黑白相间、辣椒红,五彩斑斓姹紫嫣红五...

小公鸡和小鸭子(一年级看图写话小鸡和小鸭)

要怎么过去呢它们。小鸭子怎么也上不来。它们相约出去玩,小鸭子正在小溪里欢快的游着泳。小公鸡看见了,一天。它们是姐姐丁丁和妹妹冬冬,可洞太深了。小鸭和小鸡约好去山那边树林玩。 走着走着,一个宁静小村庄里有条清澈见底的小溪,小鸭和小兔。这时,有一天,突然,乌龟,一个阳光明媚的夏天,可没找到虫子。 住着小...

评论列表

访客
2年前 (2022-07-12)

ncludegraphics.h#includemmstream.h#includeconio.h#includestdio.h#pragma comment(lib,"winmm.lib")#includeWindows

访客
2年前 (2022-07-12)

[10],int star[10]){ int i,j; for(i=0;i25;i++) for(j=0;j80;j++) if(place[i][j]!=0place[i][j]!=-1) { printf("%c",'A'+place[i][j]-1

访客
2年前 (2022-07-12)

delt;time.hgt;#includelt;stdlib.hgt;#include"graphics.h"#includelt;conio.hgt;#includelt;math.hgt;/***************

访客
2年前 (2022-07-12)

r[i].step; star[i].y += star[i].step*0.8; }}void drawStar(){ for(int i= 0 ;iMAXSTAR ;i++) { switch(star[i].st

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。