小编第一次接触游戏引擎 准备入白鹭的坑 看了看文档 发现根本看不懂

只好找各种书和教程  然而由于版本更新很多代码已经执行不出来

在此一点一点记录学习心得  第一篇我们就从熟悉项目目录和给项目添加资源开始

首先我们应该下载好白鹭引擎和编辑器  然后我们新建一个项目

点击 文件  选择 新建项目 然后选择 Egret 游戏项目

选择Egret游戏项目   然后给项目取个名字  这样就ok了 点击创建我们的项目就创建完了

其中resource就是我们存放资源的文件夹

点开default.res.json 出现资源管理器

在assets下添加图片 编辑器会给出提示

点击保存 会自动把图片加到资源管理器里的preload组里

preload 组是项目预加载的资源 如果不需要预加载的资源 我们点击添加组 输入组名称 然后放到组里

在资源管理器左边选中文件  然后拖动到其他组里 然后回到preload组里选中这张图片 右键单击一下选 移除资源

这样我们的图片就添加好了  那么我们怎么使用图片呢

我们打开项目入口文件  main.ts

找到 createGameScene 函数

其中前几行  就是为项目添加图片

调用createBitmaoByName()方法  再里面传入资源管理器中对应图片的名字 注意是资源管理器中对应图片的名称  不是图片的名字  然后添加,设置宽高  位置 就完成了一张图片的添加 我们自己动手试验一下

把默认的设置背景图片和文字的函数删除掉  自己写一个函数 init 再函数里添加一张图片

然后点击  项目 调试  图片就出来了 代码如下 :

class Main extends egret.DisplayObjectContainer {

public constructor() {
        super();
        this.addEventListener(egret.Event.ADDED_TO_STAGE, this.onAddToStage, this);
    }

private onAddToStage(event: egret.Event) {

egret.lifecycle.addLifecycleListener((context) => {
            // custom lifecycle plugin

context.onUpdate = () => {

}
        })

egret.lifecycle.onPause = () => {
            egret.ticker.pause();
        }

egret.lifecycle.onResume = () => {
            egret.ticker.resume();
        }

this.runGame().catch(e => {
            console.log(e);
        })

}

private async runGame() {
        await this.loadResource()
        this.init();
    }

private async loadResource() {
        try {
            const loadingView = new LoadingUI();
            this.stage.addChild(loadingView);
            await RES.loadConfig("resource/default.res.json", "resource/");
            await RES.loadGroup("preload", 0, loadingView);
            this.stage.removeChild(loadingView);
        }
        catch (e) {
            console.error(e);
        }
    }

private boy: egret.Bitmap;
    /**
     * 初始化游戏
     */
    private init():void {
        this.boy = this.createBitmapByName("green_boy_png");
        this.addChild(this.boy);
        this.boy.x=200;
        this.boy.y=500;
    }

/**
     * 根据name关键字创建一个Bitmap对象。name属性请参考resources/resource.json配置文件的内容。
     * Create a Bitmap object according to name keyword.As for the property of name please refer to the configuration file of resources/resource.json.
     */
    private createBitmapByName(name: string) {
        let result = new egret.Bitmap();
        let texture: egret.Texture = RES.getRes(name);
        result.texture = texture;
        return result;
    }
}

