<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[LeePorter的博客]]></title><description><![CDATA[程序小白努力中]]></description><link>https://blog.youkuaiyun.com/LeePorter</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; LeePorter]]></copyright><item><title><![CDATA[CocosCreator官方示例 - spine系列]]></title><link>https://blog.youkuaiyun.com/LeePorter/article/details/103044957</link><guid>https://blog.youkuaiyun.com/LeePorter/article/details/103044957</guid><author>LeePorter</author><pubDate>Wed, 13 Nov 2019 11:50:42 +0800</pubDate><description><![CDATA[1.动态加载spine动画

挂载spine动画依赖sp.Skeleton组件


设置spine动画三个重要的属性，也可以代码动态设置
Skeleton Data
			骨骼信息数据，拖拽Spine 导出后的骨骼资源到该属性中
		Default Skin
			选择默认的皮肤
		Animation
			
			当前播放的动画名称
			
		通过代码加载，读取assets/resourc...]]></description><category></category></item><item><title><![CDATA[cocos creator随笔]]></title><link>https://blog.youkuaiyun.com/LeePorter/article/details/100543293</link><guid>https://blog.youkuaiyun.com/LeePorter/article/details/100543293</guid><author>LeePorter</author><pubDate>Wed, 04 Sep 2019 17:20:54 +0800</pubDate><description><![CDATA[接触一个月cocos creator做个笔记。。。

1、socket.io 封装了websocket , Ajax等，故任何浏览器都可以使用socket.io建立异步连接。websocket 双向需要握手建立连接，http 单向。

短连接：一次性交换数据，如登入，创建角色等 长连接：推送

(一) socket.emit('tell one person'); socket.broadcas...]]></description><category></category></item><item><title><![CDATA[CocosCreator官方示例 - 03_animation - AnimateCustomProperty]]></title><link>https://blog.youkuaiyun.com/LeePorter/article/details/100054605</link><guid>https://blog.youkuaiyun.com/LeePorter/article/details/100054605</guid><author>LeePorter</author><pubDate>Mon, 26 Aug 2019 14:54:08 +0800</pubDate><description><![CDATA[本例中学习创建CocosCreator动画系统

首先，动画是依附于节点的。我们创建一个进度条，一个label，一个粒子特效，将这些控件放到Root父节点里，在Root节点上挂载我们需要的动画组件 - Animation，关于 Animation 组件的详细介绍可以在官方文档里查看（https://docs.cocos.com/creator/manual/zh/animation/）

本例是通...]]></description><category></category></item><item><title><![CDATA[Unity-Shader]]></title><link>https://blog.youkuaiyun.com/LeePorter/article/details/84632111</link><guid>https://blog.youkuaiyun.com/LeePorter/article/details/84632111</guid><author>LeePorter</author><pubDate>Thu, 29 Nov 2018 14:36:31 +0800</pubDate><description><![CDATA[Unity-Shader


是运行在GPU上的一段代码，控制GPU的运算方式
	着色器就是给定了输入，然后出输给Material进行着色的代码。


GameObject里有MeshRenderer
	MeshRenderer里有Material列表
	每个Material里有且只有一个Shader
	Material在编辑器暴露该Shader的可调属性
Shader的大体格式：


//格式1...]]></description><category></category></item><item><title><![CDATA[Shader入门教程（一）]]></title><link>https://blog.youkuaiyun.com/LeePorter/article/details/84617780</link><guid>https://blog.youkuaiyun.com/LeePorter/article/details/84617780</guid><author>LeePorter</author><pubDate>Thu, 29 Nov 2018 10:33:37 +0800</pubDate><description><![CDATA[https://blog.youkuaiyun.com/tyuiof/article/details/52754300]]></description><category></category></item><item><title><![CDATA[C#-Lambda]]></title><link>https://blog.youkuaiyun.com/LeePorter/article/details/84570557</link><guid>https://blog.youkuaiyun.com/LeePorter/article/details/84570557</guid><author>LeePorter</author><pubDate>Thu, 29 Nov 2018 10:16:15 +0800</pubDate><description><![CDATA[
using System.Collections;
using System.Collections.Generic;
using System.Linq.Expressions;
using UnityEngine;

