Cocos备战面试

操作系统
js
ts
es6
前端
面向对象
性能优化

Cocos相关

1. 内存管理

引用计数来管理内存,创建时计数为1,调用retain计数加1,release计数减1,为0时释放内存。
常见的addChild和removeChild会分别加1减1。autoRelease把节点加到自动释放池中,
在当前帧结束时,池中的节点会调用一次release,起到延时自动释放的作用。

2. DrawCall优化

DrawCall 是一种行为(指令),即 CPU 调用图形 API,命令 GPU 进行图形绘制。
由于 DrawCall 带来的 CPU 及 GPU 的渲染状态切换消耗,往往需要通过批次合并来降低 DrawCall的调用次数。
引擎默认会自动合批,但需要保证相邻的渲染状态相同,减少DrawCall主要方式就是避免打断合批的情况,包括
 1. 纹理状态:相邻渲染(节点)使用的图片不是同一张
 2. 混合模式不一样
 3. 模板状态不一样(裁剪)
 
针对这些情况,优化方案就有
 1. 使用静态合图,图集或自动图集,相邻节点用的图打包到同一张图里
 2. 尽量少修改混合模式
 3. 文字开启动态合图,文字实际上是用字体文件生成的图片数据,把它和静态的图片一起在内存中合成一张图。
 4. 动态变化的文字使用fnt字体
 5. ScrollView和其他用了模板的组件(Mask)尽量放到节点后面以避免打断合批
  • 6
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 1. Cocos Creator是什么?它有哪些特点和优势? 2. Cocos Creator的工作原理是什么?它是如何实现跨平台开发的? 3. Cocos Creator中的场景、节点、组件分别是什么?它们之间的关系是怎样的? 4. Cocos Creator中的资源管理是如何实现的?如何加载和释放资源? 5. Cocos Creator中的动画系统是如何实现的?如何创建和控制动画? 6. Cocos Creator中的物理引擎是什么?它有哪些特点和优势? 7. Cocos Creator中的网络通信是如何实现的?如何处理网络消息? 8. Cocos Creator中的调试和优化是如何进行的?有哪些常用的工具和技巧? 9. Cocos Creator中的扩展和插件开发是如何实现的?有哪些常用的扩展和插件? 10. Cocos Creator中的性能优化是如何进行的?有哪些常用的优化技巧和方法? ### 回答2: cocos creator作为知名的游戏开发引擎,面试时常见的问题主要涉及以下几个方面: 1.开发基础知识:如JS基础、HTML、CSS、Canvas等基础知识。 2.游戏开发基础知识:如Sprite节点、Action动作、Scene场景、Camera相机、Audio音频等知识。 3.cocos creator使用技巧:如Prefab预制体、动画编辑器、节点树、组件系统、资源管理器等知识。 4.项目开发实践:如制作流程、版本管理、优化性能、解决bug等方面的知识。 在面试中,面试官通常会通过提问和给予实际的场景模拟来测试应聘者的知识水平。因此,应聘者在准备面试前要充分掌握上述知识点,并有着丰富的实践经验,以达到娴熟地应对面试官的要求。 此外,在面试的过程中,应聘者要注重表现自己的沟通能力和团队意识,向面试官展示自己是一个能够与团队合作、多角度思考问题并解决问题的优秀开发者。 总之,一个能够熟练掌握cocos creator知识并善于与人沟通的开发者,更容易在面试中获得成功。 ### 回答3: Cocos Creator是一款面向开发者的游戏开发引擎,它提供了许多强大的工具和功能。在进行 Cocos Creator 面试时,一些常见的问题包括: 1. 请介绍一下 Cocos Creator 是什么? Cocos Creator 是一款面向游戏开发者的全平台开发引擎,它能够快速创建游戏并将其发布到多个平台(包括 iOS、Android、Web、Windows 和 macOS)。它提供了一些强大的工具和功能,例如图形编辑器、音频编辑器、动画编辑器、物理引擎等,让开发者能够更轻松地创建高质量游戏。 2. Cocos CreatorCocos2d-x 有什么区别? Cocos Creator 是基于 Cocos2d-x 的,并且它提供了一个可视化的编辑器,使得创建游戏变得更加容易。与 Cocos2d-x 相比,Cocos Creator 支持更多的平台、具有更强的可扩展性、提供更好的图形、音频和动画编辑器以及物理引擎。 3. 请介绍一下 Cocos Creator 的节点系统? Cocos Creator 的节点系统是开发者创建游戏场景和对象的主要方式。每个节点都可以包含一些组件和子节点。组件用于控制节点的行为,例如渲染组件可以使节点呈现出图形,物理组件可以控制节点的物理行为等。子节点则可以使得节点拥有更复杂的结构,例如一个人物节点可以包含一个身体节点和四个肢体节点。 4. 请介绍一下 Cocos Creator 的事件系统? Cocos Creator 的事件系统允许开发者在节点上创建和监听事件。事件可以是用户输入(例如点击)或者游戏事件(例如碰撞)。开发者可以使用事件监听器来响应这些事件,例如改变节点的状态或者进行相应的游戏逻辑。 5. 请介绍一下 Cocos Creator 的脚本系统? Cocos Creator 的脚本系统允许开发者使用 JavaScript 开发游戏逻辑。开发者可以在节点上挂载脚本组件,并在其中编写逻辑。脚本可以响应事件、访问节点组件、调用函数等。Cocos Creator 还支持 TypeScript,使得代码更加可读、可维护。 总之,Cocos Creator 是一款强大的游戏开发引擎,具有广泛的应用场景和不断更新的技术,对于开发者来说,需要不断地学习并掌握其各项功能,才能更加熟练地开发高质量游戏。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lyzz0612

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值