最近这两天看了关于H5游戏开发的一个教程,实践很短暂,看了很多理论的东西,现在呢也只是想回忆回忆关于EUI的部分知识吧

时间:2023-01-06 17:49:04

首先我了解了什么是Egret:

Egret中文就是白鹭的意思,Egret是一套H5游戏开发的软件。(纯粹属于个人理解)

其次我对以下几款软件的相关知识做了些了解:

Egret Engine(引擎),Egret Wing(编辑器),Texture Merger(可将零散纹理拼合为整图,同时也可以解析SWF、GIF动画,导出可供Egret使用的配置文件),Egret Feather(是一款粒子效果编辑器)ResDepot(是针对资源配置文件的创建,编辑和管理工具)等.......ps:现在我只看了这些吧还有很多相关软件

接下来我看了关于游戏的UI知识:

前期游戏UI是用的GUI,更新后更多的是在使用EUI。GUI过渡到EUI后改变了那些呢?新增加了什么呢?我带着这个疑问继续了解了下去。EUI和GUI相比,组件后立即返回宽高;现在的EUI只有addchild()系列方法,已经不存在addElement()方法,任意UI组件和普通显示对象都可以互相混合添加;GUI库里必须将皮肤声明为一个独立的EXML文件在引用皮肤,(如果皮肤需要反复使用建议使用这种方式),EUI里已经支持EXML的内部类定义方法,可以直接嵌入写在节点内;EUI运行时将EXML文件改为运行时解析,不在提前编译(GUI库里EXML文件是在命令行编译阶段编译成js文件);EUI库里EXML可以描述非皮肤对象;EUI支持动态数据绑定;EUI支持自动布局兼容旋转缩放;EUI库还可以主题匹配。

然后我了解了EUI的基础知识:

一个页面首先我先下手的就是它的UI布局,EUI的布局分为5种:

1、基本布局,指的就是默认的布局样式。在基本布局模式下,容器内的子项的定位方式取决于每一个子项的坐标设置;

2、水平布局,也就是横向布局。这种布局他会自动将所有的子项横着排序,然后你可以设置子项之间的间距(gap属性),horizontalAlign(水平对齐方式),verticalAlign(垂直对齐方式),padding系列属性,设置容器的内边距;

3、垂直布局,就是竖向的排列方式。有水平布局一样的属性;

4、网格布局,即做横向布局也做纵向布局,实现的效果就像格子一样,它除了可以设置padding属性以外,还可以设置horizontalGap(设置子项之间的水平距离),verticalGap(子项之间的垂直距离),coumnAlign(如何将完全可见列与容器宽度对齐),rowAlign(如何将完全可见列与容器高度对齐)

注意:columnAlign和rowAlign设置对于边界对齐有很重要的作用

5、自定义布局,顾名思义就是按照你想做的样子进行布局。自动布局可以完成调配屏幕的适配问题{完成屏幕适配可以分为两个步骤:1、舞台尺寸和设备屏幕的适配关系。2、内部UI界面与舞台尺寸的适配关系}自动布局也可以解决异步问题和失效验证机制。

以上布局最常用的用应该算是水平布局和垂直布局了,其中水平布局、垂直布局、网格布局,都会忽略子项上的坐标位置,所有子项的位置都将有布局统一管理。布局、控件和图片的结合基本上就算有简单的UI部件组成了。

完结了,今天就回忆到这里吧。写程序反正急不得,每天进一小步,总比原地踏步强。

