当前位置:首页 » 软件开发
开发技术指南» 文章正文
    引言: 关键字: DirectSound 9 VB.NET Direct
 

 

    摘要:虽然上一节这样就算一个完整的direct3d程序了,但是你不看代码的话完全看不出他和一个默认的c#工程有哪些区别,所以,我们必须在我们的场景中建立一些东西来说明我们编写的是一个完整的direct3d程序在windows forms类中,有一个内部方法可以在适当的时候重画窗口,我们所要做的就是重写此方法,每当窗口发生变化的时候就会从新载入此方法,所以这个方法内是我们编写代码的好地方,不必去理会用户是......
    摘要:chapter 7 themes 利用*.skin以及*.css文件,对page的外观做统一的部署。 new item列表中没有skin文件,使用text文件,后缀名称修改为.skin即可,并在<%@page />中增加theme属性 编程解决page的theme,在page.preinit事件中使用page.theme=request.querystring("xxx)进行......


VB.NET实现DirectSound9 (8) 音效控制器

关键字: directsound 9 vb.net directx 声音控制 声音引擎                          作者:董含君

目的:制作一个声效控制器,减少内存占用量,封装directsound,低cpu消耗,满足人的实际需要,以及易用性提高. 【程序编程相关:在Datagrid中添加Insert

转载请注明来自 http://blog.csdn.net/a11s 【推荐阅读:昨日关注:Community Serve

由于跟denghe的制作目的不同,所以实现起来大相径庭.他全部都要实现gameobject接口,对于游戏来说,这是可行的.但是我做控制器的目的并不仅仅是用于游戏.而是更加像是提供一个处理声音的服务.我还不敢称它为声音引擎.毕竟可以实现的功能还比较少. 【扩展信息:365Key的Web Service接口

本来不打算继续的,前几天跟denghe研究了一下相关的问题.讨论到太多的音效对机器的影响,尤其是内存占用以及释放.发现有必要做一个专门管理音效的控制器.

问题的出现

1 当你打算播放音效的时候(就是wav),你可以new buffer(filename , ....) 这个我们都知道的. 但是new 之后,整个wav将会被装入内存.我们称之为静态载入.当你进攻敌人的时候,比如子弹的音效或者刀剑的音效.很多都是重复的.这时,你可以用刚才new 出来的 buffer 直接 play.

2 问题如果这么简单我就没有必要写此文了.当一个声音没有播放完成,另外一个重复的声音接着响起的时候,很显然不能直接play了,那么你怎么办?先stop它然后重新从头开始播放?很显然,也不行.那么直接再new 一个可以了吧.当然可以,除非你自己做混音(需要很多声学的知识,以及数学),否则只能使用两个buffer不同时间同时播放的方法.

3 看似解决了问题.我们把问题继续推广到多个音效(wav),以及大量重复播放的时候.用问题2的解决办法 new 出大量的buffer 就会出现问题了. 不但管理起来十分复杂,而且他会消耗掉恐怖的内存.并且你的系统资源开销非常可观. 看似这样的现象再游戏中是很容易出现的. 所以迫切需要一种管理方法应对这种现象.


...   下一页
 ·visual c#网络编程之tcp     »显示摘要«
    摘要:注:不是原创!前一篇《visual c#.net网络程序开发之socket》中说到:支持http、tcp和udp的类组成了tcp/ip三层模型(请求响应层、应用协议层、传输层)的中间层-应用协议层,该层的类比位于最底层的socket类提供了更高层次的抽象,它们封装 tcp 和 udp 套接字的创建,不需要处理连接的细节,这使得我们在编写套接字级别的协议时,可以更多地尝试使用 tcpclie......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE