How to Make Fruit Slicing in Egretia Pro

Image for post

In this tutorial, you’ll learn how to create a fruit slicing game by using Egretia Pro. There’s a lot to cover — so let’s get started!

Image for post
  1. Creating fruits

— Recognize the meshes and materials that make up the model

Fruit →3D model →Game entity

These 3D models can be imported through another program (such as 3dmax or Maya) or the meshes created by program

Image for post
Image for post

After creating a cube in the scene or dragging and drop a 3d model in Egretia Pro, you will find that each model contains two components:

• MeshFilter records the mesh data you want to display

  • MeshRenderer shows the mesh how to render, such as which shader to use, whether to accept shadows and other settings
Image for post

In the fruit slicing game, you’ve noticed that the fruit is cut into pieces by us. Thus, it’s time to create the model via programming. Here is some information mainly about mesh creation.

Attributes of mesh

• Vertex coordinates (vertex)

• Normal

• Texture coordinates (uv)

  • Vertex Index

Vertex coordinates: The vertex coordinate array stores the spatial coordinates of each vertex of the Mesh. If a mesh has n vertices and each vertex is a three-dimensional coordinate point, the length of vertices equals n*3

Normal: The normal array stores the normal of each vertex of the mesh, and the length of normal is equal to the length of vertex

• The normal is the vector perpendicular to the surface. We usually use a normal vector of unit length, and the dyadic vector points to the outside of the surface instead of the inside.

• The normal can be used to determine the angle between the light and the vertex.

Texture coordinates: It defines the information of the position of each point on the image. Combining with the 3D model, these points determine the location of the surface texture map. UV provides an accurate correspondence with each point of image for surface of the model object. uv[i] corresponds to vertex[i]

Vertex index: Each mesh is composed of several triangles, and the three points of the triangle are the points in the vertex coordinates. And the sequence of these points’ connection is the vertex index.

Next, let’s compile a component to print the information of log and view the mesh information of Plane and Cube.

Image for post

Build Mesh

Firstly, create a 3d entity;

Secondly, add MeshFilter and MeshRender components to the entity;

Thirdly, implement the mesh property in the MeshFileter component with code;

Lastly, add materails material to MeshRender;

Image for post
Image for post
Image for post
Image for post
Image for post
Image for post

2. Slice the fruit

Image for post

Firstly, determine the position and the surface to cut, and add the Cut component to the target when the space bar is clicked

Image for post

Secondly, classify the vertices of the model into the upper and lower parts according to the cut surface;

Image for post

Then, find out the triangular separated by cutting

Image for post
Image for post

Then, calculate the new vertices

Image for post
Image for post
Image for post

Lastly, create two models by the vertices, normal, UVs and indexes

Image for post
Image for post

3. How to generate the new slicing

> Create a sliced entity

> Create the attribute of Mesh in MeshFilter components of the sliced entity

The several key attributes of Mesh:

• Vertex coordinates (vertex) — the point created by cutting

• UV

• Vertex normal — consistent with or opposite to the normal of the tangent point

• Vertex Index — form triangles by connecting the cutting points according to the counterclockwise attributes

Ø Create the attribute of material in MeshRender components of the sliced entity

Ø Repeat the slicing

4. Slice the fruits with flying knives

Add CutController component to the scene

Setting in onstart:

• Initialize the mesh information of all presets;

• Create the first entity to be cut;

• Initialize the position of the blade;

Setting in onUpdate:

• Add Cut components to the cutting object;

• When the position of blade reaches the bottom, update the blade position and update the next cutting object;

Several main categories:

CutFly, CutFlyPool — — slicing cube and slicing management

CutFillFace,CutFillFacePool- the sliced surface and its management

CutFlySystem — — -Process the animation of the flying slicing (including a cut and the newly generated cut surface and the last slicing) and recycling operations

CutEntityAttributesFactory — — Saves preset mesh information

There is a variety of fruits and multiple type of knives in the game, and we’ll put the information of these fruits and knives in the configuration table.

1. Load the configuration table;

2. According to the information in the configuration table, load the information of fruit and knife;

Stay tuned for updates from the Egretia official channels below so that you can be involved in all the exciting things to come!

Egretia Telegram: https://t.me/Egretia

Egretia Twitterhttps://twitter.com/Egretia_io

Egretia Website: https://egretia.io/

Develop a Wheel of Fortune Game | Tutorial for Beginners

Image for post

This is a fun and simple tutorial for game developers since we are going to build a wheel of fortune game. Let’s get started!

Demonstration

Image for post

Development Procedures

1. Create a Luck class for the main logic

Luck class is inherited from container egret.DisplayObjectContainer