《白鹭引擎01》场景中添加图片相关推荐

  1. 在场景中添加光线——在Deferred Shading引擎中添加阴影能力

    问题 虽然你已经掌握了基本的计算机实时光照,但你应该注意到光源还没有投射出阴影.这是因为pixel shader是基于光线与法线的夹角计算光照的.直到现在,pixel shader还没有考虑到光线与像 ...

  2. WebAssembly 在白鹭引擎5.0中的实践

    作为一种可移植.体积小.加载快且兼容web的全新格式,WebAssembly受到诸多关注,并迎来企业的探索实践.白鹭引擎利用WebAssembly重新实现了一个新的渲染内核并作为一个可选项提供给开发者 ...

  3. 广告行业中那些趣事系列39:实战广告场景中的图片相似度识别任务

    导读:本文是"数据拾光者"专栏的第三十九篇文章,这个系列将介绍在广告行业中自然语言处理和推荐系统实践.本篇从理论到实践介绍了广告场景中的图片相似度识别任务,对于希望解决图片相似度识 ...

  4. 初次使用Android Studio问题,Android Studio往项目中添加图片

    2019独角兽企业重金招聘Python工程师标准>>> 习惯了iOS往项目中直接拖拽的图片的习性,第一次往Android Studio中添加图片为难了,怎么也拖拽不进去,为难了,研究 ...

  5. java 图片动画_java在窗口中添加图片做动画,怎么一闪一闪的?

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 视频来自:优酷 在java中添加图片做动画效果,怎么一闪一闪的运动啊?怎样才能让它不闪的连续运动呢? 下面是代码,代码项目project里有两个类,一个是 ...

  6. 【Github】怎么在README.md中添加图片?

    原理是将图片作为文档上传,在README.md中引用即可. 参考博客:[GitHub]给GitHub上的ReadMe.md文件中添加图片怎么做 . gitHub创建文件夹

  7. ag-grid 表格中添加图片

    ag-grid是一种非常好用的表格,网上搜索会有各种各样的基本用法,不过对于在ag-grid 表格中添加图片我没有找到方法,看了官方的文档,当然英文的自己也是靠网页翻译,最后发现有这么一个例子,我知道 ...

  8. iview在table中添加图片

    我们知道iview的table封装的太好,如果只是展示数据简直不要太简单,但是比如合并单元格就很麻烦,而我要做的是在table中添加图片 建议大家先看一下这个:https://www.iviewui. ...

  9. 如何在ps中添加图片上的塑料布效果

    1.塑料滤镜能够产生一种在照片表面蒙上一层塑料布的效果,接下来讲讲如何在ps中添加图片上的塑料布效果.打开PS,把素材导入PS中,Ctrl+J,复制一层图层,选择钢笔工具,将途中人物腰部一下的裙摆抠出 ...

最新文章

  1. fiddler工具之Filters
  2. 加拿大留学|电气工程/计算机工程/计算机科学,傻傻分不清
  3. 机器学习实战之SVM
  4. 1.6 为什么使用向上转型而不直接创建子类对象?
  5. 关于Ajax中文乱码的问题
  6. c malloc 头文件_干货笔记 | C/C++笔试面试详细总结(二)
  7. java怎么设置背景_如何在Java中设置背景图片?
  8. VS Code 的插件位置更改
  9. bzoj2260: 商店购物4349: 最小树形图
  10. 【ThinkPHP5.0RC2吃螃蟹之】关于ThinkPHP5.0的渲染模板输出
  11. HTTP中GET与POST的区别,99 %的人都理解错了
  12. .net垃圾回收学习[NET 2.0 Performance Guidelines - Garbage Collection][翻译加学习]
  13. poj 2833 The Average(堆)
  14. android电容触摸驱动
  15. mac 批量删除word中的空白行
  16. echarts的示例二:饼图(南丁格尔图)
  17. python中split什么意思_python中split的意思是什么(python中字符串的意思)
  18. Arduino小白的学习历程
  19. c++标准扩展TR1
  20. Github上Laravel开源排行榜Star数31-60名

热门文章

  1. PPT如何跨页让图像对齐?
  2. 智慧水务智慧运营建设方案
  3. matlab读取excel数据并画图
  4. 分享一个 ChatGPT可免费使用的AI助手
  5. pyinstaller使用
  6. 音乐蜂鸣器设计-ISE操作工具
  7. 天天写算法之(最大团)Maximum Clique
  8. App Annie 的数据涞源分析
  9. 【宜搭】低代码开发师(中级)考试仓库库存管理系统流程
  10. 离线Cesium客户端