关于魔兽争霸的小说霸

人人网 - 抱歉
哦,抱歉,好像看不到了
现在你可以:
看看其它好友写了什么
北京千橡网景科技发展有限公司:
文网文[号??京公网安备号?甲测资字
文化部监督电子邮箱:wlwh@??
文明办网文明上网举报***: 举报邮箱:&&&&&&&&&&&&各位高手,我想相当一部分人都玩过魔兽争霸3吧,不知道有谁注意过里边的进度条。
本人曾经也是一个游戏迷,但从未注意过它。
后来接触编程后,才注意到了这个进度条制作的难度。
因此,本人也想自己制作一个!
这张图片,光看进度条的效果,有明显的立体三维感,有点像温度计,
请教各位:
如贴图所示:
1.&进度条内部明亮两旁暗淡的效果是怎么实现的呢?
2.&说明文字的箭头,上下左右,又是如何实现的?
回复讨论(解决方案)
会打魔兽,那个进度条确实挺好
我也想知道。
关注此帖。
我的想法:
1、可以用一个函数,数学函数,做渐变处理,函数具体参数可能需要再调试。
2、进度条分段处理。作一个定时器,如何时间超过一个限度就弹出提示。
用directx画出来的呗,贴图,
这有什么难度,那么炫的游戏魔法效果都能做出来,这是。。。
DirectX画出来的,自然能够有渐变效果了
至于箭头,那是玩家PS上去的吧……玩魔兽这么久了,从来没发现读图的时候会有这几个箭头出现
感谢各位朋友的建议,
可是,目前打算在MFC内实现,
除了用贴图的办法,还有没有别的好方法?
或者,给些贴图的例子也好。
图片处理,做出效果,质量很高的图片,然后就是贴图等..
而且,进度条&载入不同背景下,初始图片一定是矩形的
所以应该无法避开区域裁剪。
贴图技术,哪位可以给个好一点的例子供本人参考?
而且,进度条&载入不同背景下,初始图片一定是矩形的&
所以应该无法避开区域裁剪。&
贴图技术,哪位可以给个好一点的例子供本人参考?
裁剪啥?图片让美工画好,dx一alphablend就完事了。
不是贴图。
DX很容易做到那个效果的。那个箭头是PS上去的,游戏里又没有...
裁剪啥?图片让美工画好,dx一alphablend就完事了。
不是贴图。&
DX很容易做到那个效果的。那个箭头是PS上去的,游戏里又没有...
2位,能否说说DX是个什么玩意?
具体有没有相关参考例子?
帖子的图片我当然知道PS可以完成,可是我希望在MFC内通过代码完成。
MFC实现不大可能,就算实现,也不是完全靠代码能够做出来的。DX就是DirectX,实现这个只是依靠VC调用DirectX的图形库文件,DirectX编程复杂度比较高,一两句说不清楚,建议有条件还是看书
MFC画图可以用CBrush刷上去,但是图片本身还是需要先画好的。
如果用MFC实现的话,可以用GDI,&贴图也行,&用GDI+画渐变色也行
恩,看来用代码实现的方案比较不现实。
本人想,可以用CStatic&控件+自绘的办法。
插入处理过的进度条图片,每次更新的时候修改显示区域,遮盖另一部分
就按3楼说的方法那样。
各位有什么看法?&
我觉得难度不大,正如楼上说的,CStatic+GDI
完全可以自己画一个进度条图片,然后在适当时刻知显示一部分。这个的难度是美工问题。
如果你想实现渐变效果,那么可以用photoshop画。
由于是魔兽迷&进来看看呵呵
用GDI+&就可以。
war3玩,我觉得计算出总时间,然后就可以根据时间来画了~
OpenGL试试?
恩,大家的说法都很有道理! 看来在PS上下功夫比较实在,本人目前利用CStatic实现了一个可以载入位图和文字的进度条,剩下的工作就是玩转PhotoShop了。
另外,本人为了使得这个新类的控件对象可以处于对话框背景之上,其他兄弟控件之下。
重载了以下代码,可是,效果并没有出来?
大家帮看看到底错在哪儿?&
void&CBmpProgCtrl::PreSubclassWindow()&
DWORD&style&=&GetClassLong(m_hWnd,&GCL_STYLE);&
//&修改控件风格
style&|=&WS_CHILD|&WS_CLIPSIBLINGS;
SetClassLong(m_hWnd,&GCL_STYLE,&style);
CStatic::PreSubclassWindow();
WS_CLIPSIBLINGS并不是处于对话框背景之上,其他兄弟控件之下的意思,是绘制的时候不绘制与兄弟控件重叠的部分。你要实现那个效果需要用SetWindowPos来设置ZORDER。
开发软件很简单
开发好的软件难
开发好的又好看的软件更难!
WS_CLIPSIBLINGS并不是处于对话框背景之上,其他兄弟控件之下的意思,是绘制的时候不绘制与兄弟控件重叠的部分。你要实现那个效果需要用SetWindowPos来设置ZORDER。
请问,对于一个控件类,SetWindowPos应该加在哪里合适?如何设置ZORDER才是准确做法?
我打算这个控件可以处于对话框背景之上,其他兄弟控件之下,一直保持。
另外,我为了使得这个控件在单击的时候可以相应鼠标按下&&和&&弹起的响应,
但因为CStatic没有客户区,所以需要处理起非客户区的单击消息。
但是,按如下代码,在这个继承于CStatic&的控件上点击却无法响应鼠标左键弹起的消息,请问问题在哪里?
void&CMyStatic::OnLButtonUp(UINT&nFlags,&CPoint&point)&
::DefWindowProc(m_hWnd,&WM_NCLBUTTONUP,&(WPARAM)HTCAPTION,&MAKELPARAM(5,5));&
GetParent()-&SendMessage(WM_TEST,&0,&0);//如果成功,其父窗体可以响应WM_TEST&并弹出提示。
CStatic::OnLButtonUp(nFlags,&point);
而且,这个控件在ResourceView内,我已经钩选了Notify。
魔兽会提示你哪里卡是什么原因?佩服lz
忘了说了,与此同时,我也重载了
void&CBmpProgCtrl::OnLButtonDown(UINT&nFlags,&CPoint&point)&
{//实现鼠标点击拖拉,但是我希望这个控件被拖拉到某处的时候,松开鼠标才进行发送
//WM_TEST消息,而不是在按下鼠标的时候,
//如果去掉下边这句29楼的代码没问题,可是会导致控件无法拖拉。
::DefWindowProc(m_hWnd,&WM_NCLBUTTONDOWN,&(WPARAM)HTCAPTION,&MAKELPARAM(5,5));&
CStatic::OnLButtonDown(nFlags,&point);
进来学习~友情up~War3各种RPG爱好者~擅长DOTA~&&*_*
擅长用ORC的飘过
留点小建议,如果想弄出3D效果的,建议用OpenGL,DX都可以。
还有你是怎么知道图解这个进度条的,难道你参加过制作么?牛人。
进来学习一下
进来学习~友情up~War3各种RPG爱好者~擅长DOTA~&&*_*
另外,我为了使得这个控件在单击的时候可以相应鼠标按下&&和&&弹起的响应,&
但因为CStatic没有客户区,所以需要处理起非客户区的单击消息。&
但是,按如下代码,在这个继承于CStatic&的控件上点击却无法响应鼠标左键弹起的消息,请问问题在哪里?
C/C++&code
void&CMyStatic::OnLButtonUp(UINT&nFlags,&CPoint&point)&
&&&&::DefWindowProc(m_hWnd,&WM_NCLBUTTONUP,&(WPARAM)HTCAPTION,&MAKELPARAM(5,5));&
&&&&GetP…
===========================================================================================
楼主,cstatic没有客户区,能响应MS_lBUTTONUP消息吗?&应该是响应&MS_NClBUTTONUP&消息吧?
MFC的话,用GDI+比较容易,GDI就免了。
不过这个是DX画的。
我喜欢用ORC
谢谢各位的建议,目前就差28楼的问题了,有没有哪位高手可以说得具体些&?
支持,高科技问题
::SetWindowPos(m_hWnd,HWND_BOTTOM,...);只要最后参数不是SWP_NOZORDER就可以实现效果,一直保持在最下面倒没试过,不过可以试试在WM_ACTIVATE或WM_NCACTIVATE消息里处理。
::SetWindowPos(m_hWnd,HWND_BOTTOM,...);只要最后参数不是SWP_NOZORDER就可以实现效果,一直保持在最下面倒没试过,不过可以试试在WM_ACTIVATE或WM_NCACTIVATE消息里处理。
这句添加在哪个位置?&
控件类的PreSubclassWindow里边?
后来尝试,把SetWindowPos放入PreSubclassWindow内,发现在拖动这个CStatic的时候,他还是可以挪动到
其他类型的控件上……看来找个完美的解决方案还真不容易,WM_ACTIVATE或WM_NCACTIVATE还没尝试过。
1:应该是贴图实现的
那个进度条最关键的部分是,&
1&发出来的光晕超过了进度条的区域
2&光晕原来原强
其实这个还算比较好实现。&&
首先要设计好渐变啊&颜色啊&
然后就是多重纹理渲染,&主要是几个渐变要调整啊
要在普通程序中实现的话&&那么实际的进度条宽度应该等于光晕的宽度
怎么修改进度条显示的文字,例如将载入中改成csdn.net魔兽争霸_百度知道

参考资料

 

随机推荐