Image for post

2. Data initialization

Image for post

3. Create a red button to spin (creatbtn)

Center the button: change the default anchor point of the button in the upper left corner to the center of the button this.btn.anchorOffsetX = this.btn.width / 2; this.btn.anchorOffsetY = this.btn.height / 2; Then make the button position in the center of the entire stage. However, the width and height of the stage cannot be obtained by directly using this.stage.stageWidth since there is nothing on the stage when the button is created. As such, students can create a date class to store global data. In this tutorial, two static attributes STAGEWIDTH and STAGEHEIGHT are directly added to main.ts. The specific methods are as follows:

Image for post
Image for post

4. Arrange all the prizes in a circle

Image for post
Image for post

You will get the prompt when using comments with /***/. When there are many parameters, you can use @param in the comment line to declare the function of each parameter.

5. Respond to click events

Remove the monitoring of the current click in the ‘click’ event to prevent multiple clicks on button.

In the timer, you can directly use timer.delay to change the delay of the timer in milliseconds.

Stay tuned for updates from the Egretia official channels below so that you can be involved in all the exciting things to come!

Egretia Telegram: https://t.me/Egretia

Egretia Twitterhttps://twitter.com/Egretia_io

Egretia Website: https://egretia.io/

Egretia Engine Upgrade: How to get access to Taobao (Alibaba’s eBay-like online marketplace) Mini Program

Image for post

As Taobao Mini Program goes mainstream, brand owners have a growing need to increase their brand value and gain more users and market share through Alibaba. As such, Egretia engine allows developers to launch the game on Taobao quickly.

Development procedure for accessing Taobao Mini Program

1. Preparation

> Register a retailer account on Taobao

> Download Taobao toolkit

> Call APIs such as game sign-in and user information provided by Taobao

> Egretia engine V5.3.10 or above

> Egretia Launcher V1.2.22 or above

2. The game creation and package

1)Create a game via Egretia Launcher or import the existing project on Egretia

Image for post

2) After creating or importing is done, it will be shown on the list. Then developers can click the release settings

Image for post

3) Select Taobao Mini Program to create the game

Image for post

4) After the creation, developers can click the button to release the game

Image for post

5) The type of game code: compile the code in the Egretia project into Taobao project;

• debug: js code is not obfuscated by uglify, which is convenient for debugging;

  • release: the uglify obfuscation and compression for js code;

6) Taobao Mini Program structure:

Image for post

· app.css :files of application, no modification in general

· app.js:register app, to receive the notification of running, display and hiding

· app.json:the configuration file

· js directory:js code of game

· manifest.js:to load dependent js files

· mini.project.json:to configure the files format.(set the special format here)

· package.json:description file

· pages/index files:

· egret.tbgame.js:Adaptation layer code of Egretia

· index.axml:the page of entry

· index.js:entry files

· tools files:tools (no editing)

· resource : resource files such as pictures and audio of the game

3. Download and install

• Download the toolkit

  • Click to select the app for retailer, and then install it on the phone
Image for post

• Select the application

Image for post

Associate the application on the upper left and click the real-device test on the upper right. After the compilation is completed, please scan the code for debugging via Taobao mobile APP

Image for post

4. Notes

1). Due to security issues, the platform does not support the API of my.request network request. However, it supports most of the network request methods through other APIs. If you still have problems with your game, please use cloud development

2). When loading remote resources, the resources must be placed under the domain name of Ali, please consult Taobao’s technical support for details;

3). The text input function provided by the platform is very weak, please test first to check the effect;

4). The created egret.Sound must be destroyed by calling the sound.close() method when it’s not in use;

5). Horizontal screen games is not available;

6). iOS does not support websock real-device debugging, but preview mode can be used;

7). iOS does not support local sound playback for the time being, and the sound loaded on the network is available;

8). You cannot directly call the window object without $global.window;

9). The emulator does not support functions such as sound playback, please refer to the real-device test.

Stay tuned for updates from the Egretia official channels below so that you can be involved in all the exciting things to come!

Egretia Telegram: https://t.me/Egretia

Egretia Twitterhttps://twitter.com/Egretia_io

Egretia Website: https://egretia.io/

Create A Space Shooter Game | Egretia Engine Tutorial For Beginners Part 4

This is the fourth part of Egretia Engine tutorial, showing how to build a space shooter game!

Part 1 https://bit.ly/32xy7r3

Part 2 https://bit.ly/2CV2CfC

Part 3 https://bit.ly/39uicLD

Demonstration

Programming

>Use the factory pattern when NPC are unknown numbers of objects

1)Create NPC and NPCManager

Image for post

2) NPCManager

