<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Le_Sam的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Le_Sam</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Le_Sam]]></copyright><item><title><![CDATA[[UGUI性能优化]精灵图集(Sprite Atlas)保姆式教程]]></title><link>https://blog.youkuaiyun.com/Le_Sam/article/details/135546735</link><guid>https://blog.youkuaiyun.com/Le_Sam/article/details/135546735</guid><author>Le_Sam</author><pubDate>Fri, 12 Jan 2024 10:41:08 +0800</pubDate><description><![CDATA[为了解决这个问题，可以将场景中激活的所有或大多数纹理都打包到同一个图集，最好根据纹理的常见用途将分别打包成多个较小的图集，不过这样也可能造成。如果一个图集中的有许多纹理，就算场景中只有一个纹理被引用，那么整个图集都会被加载，会造成较大的内存消耗。），该纹理将无法被找到，引用它的图片将显示为空白。当项目中既有主图集，又有该主图集的变体图集时，可以使用这两个图集中任意一个的。，这会占用过多的资源，从而影响整个应用程序的性能，看下面一个例子。我们看看新建的图集包含哪些属性，选中新建的图集，下面是它的属性面板。]]></description><category></category></item><item><title><![CDATA[如何在Lua上使用Dotween【便捷、易读性高】]]></title><link>https://blog.youkuaiyun.com/Le_Sam/article/details/124552024</link><guid>https://blog.youkuaiyun.com/Le_Sam/article/details/124552024</guid><author>Le_Sam</author><pubDate>Tue, 03 May 2022 11:14:59 +0800</pubDate><description><![CDATA[功能介绍：

1.整合Append与Insert接口，支持串行与并行动画

2.支持随物体/界面等销毁而自动关闭动画

3.易读性高，action的写法很直观看出具体操作内容

PS：该文章部分源码依据于此在lua里实现类似unity生命周期的监听事件_Le_Sam的博客-优快云博客

源码：

c#



namespace Game.Scripts.Common
{
    [XLua.LuaCallCSharp]
    public class DoTweenEx
    {
        pr]]></description><category></category></item><item><title><![CDATA[Lua里实现Unity的拖拽、移入移出等响应事件]]></title><link>https://blog.youkuaiyun.com/Le_Sam/article/details/124551577</link><guid>https://blog.youkuaiyun.com/Le_Sam/article/details/124551577</guid><author>Le_Sam</author><pubDate>Tue, 03 May 2022 10:32:29 +0800</pubDate><description><![CDATA[源码：

C#



namespace Game.Scripts.Listener
{
    public class BaseEventListener : MonoBehaviour
    {
        public LuaFunction func = null;
        public void OnFunc(PointerEventData eventData)
        {
            if (func != null)
            {
     ]]></description><category></category></item><item><title><![CDATA[Lua 增量/全量更新table]]></title><link>https://blog.youkuaiyun.com/Le_Sam/article/details/124513051</link><guid>https://blog.youkuaiyun.com/Le_Sam/article/details/124513051</guid><author>Le_Sam</author><pubDate>Sat, 30 Apr 2022 14:58:45 +0800</pubDate><description><![CDATA[--------------------------------------------
-----更新Table
-- toTable：旧数据
-- fromTable：新增数据
-- isDeleteOld：是否删除不被匹配的旧数据
--------------------------------------------
function Tool.UpdateToTable(toTable, fromTable, isDeleteOld)

	if not toTable then
		return.]]></description><category></category></item><item><title><![CDATA[在lua里实现事件监听系统]]></title><link>https://blog.youkuaiyun.com/Le_Sam/article/details/124510722</link><guid>https://blog.youkuaiyun.com/Le_Sam/article/details/124510722</guid><author>Le_Sam</author><pubDate>Sat, 30 Apr 2022 13:43:47 +0800</pubDate><description><![CDATA[功能优势：1.事件使用2级标签【2个key值】，相比起单个key值，2级标签能够适应多种场合与情况，。2.监听的绑定已支持自动销毁，随着物体被销毁而注销事件，并不需要人为的操作，以减少bug。3.事件支持休眠与唤醒功能，在物体隐藏时不在响应事件的接收，唤醒后自动刷新数据。【该功能很好适用于MVC框架，主要给在UI界面使用，界面某个物体隐藏时理应不在刷新数据，而它显示出来时会强制更新一次数据】

