<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[thinbug的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/thinbug</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; thinbug]]></copyright><item><title><![CDATA[Unity InputAction使用中遇到的坑]]></title><link>https://blog.youkuaiyun.com/thinbug/article/details/159392893</link><guid>https://blog.youkuaiyun.com/thinbug/article/details/159392893</guid><author>thinbug</author><pubDate>Mon, 23 Mar 2026 18:15:57 +0800</pubDate><description><![CDATA[摘要：文章记录了一个手部追踪失效问题的排查过程。问题源于使用AssetBundle打包的TrackedPoseDriver脚本无法被主项目控制，因其Action引用是独立的。解决方案是创建TrackedPoseDriverExtended类，在Awake方法中手动绑定InputManager中的统一Action引用，确保AB包中的脚本也能使用主项目的输入控制。该方案解决了AB包中脚本输入控制失效的问题，避免了重复排查的困扰。]]></description><category></category></item><item><title><![CDATA[初学VSCode里添加Continue - AI code agent 通过Ollama使用开源模型]]></title><link>https://blog.youkuaiyun.com/thinbug/article/details/158468925</link><guid>https://blog.youkuaiyun.com/thinbug/article/details/158468925</guid><author>thinbug</author><pubDate>Fri, 27 Feb 2026 19:41:58 +0800</pubDate><description><![CDATA[Ollama​ 是一个开源的本地大模型部署与运行工具，主打 “一键启动、开箱即用”。它允许用户在个人电脑（支持 macOS、Linux 和 Windows）上，轻松下载和运行多种开源大型语言模型，而无需复杂的配置或依赖云端服务。安装好后就可以直接使用了，可以作为服务端。设置这里应该要打开network允许。当然这个软件如果跑模型会很吃显卡和内存的。想安装那个模型就可以直接选择一个模型发送一个随便的消息，他会自己下载的。这样Ollama就安装好了。]]></description><category></category></item><item><title><![CDATA[Serilog自定义文本颜色和日志控制台显示的分离]]></title><link>https://blog.youkuaiyun.com/thinbug/article/details/157908783</link><guid>https://blog.youkuaiyun.com/thinbug/article/details/157908783</guid><author>thinbug</author><pubDate>Mon, 09 Feb 2026 17:30:14 +0800</pubDate><description><![CDATA[本文介绍了从log4net迁移到Serilog时自定义控制台日志颜色的解决方案。作者发现直接修改outputTemplate无法实现整行文本着色，最终通过实现ITextFormatter接口创建CustomColorFormatter类来灵活控制不同日志级别的颜色显示。该方案为时间戳、日志级别和消息内容分别设置了不同颜色（如灰色时间戳、蓝色警告信息、红色错误信息等），并保留了异常信息的红色显示。文中提供了完整的代码示例，包括日志配置和自定义格式化器的实现，解决了Serilog默认样式不符合需求的问题。]]></description><category></category></item><item><title><![CDATA[Unity 枪械红点瞄准器计算]]></title><link>https://blog.youkuaiyun.com/thinbug/article/details/151156099</link><guid>https://blog.youkuaiyun.com/thinbug/article/details/151156099</guid><author>thinbug</author><pubDate>Wed, 03 Sep 2025 20:01:58 +0800</pubDate><description><![CDATA[今天突然别人问我红点瞄准器在镜子上如何计算，之前的吃鸡项目做过不记得，今天写个小用例整理下。主体思想记得是目标位置到眼睛穿过红点瞄准器获取当前点的位置就可以。应该是这样吧，：）]]></description><category></category></item><item><title><![CDATA[Github库镜像到本地私有Gitlab服务器]]></title><link>https://blog.youkuaiyun.com/thinbug/article/details/149450677</link><guid>https://blog.youkuaiyun.com/thinbug/article/details/149450677</guid><author>thinbug</author><pubDate>Fri, 18 Jul 2025 18:12:31 +0800</pubDate><description><![CDATA[本文介绍了将GitHub仓库迁移到自建GitLab服务器的完整步骤。首先通过git clone --mirror命令克隆GitHub仓库的镜像副本，然后使用git remote add添加GitLab远程仓库地址。在GitLab上创建同名空项目后，最后通过git push --mirror命令将完整仓库镜像推送到GitLab服务器。整个过程保留了完整的提交历史和分支信息，实现了仓库的无缝迁移。]]></description><category></category></item><item><title><![CDATA[群晖Nas - Docker（ContainerManager）上安装SVN Server和库权限设置问题]]></title><link>https://blog.youkuaiyun.com/thinbug/article/details/149335951</link><guid>https://blog.youkuaiyun.com/thinbug/article/details/149335951</guid><author>thinbug</author><pubDate>Mon, 14 Jul 2025 18:39:41 +0800</pubDate><description><![CDATA[上次安装了Gitlab，可以参考这篇（），今天来搞SVN服务器，废话不多说。]]></description><category></category></item><item><title><![CDATA[OpenXR Runtime切换工具-OpenXR-Runtime-Switcher]]></title><link>https://blog.youkuaiyun.com/thinbug/article/details/149219917</link><guid>https://blog.youkuaiyun.com/thinbug/article/details/149219917</guid><author>thinbug</author><pubDate>Wed, 09 Jul 2025 11:54:00 +0800</pubDate><description><![CDATA[例如Pico的OpenXR，D:\Program Files\PICO Connect2.0\Business Streaming\openvr_driver\resources\ps_xrt\picostreaming-openxr.json。在开发VR时，有时有多个设备，大家可能也会选择不同的串流工具，OpenXR类似于默认浏览器，如果设置错误可能导致游戏无法串流。对于没有的设备，可以自定义添加，其实每个OpenXR都有一个配置文件。推荐一个工具，可以设置默认的OpenXR工具。这样就方便我们切换了。]]></description><category></category></item><item><title><![CDATA[C# 项目使用obfuscar混淆]]></title><link>https://blog.youkuaiyun.com/thinbug/article/details/148925551</link><guid>https://blog.youkuaiyun.com/thinbug/article/details/148925551</guid><author>thinbug</author><pubDate>Thu, 26 Jun 2025 15:25:48 +0800</pubDate><description><![CDATA[obfuscar 可以混淆C#代码。在项目中我们通过NuGet安装obfuscar包。]]></description><category></category></item><item><title><![CDATA[群晖Nas - Docker（ContainerManager）上安装GitLab]]></title><link>https://blog.youkuaiyun.com/thinbug/article/details/148565916</link><guid>https://blog.youkuaiyun.com/thinbug/article/details/148565916</guid><author>thinbug</author><pubDate>Tue, 10 Jun 2025 19:18:13 +0800</pubDate><description><![CDATA[一直在Github上使用Git服务，但是有一些限制，例如1G大小。所以想安装GitLab来使用，他和Github类似，可以管理项目和用户，方便小型团队使用。刚好又有Nas，本来想着很简单，但是遇到一些问题，所以记录下来，下次安装方便查阅，也方便其他遇到的问题的朋友能参考，特别是ssh配置。]]></description><category></category></item><item><title><![CDATA[UE（虚幻）学习（六）插件打包在UE5.3.2下Value cannot be null的错误]]></title><link>https://blog.youkuaiyun.com/thinbug/article/details/148094911</link><guid>https://blog.youkuaiyun.com/thinbug/article/details/148094911</guid><author>thinbug</author><pubDate>Tue, 20 May 2025 17:59:08 +0800</pubDate><description><![CDATA[在 Visual Studio 中打开 C:\Program Files\Epic Games\UE_5.4\Engine\Source\Programs\UnrealBuildTool\UnrealBuildTool.sln。自己写的插件打包出现了Unhandled exception: System.ArgumentNullException: Value cannot be null.的错误，发现只有UE5.3会报出。找到 IsValidForTarget 方法。将第一行代码替换为下面的代码。]]></description><category></category></item><item><title><![CDATA[UE（虚幻）学习（五）初学创建NPC移动和遇到的问题]]></title><link>https://blog.youkuaiyun.com/thinbug/article/details/145859491</link><guid>https://blog.youkuaiyun.com/thinbug/article/details/145859491</guid><author>thinbug</author><pubDate>Tue, 25 Feb 2025 18:57:29 +0800</pubDate><description><![CDATA[最近在学习UE中遇到一些问题，把这些问题记录一下，因为实在废了很大功夫。在学习了UE5的例子中的第三人称移动Demo，想实现几个NPC在场景内移动。本来想自己写一个类，遇到一堆问题花费了好几天时间，所以我把问题写下来方便和我一样初学的同学不要卡住了。]]></description><category></category></item><item><title><![CDATA[Unity崩溃后信息结合符号表来查看问题]]></title><link>https://blog.youkuaiyun.com/thinbug/article/details/145589412</link><guid>https://blog.youkuaiyun.com/thinbug/article/details/145589412</guid><author>thinbug</author><pubDate>Wed, 12 Feb 2025 12:27:45 +0800</pubDate><description><![CDATA[在查看Unity打包的日志看到崩溃日志信息，其中一段是这样的。]]></description><category></category></item><item><title><![CDATA[C# 使用HttpClient进行Post请求总是出现超时问题的优化]]></title><link>https://blog.youkuaiyun.com/thinbug/article/details/145303630</link><guid>https://blog.youkuaiyun.com/thinbug/article/details/145303630</guid><author>thinbug</author><pubDate>Wed, 22 Jan 2025 15:40:36 +0800</pubDate><description><![CDATA[最近我的控制台程序发现有时候总是出现请求超时等问题，通常好几分钟可能有只有几个请求。]]></description><category></category></item><item><title><![CDATA[C# 网络协议第三方库Protobuf的使用]]></title><link>https://blog.youkuaiyun.com/thinbug/article/details/145279085</link><guid>https://blog.youkuaiyun.com/thinbug/article/details/145279085</guid><author>thinbug</author><pubDate>Tue, 21 Jan 2025 11:37:18 +0800</pubDate><description><![CDATA[通常我们写一个简单的网络通讯软件可能使用的最多的是字符串类型，比较简单，例如发送格式为(head)19|Msg:Heart|100,x,y,z…，在接收端会解析收到的socket数据。这样通常是完全可行的，但是随着数据量变大，网络吞吐量就变大，可能发送的字符串就不合适了，可能会数据量变大。]]></description><category></category></item><item><title><![CDATA[WFP Listbox绑定数据后，数据变化的刷新]]></title><link>https://blog.youkuaiyun.com/thinbug/article/details/144845642</link><guid>https://blog.youkuaiyun.com/thinbug/article/details/144845642</guid><author>thinbug</author><pubDate>Tue, 31 Dec 2024 11:24:51 +0800</pubDate><description><![CDATA[Listbox绑定数据通过ItemsSource来的，如果绑定的是普通的List，不会自己刷新。]]></description><category></category></item><item><title><![CDATA[UE（虚幻）学习（四） 第一个C++类来控制小球移动来理解蓝图和脚本如何工作]]></title><link>https://blog.youkuaiyun.com/thinbug/article/details/144773380</link><guid>https://blog.youkuaiyun.com/thinbug/article/details/144773380</guid><author>thinbug</author><pubDate>Fri, 27 Dec 2024 18:39:24 +0800</pubDate><description><![CDATA[UE5视频看了不少，但基本都是蓝图如何搞，或者改一下属性，理解UE系统现有组件使用的。一直对C++脚本和蓝图之间的关系不是很理解，看到一个视频讲的很好，我也做笔记记录一下。我的环境是UE5.3.2.]]></description><category></category></item><item><title><![CDATA[UE（虚幻）学习（三） UnrealSharp插件中调用非托管DLL]]></title><link>https://blog.youkuaiyun.com/thinbug/article/details/144772352</link><guid>https://blog.youkuaiyun.com/thinbug/article/details/144772352</guid><author>thinbug</author><pubDate>Fri, 27 Dec 2024 16:55:24 +0800</pubDate><description><![CDATA[上一篇文章中我使用UnrealSharp成功使用了我的一个C#控制台程序中的网络模块，这个程序是基于KCP网络了，其中调用了Cmake 编译的一个C++的DLL，在虚幻中DLL需要放在Binaries目录中才可以。Unity中只要放在任意Plugins目录中就可以。但是Binaries目录版本控制一般不提交，我们可以改一下，改成按照路径加载。]]></description><category></category></item><item><title><![CDATA[UE（虚幻）学习（二） 使用UnrealSharp插件让UE支持C#脚本]]></title><link>https://blog.youkuaiyun.com/thinbug/article/details/144765605</link><guid>https://blog.youkuaiyun.com/thinbug/article/details/144765605</guid><author>thinbug</author><pubDate>Fri, 27 Dec 2024 16:17:46 +0800</pubDate><description><![CDATA[UE支持C++脚本，但是有很多脚本接口是在Unity里使用的，如果翻译成C++那么工作量太大了，找了几个把C#转成C++的工具，很多C#的新的语法是无法处理的就放弃了，那么让UE直接可以运行C#脚本呢？搜了几个插件都不再更新了，例如黑神话悟空用的USharp（可能）也是改了很多脚本勉强使用，后来发现插件比较新，目前还是测试阶段，大胆使用一番。]]></description><category></category></item><item><title><![CDATA[UE（虚幻）学习（一） UE5.3.2和VS2022的安装以及遇到的问题和一些CS8604、CA2017报错问题.]]></title><link>https://blog.youkuaiyun.com/thinbug/article/details/144762259</link><guid>https://blog.youkuaiyun.com/thinbug/article/details/144762259</guid><author>thinbug</author><pubDate>Fri, 27 Dec 2024 11:45:25 +0800</pubDate><description><![CDATA[我不得不感慨几句不是虚幻难学，也不是C++难学。而是虚幻的这种态度，这个5.3.2版本已经很久了，我电脑上也装了很久了，怎么不修复呢，难道就因为是免费的？让初学者难以迈出第一步？真是大厂的傲慢。安装参考报错参考。]]></description><category></category></item><item><title><![CDATA[C# 异步Task异常处理和堆栈追踪显示]]></title><link>https://blog.youkuaiyun.com/thinbug/article/details/143732574</link><guid>https://blog.youkuaiyun.com/thinbug/article/details/143732574</guid><author>thinbug</author><pubDate>Wed, 13 Nov 2024 11:36:35 +0800</pubDate><description><![CDATA[在C#中异步Task是一个很方便的语法，经常用在处理异步，例如需要下载等待等方法中，不用函数跳转，代码阅读性大大提高，深受大家喜欢。但是有时候发现我们的异步函数可能出现了报错，但是异常又没有抛出，导致我们不知道，我们下面来根据代码来分析解决。]]></description><category></category></item></channel></rss>