Image for post
Image for post

> Finite State Machine (FSM)

Image for post

Create id:number

Image for post

Update

Image for post
Image for post

> Create array of NPCs

1)Randomly generated NPC

Image for post

2)Time-related generation

Image for post

3)Generated with arrays

Image for post

>The relationship between factories

1)NPC bullets

Image for post
Image for post

Numbers of NPC bullets shots

Image for post

> Add isHit()

Image for post
Image for post

What are the coolest projects you saw from people using Egretia engine?

Stay tuned for updates from the Egretia official channels below so that you can be involved in all the exciting things to come!

Egretia Telegram: https://t.me/Egretia

Egretia Twitter: https://twitter.com/Egretia_io

Egretia Website: https://egretia.io/

Create A Space Shooter Game | Egretia Engine Tutorial For Beginners Part 1

Have you built a game by using Egretia engine? Here is an example from our developer community.

Demonstration

Image for post

Programming

>Make a scrolling background

class BG extends egret.Sprite{

public bg:egret.Bitmap[] = [];

public fg:egret.Bitmap; //foreground

public vy:number; //scroll speed

public game:MainGame; //previous pointer

public constructor(game:MainGame) {

super();

this.game = game;

for(let i = 0 ; i < 2; i ++){

this.bg[i] = Main.createBitmapByName(“bg11_jpg”);

this.addChild(this.bg[i]);

//background position

this.bg[i].y = 0 — i* this.bg[i].height;

}

this.vy = 10; //scroll speed

}

public update(){

for(let i = 0 ; i < 2; i++){

//scroll down

this.bg[i].y+=this.vy;

// background images will be repeated once they move off the screen

if(this.bg[i].y > 800){

// the height of the background images indicates how much to scroll

this.bg[i].y -=2*this.bg[i].height;

}

}

}

}

The foreground is randomly composed of three different images

public resetFG(){

//Random 0~2 0 high ladder,1,2

let id = Math.floor(Math.random()*3);

switch(id){

case 0 :

this.fg.texture = RES.getRes(“bg12_png”);

if(Math.random()*100 < 50){// conspectus of 50%, left or right

this.fg.scaleX = -1;

this.fg.x = 480;

}else{

this.fg.scaleX = 1;

this.fg.x = 0;

}

break;

case 1:

this.fg.texture = RES.getRes(“bg13_png”);

this.fg.x = 480 — Math.random()*184;

this.fg.scaleX = 1;

break;

case 2 :

this.fg.texture = RES.getRes(“bg13_png”);

this.fg.x = Math.random() * 184;

this.fg.scaleX = -1;

break;

}

this.fg.y = -500 — Math.random()*100;

}

>Players control

Image for post

Trajectory principle:

Image for post
Image for post

What are the coolest projects you saw from people using Egretia engine?

Stay tuned for updates from the Egretia official channels below so that you can be involved in all the exciting things to come!

Egretia Telegram: https://t.me/Egretia

Egretia Twitter: https://twitter.com/Egretia_io

Egretia Website: https://egretia.io/

Egretia Bi-weekly Report XXXII

Image for post

Summary:

》The new version of Egretia Engine release!

》Bitcoin Pizza Party

》YouTube Review of EGT

Image for post

Technology Development

Egretia Engine Upgrade! A big boost in compiling speed!

Here we will introduce some features, including JavaScript Module Support, upgraded EUICompiler and Inspector updates

JavaScript Module Support (beta)

We allow developers to use JavaScript module and meanwhile provide a webpack packager which can package the multiple files of JavaScript module into one file so that it can run on the previous browser without supporting JavaScript.

The Upgraded EuiCompiler (beta)

The UI and related logic are one of the most workload-intensive parts in games developed by Egretia Engine. In the new version, we have comprehensively improved the UI development experience and upgraded UIEditor whose internal code structure is much clearer and more extensible.

Inspector Updates

1.Fix the error that TOUCH_END event doesn’t work

2.Fix the issue that selection is still available when it shows visible=false

3.Fix the problem that it cannot be parsed correctly when there are special symbols in the URL path of the game.

Community

EGT Bounty Campaign

To celebrate Bitcoin Pizza Day, Egretia has given away 18,888 EGT *1 and 8,888 EGT *2 which attracted many participants to share their bitcoin stories in our telegram community. In the coming future, Egretia will adopt the incentive mechanism to encourage more people to interact with us and foster a robust gaming ecosystem.

Image for post

YouTube Review of EGT

Here comes a Russian video regarding Egretia for our overseas community, check it out: https://twitter.com/Egretia_io/status/1277801690343735296?s=20

Image for post

