十三

安心学技术

整理下最近学习UE4 UMG的进度。 1.UMG类视图 UMG 控件跟Unity UGUI不太一样,不是所有的控件节点,都能拥有子节点,为了区分这三种控件,整理了下他们基类: * UWidget : 所有UMG 控件的公共基类,不提供增加子节点功能 * UPanelWidget : 提供了增加子节点功能,可以有多个子节点 * UContentWidget : 继承于UPanelWidget,是UPanelWidget的一种特例,只能有一个子节点 UMG常用控件的继承关系如下图所示: 1.1 不能有子节点的控件如下: 这个类别的控件的公共基类都是UWidget,每个UMG控件,都持

最近开发过程中,碰到一个比较奇怪的Bug,同事在场景中创建了个3D UI,使用的是WidgetComponent组件,然后动态设置widget实例,第一次创建的3D UI可以正常接收到鼠标事件,通过3D UI进入战斗场景后,第二场战斗的3D UI界面没法相应事件了,然后我就接住这口锅了。 wbp_path = '/Game/test_3d_ui.test_3d_ui' # game.ui: 全局ui管理器 # create_3d_ui:加载WidgetBlueprint,并打开 widget = game.ui.create_3d_ui(wbp_path) widget_comp.set_w

最近项目换成了UE4,脚本用到的是python预研,用到的插件是UnrealEnginePython,在使用这个插件的过程中踩到几个坑,在这里mark下。 1. 自动导出接口参数不匹配 这个bug是同事遇到的,报错的情况很诡异,报错log如下: LogPython: Error xxx/xxx/xxx.py:27 RuntimeWarning: tp_compare didn't return -1 or -2 for exception ue.log("this is a test log" + str(test_dict.get(10000, None))) LogPython:

1.InjectFix 工作流程 * 打新包 * 其他预处理 * 预先配置好需要Patch的类跟函数,提交配置Configure代码 * 打包机打包时,自动reload被Inject的dll,保证当前的dll没有被注入过 * 调用InjectFix提供的注入函数,注入WrappersManagerImpl,ILFixInterfaceBridge,ILFixDynamicMethodWrapper,IDMAP-1跟插桩代码dll * 执行il2cpp处理 * 执行其他预处理 * Patch阶段 * 修复代码 * 修复函数:使用标签[I

偶然看到一个大神的文章,讲到怎么使用GitHub跟Hexo搭建博客,便依照大神给的方法尝试了一遍,便有了今天这个博客。大神的博客链接 环境: Win10 前期准备 安装必要工具 * node.js * git * github账号 创建自己的github.io 登录你注册号的github账号,在账户下创建一个特殊的仓库(repo),命名是固定的:your_github_id.github.io 生成公私钥 安装好Git软件后,在cmd命令行中生成SSH keys。 ssh-keygen -t rsa -C "emain_address@youremail.com" Genera