PS：该文章部分源码依据于此在lua里实现类似unity生命周期的监听事件_Le_Sam的博客-优快云博客

正]]></description><category></category></item><item><title><![CDATA[在lua里实现类似unity生命周期的监听事件]]></title><link>https://blog.youkuaiyun.com/Le_Sam/article/details/124510345</link><guid>https://blog.youkuaiyun.com/Le_Sam/article/details/124510345</guid><author>Le_Sam</author><pubDate>Sat, 30 Apr 2022 11:49:15 +0800</pubDate><description><![CDATA[应用面：能用像写c#一样，在lua里实现业务功能，更好的理解lua

源码：

c#部分：我用的是xlua，注册方式使用[XLua.LuaCallCSharp]，tolua的注册方式自行查找



namespace Game.Scripts.Listener
{
    [DisallowMultipleComponent]
    [AddComponentMenu("")]  // Hide in 'Add Component' menu
    [XLua.LuaCallCSharp]
    pu]]></description><category></category></item><item><title><![CDATA[Unity编辑模式下找prefab内的标签]]></title><link>https://blog.youkuaiyun.com/Le_Sam/article/details/122884370</link><guid>https://blog.youkuaiyun.com/Le_Sam/article/details/122884370</guid><author>Le_Sam</author><pubDate>Fri, 11 Feb 2022 16:56:39 +0800</pubDate><description><![CDATA[using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using UnityEditor;
using UnityEngine;

public class TestTTTT : EditorWindow
{
    static Dictionary&lt;int, List&lt;GameObject&gt;&gt; layerDic =.]]></description><category></category></item><item><title><![CDATA[编译器与解释器的区别和工作原理]]></title><link>https://blog.youkuaiyun.com/Le_Sam/article/details/116850250</link><guid>https://blog.youkuaiyun.com/Le_Sam/article/details/116850250</guid><author>Le_Sam</author><pubDate>Sat, 15 May 2021 14:42:56 +0800</pubDate><description><![CDATA[这篇教程，我们一起来了解编译器和解释器的工作原理，这对我们提升能力很重要。

我一直认为概念或理论知识是非常重要的，让我们能够将很多模糊的认知关联起来，变得更加清楚，从而打开视野，上升到新的层次。

但是，一般来说，在刚刚入门的时候，接触一些概念性、理论性的内容，不但非常枯燥，而且难以理解。

而在一定时间的学习接触之后，再来看这些东西，则会变得更加容易领悟，理解的更透彻。

这篇教程会包含很多专业术语，我会对其中一些专业术语进行解释，对于一些未做解释的专业术语，建议大家通过搜索引擎进行理解。

首先，从P]]></description><category></category></item><item><title><![CDATA[什么是编译型语言和解释型语言？]]></title><link>https://blog.youkuaiyun.com/Le_Sam/article/details/116846290</link><guid>https://blog.youkuaiyun.com/Le_Sam/article/details/116846290</guid><author>Le_Sam</author><pubDate>Sat, 15 May 2021 13:36:08 +0800</pubDate><description><![CDATA[首先什么是编译型语言和解释型语言？

   计算机是不能理解高级语言的，更不能直接执行高级语言，它只能直接理解机器语言，所以使用任何高级语言编写的程序若想被计算机运行，都必须将其转换成计算机语言，也就是机器码。





   计算机是不能理解高级语言的，更不能直接执行高级语言，它只能直接理解机器语言，所以使用任何高级语言编写的程序若想被计算机运行，都必须将其转换成计算机语言，也就是机器码。而这种转换的方式有两种：

1.编译

2.解释

由此高级语言也分为编译型语言和解释型语言。

