本帖最后由 微笑的猫 于 2024-4-11 16:55 编辑
Easy Character Movement系列索引:
Easy Character Movement 1.8 下载链接
Easy Character Movement 1.8.1 下载链接
Easy Character Movement 1.8.2 下载链接
Easy Character Movement 2 1.0.1 下载链接
Easy Character Movement 2 1.2.0 下载链接
Easy Character Movement 2 1.2.1 下载链接
Easy Character Movement 2 1.3.1 下载链接
Easy Character Movement 2 1.3.2 下载链接
Easy Character Movement 2 1.4.1 下载链接
Easy Character Movement 2 (ECM2) is a comprehensive set of components crafted to facilitate seamless character movement in both 3D and 2.5D environments.
The primary objective of ECM2 is to simplify the process of maneuvering game characters, empowering developers to construct game mechanics effortlessly on this foundation.
At the core of ECM2 is the CharacterMovement component, a robust and feature-rich kinematic character controller (aka motor). This component serves as a direct replacement for Unity's built-in Character Controller, employing a similar operational methodology (i.e. Move method) but with many features and advantages over it.
Central to the ECM2 system is the Character class. This utilizes the CharacterMovement component as its character controller / motor, incorporating common modes of movement for characters, such as walking, falling, flying, swimming or any custom mode you may create. It serves as a highly customizable foundation for all your game avatars, whether they are controlled by players or AI.
WHAT'S NEW?
Version 1.4.0 constitutes a comprehensive package revision, introducing significant changes that may impact compatibility with previous versions.
It is advisable to import it into a clean project before applying the update to your main environment.
One of its main features is that now the Character class can be extended through composition without the need to inherit directly from the Character class, whether through scripts or visual scripting.
Please refer to the Change Log for a comprehensive list of modifications.
* Networking examples are currently unavailable in version 1.4.0 as they are undergoing porting to accommodate recent changes in network libraries. Rest assured that these examples will be incorporated in the upcoming update. We appreciate your patience and understanding.
FEATURES
Kinematic character controller.
Extensive documentation, and fully commented readable source code included.
Work the Unity's way, simply call its Move method, just like Unity' Character Controller.
Robust ground detection based on real surface normal.
Slope Limit Override lets you define walkable areas per-face or even per-object.
Configurable walkable area (perchOffset) lets you define the character's 'feet' radius.
Capsule-based with Flat Base for Ground Checks option. This avoids the situation where characters slowly lower off the side of a ledge.
Ground constraint, prevent the character's being launched off ramps.
Configurable Plane Constraint so movement along the locked axis is not possible.
Auto-stepping preserving character's momentum (e.g. its stride).
User-defined gravity and up vector for mario galaxy like effects.
Physics interactions.
Character vs Character interactions.
First-class, transparent (without further steps needed by you) platforms support, be it animated, scripted, or physics based.
Collision and Grounding events.
Network friendly. Full control over the update and simulation timestep.
Flexible and customizable behavior through callbacks.
Fully configurable friction based movement including water buoyancy!
Uses Unity New Input System as its default input (but not limited to).
Different movement modes and states, like walking, falling, unlimited variable height jump, crouching, sprinting, flying, swimming, etc.
Full control over how a character is affected (or not) by external forces, platform velocity, platform movement and / or rotation, push other rigidbodies and or characters.
Character actions events.
Extensive and configurable collision filtering.
40+ examples including custom input actions, cinemachine integration, first person, third person, character events, bouncers, fly, swim, dash, slide, ladders, and much more!
Developed with extensibility in mind, can be used as it is or extended through inheritance or composition.
Physics Volumes, to easily handle water, falling zones, etc. with configurable properties.
Root motion support.
Simple to use but complete API.
Easy integration into existing projects.
Fully commented C# source code. Clear, readable and easy to extend.
Garbage-Collector friendly, no GC allocations.
INSTALLATION
* Please remove previous versions folders from your unity project before importing this update.
ECM2 includes Cinemachine based examples, this are distributed as a .unitypackage, so before unpack this, please make sure to install the Cinemachine package into your project.
Easy Character Movement 2 (ECM2) 是一套全面的组件,用于促进角色在 3D 和 2.5D 环境中的无缝移动。
ECM2 的主要目标是简化操纵游戏角色的过程,使开发人员能够在此基础上轻松构建游戏机制。
ECM2 的核心是 CharacterMovement 组件,它是一个功能强大、特性丰富的运动角色控制器(又称电机)。该组件可直接替代 Unity 内置的角色控制器,采用类似的操作方法(即移动方法),但具有许多功能和优势。
角色类是 ECM2 系统的核心。该类使用 CharacterMovement 组件作为角色控制器/电机,包含角色的常见移动模式,如行走、坠落、飞行、游泳或您可能创建的任何自定义模式。无论是玩家控制的头像还是人工智能控制的头像,它都是高度可定制的基础。
新功能
1.4.0 版是对软件包的全面修订,引入了可能影响与旧版本兼容性的重大变更。
建议在将更新应用到主环境之前将其导入到一个干净的项目中。
其主要特性之一是,现在可以通过组合扩展角色类,而无需直接从角色类继承,无论是通过脚本还是可视化脚本。
有关修改的完整列表,请参阅 "更改日志"。
* 网络示例目前在 1.4.0 版中不可用,因为这些示例正在进行移植,以适应网络库的最新变化。请放心,这些示例将纳入即将推出的更新中。我们感谢您的耐心和理解。
功能特点
机械字符控制器。
丰富的文档和完整注释的可读源代码。
以 Unity 的方式工作,只需调用 Move 方法即可,就像 Unity 的角色控制器一样。
基于真实表面法线的可靠地面检测。
坡度限制覆盖功能可让你按面甚至按物体定义可行走区域。
通过可配置的可行走区域 (perchOffset) 可以定义角色的 "脚 "半径。
基于胶囊的 "地面检查平底 "选项。这可以避免角色从壁架一侧慢慢降低的情况。
地面约束,防止角色从斜坡上被推出。
可配置的平面约束,使角色无法沿锁定轴移动。
自动步进功能可保持角色的动量(如步幅)。
用户可自定义重力和向上矢量,以获得类似马里奥星系的效果。
物理交互
角色与角色之间的互动
一流的透明平台支持,无论是动画平台、脚本平台还是物理平台。
碰撞和接地事件
网络友好 完全控制更新和模拟时间步。
通过回调灵活定制行为。
可完全配置基于摩擦力的运动,包括水的浮力!
使用 Unity 新输入系统作为默认输入(但不限于此)。
不同的运动模式和状态,如行走、坠落、无限制可变高度跳跃、蹲下、冲刺、飞行、游泳等。
完全控制角色如何受(或不受)外力、平台速度、平台移动和/或旋转、推动其他刚体和/或角色的影响。
角色动作事件
广泛且可配置的碰撞过滤。
40 多个示例,包括自定义输入动作、电影机集成、第一人称、第三人称、角色事件、弹跳、飞行、游泳、冲刺、滑行、梯子等!
开发时考虑到了可扩展性,可按原样使用,也可通过继承或组合进行扩展。
物理卷,可通过配置属性轻松处理水、下落区域等。
支持根运动。
简单易用但完整的应用程序接口。
可轻松集成到现有项目中。
完全注释的 C# 源代码。清晰易读,易于扩展。
垃圾回收器友好,无 GC 分配。
安装
* 在导入此更新之前,请从您的 unity 项目中删除以前版本的文件夹。
ECM2 包含基于 Cinemachine 的示例,这些示例以 .unitypackage 的形式发布,因此在解压此更新之前,请确保已将 Cinemachine 包安装到您的项目中。
|