归档: 2017

Protobuf 使用过程遇到的一个问题

问题描述运行时崩溃,断点处 log 报错 File already exists in database 和 File is already registered 类似问题 static linking with generated protobufs causes abort 出现的原因工程结构如下,首先项目里使用的 protobuf 库是动态编译的 libprotobuf.dll,然后有两个其

UE4 打包参数说明

打包选项说明打包代码位于 Engine\Source\Editor\MainFrame\Private\Frame\MainFrameActions.cpp 选项代码位于 Engine\Source\Editor\UnrealEd\Classes\Settings\ProjectPackagingSettings.h 选项 DefaultGame.ini(ProjectPackagingSe

一键搭建Shadowsocks服务器

购买VPSVultr推荐使用 Vultr (点击这个链接注册有优惠,应该是10刀,互利共赢 :) ),支持支付宝付款,只是用来搭建 Shadowsocks 的话使用最便宜的配置就行,每个月 2.5 刀,不过这个最近没货了,可以用 5 刀一个月的配置,等有货了再切回去。 bandwagonhostbandwagonhost 也可以,不过用的人多了,速度有时候会有问题,而且容易被ban,最近10九大

UE4 MemoryProfiler使用

编译MemoryProfiler工具 打开 Engine\Source\Programs\MemoryProfiler2\MemoryProfiler2.sln 工程文件,然后编译 编译完成后的可执行文件位于 Engine\Programs\MemoryProfiler2\Binaries 目录 修改游戏工程编译选项 打开 Engine\Saved\UnrealBuildTool\BuildCo

Buildbot 简介

什么是BuildbotBuildbot 是一个自动化的持续集成框架,可以编译,发布,自动化测试,基于 Python,可扩展性强。比如有新提交触发整个流程,或者定时触发。详细见官网 安装安装Python官网 安装 pywin32 库下载地址 安装pip1pip install --upgrade pip 安装buildbot1pip install buildbot[bundle] 创建master

装修趟坑记之设计、拆旧和水电

买好房子后,还有一个大坑要趟,就是装修了。而且从现在的进度来看,确实是掉进坑里了。 设计在设计上,我们比较看重的一点就是改成两室了,原始的户型是大一室,其他的也没有什么要求。所以看设计师过程中就是考察他们在这上面能有什么发挥,最终看下来,其实也都大同小异,最终定的方案也是最保守的一种,也基本上是所有设计师都会提到的一种。最终的方案如图 在这个阶段过程中其实也是在选装修公司,你定了哪个方案也就是选

虚幻4 Lua源码集成

插件源码 UE4Lua 直接在项目中集成 Lua 的源码,方便使用 测试平台 已测试通过 Win32, Win64 Android Mac 未测试 Linux 如何使用直接将 Lua 文件夹复制到自己的项目源码目录下即可 编译问题编译 Android 时出现 no member named decimal_point in struct lconv 错误需要在 luaconf.h

虚幻4 RakNet插件

插件源码 UE4RakNet 测试平台 已测试通过 Win32, Win64 Android Mac 未测试 Linux 如何使用直接将 Plugins\RakNet 文件夹复制到自己的项目源码目录下即可,如果不想用 RakNetUDPClient 的封装,也可以直接把 RakNetUDPClient.h/.cpp 删除,然后自己封装 注意的地方DR_SHA1.h 中将 TCHAR

虚幻4 Protobuf源码集成

更新记录 2018-02-27 更新 Protobuf 更新到 3.5.1 增加一些其他的错误处理 插件源码 UE4Protobuf 直接在项目中集成 libprotobuf 的源码,方便使用 测试平台 已测试通过 Win32, Win64 Android MAC iOS 未测试 Linux 如何使用 将 Source\Protobuf 文件夹复制到自己的项目的Source目

UE4 描边

前言 本文引擎版本: 4.15 项目源码地址 不管在 RTS 或者 FPS 类型的游戏中,描边都是一个基础的功能。在 RTS 游戏中,对单位描边一般用来表示选中这个单位或者鼠标悬浮在这个单位上。在 FPS 游戏中,描边一般用在被建筑物遮挡的单位上,描述这个单位被遮挡部分的轮廓。 Depth MapDepth Map 描述的是场景中的物体和摄像机之间的距离,距离越近,值越小,颜色越深。可以在显示模

