我有一个目的地和两个球员。
我希望球员到达目的地,而不是在过程中重叠。
我给每个玩家附加了一个圆圈2D对撞机和一个刚体2D。
📷
同样,这个脚本:
using UnityEngine;
using System.Collections;
public class Agent : MonoBehaviour {
public Transform destination;
private Vector2 destPostion;
private Vector2 playerPosition;
public float rotation = 0;
Ve
我目前正在将实体组件系统(如 )与物理引擎和图形引擎集成在一起。直到最近才决定物理应该在自己的线程中运行,这一切都很好。(谢谢格伦·费德勒!)
现在,我只是在访问组件时锁定所有子系统共享的互斥对象。
物理循环中的片段:
lock_guard<mutex> lock( m_EntMutex );
entitymap::iterator it;
for ( it = m_Ents.begin(); it != m_Ents.end(); ++it )
{
// Get physics component from entity
// This is guaranteed
我试图建立一个俄罗斯方块3D游戏在团结,但我被困在不同的块互动(以发现对方,坐在一个之上,而不是通过彼此)。我已经设置了一个箱子对撞机的地面和飞溅的块来与刚体和触发对撞机。
这可以让他们很好地在地面上安顿下来,但是当我试着坐在另一个地块的顶部时,他们都有运动刚体,碰撞检测不起作用,最后他们重叠了。问题是,如果我移除已经固定的块的刚体,那么它就会穿过地面。
你知道如何得到两个产生的对象来检测对方吗?
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI