当前位置: 首页 > 软件库 > 程序开发 > 游戏开发包 >

PlayCanvas

基于WebGL的游戏引擎
授权协议 MIT
开发语言 JavaScript
所属分类 程序开发、 游戏开发包
软件类型 开源软件
地区 不详
投 递 者 贺波
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

playcanvas是一款基于WebGL的游戏引擎,集UI、2D、3D、编辑器于一体。

一般来讲,游戏开发与web应用完全是两码事。但事实上游戏世界的很多工具都可以用在网站中增加华丽界面。PlayCanvas就是一个基于WebGL的游戏引擎,结合了物理、光影、音效等工具,用于创建一个复杂的界面。

  • 图形 -基于WebGL 1和2构建的高级2D + 3D图形引擎。
  • 动画 -强大的基于状态的动画,用于角色和任意场景属性
  • 物理 -与3D刚体物理引擎ammo.js完全集成
  • 输入 -鼠标,键盘,触摸,游戏手柄和VR控制器API
  • 声音 -基于Web Audio API构建的3D位置声音
  • 资产 -基于glTF 2.0DracoBasis压缩构建的异步流系统
  • 脚本 -使用Typescript或JavaScript编写游戏行为

示例代码:

// Create a PlayCanvas application
var canvas = document.getElementById("application-canvas");
var app = new pc.fw.Application(canvas, {});
app.start();

// Fill the available space at full resolution
app.setCanvasFillMode(pc.fw.FillMode.FILL_WINDOW);
app.setCanvasResolution(pc.fw.ResolutionMode.AUTO);

// Create box entity
var cube = new pc.fw.Entity();
app.context.systems.model.addComponent(cube, {
    type: "box"
});

// Create camera entity
var camera = new pc.fw.Entity();
app.context.systems.camera.addComponent(camera, {
    clearColor: new pc.Color(0.1, 0.1, 0.1)
});

// Create directional light entity
var light = new pc.fw.Entity();
app.context.systems.light.addComponent(light);

// Add to hierarchy
app.context.root.addChild(cube);
app.context.root.addChild(camera);
app.context.root.addChild(light);

// Set up initial positions and orientations
camera.setPosition(0, 0, 3);
light.setEulerAngles(45, 0, 0);

// Register an update event
app.on("update", function (deltaTime) {
    cube.rotate(10 * deltaTime, 20 * deltaTime, 30 * deltaTime);
});
  • Playcanvas是一款开源的3d引擎,底层格式是自家定义的json格式,其文档说明如下: https://developer.playcanvas.com/en/user-manual/graphics/file-format/ 但是在官网翻不到其动画文件的解析代码,这里根据其引擎源码的解析,对其源码文件格式解析如下记录 { "animation":{ // 动画时长

  • 需求完成一个3d模型的展示以及动画和介绍。 我放在个人网站了,语法是面向对象js。 PlayCanvas教程  

  • 这两台天参与了一个小项目。 需求是使用playcanvas制作一些粒子特效。本来以为是一个很简单的工作,就是在编辑器中制作一些粒子特效,改改参数,指定一些贴图,就搞定了呢。 结果,效果制作完毕后提交给客户。客户却说不使用编辑器开发,要采用纯javascript调用的方式。这让我把里面的资源都得导出来,太麻烦了。 而且导出方法官方文档也没说明,可把我难住了。我想出了一个办法,就是把config.js

  • 需求完成一个3d模型的展示以及动画和介绍。 我放在个人网站了,语法是面向对象js。 想学习的可以看汇总。  https://psq.youthup.cn/playcanvas_all/

  • JavaScript 语言: JaveScriptBabelCoffeeScript 确定 // THIS SHOWS ALL THE GEOMETRIC SHAPES YOU CAN CREATE OUT OF THE BOX WITH PLAYCANVAS!!! // https://github.com/playcanvas/engine var canvas = document.getE

  • PlayCanvas Paoject 一个快速测试PlayCanvas Demo 的工程。 源码下载: PlayCanvas Paoject下载地址 操作说明: 1.安装依赖 npm install 2.运行 npm run start PlayCanvas简介 PlayCanvas 是什么? PlayCanvas是一个用于交互式Web内容的可视化开发平台。 您构建的工具和Web应用程序都由H

  • 原文:http://developer.playcanvas.com/zh/tutorials/beginner/keepyup-part-three/ 游戏脚本和输入 在场景的根实体Game上绑定了两个脚本,game.js和input.js。脚本通常是按照在层级结构中遇到的先后顺序执行的,因此最简单的做法是将所有不与某个实体相关的脚本都绑定到第一个实体上。(注意,你也可以使用脚本优先级对话框设置

 相关资料
  • 这可能是雄心勃勃的,但在stackoverflow我信任... 我想知道在android平台上创建一个基于网络的游戏引擎的能力和可能的障碍,并将以类似于“与朋友交谈”等游戏的方式进行游戏。 null

  • 目前,我正在尝试用Java开发基于2D平铺的侧滚游戏,主要基于David Brackeen的“用Java开发游戏”中的代码和示例 目前地图文件的大小为100x100个图块(每个图块为64x64像素)。我已经将系统配置为仅显示玩家可见的图块。Graphics系统由ScreenManager类管理,该类返回当前BufferStrategy的图形对象,如下所示: ScreenManager.java 来

  • 所以我有(gridLayout),每个JXButton都有一个图标,一个播放器所属的片段,并且有一个。 我目前正在努力使战略游戏(两个球员-我处理两者)。我设置了图标,碎片和一个碎片应该如何移动。 现在我希望让它轮流播放。 我的思想播放器2件当播放器1转动时隐藏。 和应该改变图标时,播放器2。 如果这两种方法看起来还可以,那么我的问题在于如何实现转向。

  • 使用Cocos2D, 模仿QQ连连看写的一个连连看游戏Demo,有声音效果。 [Code4App.com]

  • 本文向大家介绍基于jsp的井字游戏实例,包括了基于jsp的井字游戏实例的使用技巧和注意事项,需要的朋友参考一下 做一款回忆童年的游戏,这款游戏代码比较简单,主要是掌握算法的原理,但是也有一些需要注意的地方。 游戏界面 进入正题。项目的效果图如下: 游戏有一个开始界面可供选择玩家的角色,然后选择先手是哪一方,接着开始游戏。选择界面做了一个遮罩层,里面提供给用户选择,选择之后便把遮罩层隐藏并开始游戏。

  • 问题内容: 我最近一直在研究游戏开发,而我的第一种编程语言是Java。在玩了许多用c ++开发的令人惊叹的游戏之后,我想知道为什么Java在游戏行业中没有被大量使用。我查看了jMonkeyEngine 3和其他一些游戏引擎环境,但是看到的屏幕截图远没有那么令人惊叹。诸如EA的《极品飞车》(Need for Speed Hot)和ubisoft的Assassins Creed等标题传达了这种现实感。