自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(71)
  • 资源 (11)
  • 收藏
  • 关注

原创 react-redux

【代码】react-redux。

2024-03-22 18:52:42 264

原创 TS 枚举、泛型、类、Partial和Required

抽象类内部的抽象属性和抽象方法需要被继承的类来实现,但它内部的普通属性和方法则可以直接被继承使用。枚举的作用很简单,就是用来列举数据,管理一系列数据的,让数据分类更加直观和可读,利于维护。一个类继承了一个接口后,也必须将这个接口的所有属性和方法 实现 ,和抽象类性质也是一样的。泛型就是将类型也参数化,有时类型不明确,需要在用到时候才能指定,这时就可以使用泛型。它本身不能实例化,只能被继承,需要继承后的类来实现它内部的抽象属性和抽象方法。泛型用 T 代替,这个只是规范,用其他的字符代替也行,

2023-11-13 07:42:22 201

原创 TypeScript 接口 、类型别名

接口类型是一种自定义类型,可以让我们自定义出一种数据类型的格式,之后在声明这种类型时值的格式都必须按照接口说描述好的来定义。用type关键字可以声明类型别名,这个类型别名和接口其实有点类似,都是可以用来自定义一个类型。这里 [id:number] 代表的是下标的类型 后面代表的是值类型。这种方式声明的字段代表该字段不是必须的字段,可以不写。声明的字段代表该字段是只读,不可在改。代表返回值的类型为空,可以不返回值。用类型别名来声明一个函数的类型格式。声明一个接口是首字母应该大写。代表函数传入的参数的类型,

2023-11-08 08:14:00 72

原创 TypeScript 初识

并且因为ts是静态类型定义,它在你写代码的时候就会报错,而不是等到编译的时候才报错,而js是动态类型定义,你写代码的时候它是不知道这是什么类型的,要等到编译时才会知道类型,因此如果报错那就只会在运行的时候才会报错,这样就很不友好。例如下面的例子,我们直接调用number类型的toFixed方法,就会报错,因为它类型未知,并不确定是否是number类型,因此也就调用不了。ts 的关键之处就在于他的类型定义,在ts中我们给一个变量赋值了之后,他的类型就固定下来了,你可以去改它的值,但不能改变它的类型。

2023-11-06 07:34:10 59

原创 07/06 readonly和shallowReadonly、toRaw和markRaw、provide和inject、isRef,teleport和suspense

正常情况下我们一般都是同步引入组件,但在同步引入的情况下,会有个问题,必须等所有的组件全部加载完成之后才会一起显示,例如有个嵌套组件外面几层的组件加载的都很快,但最里面的组件内容很多,加载的慢,但如果同步引入的话,外面的就需要一起等里面的加载完成之后才会一起显示,这样就很慢。、他们的用处不是特别大,只在极少数场景能用到,例如某一个公共功能,这个功能里面返回一个数据,这个数据在其他模块都是可以改的,但是在另一个模块不可改,也不能发生变化,只用来显示,此时就可以使用readonly。

2023-07-06 09:50:35 72

原创 07/05 watch以及watchEffect、生命周期以及hook、toRef和toRefs、shallowRef和shallowReactive

其实他们的重点就在于使用场景不同,例如某一个复杂的业务场景,有很多个相关的计算逻辑,这些计算逻辑任意一个发生变化时都需要重新执行某些事时,此时就可以用到watchEffect,例如购物车系统,与购物车相关的商品发生变化整个购物里的价格逻辑都要发生改变。而下面这个就是watch监听器高级的用法了,这也是它比vue2的更方便的原因,watch总共有三个参数,第二个参数永远是监听的回调函数,第三个参数也永远是监听的配置项,配置是否初始化监听一次,或者是否深度监听,下面这是watch第三个需要注意的地方,

2023-07-05 11:33:12 46

原创 07/04 vue3中 响应式原理、 setup的参数、以及props传参,以及计算属性

因为他观察者只在。

2023-07-04 12:12:12 65

原创 06/19 vue3中的数组重新赋值的坑

