自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(128)
  • 收藏
  • 关注

原创 Math类的几个用法

1.Math.PI 记录的圆周率2.Math.E记录e的常量3.Math.abs 求绝对值4.Math.sin 正弦函数 Math.asin 反正弦函数5.Math.cos 余弦函数 Math.acos 反余弦函数6.Math.tan 正切函数 Math.atan 反正切函数 Math.atan2 商的反正切函数7.Math.toDegrees 弧度转化为角度 

2016-08-15 14:30:37 615

原创 cocos2d-js中数组基本知识点

数组是对象的特殊形式。所有的数组都是对象。1.稀疏数组就是包含从0开始的不连续索引的数组。如果数组是稀疏的,length属性值大于元素的个数。unshift()方法是在数组的首部插入一个元素。push()方法是依次往数组中添加元素。splice()方法是从start位置开始删除deleteCount项元素,并从该位置起插入var1,var2,... : splice(start,del...

2016-08-10 09:27:16 874 1

转载 屏幕旋转实现方案,支持全平台

ios平台的查了些资料,发现好多实现都是需要同时勾选设备的横向、竖向,最后才发现用supportedInterfaceOrientationsForWindow可以很容易实现。((AppActivity)(SDKWrapper.getInstance().getContext()))只是为了拿到AppActivity的实例,你也可以存个变量。ANDROID平台(AppActivity.java里添加以下代码,需要import android.content.pm.ActivityInfo;

2023-11-23 16:44:47 152

原创 cocos creator中AStar算法实例

引擎版本 —— cocos creator2.3.4。

2023-11-23 16:27:07 370

原创 Spine的BoundingBoxAttachment碰撞检测

【代码】Spine的BoundingBoxAttachment碰撞检测。

2023-11-23 16:22:21 193

原创 给sprite上增加刷光动效

游戏引擎 —— cocos creator 3.52此动效给动态修改尺寸的图片增加一层刷光的效果,直接贴代码。

2023-11-23 16:18:20 111

转载 cocoscreator中tween详细用法

基本方法:to:对属性进行绝对值计算,最终的运行结果即是设置的属性值,即改变到某个值by:对属性进行相对值计算,最终的运行结果是设置的属性值加上开始运行时节点的属性值,即变化值 贝塞尔曲线: · 支持缓动任意对象的任意属性· 变速 easing· 自定义 progress// 对所有属性自定义 progress// 对单个属性自定义 progress· 插入其他的缓动到队列中· 并行执行缓动​​​​​​​· 回调​​​​​​​· 重复执行

2022-07-06 09:18:31 9473

转载 npm 安装详细教程

转载:http://xiaoyaojones.blog.163.com/blog/static/28370125201351501113581/windows下的NodeJS安装是比较方便的(v0.6.0版本之后,支持windows native),只需要登陆官网(Node.js),便可以看到首页的“INSTALL”按钮,直接点击就会自动下载安装了。安装过程基本直接“NEXT”就可以了。(windows的安装msi文件在过程中会直接添加path的系统变量,变量值是你的安装路径,例如“C:\Program F

2022-07-06 09:05:17 111203 6

原创 代理模式(Typescript)

interface Icalc{ calc(num1:number, num2:number):number;}class Npc1 implements Icalc{ calc(num1: number, num2: number): number { return num1 + num2; }}class Npc2 implements Icalc{ calc(num1: number, num2: number): number { ...

2022-03-26 17:37:40 1158

原创 Unity——泛型单例模式

using UnityEngine;public class Singleton<T> : MonoBehaviour where T : Singleton<T>{ private static T instance; private static object syslock = new object(); //线程锁 public static T Instance { get { .

2021-07-26 14:20:56 451

原创 unity——3d项目知识点笔记

1.Vector3.Normalize():实现规范化,让一个向量保持相同的方向,但它的长度为1.0,如果这个向量太小而不能被规范化,一个零向量将会被返回。2.声明变量:private float aa = 0.5f; 声明常量:private const float aa = 0.5f;3.使用 ForceMode 指定如何使用 Rigidbody.AddForce 来施加力。ForceMode.Acceleration向此刚体添加连续加速度,忽略其质量。ForceMode.Force向此刚

2021-07-26 14:20:45 268

原创 广播Observer

(player死亡,manager给enemy发送广播示例)public interface IEndGameObserver { void EndNotify();}//给enemy添加广播using UnityEngine;public class EnemyController : MonoBehaviour,IEndGameObserver{ //每个EnemyController 生成的时候被添加到管理者里面 void OnEnable() {

2021-07-26 14:20:26 124

转载 Unity 3D - 生命周期 :

执行次序:Awake -> Start -> OnEnable -> FixedUpdate -> Update -> LateUpdate -> OnGUI -> Reset -> OnDisable -> OnDestoryAwake:用于在游戏开始之前初始化变量或游戏状态,在脚本整个生命周期内仅被执行一次。Awake在所有游戏对象初始化之后执行,因此可以在方法中安全地与游戏对象进行通信 .Start:仅在所有脚本的Update方法第一次被

2021-07-26 14:20:11 239

原创 Animation中SetBool和SetTrigger的区别

SetBool通常代表对象的一种状态,比如跳跃、跑步等,可以通过GetBool来判断现在是否在这个状态中;而SetTrigger代表当时那一下触发的动画,比如攻击、受伤、死亡等,触发了它们的条件则进行播放。比较概念性,通常情况下都可以使用,区别不大...

2021-07-23 15:59:48 4002

原创 不想让public在unity脚本组件上显示--[HideInInspector]

隐藏public变量不在unity中显示:[HideInInspector]在unity中显示标签:[Header("hallo")]

2021-07-23 15:52:11 1525 1

原创 ScriptableObject

(1)在 Assets 下添加菜单,菜单脚本:using UnityEngine;[CreateAssetMenu(fileName = "New Data", menuName = "Character Stats/Data", order = 1)]//!作用在 Assets 文件夹下,鼠标右键,菜单栏中添加一个按钮项,菜单名为 menuName,并执行生成名为 fileName 的脚本,order 为按钮显示顺序public class Attack_SO: ScriptableObje

2021-07-23 15:50:48 144

原创 给GameObject绘制一个范围(球形示例)

void OnDrawGizmosSelected() { Gizmos.color = Color.blue; Gizmos.DrawWireSphere(transform.position, maxDistance); //!坐标,范围 }

2021-07-23 15:41:11 75

转载 Physics.Raycast理解

方法原型与参数说明其实这个函数有个很藏的很深的地方就是这个layermask, 一般情况我们获取layer的值都会是layermask.nametolayer 这个函数去取得对应的层级,然后把这个int形的参数给到函数使用。但是如果是使用了Physics.Raycast去获取碰撞物的时候,你怎么都获取不到被碰撞的物体。(即使你划线来表示你的射线,也会觉得好像没有任何问题)最后在unity的官方上找到了说明Casting Rays SelectivelyUsing layers you .

2021-07-23 15:39:05 1401

原创 Unity函数事件

using System;声明事件AA:public event Action<T> AA调用事件AA添加的方法: AA?.Invoke(T); //如果某个类有添加事件则调用,并传入参数value给事件AA添加方法BB:AA+=BB, public void BB(T){}

2021-07-23 15:30:45 193 1

转载 Unity中协程(IEnumerator)的使用方法介绍

在Unity中,一般的方法都是顺序执行的,一般的方法也都是在一帧中执行完毕的,当我们所写的方法需要耗费一定时间时,便会出现帧率下降,画面卡顿的现象。当我们调用一个方法想要让一个物体缓慢消失时,除了在Update中执行相关操作外,Unity还提供了更加便利的方法,这便是协程。在通常情况下,如果我们想要让一个物体逐渐消失,我们希望方法可以一次调用便可在程序后续执行中实现我们想要的效果。我们希望代码可以写成如下所示:void Fade() { for (float f = 1f; f >

2021-07-23 15:25:25 2181

原创 代码判断GameObject有没有component,没有则添加该组件

在挂载AA脚本的GameObject上判断有没有NavMeshAgent组件,没有则添加NavMeshAgent组件,好处是在多个子类的情况下挂载AA脚本就能自动添加该组件。[RequireComponent(typeof(NavMeshAgent))]publicclass AA:MonoBehaviour{}...

2021-07-23 15:04:42 798

原创 状态机——示例

枚举:public enum EnemyStates { A,B,C,D}public EnemyStates enemyStates;状态切换:void SwitchStatus(){ switch (enemyStates) { case EnemyStates.A: break; case EnemyStates.B: break; ...

2021-07-23 15:00:21 150

转载 Unity 3D - Random类 :

Random类可以用来生成随机数。Random成员变量 :成员变量 说明seed 随机数生成器种子value 返回一个0~1之间随机浮点数,包含0到1insideUnitSphere 返回位于半径为1的球体内的一个随机点(只读)insideUnitCircle 返回位于半径为1的圆内的一个随机点(只读)onUnitSphere 返回半径为1的球面上的一个随机点(只读)rotation 返回一个随机旋转(只读)rotationUniform ...

2021-07-23 14:57:54 537

转载 WebStorm的ActivationCode

K6IXATEF43-eyJsaWNlbnNlSWQiOiJLNklYQVRFRjQzIiwibGljZW5zZWVOYW1lIjoi5o6I5p2D5Luj55CG5ZWGOiBodHRwOi8vaWRlYS5oay5jbiIsImFzc2lnbmVlTmFtZSI6IiIsImFzc2lnbmVlRW1haWwiOiIiLCJsaWNlbnNlUmVzdHJpY3Rpb24iOiIiLCJjaGVja0NvbmN1cnJlbnRVc2UiOmZhbHNlLCJwcm9kdWN0cyI6W3siY29kZ

2021-04-25 11:17:56 2477

原创 cocos2d-js实现网页全屏心得

1.如果是H5全屏,使用cc.screen里面的接口就可以完成判断全屏:cc.screen.isFullScreen()打开全屏:cc.screen.requestFullScreen(document.documentElement,function(){});关闭全屏:cc.screen.exitFullScreen();2.如果是浏览器全屏(F11)使用上面办法就无法判断是否全屏,只能通过浏览器的宽高去判断,重点:火狐浏览器和chrome浏览器判断方式有点区别var explor

2020-07-18 14:15:46 385

转载 NODEJS环境搭建 第一篇 安装和部署NODEJS

一、下载安装文件根据自己当前系统环境,下载相对应的安装文件https://nodejs.org/en/download/二、双击安装都傻瓜式的安装步骤,一步一步安装就好了。 三、检查安装结果进入dos,输入node -v出现版本号输入npm -v出现版本号如下图四、配置npm的全局模块的存放路径以及cache的路径我是把全局模块放在E盘,...

2019-02-25 16:04:34 344

原创 Cocos2d-js 中 使用ClippingNode做动画导致裁剪b部分显示的bug

问题描述:在项目中,要对(cc.layout)做某个裁剪的动画效果,结果temp_layer中的动画效果达到了,但是在temp_layer之后加入的layer全部显示不了!上网查了一下原因,说是cocos中本身对于clippingNode的BUG。看了几遍博客,找了设置listView:setClippingType(LAYOUT_CLIPPING_SCISSOR)的解决方法,但是依然不奏效。...

2018-10-25 14:58:36 838

原创 setInterval 、 settimeout 、clearInterval 用法(特殊情况下代替schedule)

setInterval :setInterval(function(){cc.log("do someting")},3000) //间隔3秒执行一次 ,可代替schedule,区别就是setInterval以毫秒计时,而schedule以秒计时settimeout :settimeout (function(){cc.log("do someting")},3000) //3秒后执行一次且...

2018-07-07 14:20:19 1211

转载 《设计模式》 - 8. 外观模式( Facade )

Javascript设计模式 - 原文链接 《设计模式》 - 8. 外观模式( Facade ) :语言 : C#说明 :第一步 : 通过 Shape 接口 , 衍生出两个派生类 正方形 (Square) 和 圆形 (Circle) , Square 和 Circle 两个类里都具有 绘制 (draw) 函数 .第二步 : 然后实例化 Maker 类 , 通过 maker 来调用 draw 函数绘...

2018-07-06 15:57:32 246

转载 《设计模式》 - 7. 组合模式( Composite )

Javascript设计模式 - 原文链接组合模式 ( Composite ) :语言 : JavaScript说明 :以一个游戏角色为例 , 人物角色的技能表为 主菜单 (skillMenu) , 主菜单 包含 冰系技能菜单 ( iceSkillMenu ) 和 火系技能菜单 ( fireSkillMenu ) , 菜单里面分别还有对应属性技能 .适用情况 :像上面举例的这种情况 , 技能表 和...

2018-07-06 15:56:02 194

转载 《设计模式》 - 6. 桥接模式( Bridge )

Javascript设计模式 - 原文链接 Tips : 后文中的 ctor函数是cocos2d - JS 中构造函数 .桥接模式 ( Bridge ) :语言 : JavaScript说明 :以画笔为例 , 假设画笔有3种型号 (大 、中 、小) 和 3种颜色 (黑 、白 、红) . 正常情况下 每个型号和每种颜色组合(小黑 、中黑 、大黑 、 小白 、中白…)都需要一支 , 那就需要 3*3 ...

2018-07-06 15:54:47 222

转载 《设计模式》 - 5. 适配器模式( Adapter )

Javascript设计模式 - 原文链接适配器模式 (Adapter) :语言 : JavaScript以一个游戏主角为例 , 刚开始主角只有(普通攻击)和一个技能(重击) .//主角var Character = cc.Class.extend({ Attack : function(){ console.log("普通攻击"); }, Skill ...

2018-07-06 15:53:06 199

转载 《设计模式 》 - 4. 原型模式( Prototype )

原型模式 ( Prototype ) :语言 : JavaScriptJavaScript 克隆方法 :function clone(obj) { if (null == obj || "object" != typeof obj) { return obj; } // Date if (obj instanceof Date) {...

2018-07-06 15:51:11 162

转载 《设计模式》 - 3. 创建者模式( Builder )

Javascript设计模式 - 原文链接创建者模式 ( Builder ) :语言 : JavaScript说明 :以KFC的套餐为例 ,每种套餐包含(主食 、副食 、饮料)三种食物 , 假设 1 位厨师(Cook)只会制作 1 种套餐(Meal) , 我们需要根据套餐选择厨师 .导演类( Dirctor ) :导演类规定套餐的基本组成 , 分为主食 、副食 、饮料3个部分 .var Dirct...

2018-07-06 15:48:47 222

转载 《设计模式》 - 2. 工厂模式( Factory )

Javascript设计模式 - 原文链接简单工厂模式 (Simple Factory) :语言 : JavaScript说明 :以一个生产汽车的工厂为例 , 来阐述3个工厂设计模式.产品类 :现在有两种车型, 他们都继承父类(Car), 两种车具有父类的所有属性和方法.//cc.Class 是 cocos2d - JS 中的 Class .var Car = cc.Class.extend({...

2018-07-06 15:43:33 187

转载 《设计模式》 - 1. 单例模式( Singleton )

单例模式 :语言 : JavaScript定义 :单例模式有两个要点,保证一个类只有一个实例,并提供访问该实例的全局访问点。说明 :这篇文章通过一个简单的创建Mask的需求 , 一步步优化代码中 , 循序渐进 , 通俗易懂地讲解了单例的产生以及运用 , 加上了一些个人理解 .假定需求 : 在点击按钮需要弹出一个遮罩层的时 . (例如 web.qq.com点击登录的时候) 第一次处理 :创建 div...

2018-07-06 15:36:12 196

转载 cocos2d - JS A*算法

创建地图 ( map对象 ) :var map = { rows : 5, cols : 5, arr : [ [0,0,1,0,0], [0,0,1,0,0], [0,1,0,0,0], [0,1,0,1,0], [0,0,0,1,0], ...

2018-07-06 11:24:13 187

转载 cocos2d - JS 常用 API :

创建颜色层 (LayerColor)API :var LayerColor = new cc.LayerColor(cc.color(0,0,0,120), cc.winSize.width, cc.winSize.height);scene.addChild(LayerColor);12文本描边 :label.enableOutline(cc.color.BLACK, 2);//cc.co...

2018-07-06 10:25:17 1253

转载 cocos2d-JS 帧听断网、连网事件

cocos2d-JS 帧听断网、联网事件 :var EventUtil = { addHandler: function(element, type, handler) { if (element.addEventListener) { element.addEventListener(type, handler, false); }...

2018-07-05 18:34:09 303

转载 cocos2d - JS 进阶主题 call() 、apply() 和 bind() 解析

Tips : Call 和 apply 非常类似 以Call方法为例.Call方法 :定义:调用一个对象的一个方法,以另一个对象替换当前对象。说明:Call 方法可以用来代替另一个对象调用一个方法。 Call 方法可将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象。 如果没有提供 thisObj 参数,那么 Global 对象被用作 thisObj。JavaScript ...

2018-07-05 18:25:31 592

cocos creator中AStar算法实例

引擎版本 cocos creator2.3.4

2023-11-23

空空如也

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

TA关注的人

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