萍聚社区-德国热线-德国实用信息网

 找回密码
 注册

微信登录

微信扫一扫,快速登录

萍聚头条

查看: 161|回复: 0

用Unity打造搞笑弹性球

[复制链接]
发表于 2025-2-12 20:38 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册 微信登录

x
作者:微信文章
用Unity打造搞笑弹性球
大家好,我是一名专注于合规性系统开发的程序员。今天想和大家分享如何使用Python开发一个简单的用Unity打造搞笑弹性球。
核心机制


    可调节弹性系数

    撞击形变效果

    物理材质参数化
第一步:创建基础小球


    1、在Unity中创建Sphere对象

    2、添加Rigidbody组件

    3、设置物理材质Bouncy Material:

      Bounciness: 0.8

      Friction: 0.1

第二步:实现弹性形变

publicclassBouncyBall : MonoBehaviour {
    [Range(0, 2)]
    publicfloat bounceForce = 1f;

    voidOnCollisionEnter(Collision col){
        // 获取碰撞法线
        Vector3 normal = col.contacts[0].normal;
      
        // 施加反弹力
        GetComponent<Rigidbody>().AddForce(
            -normal * bounceForce * 100,
            ForceMode.Impulse
        );
      
        // 启动形变协程
        StartCoroutine(SquashEffect());
    }

    IEnumerator SquashEffect(){
        Vector3 originalScale = transform.localScale;
        transform.localScale = new Vector3(
            originalScale.x * 1.3f,
            originalScale.y * 0.7f,
            originalScale.z * 1.3f
        );
        yield returnnewWaitForSeconds(0.2f);
        transform.localScale = originalScale;
    }
}第三步:创建搞笑预设


模式弹性系数形变量效果
橡皮泥球0.20.5撞击后粘在表面
超级弹力球1.80.3违反物理定律的疯狂弹跳
果冻球0.70.4Q弹抖动带残影





第四步、高级技巧

1、添加TrailRenderer实现拖尾效果2、使用ShaderGraph制作半透明材质

    3、通过AudioSource播放滑稽音效


(文章结束)
Die von den Nutzern eingestellten Information und Meinungen sind nicht eigene Informationen und Meinungen der DOLC GmbH.
您需要登录后才可以回帖 登录 | 注册 微信登录

本版积分规则

手机版|Archiver|AGB|Impressum|Datenschutzerklärung|萍聚社区-德国热线-德国实用信息网

GMT+2, 2025-4-29 09:41 , Processed in 0.059072 second(s), 15 queries , Redis On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表