2,另外一种是通过reactive,但不直接创建一个数组,而是创建一个对象,对象里面在创建一个数组,data.arr=[] 这种方式也是可以的,这种方式相当于是在改对象里面的某个属性,因此也能做到直接赋值。3中的数组如果是reactive直接定义的话不能通过赋值的方式改变界面,目前有两种方式解决这个问题。1,是直接用ref([1,2,3])定义,通过arr.value的方式,这种可以直接赋值是有效的。

2023-06-19 15:10:10 322

原创 06/13 vue3 setup ref reactive 响应式

这两种写法官方是推荐下面这种的,单论便捷性的话,也是下面这种写法更好,但是实际上在真实使用过程中可能还是会存在使用到选项式的地方,这种情况下下面这种写法就不能用了,所以这种情况还是使用上面那种方式更好,总之都能用,看个人喜好,喜欢那种方式就用哪种方式。另外需要注意的是选项式和组合式尽量不要混用,他可以混用,但有问题,选项式api中可以拿到组合式api中setup定义的数据,但组合式api的setup中不能拿到选项式中的数据,另外如果有重名的情况下,以setup中的数据优先级更高。,这个和vue2是一样的。

2023-06-13 13:35:47 34

原创 快速删除node_modules目录的方式

当安装了较多模块后,node_modules目录下的文件会很多,直接删除整个目录会很慢,下面介绍些快速删除node_modules目录的方法。方法一:使用rimraf模块的命令在全局安装rimraf模块,然后通过其命令来快速删除node_modules目录:npm install rimraf -grimraf node_modules方法二:使用命令来删除目录Windows下使用rmdir命令首先在cmd窗口中进入到node_modules文件夹所在的路径,接着执行命令:

2021-10-24 18:13:59 2360

转载 jsplumb 文档实例

https://github.com/wangduanduan/jsplumb-chinese-tutorial#211-%E9%99%90%E5%88%B6%E8%8A%82%E7%82%B9%E6%8B%96%E5%8A%A8%E5%8C%BA%E5%9F%9F

2021-07-23 16:35:59 288

原创 Echarts数据可视化legend图例属性设置

//Echarts数据可视化legend图例属性设置legend={ show:true, //是否显示 zlevel:0, //所属图形的Canvas分层,zlevel 大的 Canvas 会放在 zlevel 小的 Canvas 的上面 z:2, //所属组件的z分.

2021-03-17 08:25:36 2343

原创 js 的 defineProperty 数据劫持

我们知道,在Vue中我们操作某个属性时vue可以实时响应,这是因为当一个vue实例被创建出来之后,它会生成一个Observer观察者实例,然后对vue中的对象属性进行遍历,通过defineProperty将它们转换为了getter和setter,当我们操作某个数据时,就会触发getter和setter,从而完成一个监听操作。下面我们详细解释一下defineProperty以及它的优劣所在:Object.defineProperty(obj,"",{})defineProperty总共有三个参数

2021-01-30 10:38:41 828 2

原创 Vue 路由机制的两种实现模式

Vue的路由机制主要是通过两种模式实现的第一种模式是hash模式 第二种是H5的history模式这是默认的hash模式的路由:改成history模式后const router = new VueRouter({ mode:"history", routes})export default routerHash模式hash模式是以url的hash值来作为路由,这也是vue的默认模式;hash模式的原理是动态的更改location.hash的值

2021-01-30 09:22:42 1421

原创 详解Vue中的Key和虚拟dom以及diff算法

一 虚拟dom在react,vue等技术出现之前,我们要改变页面展示的内容只能通过遍历查询 dom 树的方式找到需要修改的 dom 然后修改样式行为或者结构,来达到更新 ui 的目的。 这种方式相当消耗计算资源,因为每次查询 dom 几乎都需要遍历整颗 dom 树, 并且这个过程又会不可避免的出现大量DOM操作,而DOM的变化又会引发整个文档重排或重绘,从而降低页面渲染性能 此时就产生一个问题,有没有可能我们只更新我们修改的那一部分dom而不要更新去整个dom结构 此时虚拟DOM应用而生 ,如果

