Egret学习笔记.1 (写在前面的废话)】的更多相关文章

我记得之前谁说过,大部分程序员入行,都是因为小的时候的游戏机啊,各种电子设备啊....觉得有意思,才入的行 . 至少我本人是因为之前上高中那会儿,喜欢玩手机.那会儿还是MTK,塞班的时代,喜欢拿着手机去各种论坛下载破解版的游戏,没日没夜的玩啊,各种打杀啊,然后后面就毅然决然的入了这行..... 但是工作快四年了,也没写过一个游戏,大多是做一些增删改成为主的web项目和一些自己都不会去用的APP. 下半年的时候,突然想咸鱼翻一下身,想学习一下写游戏.于是就开始之前的Mono Game的学习,学之前…
上一章把飞机添加到屏幕上,但是飞机要发射子弹对吧?那么这一章我们就来实现一下发射子弹,并实现一个简单的子弹对象池 先来捋一捋思路 1.创建一个子弹对象 2.然后添加一个bitmap,显示子弹贴图 3.判断子弹类型(我们这里是一个子弹是敌人和主角都在使用,根据不同的状态类型,显示不同的图和往不同的方向飞行) 4.子弹回收(回收子弹的意思就是把子弹状态还原,并且从界面中移除) 5.子弹对象池的设计(综合上面四点,设计一个简单的对象池) 6.主角发射子弹 首先,我们先新建一个IdentityType.…
近期在玩树莓派,前面写过一篇在树莓派上使用1602液晶显示屏,那么可以显示后最重要的就是显示什么的问题了. 最easy想到的就是显示时间啊,CPU利用率啊.IP地址之类的.那么我认为呢,假设可以显示当前时间.温度也是甚好的.作为一个桌面小时钟还是非常精致的. 1. 眼下有哪些工具 眼下比較好用的应该是 weather-util, 之前我获取天气信息一般都是通过它. 使用起来也非常easy: (1) Debian/Ubuntu 用户使用 sudo apt-get install weather-u…
配置Egret的开发环境是很简单的,去https://www.egret.com/products/engine.html下载 然后基本就是下一步下一步,安装好了就好了,装好了选择Wing组件,然后下载->安装(主要的代码编写就在Wing里面) 然后就是学习的路线了 1.大致的过一遍Egret的官方文档,对Egret引擎有一个基本的认识 http://developer.egret.com/cn/github/egret-docs/Engine2D/index.html?home=1 2.看完入…
一.进入目录 #cd u-boot-1.1.6_sndk6410 二.SD卡 make clean make distclean vim Makefile                                   (/CROSS 修改cross-compile= ....) vim /include/configs/smdk6410.h    (改205行名字,改448行启动方式为SD卡) make smdk6410_config make ./mkmovi              …
在游戏过程之,敌机是源源不断的冲屏幕上方往下飞,如果我们每一架敌机都直接new的话,在飞机很多的情况下,也许有性能问题. 就像前面子弹对象池一样,我们也要实现一个飞机对象池,也就是标题说的敌机工厂(之所以叫工厂,我觉得飞机是从工厂里面生产出来的,没有飞机冲池子里面捞出来吧...所以叫工厂.当然叫敌机对象池也没啥问题) 新建一个EnemyFactory.ts文件 class EnemyFactory extends egret.DisplayObjectContainer { _timer: eg…
今天继续写点击了开始之后,添加一个飞机到场景中,然后这个飞机的尾巴还在冒火的那种感觉 先拆解一下步骤 1.首先完成飞机容器的图片加载 2.然后把容器添加到场景中 3.然后实现动画 -首先,我们新建一个TypeScript的类叫做HeroObject,英雄对象,哈哈,我命名水平不怎么高.然后继承自egret.DisplayObjectContainer class HeroObject extends egret.DisplayObjectContainer { _textures: egret.…
打开 Egret Wing,新建一个Egret游戏项目,然后删掉默认生成的createGameScene方法里面的东西 然后新建一个BeginScene.ts的文件,作为我们的游戏的第一个场景 class BeginScene extends egret.DisplayObjectContainer { public constructor() { super(); this.addEventListener(egret.Event.ADDED_TO_STAGE, this.Init, this…
大致看了一遍Egret的官方文档,就开始打算使用Egret来开发一个打飞机游戏. 首先来捋一捋思路,先来看一看一个打飞机游戏的图片 基本上一个打飞机游戏分为 开始游戏   ----------进入游戏的第一个显示对象.必须点击开始游戏界面的开始游戏,才能进入游戏去开始玩 背景   ------背景我们就用两个图片来循环滚动 敌机  -------随机出现N个敌机,并且会不停的发射子弹 猪脚 -------猪脚也会不停的发射子弹 敌人的子弹  ------由敌机发出的子弹,向下飞 猪脚的子弹  …
0. 简介 操作系统是计算机科学中十分重要的一门基础学科,是一名计算机专业毕业生必须要具备的基础知识.但是在学习这门课时,如果仅仅把目光停留在课本上一些关于操作系统概念上的叙述,并不能对操作系统有着深层次的理解.必须要结合动手实践,才能真正掌握核心的知识. MIT的操作系统课程6.828是一门被广泛好评的入门课程.它最重要的特点就是它实践第一的教学原则.在这门课程中会涉及到非常丰富的实验,也会有非常多的动手机会.而且授课者更是亲自构建了一个简化的基于Unix内核的操作系统xv6.所有的实验都是在…
我们要独立出来自己创建一个项目,在我们自己的项目上加皮肤这才是初衷.我的新建项目名为:duilibTest 在duilib根目录下面有个 Duilib入门文档.doc 我们就按这个教程开始入门 首先新建一个win32项目 去DuiLib根目录,把目录下DuiLib文件夹拷贝到新建项目的根目录.再把这个项目添加进我们解决方案中. 从教程里面把以下代码粘贴到我们项目的stdafx.h中 // Duilib使用设置部分 #pragma once #define WIN32_LEAN_AND_MEAN…
以前有大学有学过,但是没学好,现在准备完全自己动手做一个网站,学习一下ASP.NET 做一个登录页面,首先要有创建一个新的网站,添加Login.aspx,然后做出自己想要的DIV和CSS布局, 之后创建自己的数据库,代码如下: USE [master] GO IF EXISTS(SELECT * FROM dbo.sysdatabases where dbid=DB_ID('MyStore')) DROP DATABASE MyStore GO CREATE DATABASE [MyStore]…
运行起来,虽然主角飞机和敌机都在互相发射子弹,但是子弹打中了就和没打中效果是一样的.. 这一章我们就来处理子弹和飞机的碰撞问题. 我们所有的操作都是基于Main这个容器来做的.所以我就把这个处理放到Main里面,监听Main的ENTER_FRAME事件 this.addEventListener(egret.Event.ENTER_FRAME, (e) => { //判断子弹是否和飞机碰撞 let isHit = this._bullets.IsHit(this._Hero) // consol…
经过前面几章的准备,我们差不多已经具备了一个基本的框架,这一章我们就开始添砖加瓦了. 敌机定时发射一个子弹,子弹的方向是从上到下,但是发射子弹的代码应该放在哪儿呢? 从面向对象编程的思想来说,子弹是敌机发射的,我们发射子弹的操作应该放在敌机类里面.也就是EnemyPlane.ts.之所以放在敌机的基类里面,就是想能实现代码复用,加入要实现其他的敌机,也可以复用这段代码 在EnemyPlane.ts的构造方法中,我们加入一个Timer this._timer = new egret.Timer(1…
有了子弹,总得有敌人来打吧,不然游戏有啥意思呢?今天我们来实现敌机从屏幕上边往下飞 参考微信打飞机游戏里面,敌机分为3种 1是特小飞机,2是小飞机,还有一种就是大飞机 面向对象编程提倡抽象,实现代码复用的目的.所以我们打算把飞机的相同的点都抽象到飞机基类里面. 新建一个文件EnemyPlane.ts,敌机类,以后我们所有的飞机,都从这个类来扩展 class EnemyPlane extends egret.DisplayObjectContainer { _enemy: egret.Bitmap…
游戏背景里面的猪脚飞机看起来是一直在向前飞,但是实际上只是一个视觉差而已. 猪脚是出于不动的状态,背景从上到下滚动,然后让玩家觉得飞机在不停的往前飞.(当然这只是其中一种实现思路) 差不多就是这样,然后两张图片一直滚动,上面的图,滚动到最底下,马上又跑到最上面去,一直循环,就有了一个滚动的效果 然后我导入了一张背景图 然后重新打开我们的BgContent.ts文件,把里面的黑色背景的代码×掉,然后改为 bgbitmap1: egret.Bitmap; bgbitmap2: egret.Bitma…
1. 什么是XML? XML 指可扩展标记语言(EXtensible Markup Language)XML 是一种标记语言,很类似 HTMLXML 的设计宗旨是传输数据,而非显示数据XML 标签没有被预定义.您需要自行定义标签.XML 被设计为具有自我描述性.XML 是 W3C 的推荐标准 2. 为什么使用XML? 我们没有XML这种语言之前,我们使用的是String作为两个程序之间的通讯!现在问题就来了,如果我们传输的是带有关系型结构的数据,String怎么表达呢?String对关系型数据不…
from sys import exit import random def Arrfor(str): #CONTST = CONTST + 1 artificial = input("请输入1-9之间任意一个数字:") art = int(artificial) #将字符串类型转换为int类型 if art < 1: print("数值不合法!还有",CONTST + "次机会哦") Arrfor(str); if art > 9:…
using System; using System.IO; namespace ConsoleApplication { class Program { static void Main(string[] args) { FileStream file = new FileStream("log.txt", FileMode.OpenOrCreate); StreamWriter sw = new StreamWriter(file); sw.Write("xiaoming…
import org.apache.spark.ml.classification.RandomForestClassifier import org.apache.spark.ml.regression.RandomForestRegressor import org.apache.spark.mllib.classification.{LogisticRegressionWithLBFGS, NaiveBayes, SVMWithSGD} import org.apache.spark.ml…
一.开发内容介绍 为了对一个进程进行调试,你首先必须用一些方法把调试器和进程连接起来.所以, 我们的调试器要不然就是装载一个可执行程序然后运行它, 要不然就是动态的附加到一个运行的进程.Windows 的调试接口(Windows debugging API)提供了一个非常简单的方法完成这两点. 运行一个程序和附加到一个程序有细微的差别. 打开一个程序的优点在于他能在程序运行任何代码之前完全的控制程序. 这在分析病毒或者恶意代码的时候非常有用. 附加到一个进程,仅仅是强行的进入一个已经运行了的进程…
重写 重写是子类对父类允许访问的方法实现过程进行重新编写,返回值和参数都不能变. 重写方法不能抛出新的检查异常和比被重写方法更加宽泛的异常 访问权限不能比被重写方法低 声明为final的方法不能被重写 声明为static的方法不能被重写 子类和父类在同一个包中,子类可以重写父类除了声明为private和final的方法.不在同一个包中,子类只能重写父类声明为public和protected的非final方法 构造方法不能被重写 不是继承的方法,无法重写 在上一篇文章的代码进行改动,在FootBa…
我们要独立出来自己创建一个项目,在我们自己的项目上加皮肤这才是初衷.我的新建项目名为:duilibTest 在duilib根目录下面有个 Duilib入门文档.doc 我们就按这个教程开始入门 首先新建一个win32项目 去DuiLib根目录,把目录下DuiLib文件夹拷贝到新建项目的根目录.再把这个项目添加进我们解决方案中. 从教程里面把以下代码粘贴到我们项目的stdafx.h中 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22…
目录 jQuery选择器的优点 基本选择器 层次选择器 过滤选择器 表单选择器 第一次写博客,希望自己能够长期坚持,以写博客的方式作为总结与复习. 最近一段时间开始学习jQuery,通过写一个jQuery学习笔记的专题,对jQuery的知识做一个总结,并给出部分Demo来练习,使其能够掌握jQuery的基本技能. 今天所写的内容是关于jQuery选择器. 在学习jQuery选择器之前,有必要先了解一下css选择器,首先要明确一个新手容易混淆的概念:css选择器与jQuery选择器是两个不同的概念…
GC学习笔记 这是我公司同事的GC学习笔记,写得蛮详细的,由浅入深,循序渐进,让人一看就懂,特转到这里. 一.GC特性以及各种GC的选择 1.垃圾回收器的特性 2.对垃圾回收器的选择 2.1 连续 VS. 并行 2.2 并发 VS. stop-the-world 2.3 压缩 VS. 不压缩 VS. 复制 二.GC性能指标 三.分代回收 四.J2SE 5.0的HotSpot JVM上的GC学习 - 分代.GC类型.快速分配 五.J2SE 5.0的HotSpot JVM上的GC学习 - Seria…
转载:http://blog.csdn.net/fenglibing/article/details/6321453 这是我公司同事的GC学习笔记,写得蛮详细的,由浅入深,循序渐进,让人一看就懂,特转到这里. 一.GC特性以及各种GC的选择 1.垃圾回收器的特性 2.对垃圾回收器的选择 2.1 连续 VS. 并行 2.2 并发 VS. stop-the-world 2.3 压缩 VS. 不压缩 VS. 复制 二.GC性能指标 三.分代回收 四.J2SE 5.0的HotSpot JVM上的GC学习…
我对于学习的C语言的结构体做一个小的学习总结,总结如下: 结构体:structure 结构体是一种用户自己建立的数据类型,由不同类型数据组成的组合型的数据结构.在其他高级语言中称为记录(record). 声明一个结构体类型的一般形式为: struct 结构体名{ 类型名 成员名1; 类型名 成员名2; ……}; 注意: 结构体类型的名字是由一个关键字struct 和结构体名组合而成的如struct Student. 结构体名是由用户指定的,又称“结构体标记”以区别于其他结构体类型. 花括号内是该…
Notification通知,也可理解为消息,有通知,必然有发送通知的广播,JMX这里采用了一种订阅的方式,类似于观察者模式,注册一个观察者到广播里,当有通知时,广播通过调用观察者,逐一通知. 这里写一个简单的Server配置例子, 首先定义我们的MBean接口: 接着,我们会想第一节那样,去实现这个MBean接口,并且继承NotificationBroadcasterSupport,来提供广播服务: package com.dxz.mbean; import java.util.concurr…
为方便读者,本文已添加至索引: 设计模式 学习笔记索引 写在前面 在上篇Chain of Responsibility(职责链)模式笔记中,我们学习了一种行为型设计模式.今天,我们继续这一主题,来学习下Command(命令)模式.可以看到职责链模式是对处理请求的对象(职能者)进行了建模,而Command模式的最大不同之处就在于,它是对请求本身进行建模的.这一点从它的名字就可以看出.所以它又有别名叫:Action(动作).Transaction(事物)模式. 老规矩,我们首先直观地去理解什么是命令…
为方便读者,本文已添加至索引: 设计模式 学习笔记索引 写在前面 最近时间比较紧,所以发文的速度相对较慢了.但是看到园子里有很多朋友对设计模式感兴趣,我感觉很高兴,能够和大家一起学习这些知识. 之前的文章中,我们已经介绍了对象创建型和对象结构型的设计模式(请参见索引).从本篇开始,我们将接触的是对象行为型设计模式.所谓行为模式涉及到算法和对象间职责的分配.在对象和类的模式之外,还涉及了它们之间的通信模式.比如我们今次的主题:Chain of Responsibility(职责链)模式,它就描述了…