UE4 RTS 拉选提示框

前言 本文引擎版本: 4.15 项目源码地址 RTS 游戏中,当选取多个单位时会有一个操作,按住鼠标左键后,拖动鼠标,这时候屏幕上会出现一个矩形的范围提示框,当释放鼠标左键后,这个范围内的单位就会被选中,如图所示,本文在前篇 UE4 RTS 风格摄像机 的基础上,实现这个多选提示框 SelectInputInterface 接口首先定义一个 SelectInputInterface 的接口类,

UE4 安装式编译

前言 适用引擎版本: 4.13 及以上 参考文档 Installed Build Reference BuildGraph Installed Build从 4.13 开始,虚幻4引入了 BuildGraph 之后,就可以自己通过编译源码发布引擎版本了,这个版本和在 UnrealEngineLauncher 中下载的引擎版本是等价的。如果有修改虚幻4源码的需求,那么非常适合通过这个来发布给美术

UE4 RTS 风格摄像机

前言 本文引擎版本: 4.15 项目源码地址 修改历史 2017-4-26 : 简化 UpdateCameraDistance 和 UpdateCameraPitchDegree 函数计算方式 C++ 类Camera 基类在虚幻4中,要实现一个 RTS 风格的摄像机,比较好的方式是从 SpectatorPawn 继承一个类。 新建一个类 ARTSCamera,继承自 ASpectatorPaw

UE4编码规范

编码规范的重要性 一套软件 80% 的生命周期都是维护 在软件的整个生命周期中,几乎不可能一直是软件的原始作者来对其进行维护 编码规范可以改进软件的可读性,从而使得工程师可以快速并透彻地理解新的代码 如果我们决定将源代码公布到 MOD 开发者社区,那么我们想让它通俗易懂 其中大部分编码规范实际上是交叉编译器兼容性所要求的 类的组织结构类的组织应该面向使用者而不是作者,因为大部分的使用者都要使用类

UE4 使用 Tips

禁用 Epic Survey 插件 Edit->Plugins->Built-In->Misc->Epic Survey 取消勾选 Enabled 复选框 如果没有禁用这个插件,会导致编辑器退出速度变慢,特别是网络不好或者开发环境是断网的情况下,会等待很长时间才能退干净 禁止发送统计数据 Edit->Editor Preferences...->Privacy

内网使用Perforce管理UE4开发环境

在内网环境中,所有的工作机器都是物理隔离断网的,在这种情况下搭建虚幻4开发环境可能有些许修改 同步代码 从 EpicGames/UnrealEngine 同步代码 运行 Setup.bat 下载安装依赖 完成后将整个文件夹打包复制到内网开发环境中 搭建Perforce库在根目录下复制 Setup.bat 文件,并且重命名为 SetupInternal.bat,打开 SetupInternal.b

Perforce 客户端基础

安装 Perforce Client 到 官方下载地址,找到P4V,选择对应的操作系统,下载并安装 登录 打开装好的 P4V,在 Server 中输入服务器的地址和端口,在 User 中输入用户名,可以点击 Browser... 按钮查看所有的用户列表 点击 OK 按钮后,会弹出一个密码输入框,输入密码后点 OK 按钮连接服务器 创建工作目录 点击 (no workspace selecte

Perforce 服务器基础

安装 Perforce 到 官方下载地址,选择对应的操作系统,下载并安装 安装完成后,将 license 文件复制到安装的根目录下,并重启服务 基础配置 打开命令行,运行 p4 protect 命令,因为在此之前,任意用户都默认为超级管理员。在打开的文件中,有一个管理员的账号 验证是否正确安装服务 p4 info 查看服务器配置信息 p4 configure show 查看授权信息 p4 lic

Windows中Aria2动态编译和使用

介绍Aria2 是一个轻量的多协议多源命令行下载工具,支持 HTTP/HTTPS, FTP, SFTP, BItTorrent, Metalink。并提供 JSON-RPC 和 XML-RPC 接口调用。 总而言之,Aria2 是一个开源的下载库,可以集成到程序中获得下载功能 编译 Aria2 需要用到 mingw-w64 的交叉编译工具链来编译出来 Windows 下的二进制,所以要首先安装一个