Stay tuned for updates from the Egretia official channels below so that you can be involved in all the exciting things to come!

Egretia Telegram: https://t.me/Egretia

Egretia Twitter: https://twitter.com/Egretia_io

Egretia Website: https://egretia.io/

Краткий обзор и Новый roadmap проекта Egretia (EGT)

Image for post

The report on Egretia from one of the Russian Youtubers. Thanks for sharing! We are looking forward to connecting with more people in the world!

Всем привет! в этом видео посмотрим, как там поживает сильно нашумевший в своё время проект Egretia. Те кто следят за крипто рынком, помнят монетку этого проекта EGT, которая показала просто сумасшедший рост.компания продолжает развиваться и команда не так давно, выкатила новый роадмап. Об этом мы сегодня и поговорим!

Video Link:https://www.youtube.com/watch?v=4Nk1GHsUiK4

Интро

Для начала, я в кратце расскажу чем занимается команда Egretia и тут нужно сказать пару слов про HTML5. Это технология — признанное во всё мире кросс платформенное решение. Она охватывает интернет, игры на мобильных телефонах, видео контент, рекламу и другие сферы цифрового рынка, капитализация которого составляет сотни миллиардов долларов.

Платформа Эгретия сочетает в себе технологию HTML5, набор инструментов SDK и собственный уникальный движок, чтобы предоставить полный функционал для разработки игр на блокчейне. С помощью набора инструментов Egretia, разработчики со всего мира могут быстро и легко создавать игры на блокчейне не обращая внимания на сложные базовые реализации технологии. При этом с помощью блокчейна они могут открывать свободный поток обмена, виртуальными ресурсами между разными играми.

В сотрудничестве с компанией Egret Technology, мировым лидером в индустрии HTML5, команда Egretia разрабатывает первый в мире движок и платформу, для создания HTML5 совместимого блокчейна. Таким образом соединив технологию блокчейна с проверенными временем инструментами, сообществом, контентом и партнерами, с целью направить 250 000 разработчиков и 1 миллиард мобильных устройств — в мир блокчейна.

Среди основных преимуществ платформы можно выделить:

● Самостоятельно разработанный Блокчейн на открытом коде;

● Удобный пакет разработки;

● Умная помощь при кодировании;

● Наличие цифрового кошелька для каждого пользователя платформы;

● Устойчивая экосистема для пользователей платформы.

Токен EGT

Для обслуживания экосистемы Egretia выпущена криптовалюта Egreten, которая будет соединена со всеми играми, а также будет использоваться игроками для обмена виртуальными игровыми товарами. Также есть и другие способы использования этого токена:

● Рекламодатели могут заказывать рекламу;

● Разработчики могут создавать объявления через инструменты Egretia и SDK№

● Игроки будут зарабатывать токены за время, проведенное в играх.

Токен был выпущен на криптовалютный рынок 4 июля 2018 года, сейчас стоимость монет составляет 11 сатош, а капитализация в районе 4 млн долларов. Купить токены Egretia можно на криптовалютных биржах Okex, Huobi и других площадках.

Обновленный роадмап

27 апреля команда представила обновленную дорожную карту. Основной упор представители Эгретия делают в сторону нидустрии блокчейн игр. Как игровая блокчейн экосистема, Эгретия уже выпустила полный рабочий процесс по разработке игры на блокчейне.

В этом году Egretia планирует реализовывать стратегию более активного взаимодействия с успешными предприятиями в сфере гейминг контента, стремясь найти и запустить более качественные игры.

С тех пор, как стартовал Egretia Global DApp Contest, Egretia выбрала множество отличных игр. Победителям будет предложено щедрое вознаграждение и бонусы, в том числе дальнейшая поддержка развития проекта, инкубация и потенциальные инвестиции.

Чтобы расширить каналы маркетинга и подготовить почву для открытой платформы, Egretia предпринимает инициативы по поиску потенциального сотрудничества со сторонними платформами с высоким трафиком, а также с различными крипто кошельками.

Egretia обладает потенциалом стать ведущей в мире игровой блокчейн экосистемой, позволяя ежедневным активным пользователям — быть на передовой, игровой индустрии мирового уровня.

Теперь что касается технологий! В 2019 году Egretia добилась некоторых успехов в технической части, включая обновление рабочих процессов разработки блокчейн игры, запуск Testnet, выпуск Blockchain Browser, бета-тестирование собственного кошелька, первичное открытие игры Football Blockchain Game, а также техническое сотрудничество с несколькми известными компаниями в блокчейн индустрии.

В этом году команда планирует значительно расширится на Азиатский рынок, проводя конференции и обучающие митапы по тематике блокчейн игр.

