社区
游戏开发
帖子详情
全屏游戏窗口化
angel_sha
2003-12-12 08:18:51
基于directx的全屏游戏如何能窗口化?希望各位高手给点意见,最好给点实际的代码。小弟将不胜感激!!!
...全文
306
11
打赏
收藏
全屏游戏窗口化
基于directx的全屏游戏如何能窗口化?希望各位高手给点意见,最好给点实际的代码。小弟将不胜感激!!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
甜而不腻
2004-01-13
打赏
举报
回复
收藏。
zhaowd2002
2003-12-30
打赏
举报
回复
或者,大家直接去看 detours的资料,微软研究院 下载
zhaowd2002
2003-12-30
打赏
举报
回复
http://www.gameres.com/bbs/showthread.asp?threadid=3379
内有hook SetCooperativeLevel的例子
lsaturn
2003-12-29
打赏
举报
回复
hproof(魔界小虾米)
这样啊,很复杂啊!
angel_sha
2003-12-29
打赏
举报
回复
好象很难实现呀。不过还是很有收获!!
hproof
2003-12-29
打赏
举报
回复
建立你自己的COM对象,接口与DX的完全一样,然后用同一个CLSID在系统中注册。
在自己的COM对象实现中进行拦截,,,
lsaturn
2003-12-27
打赏
举报
回复
我也很好奇怎么来拦截,这是com对象,我想用softice来调试都调不了!
angel_sha
2003-12-27
打赏
举报
回复
我说的是让其他全屏的游戏窗口化呀
其实我想只要拦截到SetCooperativeLevel函数就已经差不多了,可是该怎么拦这个函数呢
拦截API还是很容易的,可是怎样拦截DDRAW.DLL中的函数?望指教!!
blacklevin
2003-12-13
打赏
举报
回复
楼上用的DXSDK8里的例子
完整代码在SDK里的路径是
\DXSDK8\samples\Multimedia\DirectDraw\SwitchScreenMode
切换模式时要重新调用
SetCooperativeLevel
SetDisplayMode
还有他们的绘图方式不一样
所以BACKBUFFER的结构不一样
也要重新创建
如果自己写底层的话可以让两种BACKBUFFER一样
火云洞红孩儿
2003-12-12
打赏
举报
回复
sorry~错了~
全屏:
g_pDisplay = new CDisplay();
if (FAILED(hr= g_pDisplay->CreateFullScreenDisplay(hWnd, 640, 480, 16)))
{ ERMSG("This display card does not support 640x480x16.");
return hr;
}
窗口:
if (FAILED(hr = g_pDisplay->CreateWindowedDisplay(hWnd,320,240)))
{ ERMSG("Failed initializing DirectDraw.");
return hr;
}
火云洞红孩儿
2003-12-12
打赏
举报
回复
HRESULT InitDirectDraw(HWND hWnd)
{ HRESULT hr;
g_pDisplay = new CDisplay();
if (FAILED(hr = g_pDisplay->CreateWindowedDisplay(hWnd,320,240)))
{ ERMSG("Failed initializing DirectDraw.");
return hr;
}
}
主要是CreateWindowedDisplay函数的参数不同就可以造成全屏和窗口两种模式~
易语言实现
全屏
游戏
窗口化
源码分析
本文介绍了易语言实现
全屏
游戏
窗口化
的功能。易语言简单易学,适用于快速开发。项目主要技术点有获取
游戏
全屏
状态、创建新窗口、
游戏
画面渲染、输入事件处理及错误处理与兼容性。通过实践案例分析,展示了
窗口化
实施步骤及问题解决方案,有助于提升
游戏
编程能力。
全屏
游戏
切换至
窗口化
本文介绍了两种将
全屏
游戏
转换为
窗口化
显示的方法:一是通过新建
游戏
快捷方式并在目标栏后添加“-window”参数;二是使用ALT+ENTER快捷键进行
全屏
与
窗口化
模式的切换。需要注意的是,这些方法可能不适用于所有
游戏
。
用c++实现把
全屏
幕化的
游戏
改成
窗口化
在Windows上,可以使用C++调用Windows API来尝试将
全屏
游戏
窗口化
。示例代码中,通过查找
游戏
窗口并修改其样式,但这种方法可能不适用于所有
游戏
,特别是那些使用特殊
全屏
模式或限制修改的
游戏
。实际应用时,可能需要考虑
游戏
的权限设置、DirectX
全屏
模式,甚至使用更复杂的模拟按键或配置文件方法。
c++ vs 输出log到窗口_有问有答:玩
游戏
时无边框
窗口化
与独占
全屏
有区别吗?...
本文对比了无边框
窗口化
和独占
全屏
两种
游戏
模式。独占
全屏
下应用程序可接管显卡全部资源,无边框
窗口化
则需预留部分资源给Windows窗口管理器,导致性能稍弱。以刺客信条奥德赛测试,无边框各帧数指标落后。玩家可按需选择模式。
C#开发WPF/Silverlight动画及
游戏
系列教程(Game Tutorial):(二十三)自适应性
窗口化
与
全屏
化(WPF Only)
本文介绍了一种
游戏
设计中实现
窗口化
与
全屏
化自适应切换的方法。提供了两种切换方案:一种仅调整可视区域大小,另一种则按比例缩放
游戏
内的所有元素。
游戏开发
8,324
社区成员
23,685
社区内容
发帖
与我相关
我的任务
游戏开发
游戏开发相关内容讨论专区
复制链接
扫一扫
分享
社区描述
游戏开发相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章