egret_egret加载json - CSDN
精华内容
参与话题
  • Egret教程(一、入门)

    万次阅读 2016-06-12 16:01:06
    1.下载并安装Egret引擎: http://www.egret.com/products/engine.html 2.命令行(Win+R键输入cmd): 有些喜欢用命令行的童鞋,可以通过命令行对白鹭H5项目进行创建、构建、发布、更新等操作;不喜欢的话可以使用 ...

    1.下载并安装Egret引擎:

    http://www.egret.com/products/engine.html


    2.命令行(Win+R键输入cmd):
    有些喜欢用命令行的童鞋,可以通过命令行对白鹭H5项目进行创建、构建、发布、更新等操作;不喜欢的话可以使用 Egret Wing开发和管理项目。

    参考文档: http://edn.egret.com/cn/docs/page/582

    这里写图片描述


    3.使用TypeScript
    Egret 项目使用 TypeScirpt 语言来开发。TypeScript 是 JavaScript 的超集,具体内容可以参考:

    1、TyptScript官网下载和文档:http://www.typescriptlang.org/
    2、TypeScript详细手册参考TypeScript Handbook(中文版):https://www.gitbook.com/book/zhongsp/typescript-handbook/details
    3、白鹭社区教学文档(小白可以看这个哦):http://bbs.egret.com/thread-886-1-1.html


    4.HelloWorld
    打开Egret Engine,点击工具,安装Egret Wind后打开它。
    这里写图片描述


    当大家熟悉 Egret 开发之后可以直接创建Egret游戏项目或者Egret EUI 项目等,里面包含了很多默认的配置。现在学习 Egret 第一步还是从一个Egret游戏项目来开始。
    这里写图片描述
    游戏项目将会包含一套 HelloWorld 的模板,并包含我们常用的库几个库,game,tween,res。 点击下一步:
    这里写图片描述
    缩放模式参看每一个 模式下面的说明理解即可;然后点击完成。

    5.理解项目结构:
    这里写图片描述

    • src 目录,存放我们的代码。我们编写的代码都放在src目录下面。
      bin-debug 目录,项目编译和运行的debug目录,一般我们不要修改该目录下的内容。
    • libs 目录,这里面存放我们的库文件,包括 Egret 核心库和其他扩展库。当然以后添加了第三方库的话也会放在这里。
    • resource 目录,这里放置我们的资源文件,这里面有一个default.res.json 配置文件,用来配置资源。
    • template 目录,这里是项目调试过程中所需的目录,一般我们不需要修改该目录下的内容。
    • egretProperties.json 项目的配置文件,一般我们会用到里面的modules 字段来配置项目的模块。
    • index.html 项目访问的入口文件,我们可以在这里面配置项目的旋转缩放模式背景颜色等。
    • favicon.ico 一个ico。
    展开全文
  • egret_渲染优化-降低dc

    千次阅读 2019-03-16 15:03:45
    按照 egret_渲染源码阅读.md , 对项目进行实际操作优化, 降低 drawcall. 主要是使用图集 这里的ui是使用 fairygui. 一个包就一个图集 验证合批机制 确认过无误之后, 就往这个方向优化. 工具使用 通过...

    title: egret_渲染优化-降低dc
    categories: Egret
    tags: [egret, 渲染, webgl, drawcall]
    date: 2018-07-21 01:47:18
    comments: false

    按照 egret_渲染源码阅读.md , 对项目进行实际操作优化, 降低 drawcall. 主要是使用图集
    这里的ui是使用 fairygui. 一个包就一个图集


    验证合批机制

    确认过无误之后, 就往这个方向优化.
    工具使用 通过egret的Chrome插件 inspector 控制显示隐藏.

    1. 打开绘制数据显示 (index.html中 data-show-fps="true" )

    2. 禁止 失去焦点时的中端ticker, 注释掉代码(看你自己写在那)

              // egret.lifecycle.onPause = () => {
              //     egret.ticker.pause();
              // }
              // egret.lifecycle.onResume = () => {
              //     egret.ticker.resume();
              // }
      
    1. 添加框框内的九个节点, 控制显示隐藏, 查看dc

      dc差值是 9, 可以判断除 每一个icon, 文字节点 都是一个批次. 9 = 6 + 3

    2. 调整一下节点顺序, 让icon相连, 看是否能合批

      ​ dc差值是 7, 每一个 文字 节点都是一个批次, 但icon节点合到了一个批次. 7 = 6 + 1

    3. 把系统字换成美术字, 并打到一个图集中

      在同一个图集里直接就一个批次绘制完成

    4. 结论: 合批机制正如源码一样. 所以项目使用中, 一些简单的, 变化比较小的 (如单位 人, 辆, 个 …) 可以考虑打成美术字, 并 整理到一个图集中. 可能不同图集会冗余一些相同的icon或美术字, 这就看怎么权衡 dc 跟 内存 了. 如果图集有很多空余空间 (毕竟 2的n次幂图集 应该会有很多空余的地方), 就 直接把 icon 或 美术字 冗余进去.


    spine 动画

    如果某些需求是 连续飘多个spine, 但是颜色不一样(只是举例), 空余考虑打到一个图集中, 通过不同动作触发 不同的uv映射下的贴图.

    例如我这的项目有个飘小鸟的需求, 是spine做的, 但是有多个不同的颜色, 且在场景中的节点 排序是乱序的. 这样最坏情况下 n 个小鸟就n个批次. 优化: 打到一个图集. 一个批次绘制完成

    优化前

    优化后


    cocos 和 egret 降低dc

    这两种绘制机制都差不多, 降低 dc 重要指标就是 使用图集, 然渲染是 get 到的是同一个 Texture 对象, 才能让引擎做 合批 操作.

    所以 有一套自己的资源加载方案, 让同一贴图路径返回同一个texture对象 (其实就是存在一个 key-value 集合中, new Map<string, Texture>()), 然后做引用计数. cocos 中经做了 TextureCache 和 引用计数, 但egret 两个都木有做.


    cacheAsBitmap

    官方还有一个操作就是 将某个节点 生成一个位图, 就一个小图集, dc 可以瞬间降到1, 但是这个是以 内存 为代价的, 看自己怎么权衡了


    详细的优化过程由于商业原因, 不能详细把截图都贴出来 (都是放在 excel 中)

    展开全文
  • egret

    千次阅读 2018-09-07 08:52:45
    Egret中包含多个工具以及项目。Egret Engine是一个基于TypeScript语言开发的HTML5游戏引擎,该项目在BSD许可证下发布。 Egret 采用 TypeScript 进行编程,它是 JavaScript 的一个超集,而且本质上向这个语言添加了...

    Egret是一套完整的HTML5游戏开发解决方案。Egret中包含多个工具以及项目。Egret Engine是一个基于TypeScript语言开发的HTML5游戏引擎,该项目在BSD许可证下发布。

    Egret 采用 TypeScript 进行编程,它是 JavaScript 的一个超集,而且本质上向这个语言添加了可选的静态类型和基于类的面向对象编程。TypeScript 扩展了 JavaScript 的语法,原生 JavaScript 的方法在 TypeScript 也是可以使用的。

     

    在图形图像渲染中,Egret完全使用HTML5标准中的canvas技术,可以运行在支持 HTML5 的浏览器上。但是在我们调试项目的时候还是推荐使用 Chrome 浏览器,一个方面是对 HTML 5 支持的程度较高,二是可以方便的调试 JavaScript 和进行性能分析等。

     

    可以做H5游戏 

     H5 全景

     

    展开全文
  • egret 升级引擎到指定版本

    千次阅读 2019-01-09 15:04:31
    // 命令: egret upgrade --egretversion [target version] // 如: 升级到5.0.14版本 egret upgrade --egretversion 5.0.14  
    // 命令: egret upgrade --egretversion [target version]
    // 如: 升级到5.0.14版本
    egret upgrade --egretversion 5.0.14

     

    展开全文
  • 白鹭Egret实现WeView

    2020-10-22 14:05:02
    class WebView extends egret.DisplayObjectContainer { private _x:number=0; private _y:number=0; private _width:number=0; private _height:number=0; private _src:string=""; private _scaleMode:...
  • 白鹭引擎入门教程一(Egret

    千次阅读 2019-07-02 18:12:05
    1.下载并安装Egret引擎: http://www.egret.com/products/engine.html 2.命令行(Win+R键输入cmd): 有些喜欢用命令行的童鞋,可以通过命令行对白鹭H5项目进行创建、构建、发布、更新等操作;不喜欢的话可以使用 ...
  • 首先是下载adb. ...提取码:12wq 手机要打开开发者模式,不会百度(USB连接) 然后就是下载到c盘,把路径添加到环境变量中 如果不添加就会报错,如 成功的是这样的  在cmd中输入查询命令,就可以查到当前连接的手机...
  • egret官网:http://www.egret-labs.org/ egret下载中心:http://www.egret-labs.org/downloads egret文档中心:http://docs.egret-labs.org/ egret在线API文档:http://www.egret-labs.org/api egret论坛:...
  • Egret 学习笔记

    千次阅读 2018-02-02 16:55:23
    1.纹理集实际上就是将一些零碎的小图放到一张大图当中。游戏中也经常使用到纹理集。使用纹理集的好处很多,我们通过将大量的图片拼合为一张图片从而减少网络请求,原先加载数次的图片资源现在加载一次即可。...
  • 客户端开发中有一种很常见的场景就是展现web页面,也就是...例如IOS、Android,都为开发者提供了WebView组件,而在egret中暂时并没有提供WebView组件,所以我们只能自己动手实现一个能在egret引擎中可用的WebView组件。
  • Egret

    2018-03-30 16:32:46
    白鹭引擎:Egret 白鹭引擎(Egret): Egret Engine(白鹭引擎)是白鹭时代推出的一款使用TypeScript语言构建的开源免费的移动游戏引擎。 通过白鹭引擎,开发者可以快速地创建可以运行在手机App的WebView...
  • egret案例教程

    千次阅读 2020-02-24 12:23:18
    egret案例教程 要求 a.使用DragonBonesPro导出序列帧json和png b.有两个角色每个角色对应4个动作,点击按钮切换不同的动作 c.界面如下 2.步骤如下 A.打开DragonBonesPro导出序列帧 生成json和png文件 B.将json...
  • egret虚拟摇杆

    2019-09-18 14:29:11
    ////////////////////////////////////////////////////////////////////////////////////// // // Copyright (c) 2014-present, Egret ... // All rights reserved. // Redistribution and use in sourc...
  • Egret -- EgretWing动画编辑器使用

    千次阅读 2018-11-02 14:05:16
    Egret有两个可以制作动画的工具,DragonBones后面有空了在说吧,先看一下EgretWing的动画编辑器的使用,自己摸索半天,蒙的一笔,还是看教程的好。 可以去看官方教程:动画编辑器 官方的示例直接使用,可能会报...
  • Egret快速入门

    千次阅读 2017-10-17 21:59:18
    最基本的显示 private onAddToStage(event: egret.Event) { egret.lifecycle.addLifecycleListener((context) => { // custom lifecycle plugin context.onUpdate = () => {
  • Egret使用心得

    千次阅读 2017-11-29 00:23:18
    ...Egret Engine,个人使用引擎版本从1.7.3到3.1.4。 Egret配套工具: 1.界面排布及部分属性预设---Egret Wing 2.碎图压缩合成大图及MovieClip动画素材处理---TextureMerger 3.资源管理---Re
  • egret 入门 初试

    2019-02-16 12:02:33
    egret 入门 初试
  • 加载zip压缩的javascript代码以及在Egret H5实际应用

    千次阅读 热门讨论 2017-07-31 17:51:51
    下面是来自实际项目使用的技术分享,从最开始的简单压缩应用到最后的Egret H5项目实战。主要起因是策划对最快进入登录界面有硬性要求(3秒),那么最开始加载的文件越少越小越好。对H5的游戏程序进行压缩,可以大大缩小...
  • egret 自定义进度条

    2020-05-07 17:02:30
    class ProgressBar extends egret.Sprite{ public background:egret.Bitmap; public bar:egret.Bitmap; public barMask:egret.Rectangle; /** * 进度条参数 defaultWidth 默认宽 defaultHeight ...
  • Egret寻路算法Astar

    千次阅读 2017-04-06 16:12:20
    Astar寻路、A星
1 2 3 4 5 ... 20
收藏数 7,560
精华内容 3,024
关键字:

egret