Также планируется начать проводить АМА сессии с командами Эгретии и других крипто проектов работающих в этом направлении.

К концу 2020 года, судя по роадмапу команда предоставит для разработчиков ещё больше всевозможных гайдов, как пользоваться инструментами Эгретия для создания блокчейн игр. При этом обновленные инструкции будут учитывать работу с ETH 2.0

Заключение

Проект Эгретия работает в перспективной сфере блокчейн игр. Однако это направление привлекает лучшие умы со всего мира, а значит будет высокая конкуренция. Поэтому команде придётся усердно работать чтобы плотно закрепится на этом рынке. Будем наблюдать за проектом, быть может команда добьётся успеха!

Stay tuned for updates from the Egretia official channels below so that you can be involved in all the exciting things to come!

Egretia Telegram: https://t.me/Egretia

Egretia Twitter: https://twitter.com/Egretia_io

Egretia Website: https://egretia.io/

Egretia Bi-weekly Report — Phase XXIV

Over the past two weeks, we from the Egretia team have been furthering the development of our technology, product, strategic cooperation and community ecosystem. Regarding our technology, the R&D team has focused on the development of wallet and the improvement of blockchain game; as for the product, Egretia has officially unveiled the presale event of its blockchain game — Football King, which has reached more than millions of EGT so far. Meanwhile, the application is being tested and estimated to be released in September! In addition, Egretia has partnered with Hydax, a cryptocurrency exchange concentrating on the blockchain gaming industry. Egretia has also airdropped 6 million EGT to its users on OKEx. For more exciting information, please join our Telegram community!

Technology and Product Update

EGT Wallet

HD Wallet (100%)

Cloud Wallet Function Development (10%)

Cloud Wallet Recharge Function Development (Not started)

Cloud Wallet Withdrawal Function Development (not started)

Cloud Wallet Transfer Function Development (not started)

Cloud Wallet Third-Party Authorized Research and Development (60%)

Cloud Wallet Third-Party Access Documents (100%)

Third-party Back Office Development (not started)

Other Function Developments

Egretia Basic Service Development

Transaction Basic Service Research and Development

Completely Independent Basic Service: CP via APPID Service

Easy to use: You can get the transfer record of the current address by address

Excellent performance: Use subscription mode, update on demand

Blockchain Game Development

Game Pre-sales Page Optimization (100%)

Game Recharge Interface Optimization (100%)

Other

Other

Optimize and fix issues from feedback

Third-party technical support

A High-Quality Blockchain Game

Football King

The period of Football King pre-sale event started from 14:00 (UTC+8) August 12th till 14:00 (UTC+8) August 25th 2019! This event is divided into three parts: (1) a customized player card pack pre-sale, (2) a limited-edition football star auction, and (3) a lucky draw lottery. So far, the revenue of presale has reached more than millions of EGT! Its application is under test internally and estimated to be unveiled in September! Come and participate in the limited-edition football auction of world’s top players, purchase a custom card pack to create your own team, or have the chance to win one of our prizes in our big prize pool. Please click on the official website of Football King or join our Telegram community at the end of the article for more details!

Strategic Partnership

On 18th August 2019, Egretia officially announced that it has reached a deep strategical partnership with Hydax(www.hydax.com), a cryptocurrency exchange focusing on the gaming industry. In the coming future, both parties will boost the cooperation mainly in the area of (1) a gaming incubation, (2) gaming engine and (3) a platform for IGOs. Our aim is to foster high-quality industrial projects and expand the application scenarios of blockchain gaming in order for us to promote the prosperity and development of the blockchain gaming economy as a whole.

Through the cooperation between Egretia and Hydax, Hydax (http://www.hydax.com ) will serve the Egretia ecosystem and list EGT as its platform token. Meanwhile Egretia will work on providing an all-round screening framework jointly with Hydax to screen out the most qualified blockchain gaming project and assist in its IGO release.

EGT holders are granted priority to participate in the discount priced tokens. Meanwhile, a token burn program will be launched, which means EGT will be partly burning tokens from time to time.

In addition, EGT holders in Hydax will enjoy the exclusive privileges of receiving transaction fees, new token airdrop, and voting for the direction and details in these projects.

Community Ecosystem

6 Million EGT Giveaway!

The event of the 6 million EGT giveaway on OKEx came to its close at 11:00(HKT) on 7th August 2019. The corresponding participants of EGT holders on OKEx have been rewarded! Please join our telegram community for more upcoming good news in case that you will miss out!

Stay tuned for updates from the Egretia official channels about Football King below so that you can be involved in all the exciting things to come!

Egretia Telegram: https://t.me/Egretia