<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[krabbit1997的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/krabbit1997</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; krabbit1997]]></copyright><item><title><![CDATA[STM32开发流程]]></title><link>https://blog.youkuaiyun.com/krabbit1997/article/details/153693696</link><guid>https://blog.youkuaiyun.com/krabbit1997/article/details/153693696</guid><author>krabbit1997</author><pubDate>Tue, 21 Oct 2025 17:04:09 +0800</pubDate><description><![CDATA[本文详细介绍了STM32开发环境的搭建与工程创建流程。]]></description><category></category></item><item><title><![CDATA[UE4 获取关卡最终合成的音频数据]]></title><link>https://blog.youkuaiyun.com/krabbit1997/article/details/129935046</link><guid>https://blog.youkuaiyun.com/krabbit1997/article/details/129935046</guid><author>krabbit1997</author><pubDate>Mon, 03 Apr 2023 19:22:29 +0800</pubDate><description><![CDATA[众所周知，要让某个Actor发出声音，只需要给它添加一个AudioComponent，然后实现相应方法。但如果反过来，要获取UE关卡中已有的声音，然后将其写成文件或者进行网络广播，该怎么做？UE给用户提供了订阅者模式的框架，大致思路如下：1）写一个类继承自2）注册/反注册3）实现其唯一的接口。]]></description><category></category></item><item><title><![CDATA[UE4 nDisplay 使用Switchboard投屏失败原因]]></title><link>https://blog.youkuaiyun.com/krabbit1997/article/details/127533892</link><guid>https://blog.youkuaiyun.com/krabbit1997/article/details/127533892</guid><author>krabbit1997</author><pubDate>Wed, 26 Oct 2022 15:50:30 +0800</pubDate><description><![CDATA[以下情况 会导致 使用Switchboard投屏失败：]]></description><category></category></item><item><title><![CDATA[UE4 计时器的简单使用（FTimerManager）]]></title><link>https://blog.youkuaiyun.com/krabbit1997/article/details/127306458</link><guid>https://blog.youkuaiyun.com/krabbit1997/article/details/127306458</guid><author>krabbit1997</author><pubDate>Thu, 13 Oct 2022 19:27:33 +0800</pubDate><description><![CDATA[我在UE中开发视频播放插件时，需要实现UE的媒体框架。当引擎Tick到MediaModule时，会从我自己实现的Player中取到视频帧数据，然后用其初始化纹理并输送到渲染管线中。然而我使用的SDK没有视频取帧的回调函数，只能自己在外部控制取帧速率：要么每次跟随引擎的Tick取帧，但这样视频播放受帧率影响太大；要么自己实现一个时间线来控制。直到我发现了UE自己封装的计时器类，可以直接拿来使用。]]></description><category></category></item><item><title><![CDATA[UE4 Actor平滑移动的实现]]></title><link>https://blog.youkuaiyun.com/krabbit1997/article/details/126525456</link><guid>https://blog.youkuaiyun.com/krabbit1997/article/details/126525456</guid><author>krabbit1997</author><pubDate>Thu, 25 Aug 2022 15:26:28 +0800</pubDate><description><![CDATA[众所周知，SetActorLocationAndRotation及其类似的接口可以设置Actor在游戏中的位置，但它不是平滑的，而是跳变的，也就是说游戏下一帧会直接把Actor绘制到目标位置，跟瞬移一样。那么如何要让它平滑地，smoothly移动到目标位置，就像摇臂摄像机一样呢？实现方法（目前我只知道一种）：一、在 Tick 函数中计算插值并设置。...]]></description><category></category></item><item><title><![CDATA[USD 通用场景描述（Universial Scene Description）]]></title><link>https://blog.youkuaiyun.com/krabbit1997/article/details/126453881</link><guid>https://blog.youkuaiyun.com/krabbit1997/article/details/126453881</guid><author>krabbit1997</author><pubDate>Tue, 23 Aug 2022 02:06:11 +0800</pubDate><description><![CDATA[USD，是指通用场景描述（Universal Scene Description），用于稳健而且可扩展地交换及增强任意3D场景，而这些场景可能包含众多基本资产。]]></description><category></category></item><item><title><![CDATA[UE4 用C++构建自定义材质 完成视频抠像]]></title><link>https://blog.youkuaiyun.com/krabbit1997/article/details/125486280</link><guid>https://blog.youkuaiyun.com/krabbit1997/article/details/125486280</guid><author>krabbit1997</author><pubDate>Mon, 27 Jun 2022 18:34:01 +0800</pubDate><description><![CDATA[用UE4的C++代码构建生成自定义材质。UE4中的自定义材质一般使用材质编辑器完成，但是你也可以通过C++创建。]]></description><category></category></item><item><title><![CDATA[Git 批量拉取（git pull）多个仓库 bat脚本实现]]></title><link>https://blog.youkuaiyun.com/krabbit1997/article/details/124024848</link><guid>https://blog.youkuaiyun.com/krabbit1997/article/details/124024848</guid><author>krabbit1997</author><pubDate>Thu, 07 Apr 2022 20:03:41 +0800</pubDate><description><![CDATA[鄙人有个习惯，每天上班打开电脑第一件事，就是把所有本地git仓库拉取更新，保证取到最新的代码。
但本地git仓库实在太多，挨个执行 git pull 太麻烦，于是决定写下一个bat脚本，把这种重复的事情交给电脑。

