Unity 6 中的新增功能

Unity 6 是 Unity 的最新版本。

一、编辑器和工作流程

Unity 6 中引入的更改
  • 在 Linux 上实现了将文件和资源从 Unity 拖放到外部应用程序的功能。
  • 将 Asset Manager for Unity 包添加到 Package Manager > Services > Content Management 部分中。此包允许用户轻松浏览、上传和导入 Unity 项目中的资源。
  • 添加了一个新的 Editor 命令行参数,用于指定 UPM 日志输出的自定义文件路径。有关更多信息,请参阅 Unity Editor 命令行参数。
Unity 6 预览版中引入的更改
  • 添加了可用于选择的穿孔菜单游戏对象
    与其他游戏对象重叠。要打开穿孔菜单,请在 Scene 视图中按住 Ctrl + 右键单击。穿透菜单在光标下显示所有可选游戏对象的列表。
  • 已添加到 Steam ID 提供商编辑器设置中,以支持多个应用 ID。Additional App IDs
  • 介绍构建配置文件
    为每个目标平台创建多个自定义构建配置。
  • “Build Profile Diagio”复选框不再可用,因为 Build Settings 窗口已替换为 Build Profile 窗口。
  • 集成了新的构建配置文件图标。
  • 修改了 Create 菜单,将 C# Script 菜单项替换为三个单独的选项:
    • MonoBehaviour 脚本
    • ScriptableObject 脚本
    • 空白脚本
  • 改进了 Create 菜单以减少菜单根目录的项目数量。菜单现在按字母顺序排序,几乎所有项目现在都位于一个类别中。

二、UI 工具包

Unity 6 中引入的更改

添加了一个选项,用于在线性色彩空间项目中强制 UI Toolkit 进行 Gamma 渲染。

Unity 6 预览版中引入的更改
  • 添加了缺少的 UxmlAttribute 转换器以支持 UXML 创作:、、、Unsigned Int 和 Unsigned Long。GradientAnimationCurveToggleButtonGroupState
  • 添加了对序列化属性的支持。PropertyFieldToggleButtonGroupState
  • 本机文本生成器重写。使用文本生成器,您可以使用多种语言和脚本
    ,例如阿拉伯语和希伯来语等从右到左 (RTL) 语言。
  • 添加了 UI Toolkit 动态图集的调试器。
  • 在 UXML 和 UI Builder 中添加了对深度嵌套属性覆盖的支持。
  • 添加了使用 Search 的类型选择器。
  • 在 UI Builder 库中添加了搜索字段。

三、实体

Unity 6 预览版中引入的更改
  • 添加了对启用对 Unity 资产的非托管引用的序列化支持。例如,您可以在非托管 IComponentData 上使用 Texture,而不是在托管 IComponentData 上使用 .UnityObjectRef<>UnityObjectRef<Texture>IComponentData
  • Create (创建) 菜单添加以下 Type 模板:
    • IComponentData
    • ISystem
    • IJobEntity
    • 面包师傅
  • 更改了实体的存储方式,以便为实体和游戏对象工作流的整合做准备。实体 ID 现在是全局唯一的,您现在可以有效地将它们从一个实体世界移动到另一个实体世界。这不会影响 Unity 6 中的 ECS 工作流,但它确实通过始终显示确切的实体来消除调试的歧义。
  • 对实体 Hierarchy 窗口应用了以下修复:
    • 您可以在层次结构中选择实体和系统。
    • 修复了在有效用例中从层次结构视图中删除实体后失败的无效范围检查。
    • 阻止实体层次结构在销毁实体时引发异常。
    • 现在,实体层次结构会在卸载场景时删除场景和子场景的所有节点。
    • 当您输入预 置
      从 Entities 层次结构。
  • 改进了在具有大量现有类型的世界中烘焙以及创建原型和实体查询的性能。
  • 改进了 LocalToWorld 系统和非脏层次结构的性能。
  • 修复了 using on an enable 组件未插入必要的作业依赖项的问题。EntityQueryWithNone<T>
  • EntityQuerySingleton 方法现在可以正确处理查询包含可启用组件的情况。
  • 修复了内存泄漏问题,例如影响世界反序列化和内容交付的问题。
  • 修复了在系统中定义的作业中的断点。