主...]]></description><category></category></item><item><title><![CDATA[Unity3D-场景中3D物体添加点击事件]]></title><link>https://blog.youkuaiyun.com/Le_Sam/article/details/114263148</link><guid>https://blog.youkuaiyun.com/Le_Sam/article/details/114263148</guid><author>Le_Sam</author><pubDate>Mon, 01 Mar 2021 15:07:37 +0800</pubDate><description><![CDATA[Unity3D - 场景中3D物体添加鼠标点击事件

鼠标点击3D物体触发，Unity从本质上来说有两种：一种是通过事件（event）触发，一种是通过射线（ray)判断穿过的物体触发。这两种触发的原理是不同的，不论哪种触发都必须满足触发的要求才可以，既然原理不同，触发的要求也不一样，下面详细说明一下3种不同的方式。



Unity版本 5.6.2fUnity API版本 2019.1



参考 Unity API：https://docs.unity3d.com/ScriptRefere...]]></description><category></category></item><item><title><![CDATA[VS 常用快捷键说明]]></title><link>https://blog.youkuaiyun.com/Le_Sam/article/details/112363760</link><guid>https://blog.youkuaiyun.com/Le_Sam/article/details/112363760</guid><author>Le_Sam</author><pubDate>Fri, 08 Jan 2021 15:14:15 +0800</pubDate><description><![CDATA[绿色框框说明，通过名字检索全部键名/通过快捷键检索全部键名





      // 编辑.完成单词 ==》作用：智能提示
      // 视图.向后导航 ==》作用：返回上次光标的位置
      // 视图.向前导航 ==》作用：前进下次光标的位置
...]]></description><category></category></item><item><title><![CDATA[VS 工具 Word Highlight With Margin]]></title><link>https://blog.youkuaiyun.com/Le_Sam/article/details/112346884</link><guid>https://blog.youkuaiyun.com/Le_Sam/article/details/112346884</guid><author>Le_Sam</author><pubDate>Fri, 08 Jan 2021 10:42:10 +0800</pubDate><description><![CDATA[给选中的词以及所有被使用的地方着色，并在右侧滚动条处添加颜色方块显示3.4.1版本微软此插件网站截图中的设置为本人正在使用的设置2019年4月9日 21:46

SettingsCaret Color：指定滚动条处颜色方块的颜色。Caret Enable：指定是否允许在滚动条处显示颜色方块。Include comments：指定是否在注释中查找相同项。Keep selection after lost focus：指定是否在失去焦点后仍保留选中状态。如果True，可以通过双击空白处来取消选中状态。Match]]></description><category></category></item><item><title><![CDATA[粒子排序插件 - Particle Effect For UGUI]]></title><link>https://blog.youkuaiyun.com/Le_Sam/article/details/109463589</link><guid>https://blog.youkuaiyun.com/Le_Sam/article/details/109463589</guid><author>Le_Sam</author><pubDate>Tue, 03 Nov 2020 10:20:34 +0800</pubDate><description><![CDATA[转载地址；https://github.com/mob-sakai/ParticleEffectForUGUI

]]></description><category></category></item><item><title><![CDATA[Unity 合图插件 ==》【支持原图集更新】]]></title><link>https://blog.youkuaiyun.com/Le_Sam/article/details/108475655</link><guid>https://blog.youkuaiyun.com/Le_Sam/article/details/108475655</guid><author>Le_Sam</author><pubDate>Tue, 08 Sep 2020 19:56:15 +0800</pubDate><description><![CDATA[前言：

项目需要，1.需提供给美术合图集工具，2.具体图集更新功能，使得新图集不必重新拖拽定位子图

解决思路：

1.unity调用外部TexturePacker命令行工具，执行合图与切图

2.图集内子图所定位的GUID及FileID，在API没找到相应的接口，因此从资源本身下手，通过txt方式打开，强制替换相应的ID

参考文档:

https://blog.youkuaiyun.com/pdw_jsp/article/details/83623150?ops_request_misc=%257B%2522re]]></description><category></category></item><item><title><![CDATA[【ExcelExport 】，Excel转lua，json，xml开发工具]]></title><link>https://blog.youkuaiyun.com/Le_Sam/article/details/108475378</link><guid>https://blog.youkuaiyun.com/Le_Sam/article/details/108475378</guid><author>Le_Sam</author><pubDate>Tue, 08 Sep 2020 19:36:44 +0800</pubDate><description><![CDATA[基于monkey256@qq.com所开发的ExcelExport 工程再次改版，相比旧版
1.新版支持公式导出，多语言导出
2.去除不必要的功能，优化核心代码