最近这两天看了关于H5游戏开发的一个教程,实践很短暂,看了很多理论的东西,现在呢也只是想回忆回忆关于EUI的部分知识吧的更多相关文章

  1. 今天我看了一个H5游戏EUI的例子,我都快分不清我到底是在用什么语言编译了代码了,作为刚刚学习H5游戏开发的菜鸟只能默默的收集知识

    今天看了一个EUI的demo,也是接触H5游戏开发的第五天了,我想看看我能不能做点什么出来,哎,自己写果然还是有问题的.在看EUI哪一个demo的时候就遇见了一些摇摆不定的问题,我觉得提出来 1.to ...

  2. 关于h5游戏开发,你想了解的一切都在这儿!

    ​2020年,受疫情影响,线下产业红利褪去,线上迎来的新一轮的高峰.众多商家纷纷抓住了转型时机,开启了流量争夺战.H5游戏定制无疑是今年引流的大热门.如何开发一款有趣.有爆点.用户爱买单的好游戏呢? ...

  3. 为什么选择H5游戏开发定制?

    为什么选择H5游戏开发定制? 随着微信H5游戏推广带来的显著效果,越来越多的商家已经加入到游戏营销的队伍中来, 对H5小游戏有了解的商家都知道,[模板游戏]的价格往往低于[定制游戏]的价格,可是为什么 ...

  4. H5游戏开发之抓住小恐龙

    第一次写技术性博文,以前都只是写一些生活感想,记录一些生活发生的事情. 博主大三学生一枚,目前学习JS一年多,还处于学习阶段,有什么说的不好的希望大牛指点下,由于第一次写博文,排版什么的有待改进,希望 ...

  5. H5游戏开发之多边形碰撞检测

    2D多边形碰撞检测介绍这是一篇论证如何在2D动作游戏中执行碰撞检测的文章(Mario,宇宙入侵者等),为了保证它的高效性和精确性,碰撞检测是以多边形为基础的,而不是以sprite为基础.这是两种不同的 ...

  6. H5游戏开发:贪吃蛇

    贪吃蛇的经典玩法有两种: 积分闯关 一吃到底 第一种是笔者小时候在掌上游戏机最先体验到的(不小心暴露了年龄),具体玩法是蛇吃完一定数量的食物后就通关,通关后速度会加快:第二种是诺基亚在1997年在其自 ...

  7. 【h5游戏开发】egret引擎p2物理引擎 - 小球碰撞地面搞笑的物理现象

    重力的方向和地面的问题 p2中默认的方向是从上到下,如果重力默认是正数的话,物体放到世界中是会从上面往下面飘的 p2中plane地面默认的方向是y轴的方向,而在p2中y轴的方向默认是从上往下 首先来看 ...

  8. 如何选择 H5 游戏引擎

    原生手游市场已是红海,腾讯.网易等寡头独霸天下,H5游戏市场或将成为下一个风口.据笔者所知,很多H5游戏开发团队由于选择引擎不慎导致项目甚至团队夭折.如何选择适合团队和项目的引擎,笔者通过学习和项目实 ...

  9. Cocos Creator—定制H5游戏首页loading界面

    Cocos Creator从1.0版本发布到现在也有一年多了,按理说一些常见的问题网上都有解决方案,例如"如何自定义首页加载进度条界面"这种普遍需求,应该所有人都会遇到的,因此也有 ...

随机推荐

  1. yii2从零开始一,安装

    1.官网下载软件包 这里选择普通包,也可以是增强包 2.运行basic目录下 requirements.php ,查看环境是否符合要求,yii2要求php5.4以上 3.运行 basic/web下in ...

  2. j2ee的十三个规范

    转载 今天在做连接oracle数据库的时候,感受到了什么是规范.平时听到别人说学习j2ee一定要学习他的十三个规范,大概的知道每个规范是做什么的,每个“接口”是做什么的.          很早就听过 ...

  3. npm package 装包匹配原则

    经常看到package.json 里面有这样的devDependencies: "devDependencies": { "@angular/common": ...

  4. Git Push 不用再次输入用户名和密码方法

    前言 在大家使用github的过程中,一定会碰到这样一种情况,就是每次要push 和pull时总是要输入github的账号和密码,这样不仅浪费了大量的时间且降低了工作效率.在此背景下,本文在网上找了两 ...

  5. org.springside.modules.orm中的page类自我解读

    // // Source code recreated from a .class file by IntelliJ IDEA // (powered by Fernflower decompiler ...

  6. NCS8801S芯片RGB/LVDS转EDP功能简介

    NCS8801S RGB/LVDS-to-eDP Converter (1/2/4-lane eDP) Features --Embedded-DisplayPort (eDP) Output 1/2 ...

  7. Linux系列教程(五)——Linux链接命令和权限管理命令

    前一篇博客我们讲解了Linux文件和目录处理命令,还是老生常淡,对于新手而言,我们不需要完全记住命令的详细语法,记住该命令能完成什么功能,然后需要的时候去查就好了,用的多了我们就自然记住了.这篇博客我 ...

  8. Oracle-Linux安装配置python3.6环境

    最近公司更换了linux系统的版本,从Ubuntu改为了oracle linux,相关的Python环境也要重新配置,记录一下基本配置的过程. 相关环境 系统:oracle linux7.3 系统自带 ...

  9. ajax请求,函数外无法获取请求的数据问题解决

    一.开发中遇到需要通过ajax请求获取其他函数能否执行的状态,但是当赋值给statusFlag时发现无法赋值:ajax请求默认为异步的方式,该请求的操作被放置在任务队列中,并不会按顺序执行,所以被赋值 ...

  10. python—查找以XXX结尾的文件

    # 查找电脑所有视频 for cur_dir,dirs,files in os.walk(r'f:'): print('当前正在%s目录下查找'%cur_dir) for f in files:#当前 ...