四、图形

Unity 6 中引入的更改

移动了通用的 Unity 6 文档渲染管线
(URP) 添加到 Unity 引擎手册中。例如,有关 URP 中光照的文档现在位于手册的 Lighting 部分。

Unity 6 预览版中引入的更改
  • 添加了对间接 Dispatch Rays(DXR 1.1 的一部分)的支持。该方法类似于 ,但三个调度维度是从 GraphicsBuffer 中检索的。已添加和新签名。添加了功能状态。RayTracingShader.DispatchRayTracingShader.DispatchIndirectCommandBuffer.DispatchRaysSystemInfo.supportsIndirectDispatchRays
  • 添加了 GPU 驻留抽屉,它会自动使用 API 通过 GPU 实例化绘制游戏对象。这减少了绘制调用的数量并释放了 CPU 处理时间。BatchRendererGroup
  • 向 GPU 驻留抽屉式导航栏添加了对 SpeedTree GameObjects 的支持。
  • 添加了对实例的 GPU 遮挡剔除(如果实例与 GPU 常驻抽屉)兼容的支持,包括小网格的剔除。
  • 为 API 添加新的每批次层筛选设置。您可以使用此设置剔除特定批次。BatchRendererGroup
  • 优化了 URP 和 HDRP 中体积框架的 CPU 性能,以提高低端硬件的效率,并允许更精确地控制质量设置。
  • 在 Build Profiles > Asset Import Overrides 中添加了 Force No Crunch 纹理压缩设置,该设置强制所有纹理禁用 Crunch 压缩并重新导入。
  • 添加了一个界面,允许您在 Graphics Settings 窗口中添加新的设置组。更新了默认检查器,以便在修改“图形设置”中的值时触发通知,并在 中添加了自定义菜单。IRenderPipelineResourcesIRenderPipelineGraphicsSettingsIRenderPipelineGraphicsSettings
  • 添加了对 的 UI Toolkit 支持。CustomPostProcessOrder
  • 添加了缓存 URP 和 HDRP 的渲染图系统编译的选项。

五、URP

有关 URP 新增功能和改进的完整说明,请参阅 URP 中的新增功能。

Unity 6 预览版中引入的更改
  • 为 Main Light 和 Additional Lights 的 Shadow 纹理分辨率添加了 8192x8192 选项。

  • 添加了摄像机历史 API,该 API 允许您访问每个摄像机的历史纹理并在自定义渲染通道中使用它们。History 纹理是 Unity 在前一帧中为每个摄像机渲染的颜色和深度纹理。

  • 向 URP 添加了 Adaptive Probe Volumes (APV) 照明场景混合。

  • 添加了一个新的配置包,允许您覆盖可见光的最大数量。

  • 添加了 Render Graph Viewer 窗口。此工具允许您可视化渲染通道如何使用帧资源,并调试渲染过程。

  • Rendering Debugger 现在包含一个 Mipmap Streaming 部分。此部分允许您检查纹理流活动。

  • 添加了 C# 脚本模板,用于创建使用体积组件的自定义后处理效果。

  • 添加了对 URP 的 APV 天空遮挡支持。

  • 添加了对空间时间后处理 (STP) 放大的支持。

  • 新的渲染图系统改进了自定义和维护渲染管道的方式。该系统减少了 URP 使用的内存量,并使内存管理更加高效。

  • 此 URP 版本实现了 Alpha Processing 设置。如果启用此设置,URP 会将后处理输出渲染为render texture (渲染纹理)
    具有 Alpha 通道。在以前的版本中,URP 通过将 Alpha 值替换为 1 来丢弃 Alpha 通道。

