Unity Physic.Simulate多场景模拟物理仿真效果、绘制运动轨迹

本文通过Unity的PhysicsScene API演示了如何模拟并绘制物体的运动轨迹,包括被击打球的轨迹模拟以及碰撞后的运动轨迹预测。适用于初学者快速上手。

Chinar blog www.chinar.xin

Physic API 绘制运动轨迹


本文提供全流程,中文翻译。

Chinar 的初衷是将一种简单的生活方式带给世人

使有限时间 具备无限可能

Chinar —— 心分享、心创新!

助力快速理解 Physic.Simulate 绘制运动轨迹

为初学者节省宝贵的时间,避免采坑!

Chinar 教程效果:

在这里插入图片描述



全文高清图片,点击即可放大观看 (很多人竟然不知道)


1

Presentation —— 介绍


同一场景,解决多种物理效果并存问题
愤怒小鸟、桌球、爆炸....

Unity 2018.3以后支持多个物理场景

用以解决物理限制问题

看了下官方发布的视频中一个比较有意思的案例

台球轨迹案例
但我没找到官方的例子 地址在哪

于是自己实现了一个简单的效果,供大家参考学习了解 PhysicsScene的用法所在

本质就是,一个场景下 有多种物理效果。可自己定义,如何表现

举个例子

大家可以自己看下发布文档,地址如下:

Unity 2018.3发布文档!( Chinar Blog )


2

Demo —— 栗子

一个桌球场景,我们先来模拟被击打白球的运动轨迹

原理就是创建一个 白球克隆对象,在第二场景中模拟白球的物理运动轨迹,并记录轨迹!

也就是创建一个不可见的场景,用来模拟白球的运动轨迹绘制。

点击鼠标左键,击打白球,验证轨迹是否正确。二者互不影响

注意物理:两个场景完全独立

举个例子

在这里插入图片描述

代码


using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.SceneManagement;
using UnityEngine.UI;


/// <summary>
/// 模拟轨迹
/// </summary>
public class ChinarForece : MonoBehaviour
{
   
   
    public  Transform    DirectionBall;      //指向方向的球
    public  Transform    TrackBallTransform; //轨迹球
    private Rigidbody    trackBallRigidbody; //
    public  Slider       VelocitySlider;     //力度值 滑动器
    public  Slider       AngleSlider;        //角度值 
    private PhysicsScene physicsScene;       //物理场景
    public  GameObject[] OtherGameObjects;   //所有小球
    public  int          TrackFrames = 80;   //轨迹帧率
    private int          ICount;             
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值