07 2023 档案
摘要:# 序言 UE4.25版本 本章看一下UE的Slate响应鼠标/触摸的处理,主要是按下、移动、抬起等相关。 # 输入处理 ## 大致的代码流&堆栈 主要是通过平台脚本运行上一章的py脚本并传递参数(即把py中的参数开放给配置平台脚本配置)。 # Build.py 重构 我们需要在py脚本里面解析和设置参数 ```PYTHON import sys import os import ge
阅读全文
摘要:# 序言 使用UE版本为UE5.20 在实际项目中,我们常常使用自动化脚本来进行构建,它可以增加我们的生产效率,并降低人为操作带来的失误风险。 # BuildGraph BuildGraph UE官方提供的构建脚本系统,它可以读取对应的XML脚本实现自动化打包。 BuildGraph相关的参考[Bu
阅读全文
摘要:# 序言 在上一篇文章中,我们使用了Editor进行打包,提到了日志的中的打包命令和参数。这一篇中,我们将实践使用**UAT**和**默认命令**打包Android,并介绍相关参数和用法。 # UAT & 打包命令 首先给出UAT工具的运行方法和打包命令参数: **UAT** 在引擎目录下找到`En
阅读全文
摘要:**此次打包使用的是5.2版本** # Win包 ## 操作流程 参考 [打包项目 | UE文档](https://docs.unrealengine.com/5.2/zh-CN/packaging-unreal-engine-projects/) 1. 设置默认地图 2. 点击创建打包文件 ##
阅读全文
摘要:# 序言 构建这个概念是和应用程序包及资源等相关的,它的特点是使用脚本控制一系列的任务的处理,以减少人力操作带来的成本和操作失误风险。 在UE的概念里,构建往往是和打包相关的(如编译、cook、压缩打包等)。但是在项目日常的开发中,构建的语义会更加的广泛,据我所知它可能包含: - 打各个平台的应用程
阅读全文
摘要:# 概述 这一篇简单介绍一些其他的比较实用的特性,如果读者想了解现代C++的全部特性,参考:[cpp reference](https://zh.cppreference.com/w/cpp "cpp reference") # 其他特性 ## 预置和弃置函数default&delete 在 C++
阅读全文
摘要:# 概述 C++的模板是泛型编程思想的一种实现。C++是强类型语言,处处强调类型。同样的加法运算,int和float的加法运算需定义**两个函数**(重载),而使用模板则可以只用一个函数(见下面示例)。 这类似我们面向对象所说的多态(定义加法运算,各个类型有不同的实现),所以是所谓静多态的一种实现方
阅读全文
摘要:# 概述 ## 移动 移动(move)语义C++引入了一种新的内存优化,以避免不必要的拷贝。在构造或者赋值的时候,如果实参是右值(或者左值由std::move转换成右值),便会匹配移动语义的函数调用如下述举例的`Str(Str&& obj)`。 移动语义的本质是将资源(内存/句柄)转移给另一个对象,
阅读全文
摘要:# 概述 lambda表达式,有时也被称为匿名函数。他提供了简短的,内联的函数对象。用法形式如: ``` [capture](parameters) -> return_type { body } ``` 具体用法如下文举例 它的实现是由编译器决定的,在我的编译器上他是通过创建一个匿名类,通过重载(
阅读全文
摘要:# 概述 c++效率较高的一个原因是我们可以自己定制策略手动申请和释放内存,当然,也伴随着开发效率降低和内存泄漏的风险。为了减少手动管理内存带来的困扰,c++提出了智能指针,可以帮助我们进行内存管理,有三种: 1. `std::unique_ptr` 是一种独占所有权的智能指针,它不允许多个指针指向
阅读全文
摘要:# 序言 习惯上,我们把C++11之前的C++语法特性称之为“传统C++”,而把c++11之后的语法特性称之为现代C++。有一种说法称C++为中级语言,因为它的特性介于低级语言(如各类汇编语言)和高级语言(Python、C#)之间--一般来说,它在运行效率上比高级语言要高,而在开发效率上又比高级语言
阅读全文
摘要:# 概述 在c++11之前,c++并未对线程编程提供直接的支持。在c++11之后,支持了线程管理、同步、条件变量等支持。 在其他的c++库中(例如UE的线程库)还增加了多任务模型的抽象。 # 用法举例 参考测试项目的`modrenc_thread.cpp`文件 主要内容: - 线程的创建 - 使用f
阅读全文
摘要:# 概述 c++ 的for循环在语法上有些刻板,近几个版本对此进行了优化,支持了基于范围的for循环 # 用法举例 参考测试项目代码`ModernCppTest/modrenc_range_for.cpp` 主要内容: - 数组遍历 - vector遍历 - 字符串遍历 - map遍历 ```CPP
阅读全文
摘要:# 概述 constexpr修饰的变量、函数、对象构造函数表示在编译时就可以确定。 它经常用来计算一些编译期可以确定常数,和常数组成的表。比如编译时确定10000以内所有的素数,运行时用的时候直接查表。 #用法举例 参考测试项目代码`ModernCppTest/modrenc_constexpr.c
阅读全文
摘要:# 概述 类型推导主要是依赖`auto`关键字和`decltype`关键字/运算符实现的,具体用法参考下面的例子。 二者特点: - `auto` 用于声明时推导遍历 - `decltype` 用于推导各种表达式, **decltype(var)中var也是一种称为变量表达式的表达式** - 二者都是
阅读全文

浙公网安备 33010602011771号