void OnDrawGizmos()
        {
            Vector2 p = DerivedPos;
            mBaseShape.transformVertices(ref p, DerivedAngle, ref mScale, ref mGlobalShape);
            DerivedPos = p;

            VertexPositionColor[] shape = new VertexPositionColor[mPointMasses.Count];

            p = DerivedPos;
            mBaseShape.transformVertices(ref p, DerivedAngle, ref mScale, ref mGlobalShape);
            DerivedPos = p;
            List<Vector2> points = new List<Vector2> ();
            for (int i = 0; i < mPointMasses.Count; i++)
            {
            //				shape[i] = new VertexPositionColor();
            //				shape[i].Position = VectorTools.vec3FromVec2(mPointMasses[i].Position);
            //				shape[i].Color = Color.red;

                Gizmos.color = Color.white;
                if(i != 0)
                {
            //                    Gizmos.DrawLine(mPointMasses [i - 1].UnRotatedPsition, mPointMasses [i].UnRotatedPsition);
                }
            }

            for (int i = 0; i < mSprings.Count; i++) {
                Gizmos.color = Color.red;
                Gizmos.DrawLine(VectorTools.vec3FromVec2(mPointMasses[mSprings[i].pointMassA].UnRotatedPsition),VectorTools.vec3FromVec2(mPointMasses[mSprings[i].pointMassB].UnRotatedPsition));
            }
            //			Gizmos.DrawLine(shape[mPointMasses.Count-1].Position,shape[0].Position);
        }
Exemplo n.º 2
0
        void OnDrawGizmos()
        {
            Vector2 p = DerivedPos;

            mBaseShape.transformVertices(ref p, DerivedAngle, ref mScale, ref mGlobalShape);
            DerivedPos = p;

            VertexPositionColor[] debugVerts = new VertexPositionColor[mGlobalShape.Length + 1];
            for (int i = 0; i < mPointMasses.Count; i++)
            {
//                debugVerts [i] = new VertexPositionColor();
//                debugVerts [i].Position = VectorTools.vec3FromVec2(mGlobalShape [i]);
//                debugVerts [i].Color = Color.red;
                Gizmos.color = Color.red;
                if (i != 0)
                {
//                    Gizmos.DrawLine(mPointMasses [i - 1].UnRotatedPsition, mPointMasses [i].UnRotatedPsition);
                }
            }
//            debugVerts [debugVerts.Length - 1] = new VertexPositionColor();
//            debugVerts [debugVerts.Length - 1].Position = VectorTools.vec3FromVec2(mGlobalShape [0]);
//            debugVerts [debugVerts.Length - 1].Color = Color.gray;
//            Gizmos.DrawLine(debugVerts [debugVerts.Length - 1].Position, debugVerts [0].Position);
        }
        void OnDrawGizmos()
        {
            Vector2 p = DerivedPos;
            mBaseShape.transformVertices(ref p, DerivedAngle, ref mScale, ref mGlobalShape);
            DerivedPos = p;

            VertexPositionColor[] shape = new VertexPositionColor[mPointMasses.Count];

            p = DerivedPos;
            mBaseShape.transformVertices(ref p, DerivedAngle, ref mScale, ref mGlobalShape);
            DerivedPos = p;
            for (int i = 0; i < mPointMasses.Count; i++)
            {
                shape[i] = new VertexPositionColor();
                shape[i].Position = VectorTools.vec3FromVec2(mPointMasses[i].Position);
                shape[i].Color = Color.red;
                if(i != 0)
                {
                    Gizmos.DrawLine(mPointMasses[i-1].UnRotatedPsition,mPointMasses[i].UnRotatedPsition);
                }
            }

            Gizmos.DrawLine(mPointMasses[mPointMasses.Count-1].UnRotatedPsition,mPointMasses[0].UnRotatedPsition);
        }
