engine, 在WebGL和WebVR上,JavaScript游戏引擎

分享于 

8分钟阅读

GitHub

  繁體 雙語
3D WebGL game engine with online toolset.
  • 源代码名称:engine
  • 源代码网址:http://www.github.com/playcanvas/engine
  • engine源代码文档
  • engine源代码下载
  • Git URL:
    git://www.github.com/playcanvas/engine.git
    Git Clone代码到本地:
    git clone http://www.github.com/playcanvas/engine
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/playcanvas/engine
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    

    PlayCanvas

    PlayCanvas游戏引擎

    PlayCanvas是一个开源游戏引擎。 它在所有现代浏览器中使用HTML5和来运行游戏和其他交互 3D 内容,而不需要插件。

    项目展示

    许多游戏和应用都使用PlayCanvas引擎发布。 下面是一个小选择:

    After The FloodMaster ArcherDisney: Hour of CodeWebVR Lab
    TANXSwooopFlappy BirdVirtual Voodoo
    Space BaseSponza Runtime LightmapsStar-LordOrange Room VR
    CarSteampunk SlotsCasinoSeemore

    你可以在 PlayCanvas网站上看到更多的游戏。

    用户

    在游戏开发。汽车。数字机构等领域,PlayCanvas引擎和工具已经被领先的公司所使用。 其中一些是:
    收费的迪斯尼,King,Zynga,Miniclip,Nickelodeon,Leapfrog,IGT,ARM,三星,Mozilla,Facebook

    特性

    PlayCanvas引擎是一款功能齐全的游戏引擎。

    • 图形
      • 基于 2.0的呈现器( 带回退到 1.0 )
      • 基于物理的渲染( PBR )
      • 方向。点和聚光灯
      • 阴影映射( PCF和VSM实现)
      • 运行时光图烘焙
      • static,蒙皮和变形网格
      • 带有编辑器的GPU粒子引擎
      • PostFX库:布鲁姆,边缘检测,FXAA,图片等
      • 由 Maya。3DS Max。搅拌机等提供的无缝默认材料支持。
      • 从 Maya,3DS 最大,搅拌机,搅拌机的完整模型导出管道,通过资产用户手册。
    • 碰撞&物理
      • 3D 刚体物理引擎 ammo.js 完全集成。
    • 音频
      • 基于网络音频API的三维定位
    • 资源加载
      • 简单而强大的资源加载
      • 单个资产的流
      • 资产变体- 基于平台支持加载压缩的纹理( DXT,PVR,ETC1 )
    • 实体/组件系统
      • 内置组件:模型。声音。动画。照相机。碰撞。灯光。刚体。脚本。particleSystem
    • 脚本系统
      • 通过将JavaScript附加到游戏实体来编写游戏行为
      • 实时代码热交换支持快速迭代
    • 输入
      • 鼠标,键盘,触摸屏,游戏手柄,VR

    用法

    这里是一个超级简单的Hello World 示例- 一个旋转立方体 !

    <!DOCTYPE html>
    <html>
    <head>
     <metacharset="utf-8">
     <title>PlayCanvas Hello Cube</title>
     <metaname='viewport'content='width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no'/>
     <style>body {margin: 0;overflow: hidden; }</style>
     <scriptsrc='https://code.playcanvas.com/playcanvas-stable.min.js'></script>
    </head>
    <body>
     <canvasid='application'></canvas>
     <script>// create a PlayCanvas applicationvar canvas =document.getElementById('application');var app =newpc.Application(canvas, { });app.start();// fill the available space at full resolutionapp.setCanvasFillMode(pc.FILLMODE_FILL_WINDOW);app.setCanvasResolution(pc.RESOLUTION_AUTO);// ensure canvas is resized when window changes sizewindow.addEventListener('resize', function() {app.resizeCanvas(); });// create box entityvar cube =newpc.Entity('cube');cube.addComponent('model', { type:'box' });// create camera entityvar camera =newpc.Entity('camera');camera.addComponent('camera', { clearColor:newpc.Color(0.1, 0.1, 0.1) });// create directional light entityvar light =newpc.Entity('light');light.addComponent('light');// add to hierarchyapp.root.addChild(cube);app.root.addChild(camera);app.root.addChild(light);// set up initial positions and orientationscamera.setPosition(0, 0, 3);light.setEulerAngles(45, 0, 0);// register a global update eventapp.on('update', function (deltaTime) {cube.rotate(10* deltaTime, 20* deltaTime, 30* deltaTime); });</script>
    </body>
    </html>

    想自己玩代码? 在 CodePen 上编辑它。

    教程&示例

    在这里查看所有的教程。

    文档

    可以在 PlayCanvas开发人员网站上提供完整的文档,包括API参考

    插件发布

    这里有一个完整的发布和发行说明列表,这里是

    :如何获取模型

    要转换使用 3D 模型包的任何模型创建,请在开发人员文档中查看这里页面的

    :如何构建

    • 确保你已经安装了 nodejs
    • 确保你已经安装了

    第一次构建时,将要求你使用 npm 安装依赖项。 e.g.

    
    npm install fs-extra
    
    
    npm install google-closure-compiler
    
    
    npm install preprocessor
    
    
    
    

    然后,要执行生成/输出文件夹的引擎的生成,请执行以下操作:

    
    cd build
    
    
    node build.js
    
    
    
    

    查看内置帮助以获得更多构建说明

     
    node build.js -h
    
    
    
     

    引擎的预生成版本也可用。

    最新开发版本:

    最新稳定版本:

    特定的引擎版本:

    获取帮助

    使用论坛论坛 - - 使用论坛询问/回答有关PlayCanvas的问题。

    收费 Discord Discord - 实时文本,语音和视频聊天,供PlayCanvas开发者社区使用。

    想帮助我们在网络上做最好的3D 引擎? 太好了看看 CONTRIB.md 可以让你开始。 寻找 "好的第一 PR"的标签。

    Github问题

    请使用 Github的问题报告来报告或者请求特性。

    报告 Bug

    请按照以下步骤报告 Bug

    对相关问题进行搜索搜索现有问题,以便不创建重复项

    创建一个 Bug - 请创建一个最小的独立,你可以重新生成你

    尽可能多的共享尽可能多的信息- 所有的东西都没有帮助,操作系统,浏览器版本,所有的东西。

    PlayCanvas平台

    PlayCanvas引擎是一个开源引擎,你可以使用它在浏览器中创建游戏和 3D 个可视化。 除了引擎,我们还开发了 PlayCanvas开发平台,它具有可视化编辑器。资产管理。代码编辑。主机和发布服务等功能。

    许可证

    PlayCanvas引擎是在 许可下发布的。 查看许可证文件。


    WEB  JAVA  Javascript  GAM  Webgl  游戏引擎  
    相关文章