CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  专题开发/技术/项目 >  游戏开发

如何用DX做半透明的效果,也就是那种隐行效果

楼主mjm_d(菠萝蜜多)2001-12-23 17:12:34 在 专题开发/技术/项目 / 游戏开发 提问

如何用DX做半透明的效果,也就是那种隐形效果  
  一种为自我隐形即可见背静,亦可见自己  
  一种为他人隐形即可见背静,不可见他人,但可以见到有个像水一样的透明人浮动。  
  感激不尽  
   
  问题点数:214、回复次数:4Top

1 楼magicren(小魔人)回复于 2001-12-23 19:19:02 得分 20

要用D3D做吧?你可以参考一下nVidia   SDK里关于折射和反射的例子(也可以从它的网站上下载NVEffectBrowser完全版http://www.nvidia.com/developer.nsf)。如果要求不高的话,把顶点的Alpha值调低些,再把Alpha混合打开,也能实现隐形。Top

2 楼kabob(kk.Chen)回复于 2001-12-25 22:55:31 得分 20

http://cke.myrice.com/data/gamedev.htmTop

3 楼gddsky()回复于 2001-12-27 10:23:00 得分 174

你没有说明用什么方式做啊!!!  
  DDraw有很多人都为它做了汇编码的加速  
  D3D就简单一些了,只要把图像ALPHA因子设为50%就行了,你要的不就是半透明效果吗?  
  水一样浮动的人可就不那么简单了,这要先做好一个网格,再把这个网格进行水面处理,这样网格就会产生波形效果也就是扭曲,这样明白吗?  
  水波产生的原理我这里有一篇小文章,你要吗?  
  --------  
  这里有两张图,我不知道这个BBS能不能传图形的,先不传吧  
  --------  
   
  DDraw和汇编ALPHA加速都有,你要吗?  
   
  --------  
  inline   WORD   PixelAlphaBlending(DWORD   x,DWORD   y,int   alpha)    
  {    
   
  //   C++版    
  //x=((x&0xFFFF)|(x<<16))&0x7E0F81F;    
  //y=((y&0xFFFF)|(y<<16))&0x7E0F81F;    
  //DWORD   result=(((y-x)*(alpha>>3)>>5)+x)&0x7E0F81F;    
  //return   (WORD)((result&0xFFFF)|(result>>16));    
   
  //汇编版  
  __asm    
  {    
  mov   ecx,x    
  mov   edx,y    
  and   ecx,63519   ;//   0000f81fH    
  and   eax,2016   ;//   000007e0H    
  shl   eax,16   ;//   00000010H    
  or   eax,ecx    
  mov   ecx,edx    
  and   ecx,2016   ;//   000007e0H    
  and   edx,63519   ;//   0000f81fH    
  shl   ecx,16   ;//   00000010H    
  or   ecx,edx    
  mov   edx,alpha    
  sub   ecx,eax    
  sar   edx,3    
  imul   ecx,edx    
  shr   ecx,5    
  add   ecx,eax    
  and   ecx,132184095   ;//   07e0f81fH    
  mov   eax,ecx    
  shr   eax,16   ;//   00000010H    
  or   eax,ecx    
  }    
  }   Top

4 楼mjm_d(菠萝蜜多)回复于 2002-01-01 09:11:30 得分 0

要  
  mjm_d@163.netTop

相关问题

  • 实现半透明效果
  • 用BITBLT实现半透明效果…………
  • 请问如何实现窗体的半透明效果?
  • 同时实现半透明效果和异形窗口?
  • 怎样使文字具有半透明效果?
  • WinCE下如何实现窗口半透明效果?
  • 如何实现flashget 0.95的悬浮窗那种半透明的效果?
  • 请问怎么让窗体的标题栏实现半透明效果??
  • 窗体部分半透明(并非整个窗体透明效果,半透明部分也需看到下层窗口刷新)
  • form 半透明

关键词

  • 效果
  • 网格
  • f81
  • 半透明
  • ecx
  • edx
  • alpha
  • 可见
  • fh
  • eax

得分解答快速导航

  • 帖主:mjm_d
  • magicren
  • kabob
  • gddsky

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo