前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >在3D游戏中显示网页

在3D游戏中显示网页

作者头像
逍遥剑客
发布于 2018-05-21 08:00:52
发布于 2018-05-21 08:00:52
6520
举报

在游戏中显示网页? 为什么要这么做呢?

其实可以做不少的应用:

  1. 嵌入帮助文档, 比如技能介绍, 可以做得很漂亮, 各种排版方式用传统UI做起来很费劲
  2. 活动公告页面直接在游戏中查看
  3. 游戏内的BBS/社区
  4. 玩家的个性展示/资料
  5. 等等
  6. 最重要的是, 所有的这些内容都可以扔到web服务器上, 不用打包进客户端

最早是用LLMozLib 实验过, 编译这玩意儿费了我老大劲儿, 最终发布时还要带一屁股的DLL和资源

受不了了就用IE自己搞了个, 没做完美, 到是把flash activex嵌入D3D给完成了

当然, 用IE不是不行, 就是性能不好, 实现也很繁琐. HL2泄漏的源代码里有完整的实现, 懒得折腾了

后来有人在Chrome的源码基础上搞出一个Awesomium, 然后闭源商业化成立了一个公司, 算是这方面做得比较成功的一个

EA开源出的eastl等代码里也有一个模块叫eawebkit, 可能也是做这个用的, 没有试验

关于嵌入flash到d3d/ogl这个问题上, 有幸跟uBrowser的作者交流过, 后来他也放弃直接使用IE/ActiveX了, 转向了WebKit

不过没他没有直接集成WebKit, 而是使用了QtWebKit, 做了一个叫LLQtWebKit的东东

今天心血来潮, 把代码down下来, 使用Qt的VS2008插件载入.pro文件, 修正几个配置问题就编译过了

这个库集成到游戏就实用多了, pixel数据更新到一张纹理上, 爱怎么画怎么画, 把网页贴模型上都没问题