六、HDRP (HDRP)

有关 URP 新增功能和改进的完整说明,请参阅 HDRP 中的新增功能。

Unity 6 预览版中引入的更改
  • 添加了对覆盖材质属性(如平滑度、反照率和法线贴图
    在所有材质上,以方便材质和光照调试。通过路径追踪器管道进行渲染时,可以通过渲染调试器的 Lighting 面板使用 HDRP 中的材质覆盖功能。
  • 在 Adaptive Probe Volumes (APV) 中添加了 Sky Occlusion 功能,以允许使用静态探针卷。
  • 禁用了将烘焙数据存储为 Adaptive Probe Volumes (APV) 中的流式资源,以使其与 Asset Bundle 和 Addressables 兼容。
  • 添加了 AMD FidelityFX Super Resolution 2 (FSR2) Unity 脚本绑定和 HDRP 集成。
  • 改进了现有的 Mipmap Streaming 调试视图并添加了更多视图。HDRP 中的当前产品与 URP 提供的功能一致。
  • 添加了对空间时间后处理 (STP) 放大解决方案的支持。

七、多人游戏工具

Unity 6 中引入的更改

多人游戏工具包版本 2.2.1 改进了 Unity 中多人游戏开发的工作流程、Netcode for GameObjects 2.0 的性能,并增加了对分布式授权的支持。

Unity 6 预览版中引入的更改

将多人游戏工具包更新到版本 2.1.0,添加了 Network Scene Visualization 作为新的可视化调试工具。有关更多信息,请参阅 多人游戏工具 文档。

多人游戏模式

多人游戏模式包旨在缩短迭代周期,更轻松地验证实现选择,并在运行时流程的早期提高游戏质量。

Unity 6 中引入的更改

Unity 6 中新增的 Play Mode Scenarios 将测试周期集成到生产环境中,帮助您更早地为真实玩家提供首次可玩的体验。

Unity 6 预览版中引入的更改

将多人游戏模式更新到 1.0 版本。使用它来测试多人游戏功能,而无需离开 Unity 编辑器。有关更多信息,请参阅 Multiplayer Play Mode 文档。

八、专用服务器套餐

专用服务器包整合了 Editor 中的专用游戏服务器工作流程,以便更轻松地在本地部署专用服务器和 Multiplay 托管。

Unity 6 中引入的更改

新的 Multiplayer 角色允许您控制在每个构建目标中使用的多人游戏角色(Client、Server):

  • Content Selection:提供 UI 和 API,用于选择在不同多人游戏角色中应存在/删除哪些内容(游戏对象、组件)。
  • Automatic Selection:提供 UI 和 API,用于选择应在不同的多人游戏角色中自动删除哪些组件类型。
  • 安全检查:激活警告,以帮助检测因剥离多人游戏角色的对象而导致的潜在 null 引用异常。
Unity 6 预览版中引入的更改

发布了 Dedicated Server 软件包,您可以使用该软件包在服务器和客户端角色之间切换项目,而无需创建其他项目。有关更多信息,请参阅 专用服务器软件包文档。

九、游戏对象的 Netcode

游戏对象的 Netcode 是一个高级联网
为 Unity 构建的库,用于抽象网络逻辑。

Unity 6 中引入的更改

Netcode for GameObjects 版本 2.0 现在支持 Distributed Authority (Beta),并包含一些改进,以促进多人游戏开发中的最佳实践。有关游戏对象的基本 Netcode 功能以及各个 API 和系统的实际示例的信息,请参阅多人游戏用例 Bitesize 示例。

Unity 6 预览版中引入的更改
  • 在 Netcode for GameObjects 中添加了 Distributed Authority 模式,在游戏会话期间,客户端对生成的 Netcode 对象具有分布式所有权或权限。使用 Distributed Authority,客户端拥有生成网络对象的受管权限,该权限将向云状态服务宣布,并将状态更新传达给所有连接的客户端。高度优化的云状态服务可维护客户端之间网络会话的整体状态。
  • 添加了一个新的 RPC 属性,该属性可以执行服务器和客户端 RPC 的功能,以及启用客户端到客户端 RPC。
  • 添加了许多实用程序方法,包括 、 、 等。

十、实体的 Netcode

Netcode for Entities 是 Unity 面向数据的技术堆栈 (DOTS) 的一部分,它提供了一个具有客户端预测框架的权威服务器,可用于创建多人游戏。

Unity 6 中引入的更改

Netcode for Entities 版本 1.3 包括多项可用性改进和新的 Megacity Metro 演示游戏,该游戏展示了 Unity 6 如何更快、更轻松地设置多人游戏服务、联网车辆实施、可配置的基于规则的比赛和沉浸式玩家通信。

Unity 6 预览版中引入的更改
  • 添加了对游戏对象的支持,以渲染调试边界框。
  • 添加了 NetCodeConfig ScriptableObject,其中包含大多数 NetCode 配置变量,您无需修改代码即可自定义这些变量。
  • 现在,您可以通过以下方式禁用自动引导:
    • 在 ProjectSettings 中禁用自动引导。
    • 将新的 MonoBehaviour 添加到你的第一个构建场景中。OverrideAutomaticNetcodeBootstrap
  • 添加了可用于指定相关性的一般规则,而无需逐个指定 ghost 。AlwaysRelevantQuery
  • Added BatchScaleImportanceDelegate,这是批量工作的重要性扩展函数的新版本。不需要同时设置 ScaleImportance 和 BatchScaleImportance 函数指针。如果设置了 BatchScaleImportance,则它是首选的。

十一、包管理器

Unity 6 预览版中引入的更改

改进了项目清单
文件,如果文件为空或充满空格,则使用默认依赖项重新填充它们。

十二、平台

Unity 6 预览版中引入的更改
  • 添加了新的 Build 设置,以便在将文件上传到 Google Play 商店时将调试符号嵌入到 app bundle 中。您可以选择将符号包作为 zip 文件与 or 文件单独上传。您可以创建具有 or 和旧版扩展名的元件文件。
  • 添加了新的 Player 设置,以便在元件的包大小超过指定阈值时显示警告。
  • 在 中添加了一个新属性.androidlib 插件
    Inspector 指定 的依赖关系。现在,您可以配置为 依赖 ,从而通过覆盖 来扩展活动。
  • 添加了新的播放器设置,以允许或拒绝 Android 设备使用 Vulkan 图形 API。借助 Android Vulkan 允许过滤器列表,您可以允许某些设备使用 Vulkan 作为默认图形 API。或者,使用 Android Vulkan 拒绝过滤器列表,您可以限制某些设备使用 Vulkan API。

iOS 设备

Unity 6 预览版中引入的更改
  • 添加了插件支持。.xcframework
  • 从 中删除了自定义 XIB 启动屏幕类型播放器设置
    .
  • 添加了新的播放器设置以支持 64 位 ARM 和 64 位 Intel/AMD 模拟器体系结构。ARM 64 和 x86_64 支持也已添加到 Plugin Importer 中。

    visionOS 操作系统

    Unity 6 预览版中引入的更改

    添加了对 Apple 的 visionOS 平台的支持。

    Web 平台(以前称为 WebGL)

    Unity 6 预览版中引入的更改
  • 在 Web 平台中实现了以下方法和属性:LocationService
    • Start()
    • Stop()
    • isEnabledByUser
    • lastData
    • status
  • 添加了在 Unity 播放器中复制和粘贴的功能。

  • 添加了对 WebAssembly 2023 的支持。有关更多信息,请参阅 WebAssembly 2023。WebAssembly 2023 包括对高达 4GB 堆内存的支持,并且是以下 WebAssembly 语言功能的集合:
    • WebAssembly 原生异常
    • WebAssembly 单指令多数据 (SIMD)
    • 优化的数据操作
    • BigInt 的
    • WebAssembly.Table 表格
    • 非捕获 float 到 int 的转换
    • 标志扩展
  • 实现了以下 LocationService 方法和属性:
    • GetLastHeading()
    • SetHeadingUpdatesEnabled()
    • IsHeadingUpdatesEnabled()
    • GetHeadingStatus()
    • IsHeadingAvailable()
  • 添加了对 Compass API 的支持。

  • 添加了对移动浏览器的支持。

  • 实施了 Emscripten 3.1.38 工具链。

十三、生产力工具

Unity 6 预览版中引入的更改
  • 创建了 ProBuilder 工具上下文,您可以在 Scene 视图的 Tools 叠加中激活该上下文。ProBuilder 工具上下文在 Scene 视图中启用 ProBuilder 特定的操作。
  • 删除了 ProBuilder 窗口。ProBuilder 工具上下文与 Scene 视图上下文菜单结合使用,为 ProBuilder 操作提供了更简化的工作流程。
  • 将 Vertex(顶点)、Edge(边)和 Face(面)编辑模式移动到 Scene 视图中的 Tool Settings(工具设置)叠加层。要在“工具设置”叠加层中显示 ProBuilder 编辑模式,请在“工具”叠加层中启用 ProBuilder 工具上下文。
  • 当 ProBuilder 工具上下文在 Tools 叠加中处于活动状态时,将依赖于元素选择的 ProBuilder 操作(如 Bridge、Weld Vertices 和 Grow Selection)移动到 Scene 视图上下文菜单。
  • 将应用于整个 ProBuilder 网格组件的 ProBuilder 操作(如 Export、Subdivide 和 Center Pivot)移动到 Scene 视图上下文菜单。
  • 将创建和编辑工具移动到 Tools 叠加层。
  • 为大多数 ProBuilder 操作添加了预览选项。
  • 从 ProBuilder 中移动了这些工具选项工具栏
    到 Tool Settings 叠加层中:
    • 选择 Hidden
    • 方向:正常
    • 矩形:相交
  • 改进的创建工具:
    • 使用创建形状工具后按住 Shift 键,以创建您刚刚创建的形状的副本。
    • 使用 Create PolyShape 后,您现在可以在不离开该工具的情况下绘制多个形状。

分析器

Unity 6 预览版中引入的更改

已发布 1.1.0 版 Memory分析器
.有关详细信息,请参阅 Memory Profiler 软件包文档。

十四、Shader Graph

Unity 6 中引入的更改

向 Shader Graph 包添加了一组新的 Production Ready 示例内容着色器。

Unity 6 预览版中引入的更改

  • 添加了一个可与 Package Manager 一起安装的新示例内容包。这些示例包含 Shader Graph 中大多数节点的描述、示例和细分。这些示例可帮助您了解节点的内部工作原理,并查看它们如何工作以及如何使用它们的示例。
  • 添加了用于添加新节点和切换子窗口可见性的新快捷方式,并将多个现有快捷方式移动到 Shortcut Manager (快捷方式管理器)。
  • 在用户首选项中添加了缩放步长选项。
  • 添加了可自定义的 Heatmap 颜色模式,默认情况下,该模式显示 Shader Graph 中每个节点的估计性能影响。
  • 向 Shader Graph 添加了功能示例示例,以向用户展示如何在 Shader Graph 中实现特定效果。

十五、SpeedTree

Unity 6 预览版中引入的更改

添加了 SpeedTree9Importer,它支持 SpeedTree Modeler 9 导出的 .st9 文件,包括以下内容:

  • 支持 SpeedTree Games Wind 和 SpeedTree Legacy Wind 效果。
  • 能够通过 Importer Settings 配置风力强度和风向响应能力。
  • 用于内置 ()、URP 和 HDRP 渲染器 () 的新 SpeedTree9 着色器。.cg.shadergraph
  • 新风效果的新着色器,但对照明没有重大更改。

十六、版本控制

Unity 6 中引入的更改

  • 添加了一个选项,用于删除尚未合并到任何位置的非空分支。
  • 添加了一个设置,用于自动将任何新文件添加到源代码管理中。

Unity 6 预览版中引入的更改

添加了一个新的选项卡视图,用于列出和管理 Unity 的 Version Control 功能中的锁。

十七、VFX 图形

Unity 6 预览版中引入的更改
  • 改进了 Shader Graph Cross Pipeline 工作流程。
  • 现在,您可以从 Blackboard 面板处理内置属性和自定义属性。
  • 允许对具有公开纹理或图形缓冲区的 VFX 进行实例化渲染。
  • 条带现在支持 “Indirect draw” 选项。“间接绘制”仅渲染处于活动状态的粒子,而不是全容量。
  • 添加了对条带中每个粒子排序的支持。
  • 在 VFX 窗口中添加了新的性能分析/调试面板。
  • 在使用 URP 的 VFX 中添加了 Camera Buffer Access 支持。
  • 支持在 Shader Graph 中声明。ShaderKeyword
  • 重新设计了 Flipbook 播放器块。
  • 添加碰撞
    允许在接触时进行特定进程的事件。
  • 对 VFX Graph 中的快捷方式进行了以下改进:
    • 在全局 Unity Shortcut 窗口中注册了快捷方式。
    • 尽可能与 ShaderGraph 同步快捷方式。
    • 添加了新的快捷方式。
  • 添加了条带的粒子计数回读,这也允许条带进入休眠状态。
  • 为条带启用了 Frustum Culling。

十八、XR 系列

Unity 6 预览版中引入的更改

添加了对 Vision Pro 上的注视点渲染的支持。

  • Unity 6 中引入的更改
  • 为 RenderGraph 启用了 Optimized Buffer Disdiscard 设置。
  • 添加了对 Apple visionOS 2.0 的支持。
  • 在 visionOS 模拟器中运行时支持 Burst。注意:此功能需要 Burst 1.8.13+。
  • 为 Windows 和 Linux 编辑器添加了 visionOS 平台。注意:App 构建版本仍需要在 Mac Silicon 计算机上运行 Xcode。
  • 添加了对 visionOS 的单通道着色器支持。
  • 在 visionOS 上的 XR 应用程序中添加了对键盘输入的支持。
  • XR 包版本更新
    • com.unity.xr.arcore:5.1.0-pre.8 到 6.0.3
    • com.unity.xr.arfoundation:5.1.0-pre.8 到 6.0.3
    • com.unity.xr.arkit:5.1.0-pre.8 到 6.0.3
    • com.unity.xr.core-utils:2.2.1 到 2.3.0
    • com.unity.xr.hands:1.2.1 到 1.4.1
    • com.unity.xr.interaction.toolkit:2.4.0 到 3.0.5
    • com.unity.xr.legacyinputHelpers:2.1.10 到 2.1.11
    • com.unity.xr.management:4.3.3 到 4.5.0
    • com.unity.xr.meta-openxr:1.0.1 到 2.0.1
    • com.unity.xr.oculus:4.0.0 到 4.3.0
    • com.unity.xr.openxr:1.8.1 到 1.12.1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/890665.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

机器学习实战32-利用机器学习对电商销售数据进行归因分析的方法,旨在找出销量下降的原因

大家好,我是微学AI,今天给大家介绍一下机器学习实战32-利用机器学习对电商销售数据进行归因分析的方法,旨在找出销量下降的原因。文章详细介绍了代码编写过程、应用场景及其具体操作,通过实际案例分析,帮助读者深入了解如何运用机器学习技术对电商销售数据进行分析,从而为…

录播检测原理是什么?

直播间录播的检测可以通过多种方式进行。以下是一些常见的检测方法&#xff1a; 1、水印识别&#xff1a;直播平台可以在实时直播画面中嵌入特定的水印&#xff0c;通过识别水印来判断是否存在录播行为。 2、特征分析:直播平台可以通过对直播画面进行特征分析&#xff0c;检测…

WebSocket | 背景 概念 原理 使用 优缺点及适用场景

1 背景 在 WebSocket 出现之前&#xff0c;为了实现推送技术&#xff0c;所用的技术都是轮询&#xff0c;轮询是指浏览器每隔一段时间向服务器发出 HTTP 请求&#xff0c;服务器再返回最新的数据给客户端 常见的轮询方式分为轮询与长轮询&#xff0c;它们的区别如下图所示&…

硬件设计-传输线匹配

目录 简介&#xff1a; 主题&#xff1a; 终端匹配 始端匹配 始端匹配的阻值 始端匹配的输出驱动电流 中间匹配 电阻阻值的选择 简介&#xff1a; 系统何时需要匹配电阻&#xff1f;按照第四章的内容来看有两种情况&#xff1a;长线传输造成信号反射的情况和短线传输造成…

设计模式的主要分类是什么?请简要介绍每个分类的特点。

大家好&#xff0c;我是锋哥。今天分享关于【设计模式的主要分类是什么&#xff1f;请简要介绍每个分类的特点。】面试题。希望对大家有帮助&#xff1b; 设计模式的主要分类是什么&#xff1f;请简要介绍每个分类的特点。 1000道 互联网大厂Java工程师 精选面试题-Java资源分…

基于微信小程序的校园访客登记系统

基于微信小程序的校园访客登记系统 功能列表 用户端功能 注册与登录 &#xff1a;支持用户通过手机号短信验证码注册和登录。个人资料管理 &#xff1a;允许用户编辑和更新个人信息及其密码。站内信消息通知&#xff1a;通知公告。来访预约&#xff1a;提交来访预约支持车牌…

重温设计模式--观察者模式

文章目录 观察者模式&#xff08;Observer Pattern&#xff09;概述观察者模式UML图作用&#xff1a;实现对象间的解耦支持一对多的依赖关系易于维护和扩展 观察者模式的结构抽象主题&#xff08;Subject&#xff09;&#xff1a;具体主题&#xff08;Concrete Subject&#xf…

CH32V307VCT6---工程template创建

一、硬件&#xff1a;沁恒官网申请的CH32V307VCT6开发板 二、开发环境&#xff1a;Mounriver 三、最终效果 1.PB9连接LED1&#xff0c;使其闪烁 2.OLED屏幕显示&#xff1a;软件IIC&#xff0c;PB10----SDA&#xff0c;PB11---SCL 3.工程链接&#xff1a;CH32V307VCT6 lo…

分布式协同 - 分布式事务_2PC 3PC解决方案

文章目录 导图Pre2PC&#xff08;Two-Phase Commit&#xff09;协议准备阶段提交阶段情况 1&#xff1a;只要有一个事务参与者反馈未就绪&#xff08;no ready&#xff09;&#xff0c;事务协调者就会回滚事务情况 2&#xff1a;当所有事务参与者均反馈就绪&#xff08;ready&a…

【软考高级】系统架构设计师复习笔记-精华版

文章目录 前言0 系统架构设计师0.1 考架构还是考系分0.2 架构核心知识0.3 架构教材变化 1 计算机操作系统1.1 cpu 组成1.2 内核的五大功能1.3 流水线技术1.4 段页式存储1.5 I/O 软件1.6 文件管理1.7 系统工程相关 2 嵌入式2.1 嵌入式技术2.2 板级支持包&#xff08;BSP&#xf…

图解HTTP-HTTP报文

参考资料&#xff1a;图解HTTP HTTP报文 用于HTTP协议交互的信息被称为HTTP报文。请求端的HTTP请求报文&#xff0c;响应端&#xff08;服务器端&#xff09;的叫做响应报文。HTTP报文本身是由多行&#xff08;CR LF作为换行符&#xff09;数据行构成的文本。 请求报文及响…

Linux -- 同步与条件变量

目录 同步 条件变量 pthread_cond_t pthread_cond_init&#xff08;初始化条件变量&#xff09; pthread_cond_destroy&#xff08;销毁条件变量&#xff09; pthread_cond_wait&#xff08;线程等待条件变量&#xff09; 重要提醒 pthread_cond_boardcast&#xff08…

【源码编译】windows下mingw64安装以及cmake调用

最近因为安装MIRTK库&#xff0c;太多第三方依赖了&#xff0c;太折磨了&#xff0c;学习了使用Cmake&#xff0c;有些库又需要Fortran编译器&#xff0c;VS2022里面装了但又调用不了&#xff0c;也不知道为什么&#xff0c;最后装的mingw64&#xff0c;记录一下。 1、mingw64安…

6、mysql的MHA故障切换

MHA的含义 MHA&#xff1a;master high availability&#xff0c;建立在主从复制基础上的故障切换的软件系统。 主从复制的单点问题&#xff1a; 当主从复制当中&#xff0c;主服务器发生故障&#xff0c;会自动切换到一台从服务器&#xff0c;然后把从服务器升格成主&…

LeetCode:104.二叉树的最大深度

跟着carl学算法&#xff0c;本系列博客仅做个人记录&#xff0c;建议大家都去看carl本人的博客&#xff0c;写的真的很好的&#xff01; 代码随想录 LeetCode&#xff1a;104.二叉树的最大深度 给定一个二叉树 root &#xff0c;返回其最大深度。 二叉树的 最大深度 是指从根节…

WebRTC服务质量(12)- Pacer机制(04) 向Pacer中插入数据

WebRTC服务质量&#xff08;01&#xff09;- Qos概述 WebRTC服务质量&#xff08;02&#xff09;- RTP协议 WebRTC服务质量&#xff08;03&#xff09;- RTCP协议 WebRTC服务质量&#xff08;04&#xff09;- 重传机制&#xff08;01) RTX NACK概述 WebRTC服务质量&#xff08;…

双指针——快乐数

一.题目描述 202. 快乐数 - 力扣&#xff08;LeetCode&#xff09; 二.题目解析 我们要判断一个数是不是快乐数要通过它的三个性质来进行判断。这个数会一直变化&#xff0c;由它的各个位的平方和重新构成这个数。如果这个数在变化的过程中变成了1&#xff0c;那么就是快乐数…

【玩转OCR】 | 腾讯云智能结构化OCR在多场景的实际应用与体验

文章目录 引言产品简介产品功能产品优势 API调用与场景实践图像增强API调用实例发票API调用实例其他场景 结语相关链接 引言 在数字化信息处理的时代&#xff0c;如何高效、精准地提取和结构化各类文档数据成为了企业和政府部门的重要需求。尤其是在面对海量票据、证件、表单和…

nginx-rtmp服务器搭建

音视频服务器搭建 本文采用 nginx/1.18.0和nginx-rtmp-module模块源代码搭建RTMP流媒体服务器 流程 查看当前服务器的nginx版本下载nginx和nginx-rtmp-module源代码重新编译nginx&#xff0c;并进行相关配置&#xff08;nginx.conf、防火墙等&#xff09;客户端测试连接测试搭…

借助Aspose.html控件, 使用 Java 编程将 HTML 转换为 BMP

Aspose.HTML for .NET 不仅提供超文本标记语言 ( HTML ) 文件处理&#xff0c;还提供流行图像文件格式之间的转换。您可以利用丰富的渲染和转换功能将SVG文件渲染为PNG、JPG或其他广泛使用的文件格式。但是&#xff0c;我们将使用此C# 图像处理库以编程方式在 C# 中将 SVG 转换…