主要功能

1.软件说明：
  “一键导出”
    对指定目录下所有.xlsx与.xls文件分别导出到输出目录下的客户端.lua与服务器.xml文件
  “语言包导出”
    关键词【Language】，检测到相应文件名时，根据不同语言导出多份.lua文件

2.通过命令行启动说明：
  ***查看帮助界面***...]]></description><category></category></item><item><title><![CDATA[正则表达式字符串]]></title><link>https://blog.youkuaiyun.com/Le_Sam/article/details/108079998</link><guid>https://blog.youkuaiyun.com/Le_Sam/article/details/108079998</guid><author>Le_Sam</author><pubDate>Tue, 18 Aug 2020 16:00:56 +0800</pubDate><description><![CDATA[using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;

namespace tablegen2.common
{
    #region 正则表达式字符串
    /// &lt;summary&gt;
    /// 正则表达式字符串
    /// &lt;/summary&gt;
    public cla.]]></description><category></category></item><item><title><![CDATA[TCP框架___Unity]]></title><link>https://blog.youkuaiyun.com/Le_Sam/article/details/106645720</link><guid>https://blog.youkuaiyun.com/Le_Sam/article/details/106645720</guid><author>Le_Sam</author><pubDate>Tue, 09 Jun 2020 16:57:28 +0800</pubDate><description><![CDATA[using System;
using System.IO;
using System.Net;
using System.Net.Sockets;
using System.Linq;
using System.Runtime.InteropServices;
using System.Threading;
using UnityEngine;
using System.Text;

namespace Core
{
    public class Protocal
    {
        pub.]]></description><category></category></item><item><title><![CDATA[无限列表【UIGridView】应用示例]]></title><link>https://blog.youkuaiyun.com/Le_Sam/article/details/106625039</link><guid>https://blog.youkuaiyun.com/Le_Sam/article/details/106625039</guid><author>Le_Sam</author><pubDate>Mon, 08 Jun 2020 17:45:44 +0800</pubDate><description><![CDATA[UIGridView 源码


using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

//Introduction: 无限列表
//Content上禁止挂载ContentSizeFilter和LayOutGroup之类组件
[DisallowMultipleComponent]
[RequireComponent(typeof(S.]]></description><category></category></item><item><title><![CDATA[Unity向量按照某一点进行旋转]]></title><link>https://blog.youkuaiyun.com/Le_Sam/article/details/104283427</link><guid>https://blog.youkuaiyun.com/Le_Sam/article/details/104283427</guid><author>Le_Sam</author><pubDate>Wed, 06 May 2020 16:18:48 +0800</pubDate><description><![CDATA[本文实例为大家分享了Unity向量按照某一点进行旋转的具体代码，供大家参考，具体内容如下

一、unity的旋转

首先要知道一点就是在Unity的旋转中使用过四元数进行旋转的，如果对一个物体的rotation直接赋值你会发现结果不是你最终想要的结果，这个时候我们需要去借助Quaternion来进行旋转。

二、向量按照原点进行旋转

用到的Unity内置方法Quaternion.AngleAxi...]]></description><category></category></item><item><title><![CDATA[U3D_无限阶贝塞尔曲线]]></title><link>https://blog.youkuaiyun.com/Le_Sam/article/details/105952861</link><guid>https://blog.youkuaiyun.com/Le_Sam/article/details/105952861</guid><author>Le_Sam</author><pubDate>Wed, 06 May 2020 16:06:22 +0800</pubDate><description><![CDATA[local Bezier = {}

--【无限阶贝塞尔曲线】
--@params t    整条线上对应的百分比位置{0-1}
--@params node 起点,控制点1,控制点2,控制点3......,结束点
--@return ret  返回对应的点/值
function Bezier.BezierCurve(t, node)
    local vecs  = node
    loc...]]></description><category></category></item></channel></rss>