求助,和DirectX有关
我需要做一个实时控制系统,该系统使用一台计算机控制硬件并显示数据。
计算机中安装两块显卡,驱动两台显示器,分别显示不同内容。
我现在需要通过动画的形式,实时显示一个控制量的状态,动画的刷新速率要求
很高,至少50帧每秒,而且动画的画幅相当大,基本占据了一台显示器的大部分
空间。
我最早是在后台保留一个TBITMAP的缓冲区,先将动画绘制在后台,然后一次性拷贝
到前台显示。但是这样做效率太低,导致CPU的占用率非常高,而且对于同一线程
内的控制部分也可能造成影响,所以打算用DirectX来提高效率。以前没用过DirectX,
所以想请教高人几个问题:
1。我使用DX时,不能允许它独占一个窗口,因为该窗口的其他部分还要显示其他信息,
这样做能够实现吗?
2。我原先做法的瓶颈主要在于需要不断地拷贝后台到前台,DX大约能够在多大程度上
提高效率?我的程序在不启动动画时CPU占用率不到5%,启动后则通常在60%以上。
3。有没有其他能够提高效率的方法?即不用DX,因为我对它不熟,时间又紧,最好能
又一个相对容易实现的方法。
问题点数:20、回复次数:6Top
1 楼cczlp(不惑)回复于 2006-03-03 07:58:23 得分 20
1.可以. 图像可以显示在一个Panel中.
2.需要在后台画.效率提高多少看你怎样画了, 如果直接写显存会快些.
3.很难.Top
2 楼rudolf_he()回复于 2006-03-03 09:05:52 得分 0
学习!Top
3 楼Kalahari()回复于 2006-03-03 09:28:13 得分 0
再问一下
为什么DirectDrawCreate()函数会出现链接错误(Unresolved external "...")?
我仔细看了BCB提供的DEMO程序,头文件没有什么错误啊?
另外,我是要将动画显示在另外一台显示器上,相当于副设备,在程序中需要特别加以处理吗?Top
4 楼cczlp(不惑)回复于 2006-03-03 10:52:38 得分 0
指定lib路径Top
5 楼Kalahari()回复于 2006-03-03 11:09:02 得分 0
再问
怎么样让图像显示在一个panel上呢?
我看到的资料都是全屏模式的Top
6 楼Kalahari()回复于 2006-03-03 18:47:50 得分 0
再问的详细点
我需要在一个Panel上使用DirectX绘图
需要怎样设置DirectDraw对象参数,还有显示模式等?Top