Exemplo n.º 4
0
        void OnDrawGizmos()
        {
            Vector2 p = DerivedPos;
            mBaseShape.transformVertices(ref p, DerivedAngle, ref mScale, ref mGlobalShape);
            DerivedPos = p;

            VertexPositionColor[] shape = new VertexPositionColor[mPointMasses.Count * 2];
            VertexPositionColor[] springs = new VertexPositionColor[mSprings.Count * 2];

            p = DerivedPos;
            mBaseShape.transformVertices(ref p, DerivedAngle, ref mScale, ref mGlobalShape);
            DerivedPos = p;
            for (int i = 0; i < mPointMasses.Count; i++)
            {
                shape[(i * 2) + 0] = new VertexPositionColor();
                shape[(i * 2) + 0].Position = VectorTools.vec3FromVec2(mPointMasses[i].Position);
                shape[(i * 2) + 0].Color = Color.green;

                shape[(i * 2) + 1] = new VertexPositionColor();
                shape[(i * 2) + 1].Position = VectorTools.vec3FromVec2(mGlobalShape[i]);
                shape[(i * 2) + 1].Color = Color.red;
            //				if(i != 0)
            //				{
            //					//					Gizmos.DrawLine(springs[(i * 2) + 0].Position,springs[(i * 2) + 1].Position);
            //					Gizmos.DrawLine(springs[i].Position,springs[i+1].Position);
            //					Gizmos.DrawLine(springs[i+1].Position,springs[i-1].Position);
            //				}
            //				Gizmos.DrawLine(springs[mSprings.Count-1].Position,springs[0].Position);
            }

            for (int i = 0; i < mSprings.Count; i++)
            {
                springs[(i * 2) + 0] = new VertexPositionColor();
                springs[(i * 2) + 0].Position = VectorTools.vec3FromVec2(mPointMasses[mSprings[i].pointMassA].Position);
                springs[(i * 2) + 0].Color = Color.gray;

                springs[(i * 2) + 1] = new VertexPositionColor();
                springs[(i * 2) + 1].Position = VectorTools.vec3FromVec2(mPointMasses[mSprings[i].pointMassB].Position);
                springs[(i * 2) + 1].Color = Color.yellow;
                Gizmos.color = Color.red;
                if(i != 0)
                {
            //					Gizmos.DrawLine(springs[(i * 2) + 0].Position,springs[(i * 2) + 1].Position);
                    Gizmos.DrawLine(springs[i*2].Position,springs[(i*2)+1].Position);
            //					Gizmos.DrawLine(springs[(i*2)+1].Position,springs[i-1].Position);
                }
            }
            Gizmos.DrawLine(springs[mSprings.Count-1].Position,springs[0].Position);
        }
Exemplo n.º 5
0
        void OnDrawGizmos()
        {
            Vector2 p = DerivedPos;
            mBaseShape.transformVertices(ref p, DerivedAngle, ref mScale, ref mGlobalShape);
            DerivedPos = p;

            VertexPositionColor[] debugVerts = new VertexPositionColor[mGlobalShape.Length + 1];
            for (int i = 0; i < mPointMasses.Count; i++)
            {
            //                debugVerts [i] = new VertexPositionColor();
            //                debugVerts [i].Position = VectorTools.vec3FromVec2(mGlobalShape [i]);
            //                debugVerts [i].Color = Color.red;
                Gizmos.color = Color.red;
                if (i != 0)
                {
            //                    Gizmos.DrawLine(mPointMasses [i - 1].UnRotatedPsition, mPointMasses [i].UnRotatedPsition);
                }
            }
            //            debugVerts [debugVerts.Length - 1] = new VertexPositionColor();
            //            debugVerts [debugVerts.Length - 1].Position = VectorTools.vec3FromVec2(mGlobalShape [0]);
            //            debugVerts [debugVerts.Length - 1].Color = Color.gray;
            //            Gizmos.DrawLine(debugVerts [debugVerts.Length - 1].Position, debugVerts [0].Position);
        }