⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lc_bcb_83.html

📁 C++Builder教学大全
💻 HTML
字号:
<HTML><HEAD><TITLE>实现爆炸后的振动效果</TITLE>

<META content="text/html; charset=gb2312" http-equiv=Content-Type>

<META content="Microsoft FrontPage 4.0" name=GENERATOR>

<META content=FrontPage.Editor.Document name=ProgId></HEAD>

<BODY>



<CENTER></CENTER></DIV>



<CENTER>

<TABLE  border=0  width="100%">

  <TBODY>

  <TR>

    <TD align=left vAlign=top width="85%">

      <P align=center>实现爆炸后的振动效果<BR><BR>(长春 石琳) 

      <P>  在许多游戏软件中,我们经常能看到这样的场面:当某一设施爆炸后,屏幕画面会伴随着轻微的振动,使人感到身临其境。笔者编写了一个函数void 

      MoveView(int x,int y);通过CRT控制器将屏幕视角左上角坐标移至 

      (x,y)处,使画面相对移动,从而产生振动效果。程序由Borland C++ 2.0编写,采用VGA 

      12H模式,代码小、速度快、运行效果形象逼真。<BR>  // filename: SHAKE.cpp<BR>  // maker: 

      ShiLin<BR>  #include<BR>  #include<BR>  #include<BR>  #include<BR>  void 

      MoveView(int x,int y);<BR>  void main(void){<BR>   int 

      gdriver,gmode;<BR>   gdriver=DETECT,gmode=0;<BR>   

      initgraph(&gdriver,&gmode,"BORLANDCBGI");<BR>   

      rectangle(100,100,200,200);<BR>   outtextxy(100,250,"Press Any Key to 

      SHAKE ...");<BR>   getch();<BR>   for(int i=0;i&lt;20;i++){<BR>   

      MoveView(10-random(20),5-random(10));<BR>   delay(50);<BR>   }<BR>   

      MoveView(0,0);<BR>   getch();<BR>   closegraph();<BR>   }<BR>  void 

      MoveView(int x,int y){<BR>   union{<BR>   unsigned int whole;<BR>   char 

      low;<BR>   }adr;<BR>   unsigned char high,low;<BR>   

      adr.whole=y*80+x/8,<BR>   low=adr.low,<BR>   high=(unsigned 

      char)(adr.whole&gt;&gt;8);<BR>   outportb(0x3D4,0X0C);<BR>   

      outportb(0x3D5,high);<BR>   outportb(0x3D4,0x0D);<BR>   

      outportb(0x3D5,low);<BR>   } </P></TD></TR></TBODY></TABLE></CENTER></DIV>

<P> </P></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -