# MGS-MechanicalDrive **Repository Path**: YT_Unity/mgs-mechanicaldrive ## Basic Information - **Project Name**: MGS-MechanicalDrive - **Description**: Unity3D 制作机械传动 插件包 - **Primary Language**: C# - **License**: GPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2017-06-27 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #MGS-MechanicalDrive ##概述 Unity3D 绑定机械传动 插件包。 ##需求 1. 制作啮合齿轮传动机构。 1. 制作按比例速度同步传动机构。 1. 制作蜗轮蜗杆传动机构。 1. 制作皮带飞轮传动机构。 1. 制作链条齿轮传动机构。 ##方案 1. 统一线速度驱动啮合齿轮,齿轮角速度依据齿轮半径计算。 1. 统一线速度驱动各个机构单元,单元的线速度依据比例计算。 1. 统一线速度驱动蜗轮蜗杆,蜗杆角速度依据蜗杆半径计算;蜗轮角速度依据蜗杆头数(螺旋线条数)和蜗轮齿数计算。 1. 统一线速度驱动飞轮,皮带转动速度依据比例计算(保持皮带与飞轮同步);皮带转动使用UV动画实现。 1. 统一线速度驱动齿轮,链条;链条转动轨迹使用动画曲线AnimationCurve实现。 ##实现 - Gear.cs:齿轮,绕Z轴向作圆周运动。 - Belt.cs:传送带,UV沿X方向移动模拟运转。 - Chain.cs:链条,由相同的链节点连接而成,依据锚点路径移动和旋转。 - DynamicChain.cs:动态链条,在Chain的基础上适应路径锚点变化,模拟由于重力,振动等原因导致的链条轨迹变形。 - RollerChain.cs:滚子链,由两个不同的链节点交替连接而成,依据锚点路径移动和旋转。 - DynamicRollerChain.cs:动态滚子链,在RollerChain的基础上适应路径锚点变化,模拟由于重力,振动等原因导致的链条轨迹变形。 - LinearVibrator.cs:线性振动器,沿Z轴向作往复运动。 - CentrifugalVibrator.cs:离心振动器,绕Z轴向作离心运动。 - Synchronizer.cs:同步器,统一线速度驱动同步器的所有机构。 - Transmission.cs:变速器,按指定比例线速度驱动变速器的相应机构,用于协调多个机构的运转。 - WormGear.cs:绑定蜗轮蜗杆。 - Engine.cs:引擎,统一驱动所有机构。 - Damper.cs:阻尼器,模拟引擎启动后加速,停止后减速等效果。 ##案例 - “MGS-MechanicalDrive/Scenes”文件夹存有上述传动装置的演示案例供读者参考。 - “MGS-MechanicalDrive/Prefabs”文件夹存有上述传动装置的绑定预制体,供读者修改复用,以便快速绑定机械传动。