Version: 2021.3
public void Add (PhysicsShapeGroup2D physicsShapeGroup);

参数

physicsShapeGroup The PhysicsShapeGroup2D to add to this shape group. (Read Only)

描述

Adds a copy of all the PhysicsShape2D and their geometry from the specified physicsShapeGroup into this shape group. The specified physicsShapeGroup is not modified.

using UnityEngine;
using UnityEngine.Assertions;

public class Example : MonoBehaviour { private const int ShapeCount = 10;

void Start() { // Create a shape group and add a Circle to it. var shapeGroup1 = new PhysicsShapeGroup2D(); shapeGroup1.AddCircle ( center: Vector2.zero, radius: 1f );

// Validate the contents. Assert.AreEqual(1, shapeGroup1.shapeCount); Assert.AreEqual(1, shapeGroup1.vertexCount); Assert.AreEqual(PhysicsShapeType2D.Circle, shapeGroup1.GetShape(0).shapeType);

// Create another shape group and add a Box to it. var shapeGroup2 = new PhysicsShapeGroup2D(); shapeGroup2.AddBox ( center: new Vector2(3f, 2f), size: new Vector2(1f, 1f) );

// Validate the contents. Assert.AreEqual(1, shapeGroup2.shapeCount); Assert.AreEqual(4, shapeGroup2.vertexCount); Assert.AreEqual(PhysicsShapeType2D.Polygon, shapeGroup2.GetShape(0).shapeType);

// Add the second shape group to the first shape group. shapeGroup1.Add(shapeGroup2);

// Validate the contents. Assert.AreEqual(1 + 1, shapeGroup1.shapeCount); Assert.AreEqual(1 + 4, shapeGroup1.vertexCount); Assert.AreEqual(PhysicsShapeType2D.Circle, shapeGroup1.GetShape(0).shapeType); Assert.AreEqual(PhysicsShapeType2D.Polygon, shapeGroup1.GetShape(1).shapeType); } }
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961