运行前注意

你使用的是 Windows 系统
你需要批量拉取代码的git仓库都在 同一个文件夹下 ，bat脚本也在此文件夹下。
此脚本递归遍历当前路径下的文件夹，直到找到存在 .git 文件的文件夹，然后执行 git pull，然后继续遍历…

git_pull.bat
@echo off
.]]></description><category></category></item><item><title><![CDATA[UE4 自定义插件中引入第三方库]]></title><link>https://blog.youkuaiyun.com/krabbit1997/article/details/122930072</link><guid>https://blog.youkuaiyun.com/krabbit1997/article/details/122930072</guid><author>krabbit1997</author><pubDate>Mon, 14 Feb 2022 19:17:27 +0800</pubDate><description><![CDATA[如何在UE4的自定义插件中引入第三方库？

假设你懂得如何编写并且已经编写好了一个新的UE4引擎插件
假设你已经拥有可以正常使用的第三方库（自己写的或者网上下的）
要引入第三方库，大致需要四步：

放置库到合适目录，通常在你的UE模块目录下
编辑模块的Build.cs文件
在代码中加载dll文件
编译和调试


一、放置库到合适目录
我的三方库（CutlistSDK）目录结构现在是：

我把CutlistSDK文件夹放在了模块Build.cs文件所在的目录。
CutlistSDK文件夹包含了三个子文件夹bi]]></description><category></category></item><item><title><![CDATA[UE4 无法正常启动Switchboard的解决办法]]></title><link>https://blog.youkuaiyun.com/krabbit1997/article/details/121609800</link><guid>https://blog.youkuaiyun.com/krabbit1997/article/details/121609800</guid><author>krabbit1997</author><pubDate>Mon, 29 Nov 2021 15:38:03 +0800</pubDate><description><![CDATA[想解决switchboard无法正常启动的问题，就要搞清楚当你在UE编辑器中点下Switchboard按钮之后发生了什么。
所以我们先来了解下Switchboard从触发到启动的过程，就会清楚如何在异常情况下自己启动Switchbaord。

Switchboard是如何启动的？
在UE源代码中 (\Engine\Plugins\VirtualProduction\Switchboard\Source\SwitchboardEditor\Private\SwitchboardMenuEntry.cpp) .]]></description><category></category></item><item><title><![CDATA[C++调用python的方法]]></title><link>https://blog.youkuaiyun.com/krabbit1997/article/details/120482773</link><guid>https://blog.youkuaiyun.com/krabbit1997/article/details/120482773</guid><author>krabbit1997</author><pubDate>Sun, 26 Sep 2021 11:14:04 +0800</pubDate><description><![CDATA[实例：UE4中C++调用python模块实现Switchboard进程

Windows环境下
UE通过调用bat脚本来开启子进程，bat脚本中会调用python.exe执行python脚本。
调用顺序为：C++ &gt;&gt; bat脚本 &gt;&gt; python.exe &gt;&gt; py文件

1. 编写python模块程序
包含以下文件目录：
switchboard文件夹包含所有要执行的python脚本
venv文件夹包含执行python需要的环境文件、解释器等

2. 编写调用pyth]]></description><category></category></item><item><title><![CDATA[Qt Cmake编译Qt程序 信号函数报错 undefined reference to]]></title><link>https://blog.youkuaiyun.com/krabbit1997/article/details/116782614</link><guid>https://blog.youkuaiyun.com/krabbit1997/article/details/116782614</guid><author>krabbit1997</author><pubDate>Fri, 14 May 2021 10:47:01 +0800</pubDate><description><![CDATA[问题
Qt使用Cmake编译 信号函数报错“undefined reference to xxx”。
解决

确保在类定义中使用了Q_OBJECT宏
Qt信号槽机制依赖moc_xxx.cpp文件，请尝试在CmakeLists.txt文件中添加set(CMAKE_AUTOMOC ON)


]]></description><category></category></item><item><title><![CDATA[Qt 入门学习路线]]></title><link>https://blog.youkuaiyun.com/krabbit1997/article/details/116176347</link><guid>https://blog.youkuaiyun.com/krabbit1997/article/details/116176347</guid><author>krabbit1997</author><pubDate>Thu, 29 Apr 2021 00:52:07 +0800</pubDate><description><![CDATA[参考书目
《C++ GUI Qt4编程》


一、Qt框架概述
1. 什么是Qt?
2. Qt的优点
3. 什么时候用Qt?


二、Qt体系


三、Qt编程练习
Spreadsheet 制作一个电子表格
项目总览
运行效果
关键代码

]]></description><category></category></item><item><title><![CDATA[NTP时间同步指南 Linux(Ubuntu) / Windows]]></title><link>https://blog.youkuaiyun.com/krabbit1997/article/details/112510514</link><guid>https://blog.youkuaiyun.com/krabbit1997/article/details/112510514</guid><author>krabbit1997</author><pubDate>Wed, 13 Jan 2021 16:11:09 +0800</pubDate><description><![CDATA[一、什么是NPT ？

二、为什么要用NPT ？

三、如何配置NTP ？
用ntpdate工具

安装ntpdate工具
查看帮助手册


系统时间、硬件时间以及它们的同步
用tzselect工具手动修改时区

四、如何使用NTP ？

五、参考资料

......]]></description><category></category></item></channel></rss>