首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Cocoon.js & Three.js:提高性能

Cocoon.js & Three.js:提高性能
EN

Stack Overflow用户
提问于 2014-04-30 21:03:57
回答 2查看 2.8K关注 0票数 4

我已经开发了一个基本的3D游戏使用box2Dweb的物理和three.js的渲染。这是一个基本的侧滚轮。我想让它在iOS上运行。我决定使用cocoon.js来打包游戏,因为它允许在iOS上使用WEBGL

我遇到的问题是表演。在台式电脑上,游戏以每秒50帧的速度运行。在iPhone 5上,它以每秒3帧的速度运行。

我试着剥离游戏,删除所有的纹理,删除着色,删除天框,渲染更少的水平(只有在相机的看法,稍微在后面和前面)。这确实给了我25%的业绩增长。因此,它现在运行在4 4FPS。

我看了一下iOS启动程序的演示程序,它们都运行得非常顺利。

我唯一能想到的提高性能的方法是缩小JS,我不认为这会给性能带来很大的提升。

我正在使用加速画布/WebGL在启动应用程序。我也尝试过用canvas+选项编译,同样的问题。我正在使用three.js修订版67。我在three.js中使用的是three.js渲染器:

代码语言:javascript
运行
复制
this.renderer = new THREE.WebGLRenderer

关于如何用cocoon.js?提高three.js性能的建议

EN

回答 2

Stack Overflow用户

发布于 2014-05-05 09:20:01

我已经设法提高了帧速率,高达25 fps左右,所以有了很大的改进。

首先,我除去了所有阴影,不仅从投射阴影的物体上移除,而且从所有光源和渲染器中移除:

代码语言:javascript
运行
复制
object3d.castShadow = false;

light.castShadow = false;

renderer.shadowMapEnabled = false;

I也使用多种光源。这是最大的罪魁祸首。我只保留了一个光源,这大大提高了帧速率。

接下来,我消除了雾,这给了我额外的几个fps。

我还缩小了JavaScript,它似乎在性能上也略有提高。

票数 5
EN

Stack Overflow用户

发布于 2014-09-14 13:19:39

很高兴看到你解决了你的问题。

你可能忘记了“后脸选择”,主要是用来提高比赛的表现。

(任何不可见的多边形都不会呈现)这个wiki链接更好地解释了culling

我还建议参加这门基于Three.js https://www.udacity.com/course/cs291的三维图形学课程。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23397974

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档