依赖的库文件虽然不如Awesomium那么精简, 到也可以接受了

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2012年05月19日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
嵌入式的浏览器有第三种方案啦
最初在游戏里嵌入网页用的是LLmozLib, 说实话, 还不错, 用的FireFox的解析引擎
逍遥剑客
2019/02/20
6400
FPS游戏:D3D实现游戏人物上色
本教程是《FPS游戏:实现D3D劫持透视 (API Hook)》教程的延续篇,在上一课我们讲解了如何通过函数劫持,实现对特定角色墙后透视功能,不过我们当时使用的是全局透视,并没有找到人物模型号,如下我们将继续延续,分别找出这些模型号。
王瑞MVP
2023/02/25
8410
FPS游戏:D3D实现游戏人物上色
传统3D游戏引擎的Web化
最近floh大神的blog又复活了, 现在n3的主要发展发向是web化 其实也是跟PC和主机平台的衰落有关, 各种移动设备正在逐渐取代PC的地位 而做为一个3D游戏引擎, 想要适应这个潮流却不是很容易 先不考虑其它, 光技术上面临的问题就很棘手: C++目前无法直接用于web开发, 必然要面临老代码转换/移植的问题 3D硬件加速的渲染在浏览器这边, 没有一个统一的标准 多线程, web浏览器里对于线程的使用有很多限制 输入设备, 比如右键的功能很多时候会跟浏览器冲突 IO, 通过网络传输的资源在传输, 访问
逍遥剑客
2018/05/23
1.9K0
关于Web3D
ActiveX之类的插件, Unity也归于此类 可以从C++的引擎直接升级过去, 与传统客户端游戏引擎的差异不大 如果有现成的游戏, 改造工作量不是很大 需要针对每一种平台x每一种浏览器做相应的插件 Flash11 装机范围广, 所以就不需要安装插件这一步(11的话估计也得升级) 几乎所有平台和浏览器都支持 无法利用现有的基于C++的引擎 WPF 可以利用C++/CLI封装现有的C++的引擎 装过.net的机器就可以支持 平台受限于windows, 浏览器受限于IE(FireFox冒似也有相应插件)
逍遥剑客
2018/05/23
4670
嵌入式的浏览器有第三种方案啦
最初在游戏里嵌入网页用的是LLmozLib, 说实话, 还不错, 用的FireFox的解析引擎 但是它的编译太麻烦了, 而且跟一些引擎代码直接链接到一起的话还会冲突 最让人觉得不爽的是, 附带了一大堆的DLL和资源文件 后来自己用IE的IWebBrowser2实现了一个嵌入浏览器, 除了滚动条拖动和效率还有点问题, 也基本上能用 好处是兼容性好, 也不用附带什么 后来看到google发布chrome后就一直在想这个东西能不能用在3D游戏中, ubrowser的作者也在研究这个. 我们还一块讨论过嵌入flas
逍遥剑客
2018/06/25
3610
游戏中的深度学习与人工智能(答疑)
Q1:机器学习和深度学习在文本日志分析领域有做得比较好的案例吗?面对这么庞大的日志,貌似目前都没有一个很好的解法,这个相信很多同学都碰到类似的问题,不管监督还是非监督学习,对于未知文本分析都起不了很好的作用,总不能人肉长期来分析,也不是特别合适,不知道老师对这方面的看法是如何的? 关于文本挖掘是有专门的领域来研究的,如果是形态比较好的日志,那么分析的手段就比较多了,因为里面会有大量的带有强烈的提示性的ERROR或者WARNING等。如果是文字比较多,那么也是NLP研究的一个范畴。这类应该还是比较典型的监督学
刀刀老高
2018/04/10
6300
2017败北清单:人工智能在这些游戏中战胜了人类
大数据文摘作品 作者:Rich Haridy 编译:Niki、笪洁琼、刘涵 20世纪90年代后期,IBM深蓝(Deep Blue)研究了一系列的国际象棋算法,期望于打败当时的世界冠军加里•卡斯帕罗夫(Garry Kasparov)。 终于,在1997年深蓝成功打败了卡斯帕罗夫,这是历史上计算机第一次在一对一的比赛中打败人类的世界冠军,此事在当时引起了众人极大的恐慌,由此也产生了许多在至今来看也不过时的科幻电影。 而到了2017年,当阿尔法狗打败柯洁的消息传出来之后,众人却安心当起了吃瓜群众,并没有掀起多大的
大数据文摘
2018/05/24
4210
从模拟到创新:人工智能从游戏中学到了什么?
7月13日《Science》杂志刊发名为《游戏持续驱动着人工智能发展进步》文章,详细论述了游戏与人工智能的发展关系,认为“游戏为通用智能工作提供了前景广阔的应用领域,将游戏作为研究人工智能的平台,给价值2000亿美元全球电子游戏产业带来了直接的助益。”[1]
小腾资讯君
2023/08/22
2780
2017年AI在游戏中完胜人类,2060年通吃一切人类任务
编辑:Cecilia 【新智元导读】2017 年,AI在各种游戏中横扫人类: 在围棋比赛中,AlphaGo Master战胜世界排名最高的柯洁,随后又衍生出AlphaGo Zero和更高水平的AlphaZero;在扑克比赛中Libratus已经可以在打牌时使诈,充分利用人类漏洞;马斯克的OpenAI在短短时间内在Dota 2中击败世界顶级选手。未来实现自我学习的AI将在更多的游戏中超越人类。 2017年,AI在游戏中大获全胜。在过去的12个月里,从古老的围棋到德州扑克,AI越过了一系列新的门槛,最终在各种不
新智元
2018/03/20
5530
2017年AI在游戏中完胜人类,2060年通吃一切人类任务
Cocos 3D开源游戏案例
Cocos是由厦门雅基软件有限公司推出的开源游戏引擎,目前支持2D和3D游戏开发,不过最擅长的还是2D游戏开发,3D相关的引擎技术也是最近两年才提供的技术。2021年年初,Creator 3.0版本正式发布,将2D和3D两套产品进行合并,开始引擎一体化建设。Cocos Creator 进行了多次版本迭代,立足2D应用领域、持续进行优化的同时,在3D方面也取得长足进步。
xiangzhihong
2022/09/28
2.1K0
Cocos 3D开源游戏案例
开发游戏需要懂几种语言?
玩游戏这么简单的事情,是个人都会。三岁孩童都会偷菜,打怪。特么逗我,你说那个游戏没通关你告诉我?我就一地地道道国人,除了汉字没听说有其它啥啥玩意儿。 今天我们来上纲上线,说说玩游戏。玩过游戏的都知道,Dota2游戏可是有百万奖金的哟。咋小民就只有有事没事撸两把,游戏嘛玩嘛。玩游戏有两种玩法,玩好游戏和玩转游戏(个人观点)。玩好游戏这个大家都会,只看你玩得多少。 玩转游戏这个相对玩好游戏下的功夫那是要大很多,玩转游戏其实我想说的是游戏开发,三句话离不开老本行,有病得治。是的你玩游戏的同时有没有,擦能不能设计的
程序员互动联盟
2018/03/14
2.6K0
开发游戏需要懂几种语言?
FPS游戏:实现D3D Hook劫持透视
FPS游戏可以说一直都比较热门,典型的代表有反恐精英,穿越火线,绝地求生等,基本上只要是FPS游戏都会有透视挂的存在,而透视挂还分为很多种类型,常见的有D3D透视,方框透视,还有一些比较高端的显卡透视,本教程将学习D3D透视的实现原理,并通过DLL注入的方式实现透视。
王瑞MVP
2022/12/28
2.4K0
FPS游戏:实现D3D Hook劫持透视
FPS游戏:封装D3D游戏选择菜单
19年发布了一篇《FPS游戏:实现GDI方框透视》这篇文章,本篇文章中使用到的技术是外部GDI绘制,该绘制模式在Win10系统中如果不关闭毛玻璃效果则绘制会失效,为了解决绘制失效的窘境,故本人将代码从易语言顺利移植成了C/C++并使用注入的方式劫持绘图函数实现内部D3D绘制,如下本人将具体分析如何实现的内部绘制。
王瑞MVP
2022/12/28
1K0
FPS游戏:封装D3D游戏选择菜单
人工智能在《LOL&王者荣耀》游戏中的角色
近期LOL和王者荣耀游戏已经充斥着真个朋友圈,但是谁又知道在火热的游戏进行中,又有一批批IT男在完成另一项重要的任务,那就是利用深度学习的知识去完成游戏直播的智能化,给现场欣赏比赛的观众不一样的感受。 尤其是最近几年人工智能已经得到了所有业界人士的关注,也得到了国家政府的大力支持,在这样美好的环境中,我们应该把重心放在创新,怎么利用现有的知识去创新的算法、框架、模型等,也要利用现有的高新技术去完善生活中的一些实际工作。 比如去年的出现的阿尔法围棋,也就是大家耳熟能详的AlphaGo,由谷歌(Google)旗
计算机视觉研究院
2018/04/17
1.3K0
人工智能在《LOL&王者荣耀》游戏中的角色
Direct3D纹理映射
创建纹理对象 1: HRESULT CreateTexture( 2:   UINT Width,//宽度 3:   UINT Height,//高度 4:   UINT Levels,//多级渐进纹理序列级数 5:   DWORD Usage,//用途 6:   D3DFORMAT Format,//像素格式 7:   D3DPOOL Pool,//内
逍遥剑客
2018/05/21
1.2K0
网页游戏怎么开发的_网页软件游戏开发
相信有很多和我一样的人,曾多次问google、问baidu、问各大论坛——如何开发游戏?开发游戏如何入门?由于游戏开发本身其复杂、庞大、涉及东西比较多,始终不得其道,最终激情无情的被时间这把杀猪刀给磨灭。之后又一次激情澎湃,又一次不了了之……
全栈程序员站长
2022/09/16
5.7K0
OLE控件在Direct3D中的渲染方法
Windows上的图形绘制是基于GDI的, 而Direct3D并不是, 所以, 要在3D窗口中显示一些Windows中的控件会有很多问题 那么, 有什么办法让GDI绘制的内容在3D中显示出来?反正都是
逍遥剑客
2018/05/23
8010
软件说明书可以从桌面游戏中学到什么
您是否还记得曾因为无聊而玩过的《大富翁》,《生活与线索》以及所有那些老式经典棋盘游戏吗?您还记得他们的使用说明书吗?我猜答案是否定的,因为没有人阅读这些游戏的说明。我们都有一个朋友,了解如何玩游戏,所以他们教了我们玩游戏,这足够了。(厉害的是,请返回并重新阅读《大富翁》的说明:我敢打赌,您可能从未玩过真正的游戏,但在互联网上赚了很多钱。)
五月Rambo
2019/12/23
7330
软件说明书可以从桌面游戏中学到什么
致全球第一批全帧3D游戏!
来自我的CSDN博客:https://blog.csdn.net/zipack/article/details/78978798
Jean
2021/09/12
4130
致全球第一批全帧3D游戏!
Unity 3D 游戏引擎
Unity 3D 也称 Unity,是由 Unity Technologies 公司开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具。
全栈程序员站长
2022/08/25
2.8K0
Unity 3D 游戏引擎
相关推荐
嵌入式的浏览器有第三种方案啦
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文