2021-01-25 15:13:32 867 1

原创 Js 详解事件循环 Event Loop,以及宏任务和微任务

要明白事件循环我们首先要了解渲染引擎渲染引擎是个多线程程序 它其中包含了四个线程js引擎线程 事件触发线程 定时任务线程 异步任务线程首先呢 js中包含了同步任务和异步任务两种,首先js引擎线程会创建一个执行栈,所有的同步任务都会被放到这个执行栈中来执行 同时事件触发线程管理着一个任务队列,当一个异步任务被触发后它内部的回调函数就会被放到这个任务队列中,注意此时它并不会执行这个回调函数,只是将它放入任务队列。 然后等js引擎线程中的执行栈中的同步任务执行完成之后,它就会去读取

2021-01-19 12:20:09 183

原创 Vue过场动画判断是进入还是退出 一行代码 完美解决

在Vue开发中 我们有时需要给场景切换加上一个过场动画 但是有一个难题 过场动画如何判断到底是进还退出的我在网上也找过很多方法,比如最常见的就是给路由的meta中加一个标识 通过标识判断大小 从而知道是退是进但是如果路由很多,怎么办,那要判断标识都是一个难题,苦思冥想许久,突然想到一个究极解决办法,我们可以通过时间来判断啊,我们在路由守卫中,每当进入一个路由之前,给他加个时间戳router.beforeEach(async (to, from, next) => { i

2020-12-31 15:06:49 344 1

原创 js 动态拼接正则表达式

在js中很多时候我们都需要使用正则 比如这里我利用正则查找字符 a 后面跟着一个或多个空格的内容,我们便可以这么做let str = "abcdefa aab bb"let reg = /a\s.*/console.log(reg.exec(str))但如果我们把条件改了,我们要查找字符b后面跟着一个或多个空格的内容,那我们不可能去再重新写一个正则这是我们便可以动态的去拼接正则,再js中不能直接使用常规的字符串拼接方式来拼接,它必须使用eval来进行拼接let str =.

2020-10-26 18:29:02 6479

原创 利用css after伪元素制作时间线(步骤条)效果

效果图如下<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title></title> <style type="text/css"> *{ margin: 0; padding: 0; } .wrap{ width: 300px; height: 60px; border: soli

2020-10-16 14:50:52 569

原创 纯css制作圆形进度条

效果图大概是这样的第一步 先定义出一个方形盒子<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title></title> <style&g.

2020-06-04 15:47:06 2273 1

原创 如何重置 Vue 中 data 的数据为初始状态

在vue中有时我们需要将data中的数据重置为初始状态,例如我们发布一篇文章,发布完成之后我们希望和表单双向绑定的对象重置为初始状态那么此时我们有两种办法,第一种,手动去给表单双向绑定的对象赋值为空data(){ return{ Notica:{ title:"", content:"", } ...

2020-04-01 15:42:32 4883

原创 关于在vue中使用amap高德地图插件出现的错误! iframe.postMessage 以及 onmessage 数据重复反馈的原因及解决办法

项目是用Vue做的 使用的是高德地图的插件需求是这样的 选择地址后,点击下面的地址列表中的某一个然后会返回这个地址的信息,例如名称,经纬度之类的,例如点击老成都返回老成都的地址信息我代码是这么写的HTML部分<iframe id="getAddress" @load="loadiframe" src="https://m.amap.com/picker/?key=...

2020-04-01 15:21:20 1177

原创 JavaScript中 let ,const 和 var的区别

我们以前在js中常用的声明变量的方式是var,但在es6中新增了两个新的声明变量的方式,那就是let和const1 声明的区别首先是var声明的变量var声明的变量会触发变量声明提升变量声明提升说简单点就是说用var声明的变量可以在变量声明之前使用console.log(a);//undefinedvar a = 10;console.log(a);//10//这样写不...

2020-01-05 09:22:11 155

原创 常见的DOCTYPE类型声明

HTML 5<!DOCTYPE html>HTML 4.01 Strict这个 DTD 包含所有 HTML 元素和属性,但不包括表象或过时的元素(如 font )。框架集是不允许的。<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"&gt...

2019-12-26 14:57:51 201

原创 原生js的Ajax请求详解

Ajax是可以用来与服务器进行通讯的一种技术,它可以在不刷新页面的情况下进行异步通讯并获得返回结果。Ajax常用的请求方式有两种,GET和POST,接下来将详细给出这两种请求方式的异同,以及Ajax使用时需要注意的地方。1 GET请求get请求一般用在向服务器请求某些资源,例如请求一段文章,或者一张图片等等。下面是完整的get请求的方式 我们可以看到,在获得XMLHttpReque...

2019-12-22 09:13:36 582

原创 在访问服务器上的php文件时,并没有解析 而是直接显示源码

在浏览器上访问阿里云服务器上的php文件时,并没有解析php文件,而是直接输出这个文件的源码,经过检查发现是没有安装php扩展安装即可yum install mod_php...

2019-12-06 17:56:29 2212

原创 服务器上 thinkphp后台报错could not find driver

在访问阿里云服务器上的thinkphp后台时报了个错could not find driver经过检查发现应该是没有安装mysql的驱动 安装完就没事了yum install php-mysql

2019-12-06 17:53:13 502

原创 访问服务器上的thinkphp后台时报错 Class 'PDO' not found

访问阿里云服务器上的thinkphp后台时报了个错,经过检查发现是没有安装pdo扩展,安装完就没事了yum install php-pdo

2019-12-06 17:51:07 355

原创 在请求服务器上的Thinkphp5后台时报错 500 internal server error

使用Vue项目请求我自己阿里云服务器上的Thinkphp5后台时报了个500错误 经过检查发现是没有给Thinkphp后台的log文件夹加上访问权限,加上就没问题了进入你自己的Thinkphp项目的runtime目录下,有个log目录cd /var/www/html/thinkphp/runtime/给log目录加上所有权限即可chmod -R 777 log ...

2019-12-06 17:47:05 2237

原创 Mysql 远程访问报错SQLSTATE[28000][1045] Access denied for user 'root'@'localhost'

在本地访问远程阿里云服务器上的mysql后台时出现了这样的错误,经过检查 是root访问权限的原因首先在自己的linux服务器上登录mysql输入如下命令 然后输入自己的数据库密码即可mysql -u root -p然后输入下面这条代码,给予root所有访问权限grant all on *.* to 你的数据库用户名@'你的服务器ip地址' identified by '你...

2019-12-06 17:40:43 1175

原创 css 画三角形

利用css画三角形 原理其实很简单其实就是改变div的边框来画出三角形 .box{ width: 0px; height: 0px; border: solid 100px black; }首先我们定义一个div,高宽设置为0,但是我们将它的border设置为100px,颜色先设置为...

2019-11-23 12:06:29 127

原创 yum 安装 httpd报错 No package httpd available

安装httpd,如果出现No package httpd available,可以尝试:yum --disableexcludes=all install -y httpd

2019-11-21 19:31:22 8690 13

原创 vue clie 3.0 引入全局scss报错解决,已经解决

在vue.config.js中进行配置这是以前的配置方法这样进行配置后会报错module.exports = { css: { loaderOptions: { sass: { data: `@import "@/lib/hotcss/px2rem.scss";` } } }}改成这种形式,就能正常运行,将da...

2019-11-07 21:11:38 644

原创 原生js手写java链表集合

链表集合是java中的多种集合之一,从名字就能听的出,这种集合它的底层实现使用了链表。链表是一种数据结构,它的排列方式很像一根链条,链表是由很多节点组成的,每个节点包含三个属性,previous,Value,nextprevious存储着上一个节点,next指向下一个节点,value存储着当前节点的数据,链表就是使用这样的方式将每个节点连接在一起,像链条一样,环环相扣使用链表...

2019-10-19 08:20:12 159

原创 将git本地仓库的项目推送到github的远程仓库上

首先 第一步 你得在电脑上装个git傻瓜式安装即可 没什么难度第二步 在github上创建一个远程仓库如果没有github的账号,可以去注册一个首先点击 You repositories然后会进入到用户中心 此时点击 New 即可进入到创建仓库的页面,如果你是第一次注册的话,注册成功之后应该默认就会跳转到创建仓库的页面来进入到创建仓库的页面后,什么...

2019-10-18 18:57:47 568

原创 css3中四种让元素水平居中的方式

第一种<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-eq...

2019-10-18 18:03:27 354

原创 如何下载b站视频

在你要下载的视频网址前加上三个字母比如要下载这个视频https://www.bilibili.com/video/av59529105/?p=62把这个网址改成这样后输入到地址栏你会发现新世界的大门https://www.kanbilibili.com/video/av59529105/?p=62貌似所有视频都可以...

2019-09-18 17:43:31 8896 1

原创 使用原生js编写Vue双向数据驱动(1)

观察者模式与数据劫持部分还没完成,有时间在继续更新function Vue(options){ this.$el = options.el; this.$data = options.data; if(this.$el){//若这个el节点存在不为空,则编译模板 //将data中的数据 全部转化成Object.defineProperty来定义 这样我...

2019-08-19 10:40:28 210

原创 js reduce累加器

reduce 是es6 新增的数组操作方法 意为累加器使用方法如下[1,1,1,1].reduce((total,currentValue,index)=>{},initialValue)initialValue 代表的是累加器的初始值 必填total的值在初始情况下等于initialValue 用来接收返回的结果 必填currentValue 代表数组中的每一项...

2019-08-17 16:10:45 1728 1

原创 Javascript对象浅拷贝和深拷贝

javascript 中的引用数据用赋值运算符进行赋值时复制的是变量的引用地址 这就是我们所说的浅拷贝当进行浅拷贝时,拷贝后的变量和被拷贝变量其实都是引用的是一个地址也就是说当一个改变时 另一个也会跟着改变而在拷贝基本数据类型时 例如 numbar 整形时 拷贝的变量和被拷贝的变量没有直接关系,因为此时它们的拷贝是变量的值这是拷贝基本数据类型 此时拷贝的变量...

2019-07-09 20:00:24 91

javascript canvas画布编写飞机大战.zip

javascript canvas画布编写飞机大战. 带自己血条和敌人血条

2019-10-24

js编写俄罗斯方块.zip

js编写俄罗斯方块.zip

2019-10-24

贪吃蛇.zip js和jquery制作贪吃蛇

js和jquery制作贪吃蛇

2019-10-24

俄罗斯方块.zip 使用js面面相对象编程方式编写的原生俄罗斯方块。

使用js面面相对象编程方式编写的原生俄罗斯方块。

2019-06-06

Cocos2d-Android架包

为cocos2d-android的android游戏开放引擎jar包 支持tiled Map地图的导入

2018-10-18

Java api 中文版 javaApi 1.6.0 最全中文版

javaApi 1.6.0 最全中文版

2018-10-18

unity2d 游戏开发资源 unity2d 游戏开发资源

白乃远(Billy Pai),现职:育达科技大学/多媒体与游戏设计系/专任助理教授兼系主任。经历:亚太创意学院/数字媒体设计学系/专任讲师;冀飞多媒体设计有限公司/业务经理。著作:拥有动画制作、游戏设计、电子书、多媒体、国际认证等近20本图书。 吴苑瑜(Wu Yuan—Yu),现职:圣堂数字有限公司/信息开发部/资讯工程师/开发项目管理师;原力工作室/负责人/程序设计师。参与项目开发:老人系列工具箱应用开发、奇遇社群应用程序开发、大稻旅图Beacon创新应用开发、Crazy Yummy暴食专家手机游戏开发、千变万话手机游戏开发、手势操控跨平台办公室数据中控系统开发、配对式交友手机社群应用程序开发。参与开发音社团:Unity Taiwan Developers、UGDC—Unity3D Game Design Community、XNA Taiwan Developers、台湾游戏独立(Indie)开发者Group、Android台湾开发者社群。 曾奕霖,现职:圣堂数字有限公司/企划部主任。 余秉学,现职:圣堂数字有限公司/外聘设计师。经历:水漾科技有限公司/外聘设计师、圣堂数字有限公司/游戏类APP开发项目/视觉设计师。 目录 目 录 第1 章 初探 Unity游戏引擎 1.1 Unity 热浪来袭 2 1.2 Unity 初步认识 2 平台支持 3 性化操作 3 Plug In 4 所见即所得 4 1.3 Unity 版本演进 5 Unity 4.3 — 2D、3D 分水岭 5 Unity 5 — 免费云时代来临 5 1.4 Unity 经典游戏介绍 6 炉石传说:魔兽英雄传 6 神魔之塔 7 新仙剑 Online 7 第2章 开发环境的建立 2.1 Unity 软件的下载与安装 10 环境需求 10 软件下载 10 软件安装 11 版本说明 15 2.2 Unity 编辑器界面功能的介绍 15 工具栏 16 层次窗口 17 项目窗口 17 游戏场景窗口 18 游戏窗口 18 属性编辑器 18 自定义版面设置 19 2.3 Unity 项目管理介绍 20 项目(project) 20 场景(scene) 21 第3章 2D 图片对象 3.1 什么是 Sprite 对象 24 动画 24 碰撞与触发 24 UI 界面 25 3.2 制作 Sprite2D 对象 25 图片属性编辑器 25 创建 Sprite 对象 26 加入到场景 27 保存场景 27 3.3 使用 Sprite2D 对象制作简易 GUI 27 将按钮加入场景 28 移动按钮位置 28 创建程序 28 程序说明 29 第4章 2D动画 4.1 动画原理 36 动画概念 36 画格与时间轴 36 4.2 Unity 动画工具 37 Animation 编辑器 37 Animator 编辑器 37 4.3 制作连续动画—鸭子飞飞 38 Sprite 设置 38 图片切割 39 动画设置 41 4.4 控制角色动画—Mr.Egg 43 动作切割 44 制作动画 45 动作切换 46 编写程序 49 程序连接至对象 51 第5章 2D 碰撞 5.1 碰撞与触发 54 碰撞与碰撞器 54 触发与触发器 56 5.2 范例—简易 2D 碰撞与触发 58 建造地板 59 加入主角 59 制作陷阱 67 制作宝箱 68 第6章 2D关节应用 6.1 关节动画的概念 74 何谓关节 74 制作程序 74 6.2 范例—简易关节动画的制作 77 分割对象 77 安排图层与连接轴心 78 设计动作 79 6.3 观摩 Unity 关节动画范例 81 第7章 2D特效应用 7.1 认识 Unity 粒子系统工具 84 创建粒子对象 84 认识粒子属性 85 7.2 寻找粒子系统的在线资源 88 认识 Unity Asset Store 88 加载在线资源 89 7.3 范例—实现粒子特效动画 90 制作导弹预制对象 91 制作爆炸预制对象 93 制作墙壁对象 94 加入碰撞器 94 操控程序 95 制作烟雾特效 98 第8章 认识手势插件 8.1 FingerGestures 插件的认识 102 8.2 FingerGestures 范例观摩 103 获取与导入 103 场景建立 104 范例观摩 104 8.3 FingerGestures 范例实践 108 创建 FingerGestures 对象 109 创建检测球体 109 创建 FingerEvents 对象 110 第9章 单击触控事件 9.1 创建海公主动画 122 素材介绍 122 创建 player 对象 124 创建动画文件 124 插入动作图片 125 9.2 建立动作关联性 127 动作流程设置 127 动作条件设置 128 9.3 创建触碰控制程序 133 创建对象 134 程序设计 136 第10章 手势判断事件 10.1 认识七大手势判断事件 150 Drag 150 Long Press 152 Pinch 153 Point Cloud 154 Swipe 155 Tap 156 Twist 157 10.2 儿童认知游戏的制作 158 游戏说明 158 素材说明 159 创建吉祥物对象 160 创建手势控制程序 172 创建手势模板 181 第11章 冷饮店手机游戏界面与功能构建 11.1 游戏企划的介绍 186 游戏说明 186 游戏架构 189 11.2 游戏主界面的构建 189 11.3 游戏菜单程序的说明 196 建立程序连接 196 程序说明 198 第12章 冷饮店手机游戏关卡与难度制作 12.1 关卡布置方式 208 背景构建 208 创建界面文字 208 Sink(水槽) 210 Other(杯子) 210 NewGame(新关卡) 218 MusicBox(声音控制) 221 GameObject(吧台) 221 12.2 关卡控制机制 224 任务机制 224 场景机制 230 顾客机制 235 第13章 手机游戏上架发布教程 13.1 Android 发布应用的教程 242 Android 环境设置 242 发布 APK 245 发布设置 247 13.2 Unity Remote 4 使用的介绍 251 下载 Unity Remote 4 251 安装并执行 Unity Remote 4 251 13.3 在 Google play 商店上架发布应用的教程 252 注册成为 Google Play 开发者 252 13.4 iOS 发布应用程序的教程 257 iOS 环境设置 257 发布步骤 260 发布设置 260 第14章 “奔跑吧!麦克”网页游戏——游戏菜单与关卡的构建 14.1 “奔跑吧!麦克”游戏的架构 264 游戏介绍 264 项目结构 265 14.2 游戏菜单的构建 265 加入 Begin 程序 266 Audio Source 音效控制 267 GUI Skin 按钮 268 Begin 程序说明 269 bgmControl程序说明 272 14.3 游戏关卡场景的构建 274 背景设置 274 构建关卡 276 14.4 制作场景预制对象 281 什么是预制对象 282 创建更多关卡预制对象 282 第15章 “奔跑吧!麦克”网页游戏——角色与关卡机制 15.1 “奔跑吧!麦克”关卡机制的介绍 286 麦克结构 286 结构说明 286 15.2 麦克角色的创建与控制 287 麦克角色 287 麦克过关 295 15.3 关卡机制的构建 297 转场机制 297 闯关机制 299 第16章 网页游戏上架发布教程 16.1 网页游戏的发布 314 网页发布 314 PlayerSettings 315 16.2 架设本地服务器 317 16.3 架设 Google 云服务器 318 序言 作者序 Unity 是一款跨平台的游戏引擎,直观的工具模块让游戏开发人员不再需要学习复杂的程序设计语言,从而大幅降低了游戏开发的门槛。最新版本的 Unity 5 已经支持了 21 种平台的游戏开发,像《炉石传说》《神魔之塔》《新仙剑》这些经典游戏都是出自 Unity 之手,因此现在正是加入Unity的时候,趁着最新版本 Unity 5 推出了免费个人版,在本书的指引下,跟随本书的各个章节一起学习使用 Unity 来开发游戏吧。 本书教学由浅入深,采用较为流行的 C# 作为主要的开发语言,由于目前正处于 Unity 4 和 5 的转换期,因此每个章节的范例都附有 Unity 4 和 Unity 5 两种版本,供本书的学生或者学习人员按照安装的版本自行选择练习。

2018-10-04

c# winfrom socket模拟QQ多人聊天

实现了QQ的多人聊天功能,支持100个客户端一起聊天,有在线列表,每当有人上线时窗口右边在线列表里就会增加在线人的昵称,还有消息提示,当你把窗口缩小到屏幕右下角的任务栏时,有人发消息的话就会弹出qq那种提示框

2018-05-18

仿android计算器 仿android计算器

用Android制作的仿Android手机的计算器,需要点Android基础,存在小部分bug,不能进行连续计算,大佬们可以自行更改

2018-05-04

用js编写的飞机大战,注释都写着,小白也能看懂

这是用JavaScript写的飞机大战,一个比较简单的,图片资源都在压缩包里,注释也写了,大伙应该能看懂

2018-04-29

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除