1. 程式人生 > >關於Unity5.5中自帶搖桿與車輪碰撞器的使用

關於Unity5.5中自帶搖桿與車輪碰撞器的使用

cti 添加組件 class 碰撞器 call 如果 blog ext 面板

在創建好項目目錄的基礎上

導入一個第三方的資源包,在Project面板裏面

右鍵---->Import Package---->Custom Package---->easy_touch.unitypackage

導入完成後,會發現菜單欄多了一個Hedgehog Team

Hedgehog Team---->Easy Touch---->Add Easy Touch for C#

在Hierarchy面板裏面

右鍵---->創建一個空節點joystick---->給節點添加組件Easy Joystick---->Game視圖出現搖桿

寫一個腳本來打印出搖桿的動態選定坐標,腳本叫test_joystick,掛載在joystick節點下,JoystickTouch (x, y) [-1, 1]

腳本內容:

using UnityEngine;
using System.Collections;

public class test_joystick : MonoBehaviour {
    EasyJoystick joystick;
    // Use this for initialization
    void Start () {
        this.joystick = this.GetComponent<EasyJoystick>();
    }
    
    // Update is called once per frame
    void
Update () { Debug.Log(this.joystick.JoystickTouch.x + ":" + this.joystick.JoystickTouch.y); } }

導入賽車資源F1文件夾和籃球場plane貼圖到Resources目錄下

創建一個game_root節點,把F1---->F1賽車模型預制體拖進game_root,當作它的子節點

創建一個plane平面節點當做game_root的子節點,把籃球場貼紙拖進Scene視圖中的plane,就會自動幫我們生成一個材質球並關聯到節點上,3D節點都要材質才能顯示內容,2D節點只要圖片就可以了。

材質plane的shader設置為Mobile Diffuse

節點F1的子節點如果沒有自動關聯好材質球的話,需要手動拖材質球關聯它的子節點

把相同名稱的材質球拖進子節點的Mesh Renderer的Element中,有多少個Element就拖幾次

把F1節點還原為普通節點GameObject---->Break Prefab Instance

為了讓賽車能夠運動起來,首先要給它一個剛體組件Rigidbody,設置質量Mass為50

為了發生碰撞,我們還需要給賽車添加碰撞器組件Box Collider,設置大小Size為X=2.5,Y=0.5,Z=8,調整它的位置Center的Y=0.5

在F1節點下面創建一個空節點phy_wheel,在phy_wheel下面再創建一個輪子節點FL

給FL添加車輪碰撞器Wheel Collider,設置車輪質量Mass為2,彈力Spring為90,阻力Damper設置為45,其他的車輪參數為

1: 添加賽車車體碰撞器;
2: 添加4個車輪碰撞器;
3: 配置車輪參數:
mass: 質量

radis半徑

Wheel Dramping Rate 車輪旋轉阻尼

Suspension Distance 懸掛高度,就是車輪上下顛簸的上下幅度距離;

Force App Point Distance 懸掛力應用點;

Center 車輪碰撞器中心點,

Suspension Spring 懸掛彈簧:

sprint 彈力 Damper 懸浮速度阻尼

TargetPoint 懸掛中心

向前摩擦與側向摩擦

Extermum Slip 先前摩擦曲線滑動值

Extermum Point 先前摩擦曲線極值點;

Asymptote Slip 向前漸進線滑動值;

Asymptote Point 前向曲線漸近線點;

stiffness 剛度 控制向前摩擦曲線的倍數;

配置好一個輪子後,再復制三個輪子出來,一個四個輪子FL,FR,BL,BR,然後把輪子節點移動到對應的模型中的四個輪子的位置。

創建一個腳本car掛載在F1節點下面來控制車輪隨著搖桿的移動而運動

car腳本內容:

關於Unity5.5中自帶搖桿與車輪碰撞器的使用