GameDev
文章平均质量分 85
探索游戏开发道路上的奇思妙想
Jiezcode
我要成为编程高手
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Godot4 CharacterBody2D
本文详细介绍Godot4中CharacterBody2D节点的使用,包括节点特性、核心属性、运动方法和常见问题。CharacterBody2D专为2D角色控制设计,内置物理碰撞检测和运动控制功能,适合平台跳跃等场景。关键属性包括质量、摩擦力和重力缩放,核心方法是move_and_slide()和地面检测。需搭配碰撞形状和显示节点使用,常见问题如穿模、跳跃异常可通过调整碰撞形状和速度参数解决。进阶技巧包括墙跳、冲刺功能实现,通过代码示例展示具体应用。原创 2025-08-29 21:54:03 · 2182 阅读 · 0 评论 -
Unreal Engine UGameState
UGameState是UE游戏框架中管理全局共享状态的核心类,继承自AGameStateBase,通过服务器主导的机制实现多人游戏数据同步。其核心特性包括:1)服务器拥有唯一修改权,通过Replicated属性自动同步至客户端;2)生命周期与游戏会话绑定,存储比分、回合进度等关键数据;3)支持C++与蓝图双开发模式。典型应用场景涵盖多人游戏分数同步(如MOBA)、全局倒计时管理及游戏阶段控制(准备/战斗/结算)。原创 2025-08-28 22:45:00 · 1378 阅读 · 0 评论 -
Unreal Engine UPrimitiveComponent
UPrimitiveComponent是Unreal Engine中所有可见和可碰撞组件的基类,继承自USceneComponent,负责渲染、碰撞及物理模拟。其子类包括UStaticMeshComponent(静态网格)、USkeletalMeshComponent(骨骼动画)和UShapeComponent(几何碰撞体)等。关键特性涵盖碰撞响应(Block/Overlap/Ignore)、物理模拟(刚体受力)、LOD优化及可见性控制。原创 2025-08-28 22:37:03 · 1265 阅读 · 0 评论 -
Unreal Engine UCharacterMovementComponent
Unreal Engine的UCharacterMovementComponent是专为角色移动设计的核心组件,继承自UPawnMovementComponent,提供行走、跳跃、飞行、游泳等多种移动模式。它具有完善的物理交互功能,支持地面检测、重力计算和坡度适应,并优化了网络同步机制。通过C++或蓝图可配置移动速度、跳跃力度等参数,适用于玩家角色和NPC。相比其他移动组件,它功能最全面,是人形角色移动的最佳选择。原创 2025-08-28 22:27:21 · 1453 阅读 · 0 评论 -
Unreal Engine URotatingMovementComponent
URotatingMovementComponent是Unreal Engine中用于实现持续旋转的组件,支持固定速率、局部/世界坐标系旋转及枢轴点设置。继承自UMovementComponent,即插即用,无需手动编写Tick逻辑。通过配置RotationRate和PivotTranslation可控制旋转速度与中心点,适用于风扇、转盘等场景。与UFloatingPawnMovement等组件相比,专精于自动化旋转,简化开发流程。原创 2025-08-28 22:24:51 · 1376 阅读 · 0 评论 -
Unreal Engine Cast
Unreal Engine中的Cast机制是一种安全的类型转换工具,用于检查对象类型并返回目标类型指针或nullptr。它支持多态继承,适用于Actor、组件和UI控件的转换。在蓝图中通过"Cast To"节点实现,在C++中使用Cast<目标类型>(源对象)语法。典型应用包括角色交互、组件获取和UI更新。相比直接转换更安全,但需注意避免对空指针转换和频繁调用。合理使用Cast能实现不同类型对象间的安全交互,是UE开发中的基础操作。原创 2025-08-28 22:22:38 · 1158 阅读 · 0 评论 -
Unreal Engine Collision Responses
Unreal Engine的碰撞响应系统由碰撞通道和碰撞响应组成,用于控制游戏对象间的交互行为。碰撞通道(如Visibility、Camera、WorldStatic等)定义了检测类型,而碰撞响应(Block、Overlap、Ignore、Trigger)则决定了如何应对这些检测。通过灵活配置通道响应组合,可以实现精准的物理交互和事件触发(如子弹击中飞船、摄像机穿透墙壁等)。该系统支持全局预设和局部自定义,既能满足复杂交互需求,又能优化性能。配置方式包括蓝图可视化编辑和C++代码设置,开发者可以根据需求选择原创 2025-08-25 19:40:07 · 1662 阅读 · 0 评论 -
Unreal Engine UObject
摘要: Unreal Engine的UObject是游戏对象的基类,提供核心功能(反射、GC、序列化)。所有资源(如AActor、UComponent)均继承自UObject。关键特性包括:宏标记属性/函数(UPROPERTY/UFUNCTION)、自动垃圾回收、生命周期回调(如BeginDestroy)及蓝图支持。通过NewObject<>创建实例,避免手动内存管理。常见子类涵盖游戏对象(AActor)、组件(UActorComponent)和资源(UMaterial)。UObject实现了引原创 2025-08-22 22:50:36 · 461 阅读 · 0 评论 -
Unreal Engine DrawDebugLine
Unreal Engine的DrawDebugLine函数是调试工具,用于在游戏世界中绘制临时直线,适合可视化碰撞检测、射线路径等开发任务。该函数支持自定义颜色、粗细和持续时间,仅开发版本可见。核心参数包括起点、终点、颜色和显示模式(瞬时或持久)。典型应用包括射线检测、向量显示和距离测量。需注意性能影响和坐标空间,避免发布版本残留。与DrawDebugPoint等函数相比,它更适合线性路径可视化,是开发阶段的重要调试手段。原创 2025-08-24 22:15:54 · 577 阅读 · 0 评论 -
Unreal Engine SetActorTickEnabled
SetActorTickEnabled 是 Unreal Engine 中控制 Actor 每帧更新(Tick)功能的核心函数,通过布尔参数动态开关 Tick 逻辑的执行。继承自 AActor 的类均可调用,支持运行时灵活控制,适用于性能优化(如关闭闲置角色的 Tick)或逻辑管理(战斗时启用检测)。需配合 Tick Interval、Tick Group 等参数配置,在 C++ 中通过 this->SetActorTickEnabled() 调用,蓝图中可通过节点直接操作。典型场景包括角色状原创 2025-08-24 22:11:30 · 744 阅读 · 0 评论 -
Unreal Engine AddMovementInput
Unreal Engine中的AddMovementInput方法用于实现角色横向移动,通过沿角色右方向向量添加输入实现平滑位移。该功能继承自APawn类,结合本地坐标系和可调节参数(如移动速度、输入缩放等)精确控制移动。开发者可在角色类或蓝图中调用该方法,适用于FPS侧移、赛车微调等场景。需注意参数配置和物理系统联动,常见问题包括速度异常或方向错误,可通过检查参数和启用Allow Strafe选项解决。该方法标准化了角色横向移动实现,配合乘数参数可扩展多样移动效果。原创 2025-08-24 22:10:31 · 752 阅读 · 0 评论 -
Unreal Engine UAudioComponent
UAudioComponent是Unreal Engine中处理音频播放的核心组件,支持加载、控制音效与音乐,具备3D音效空间化、音量/音调调节、循环播放等功能。继承自USceneComponent,可附加到Actor实现位置化音频。通过蓝图或C++配置,典型应用包括武器音效、环境声、UI提示等。需注意音频资源绑定、3D音效参数设置及播放状态控制,常与USoundWave、USoundCue等类配合使用。常见问题如无声需检查自动播放开关或Sound属性绑定。原创 2025-08-23 19:24:33 · 1428 阅读 · 0 评论 -
Unreal Engine USoundCue
USoundCue是Unreal Engine的音频逻辑容器类,通过节点系统组合多个SoundWave并添加效果控制。它支持随机播放、混合、调制等功能,适用于枪声、环境音等复杂音效场景。相比单一音频的USoundWave,USoundCue提供可视化节点编辑,可配置衰减、并发等参数,但需注意节点复杂度可能影响性能。开发者可通过SoundCue编辑器组合音频节点,在场景中通过AudioComponent或PlaySoundAtLocation(原创 2025-08-23 19:17:23 · 446 阅读 · 0 评论 -
Unreal Engine USoundWave
USoundWave是Unreal Engine中存储音频波形数据的核心资源类,继承自USoundBase。它支持WAV文件导入、3D空间定位和波形可视化,常用于背景音乐、音效等场景。与USoundCue不同,USoundWave专注单一音频播放,通常配合AudioComponent或Sound Cue使用。开发时需注意文件体积优化和多平台兼容性,建议通过Sound Cue管理音频逻辑。该组件在游戏中主要承担底层音频数据存储功能。原创 2025-08-23 19:16:42 · 502 阅读 · 0 评论 -
Unreal Engine USoundClass
USoundClass是虚幻引擎中用于组织游戏音效层级的数据资产,支持父子分类和参数控制(音量/音调等)。其核心功能包括建立音效架构(如BGM、UI音效分类)、与USoundMix联动实现动态调整。开发者需注意合理分层(推荐BGM/SFX/Voice/UI基础分类)以避免后期维护困难,并配合SoundMix解决动态过渡问题。该组件通过层级继承机制简化全局音频管理,是游戏音频系统的关键模块。 (字数:148)原创 2025-08-23 19:11:46 · 360 阅读 · 0 评论 -
Unreal Engine Sound
Unreal Engine的声音系统核心类概览:USoundBase是所有声音资源的基类,其子类USoundWave处理原始音频数据,USoundCue提供节点化声音逻辑控制。关键辅助类包括USoundAttenuation(3D音效衰减)、USoundConcurrency(并发控制)、USoundClass(声音分类)和USoundMix(动态混音)。这些类共同构建了Unreal的声音管理系统,支持背景音乐、环境音效、逻辑组合音效等场景,通过资源管理、播放控制和混音调度实现丰富的音频体验。原创 2025-08-23 19:10:59 · 410 阅读 · 0 评论 -
Unreal Engine Audio
本文概述了Unreal Engine中Audio相关类的核心功能与应用场景。主要介绍了12个关键音频类,包括UAudioComponent、UAudioBus、USoundSubmix等,它们负责运行时音频播放、混音、捕获和效果处理。文章重点说明了这些类在音频播放、麦克风输入、混音路由、空间音频及UE5新特性MetaSound系统中的应用。核心要点包括:UAudioComponent是主要播放入口,Submix处理分组音频,AudioCapture支持录音功能,MetaSound作为UE5创新的节点化音频系原创 2025-08-23 19:10:09 · 563 阅读 · 0 评论 -
Unreal Engine USkeletalMeshComponent
USkeletalMeshComponent组件专用于渲染骨骼网格体并驱动动画系统,支持蒙皮动画、物理模拟和动态组件挂载。其关键特性包括动画蓝图控制、物理资产绑定、形态变形及动画蒙太奇播放。通过代码示例展示了网格设置、动画绑定等基础用法,并列举了角色动画、武器挂载等典型应用场景。作为Unreal动画系统的核心组件,它继承自USkinnedMeshComponent,能与物理系统深度交互,是实现角色动作、布娃娃效果等功能的基础组件。原创 2025-08-23 02:07:54 · 1239 阅读 · 0 评论 -
Unreal Engine UStaticMeshComponent
UStaticMeshComponent是UE用于渲染静态网格体的核心组件,继承自UPrimitiveComponent。它支持材质应用、碰撞检测、LOD优化和实例化渲染,能与光照系统完美集成。通过C++或蓝图均可配置,常用于场景搭建、交互对象及性能优化。其子类如UInstancedStaticMeshComponent进一步扩展了批量渲染功能,是关卡构建和性能优化的关键组件。原创 2025-08-22 23:14:51 · 1114 阅读 · 0 评论 -
Unreal Engine USceneComponent
USceneComponent是虚幻引擎中所有具有空间变换功能的组件基类,提供三维空间定位与层级管理支持。作为场景树系统核心,它继承自UActorComponent,增加了Transform与层级关系功能。关键特性包括Transform支持、父子组件挂载系统、运行时组件附加/分离能力等。通过Relative/World变换参数和Mobility设置,开发者可以灵活控制组件位置关系。该组件广泛应用于构建Actor层级、相机/灯光系统等场景,是原创 2025-08-22 23:13:01 · 1230 阅读 · 0 评论 -
Unreal Engine UE_LOG
UE_LOG是虚幻引擎的核心日志宏,支持分级(Fatal/Error/Warning等)和分类输出,可记录到控制台、日志文件和调试器。通过DECLARE/DEFINE_LOG_CATEGORY自定义日志类别,结合格式化字符串输出变量信息。需注意:1) 发布版本应减少Verbose日志;2) 避免格式化类型错误;3) Fatal级会触发崩溃。相比屏幕调试消息(AddOnScreenDebugMessage),UE_LOG更适合持久化记录,但需在DefaultEngine.ini或命令行配置日原创 2025-08-22 23:11:54 · 1130 阅读 · 0 评论 -
Unreal Engine UProjectileMovementComponent
UProjectileMovementComponent 用于子弹、手雷、火箭和魔法弹等投射物的自动运动。支持初速度、最大速度、重力缩放、弹跳、摩擦及方向自动旋转。通过 Velocity 控制飞行方向,可绑定 OnProjectileStop 和 OnProjectileBounce 事件处理碰撞逻辑。适合所有“飞出去的物体”,简化发射、碰撞和飞行物理计算,实现快速可靠的抛射物行为。原创 2025-08-22 23:05:48 · 1010 阅读 · 0 评论 -
Unreal Engine UFloatingPawnMovement
UFloatingPawnMovement 是 Pawn 的轻量级移动组件,提供无重力、加减速、碰撞滑移的悬浮式移动。典型用法是飞行器、自由相机或俯视射击,支持输入驱动、加速度/减速度、转向助推和平面约束。通过 AddMovementInput 驱动移动,配合 UpdatedComponent 实现碰撞滑动,可选约束到平面,蓝图/代码均可设置参数。适合快速调手感和简单 AI 移动,但不提供地面/跳跃逻辑。相比其他移动组件,它轻量易用,网络同步友好,但不适合带重力的角色移动。原创 2025-08-22 23:03:18 · 1100 阅读 · 0 评论 -
Unreal Engine UActorComponent
UActorComponent是Unreal Engine中Actor的组件基类,通过组合式设计为Actor提供模块化功能(如渲染、物理、音效等)。继承自UObject,关键子类包括UPrimitiveComponent(含静态/骨骼网格组件)、UCameraComponent等。核心特性包含生命周期管理(InitializeComponent/BeginPlay/Tick)、网络复制、属性序列化,并通过CreateDefaultSubobject附加到Actor。支持代码与蓝图编辑,实现高复用性逻原创 2025-08-22 22:55:48 · 950 阅读 · 0 评论 -
Unreal Engine ATriggerVolume
ATriggerVolume是Unreal中继承自AVolume的特殊体积类,用于检测Actor进入/离开区域并触发事件(如开门、音效、关卡切换)。其核心特性包括: 1️⃣ 不可见无物理碰撞,仅通过OnActorBeginOverlap/EndOverlap事件响应交互 2️⃣ 支持C++动态绑定(AddDynamic)和蓝图可视化编程 3️⃣ 衍生类ATriggerBox/ATriggerSphere提供标准几何形状检测 典型应用场景包括区域触原创 2025-08-22 22:54:41 · 1282 阅读 · 0 评论 -
Unreal Engine APawn 与 ACharacter 比较
APawn是通用的可控制对象基类,提供灵活性。ACharacter是特化的人形角色类,提供完整的功能与便捷性。选择依据:如果你的对象需要像“人”一样移动,用ACharacter;否则,用APawn来自定义一切。原创 2025-08-22 22:53:44 · 1026 阅读 · 0 评论 -
Unreal Engine AActor
Unreal Engine中的AActor是继承自UObject的世界对象基类,代表游戏场景中可放置的实体(如角色、道具、触发器)。核心特性包括: 1️⃣ 变换信息:支持位置/旋转/缩放控制 2️⃣ 组件系统:通过ActorComponent(如网格、音效组件)扩展功能 3️⃣ 生命周期管理:提供BeginPlay/Tick/EndPlay等事件回调 4️⃣ 碰撞与网络:支持物理交互和多人游戏同步 常用派生类包括APawn(玩家控制)、ACharacter(角色模型)、AVolume(触发区域)。开原创 2025-08-22 22:51:56 · 1258 阅读 · 0 评论 -
Unreal Engine ClassName Rule
Unreal Engine 代码规范要求类名、变量和数据类型遵循特定前缀规则:AActor派生类以"A"开头(如ACharacter),UObject派生类以"U"开头(如UComponent),SWidget类以"S"开头。结构体需加"F"前缀(如FVector),枚举加"E"(如EWeaponType),模板类加"T"(如TArray),布尔变量加"b"(如bIsV原创 2025-08-22 22:49:26 · 480 阅读 · 0 评论 -
Unreal Engine IWYU Include What You Use
本文介绍了Unreal Engine 4中的IWYU(Include What You Use)规范,该规范自UE4.15起引入,旨在优化头文件依赖管理。核心思想是只包含实际需要的头文件,避免不必要的依赖。IWYU通过禁止使用大一统头文件、优先使用前置声明、在.cpp中包含完整定义等规则,显著减少编译时间、降低耦合度并提升代码可维护性。文中提供了传统写法与IWYU写法的对比示例,以及常见头文件的替换建议,帮助开发者更好地遵循这一规范。原创 2025-08-22 22:42:23 · 823 阅读 · 0 评论 -
Unreal Engine Class System
Unreal Engine的类系统基于C++类层级和反射机制,通过UCLASS、USTRUCT等宏标记实现运行时识别与管理。核心类包括UObject(基类)、AActor(关卡对象)、APawn(可控制角色)及组件系统(UActorComponent)。反射系统(UClass/UObject)支持序列化、GC和蓝图交互,宏如UPROPERTY()用于暴露变量。学习路径建议从UObject生命周期开始,逐步掌握Actor组件化、Gameplay框架分工(GameMode/PlayerController等)。原创 2025-08-22 22:35:39 · 1346 阅读 · 0 评论 -
SDL2+C++开发一个太空射击类小游戏
《SpaceShoot》是一款太空射击游戏,项目已开源在GitHub。游戏画面以太空为背景,包含飞船和战斗场景,演示图片展示了游戏内的战斗界面和视觉效果。玩家可以操控飞船进行射击战斗,体验太空冒险的乐趣。项目地址:https://github.com/1716285375/SpaceShip原创 2025-07-08 11:32:47 · 363 阅读 · 0 评论 -
SDL3系列教程一:VisualStudio2022下的SDL3环境配置
本文详细介绍了在Visual Studio 2022中配置SDL3开发环境的完整流程。首先从SDL官网下载SDL3开发包并解压,重点说明了解压后各目录的作用(include、lib等)。接着在VS2022中创建空C++项目,配置项目属性:添加SDL头文件目录和库文件路径,设置附加依赖项为SDL3.lib。最后提供了一个测试代码示例,展示了SDL窗口的初始化和简单渲染功能,验证环境配置是否成功。整个过程包含详细的截图指引和关键配置说明,适合开发者快速搭建SDL3开发环境。原创 2025-06-29 00:44:03 · 3185 阅读 · 3 评论
分享