public class TestLambda : MonoBehaviour
{
    /*
        Lambda 的一般规则如下：
        Lambda ...]]></description><category></category></item><item><title><![CDATA[C#-泛型]]></title><link>https://blog.youkuaiyun.com/LeePorter/article/details/84556322</link><guid>https://blog.youkuaiyun.com/LeePorter/article/details/84556322</guid><author>LeePorter</author><pubDate>Thu, 29 Nov 2018 10:16:05 +0800</pubDate><description><![CDATA[
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using TestMyGeneric;

//泛型类
public class MyGeneric&amp;lt;T&amp;gt; : IMyGeneric&amp;lt;string&amp;gt;
{
    public T _T;

    public st...]]></description><category></category></item><item><title><![CDATA[C#-delegate]]></title><link>https://blog.youkuaiyun.com/LeePorter/article/details/84344459</link><guid>https://blog.youkuaiyun.com/LeePorter/article/details/84344459</guid><author>LeePorter</author><pubDate>Thu, 29 Nov 2018 10:15:42 +0800</pubDate><description><![CDATA[
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class TestDelegate : MonoBehaviour {
    //原文地址:http://www.cnblogs.com/akwwl/p/3232679.html
    //...]]></description><category></category></item><item><title><![CDATA[C#-深拷贝与浅拷贝]]></title><link>https://blog.youkuaiyun.com/LeePorter/article/details/84329192</link><guid>https://blog.youkuaiyun.com/LeePorter/article/details/84329192</guid><author>LeePorter</author><pubDate>Thu, 29 Nov 2018 10:15:31 +0800</pubDate><description><![CDATA[1.深拷贝与浅拷贝

  拷贝即是通常所说的复制(Copy)或克隆(Clone)，对象的拷贝也就是从现有对象复制一个“一模一样”的新对象出来。虽然都是复制对象，但是不同的 复制方法，复制出来的新对象却并非完全一模一样，对象内部存在着一些差异。通常的拷贝方法有两种，即深拷贝和浅拷贝，那二者之间有何区别呢？MSDN里对 IClone接口的Clone方法有这样的说明：在深层副本中，所有的对象都是重复的；...]]></description><category></category></item><item><title><![CDATA[C#-数组段ArraySegment<T>]]></title><link>https://blog.youkuaiyun.com/LeePorter/article/details/84336164</link><guid>https://blog.youkuaiyun.com/LeePorter/article/details/84336164</guid><author>LeePorter</author><pubDate>Thu, 29 Nov 2018 10:15:26 +0800</pubDate><description><![CDATA[　　结构ArraySegment&amp;lt;T&amp;gt;表示数组的一段。如果需要使用不同的方法处理某个大型数组的不同部分，那么可以把相应的数组部分复制到各个方法。
　　ArraySegment&amp;lt;T&amp;gt;结构包含了关于数组段的信息（偏移量和元素个数）。


    //数组段不复制原数组的元素，但原数组可以通过ArraySegment&amp;lt;T&amp;gt;访问。如果数组段中的元素改变了，这些变化就会反...]]></description><category></category></item><item><title><![CDATA[C#-属性访问器]]></title><link>https://blog.youkuaiyun.com/LeePorter/article/details/84326283</link><guid>https://blog.youkuaiyun.com/LeePorter/article/details/84326283</guid><author>LeePorter</author><pubDate>Thu, 29 Nov 2018 10:15:18 +0800</pubDate><description><![CDATA[类成员包括变量和方法。如果希望其他类能够访问成员变量的值，就必须定义成公有的，而将变量设为公有public，那这个成员变量的就可以被任意访问(包括修改，读取)，这样不利于数据安全。 C#通过属性特性读取和写入字段（成员变量），而不直接直接读取和写入，以此来提供对类中字段的保护。属性可用于类内部封装字段。属性是C#面向对象技术中封装性的体现。

属性和字段的区别：

属性是逻辑字段，是字段的扩展，并...]]></description><category></category></item><item><title><![CDATA[C#-抽象类和Interface]]></title><link>https://blog.youkuaiyun.com/LeePorter/article/details/84324746</link><guid>https://blog.youkuaiyun.com/LeePorter/article/details/84324746</guid><author>LeePorter</author><pubDate>Thu, 29 Nov 2018 10:15:13 +0800</pubDate><description><![CDATA[C#的抽象类和接口的区别，在什么时候使用才合适？

理解抽象类
	  abstract class和interface在c#语言中都是用来进行抽象类（本文 中的抽象类并非从abstract class翻译而来，它表示的是一个抽象体，而abstract class为c#语言中用于定义抽象类的一种方法， 请读者注意区分）定义的，那么什么是抽象类，使用抽象类能为我们带来什么好处呢？
	  在面向对象的概...]]></description><category></category></item><item><title><![CDATA[C#-const和readonly]]></title><link>https://blog.youkuaiyun.com/LeePorter/article/details/84291995</link><guid>https://blog.youkuaiyun.com/LeePorter/article/details/84291995</guid><author>LeePorter</author><pubDate>Thu, 29 Nov 2018 10:15:06 +0800</pubDate><description><![CDATA[const修饰的常量是静态常量，而readonly是动态常量。他们的区别可以从静态常量和动态常量的特性来说明：

const修饰的常量在声明时必须初始化值；readonly修饰的常量可以不初始化值，且可以延迟到构造函数。
	cons修饰的常量在编译期间会被解析，并将常量的值替换成初始化的值；而readonly延迟到运行的时候。
	const修饰的常量注重的是效率；readonly修饰的常量注重灵活...]]></description><category></category></item><item><title><![CDATA[Unity-Canvas层级]]></title><link>https://blog.youkuaiyun.com/LeePorter/article/details/84250165</link><guid>https://blog.youkuaiyun.com/LeePorter/article/details/84250165</guid><author>LeePorter</author><pubDate>Thu, 29 Nov 2018 10:14:57 +0800</pubDate><description><![CDATA[我在一个panel上添加了Canvas组件 通过代码
canvas.overrideSorting = true;
        canvas.sortingOrder = 99;
来调整该panel的层次
但是panel下的button不会被触发，请问这种情况如何解决呀

 

答：通过Panel挂Canvas组件，动态调整Panel层级，挂graphic raycaster组件是为了让UI事...]]></description><category></category></item><item><title><![CDATA[Unity-隐藏UI，开销较小的方法（CanvasGroup）]]></title><link>https://blog.youkuaiyun.com/LeePorter/article/details/84235923</link><guid>https://blog.youkuaiyun.com/LeePorter/article/details/84235923</guid><author>LeePorter</author><pubDate>Thu, 29 Nov 2018 10:14:48 +0800</pubDate><description><![CDATA[unity UI如何开启（显示）或者关闭（隐藏）Panel界面最好？

unity UI如何开启（显示）或者关闭（隐藏）Panel界面，相信大家都是知道的，但是如何做最好呢？

可能大家一般开启/关闭界面的方法就是直接SetActive吧。这样做通常是可以的，简答快速地解决需求，但是它又两个问题：
第一，Disable掉的物体上面的脚本也不运行了，而很多时候我们需要那个脚本运行。这样就不能用挂在自...]]></description><category></category></item><item><title><![CDATA[unity-材质、贴图、纹理]]></title><link>https://blog.youkuaiyun.com/LeePorter/article/details/83866556</link><guid>https://blog.youkuaiyun.com/LeePorter/article/details/83866556</guid><author>LeePorter</author><pubDate>Thu, 29 Nov 2018 10:14:34 +0800</pubDate><description><![CDATA[在Unity中，我们可以这样理解：Material（材质）包含Map（贴图），Map包含Texture（纹理）。

首先在工程中创建一个Terrain（地形）和一个Cube（立方体），然后我们基于这两个物体来深入学习什么是纹理、贴图和材质。



Paste_Image.png

1、Texture（纹理）

纹理：是Unity最基础的图片形式，对，纹理就是一个图片，纯粹的图片。

下面我们添加一...]]></description><category></category></item><item><title><![CDATA[C#-遍历删除List元素]]></title><link>https://blog.youkuaiyun.com/LeePorter/article/details/83830937</link><guid>https://blog.youkuaiyun.com/LeePorter/article/details/83830937</guid><author>LeePorter</author><pubDate>Thu, 29 Nov 2018 10:14:27 +0800</pubDate><description><![CDATA[public List&amp;lt;Plate&amp;gt; plateList = new List&amp;lt;Plate&amp;gt;();  我创建一个 list 然后在update 里面不停的 插入和遍历数据，然后同时 不停的删除数据，  插入和删除的 速度不同，  这时候就会偶尔出现ArgumentOutOfRangeException: Argument is out of range.Parameter ...]]></description><category></category></item><item><title><![CDATA[Unity学习-坐标系]]></title><link>https://blog.youkuaiyun.com/LeePorter/article/details/83688090</link><guid>https://blog.youkuaiyun.com/LeePorter/article/details/83688090</guid><author>LeePorter</author><pubDate>Thu, 29 Nov 2018 10:14:16 +0800</pubDate><description><![CDATA[1.Hierarchy上物体的Transform都是世界坐标系，当一个物体成为另一个物体的子物体时，子物体的Transform坐标系就变成了相对父物体的相对坐标系

2.在Unity中，对于导入的模型以及unity中自带的那些Object（例如 Cube 、Sphere…）是不能直接改变其本身属性坐标的大小的，只有通过缩放变换来改变其自身坐标系的大小来使其大小发生改变。也就是如果物体正常的长度为2...]]></description><category></category></item><item><title><![CDATA[Unity学习--脚本间执行顺序]]></title><link>https://blog.youkuaiyun.com/LeePorter/article/details/83657541</link><guid>https://blog.youkuaiyun.com/LeePorter/article/details/83657541</guid><author>LeePorter</author><pubDate>Thu, 29 Nov 2018 10:14:08 +0800</pubDate><description><![CDATA[后拖拽上的脚本先执行，先拖拽的脚本后执行

可以通过Monobehaiour Manager来管理脚本执行的顺序]]></description><category></category></item><item><title><![CDATA[Unity学习-视图变换]]></title><link>https://blog.youkuaiyun.com/LeePorter/article/details/83543197</link><guid>https://blog.youkuaiyun.com/LeePorter/article/details/83543197</guid><author>LeePorter</author><pubDate>Thu, 29 Nov 2018 10:14:01 +0800</pubDate><description><![CDATA[scene视图

1.手形按钮

按住鼠标右键旋转，按住鼠标左键拖动，中间滑轮缩放

2.移动按钮

选择后可对gameObject进行位置变换

拖拽箭头按指定方向移动，拖拽中心点可任意拖动

3.旋转按钮

4.缩放按钮

拖拽中心点可等比缩放...]]></description><category></category></item></channel></rss>