`
Poechant
  • 浏览: 229445 次
博客专栏
Bebe66e7-3a30-3fc9-aeea-cfa3b474b591
Nginx高性能Web服务...
浏览量:24307
5738817b-23a1-3a32-86de-632d7da73b1e
Cumulus实时媒体服务...
浏览量:22095
社区版块
存档分类
最新评论

传统3D游戏引擎的Web化

 
阅读更多

转载自:http://blog.csdn.net/xoyojank/article/details/8107373


最近floh大神的blog又复活了, 现在n3的主要发展发向是web化

其实也是跟PC和主机平台的衰落有关, 各种移动设备正在逐渐取代PC的地位
而做为一个3D游戏引擎, 想要适应这个潮流却不是很容易
先不考虑其它, 光技术上面临的问题就很棘手:
  • C++目前无法直接用于web开发, 必然要面临老代码转换/移植的问题
  • 3D硬件加速的渲染在浏览器这边, 没有一个统一的标准
  • 多线程, web浏览器里对于线程的使用有很多限制
  • 输入设备, 比如右键的功能很多时候会跟浏览器冲突
  • IO, 通过网络传输的资源在传输, 访问权限等上也有限制
  • 性能问题, 脚本语言的速度虽说已经很快的, 但还是没有Native快
就目前来说, C++的3D引擎勉强能用的解决方案大概有5种:
  • Microsoft IE ActiveX
    • 平台支持: IE(Win). 本身设计有问题, 不被其它平台支持
    • 优势: 相当于把现有的引擎换个窗口, 代码改动最小, 性能几乎没损失
    • 缺点: 需要安装插件, 没认证过的会被大多数安全软件拦截, 不如直接做成微端
    • 代表: Unity3D, 山寨(或叫自研)3D引擎开发的游戏
  • Sun Java JNI
    • 平台支持: Win/Mac/Linux. 不过需要每个平台都做一个Native版本
    • 优势: 浏览器兼容性好, 相当于一个通用的ActiveX
    • 缺点: 操作系统跨平台需要额外工作. 需要安装Java, 并且开启浏览器支持
    • 代表: Drakensang Online
  • Adobe FlasCC
    • 平台支持: Win/Mac/Linux. 需要Flash11+, 把C++编译成AS能用的库
    • 优势: 平台兼容性目前最好
    • 缺点: 渲染器需要重写, 而且是Adobe自己的一套标准. 另外, 想要性能高? 买license!
    • 代表:Epic Citadel(只是demo而已)
  • Google Native Client
    • 平台支持: Chrome(Win/Mac/Linux). 浏览器限制住了...
    • 优势: 与Native的性能差距不大, 而且IDE与Debugger目前也有了(VS2010)
    • 缺点: 虽然看上去很完美, 但不被其它势力所支持
    • 代表: OGRE, Bullet, Unity3D...Google Web Store上有不少移植好的游戏了
  • Mozilla Emscripten
    • 平台支持: FireFox/Chrome(Win/Mac/Linux). 把C++编译成JS
    • 优势: HTML5符合未来的发展趋势
    • 缺点: WebGL不被Microsoft支持. 性能目前损失比较大, SDK也不是非常成熟
    • 代表:BananaBread
值得注意的是, Adobe/Google/Mozilla这些都是基于LLVM搞的, 看来这也是一个好玩的玩意儿
暂时总结这么多, 很多观点是具有时效性的, 明年说不定就大变样了
做为游戏开发者, 还是要做好准备, 免得out了, HOHO~

注: 本文仅限于C++开发的3D游戏引擎, 不包括各种XNA/Sliverlight的3D游戏或是Flash/HTML5的2D游戏
分享到:
评论

相关推荐

    3D WebView for Windows and macOS Web Browser3.9

    总的来说,"3D WebView for Windows and macOS Web Browser 3.9" 是一项将Unity3D技术与Web浏览器结合的创新实践,它打破了传统网页的二维限制,引领我们进入一个更加立体、生动的互联网世界。通过这一技术,用户...

    3D WebView for Android and iOS Web Browser 4.2.2-4.4.4

    Unity作为全球广泛使用的3D游戏引擎,支持多平台开发,并拥有丰富的资源库和强大的社区支持。将Unity与3D WebView集成,开发者可以利用Unity的强大3D渲染能力和物理引擎,轻松创建出令人惊叹的3D内容,并将其无缝地...

    3D WebView for Windows and macOS Web Browser.unitypackage

    《3D WebView for Windows and macOS Web Browser.unitypackage》是一款专为Windows和macOS平台设计的3D网页浏览解决方案,其核心是利用Unity引擎的强大功能,将传统的2D网页体验提升到一个新的三维维度。...

    用 WebGL 打造 HTML5 游戏引擎平台.pdf

    同时,Unity用户构造也允许开发者利用强大的Unity引擎将游戏内容导出为WebGL格式,这为3D游戏的开发和部署提供了可能。 WebGL不仅支持传统的DOM操作方式,还提供了HTML5中元素的绘制能力,使得开发者可以更精细地...

    3d web极速小车

    而Race.unity3d是Unity项目的编译输出文件,其中包含了游戏的所有场景、模型、脚本和其他资源,浏览器加载此文件后,Unity Web Player就能解析并渲染出3D游戏环境,让玩家开始享受这款3D Web 极速小车的竞速之旅。...

    沙盒游戏引擎CubeEngine.zip

    总的来说,Cube Engine是一个独特的3D游戏引擎项目,它的出现为Web游戏开发开辟了一条新的路径。尽管没有3D硬件加速,但其开源特性与JavaScript基础为开发者提供了丰富的学习和实践资源。对于那些愿意接受挑战并希望...

    基于flash 3D引擎papervision3d开发的个人3d电商产品、效果展示demo.zip

    虽然其性能可能无法与现代的硬件加速3D引擎相比,但对于轻量级的3D游戏或网页游戏,Papervision3D仍能提供足够的功能。开发者可以利用Papervision3D创建简单的3D游戏场景,实现角色移动、碰撞检测等基本功能。 总之...

    3D WebView for UWP Hololens Web Browser 3.14.1

    开发者可以借助Unity的可视化编辑器创建丰富的3D场景,并通过3D WebView嵌入网页元素,提供更加生动且交互性强的用户体验。 在HoloLens上,3D WebView的运用拓展了Web浏览器的边界。传统的2D网页在AR环境中被转化为...

    Quest3D制作游戏案例教程

    Quest3D是一款强大的交互式3D应用程序开发工具,它允许开发者通过...通过深入学习这本教程,无论是初学者还是有一定经验的开发者,都能提升在Quest3D平台上的游戏开发能力,从而创作出更多创新和引人入胜的3D游戏作品。

    基于Android平台Unity3D游戏设计与实现

    综上所述,《基于Android平台Unity3D游戏设计与实现》这篇文章详细介绍了Unity3D引擎的基础知识及其在Android平台游戏开发中的应用。通过具体案例《峡谷攻防战》的分析,我们可以看到Unity3D为开发者提供了一个强大...

    MP1_html5_游戏引擎_webgl_图形引擎_

    本文将深入探讨这些技术及其在2D网页游戏引擎设计中的应用。 首先,HTML5作为下一代超文本标记语言,为网页内容提供了丰富的媒体支持。它引入了Canvas元素,这是一个可编程的二维绘图表面,开发者可以通过...

    zeta:完全开放的2d和3d游戏引擎:video_game:适用于以JavaScript和WebGL编写的Web,并支持电子

    Zeta游戏引擎是一款完全开放源代码的开发工具,专为创建2D和3D游戏而设计,它基于JavaScript和WebGL技术,使开发者能够构建在Web浏览器上运行的游戏。这款引擎的独特之处在于它完全利用了现代Web技术,使得游戏开发...

    3D WebView-Windows-macOS-Web Browser 4.2.unitypackage.zip

    Unity引擎作为一款强大的跨平台游戏开发工具,不仅在游戏开发领域大放异彩,而且在虚拟现实、增强现实以及3D交互应用中也有广泛的应用。在这款名为"3D WebView-Windows-macOS-Web Browser 4.2.unitypackage.zip"的...

    javascript 3D、HTML 3D展示效果,多种展示模式自动切换,适合大屏展示

    2. Babylon.js:是一个全面的3D游戏引擎,支持物理模拟、动画和复杂的光照效果,适合创建高性能的游戏和复杂3D场景。 3. A-Frame:是基于WebVR的框架,使用HTML-like语法,简化了VR内容的创建,同时也支持3D场景的...

    蓝牛web3d引擎安装包

    Web3D技术在游戏、教育、建筑、工业设计等多个领域都有广泛的应用。 首先,我们要了解Web3D的基本概念。Web3D是指通过互联网展示和交互3D模型的技术,它打破了传统2D网页的限制,让用户可以在浏览器中直接体验立体...

    2D WebView for WebGL Web Browser4.0

    Unity作为一个强大的跨平台游戏引擎,也广泛应用于交互式内容的制作。这个unitypackage文件包含了一整套预设和脚本,可以直接导入到Unity项目中,方便快速地在Unity环境下搭建和调试2D WebView功能。 总之,2D ...

    Genesis-3D白皮书

    - 该引擎是商业级开源免费的2D/3D游戏引擎,提供高效、稳定的技术支持,允许用户根据自身需求进行定制开发。 - 引擎融合了商业软件的高效稳定特性与开源软件的灵活性,旨在降低游戏研发难度,加速游戏创意的实现。...

    GEW:Web游戏引擎

    它允许开发者使用HTML5、JavaScript和其他Web技术创建互动丰富的2D和3D游戏,无需依赖传统的插件或者本地应用程序。这款引擎的出现,极大地简化了Web游戏的开发流程,使得游戏能够跨平台运行,覆盖更广泛的用户群体...

    3D-WebView-For-iOS-Android4.2.2 + Mac-Windows4.2

    这一技术主要应用于游戏开发、虚拟现实(VR)、增强现实(AR)以及互动式Web应用程序中,通过Unity引擎实现内嵌网页插件,让开发者能够轻松地在3D环境中集成网页内容。 在Unity中,3D WebView插件扮演着重要的角色。它...

    益智游戏 3D 国际象棋网页版

    【标题】"益智游戏 3D 国际象棋网页版" ...总的来说,"益智游戏 3D 国际象棋网页版"是一款结合了现代Web技术和传统棋类游戏智慧的创新应用,其背后涉及的开发技术广泛且深入,为玩家带来了便捷、互动的在线对弈体验。

Global site tag (gtag.js) - Google Analytics