public void createEllipse() { manualObject.clear(); manualObject.begin("ManualTwoSidedPropShapeMaterial", OperationType.OT_TRIANGLE_STRIP); uint vertexCount = (uint)(numSections * 2); uint indexCount = vertexCount + 2; manualObject.estimateVertexCount(vertexCount); manualObject.estimateIndexCount(indexCount); float increment = 6.28f / numSections; for (uint i = 0; i < numSections; ++i) { float t = i * increment; Vector2 ellipsePosition = innerEllipse.getPoint(t); manualObject.position(new Vector3(ellipsePosition.x, ellipsePosition.y, 0)); manualObject.color(color.r, color.g, color.b, color.a); ellipsePosition = outerEllipse.getPoint(t); manualObject.position(new Vector3(ellipsePosition.x, ellipsePosition.y, 0)); manualObject.color(color.r, color.g, color.b, color.a); manualObject.index(i * 2); manualObject.index(i * 2 + 1); } //Close the ellipse manualObject.index(0); manualObject.index(1); manualObject.end(); }
public void createObject() { manualObject.clear(); manualObject.begin("ManualTwoSidedPropShapeMaterial", OperationType.OT_TRIANGLE_STRIP); uint vertexCount = (uint)(4); uint indexCount = vertexCount + 2; manualObject.estimateVertexCount(vertexCount); manualObject.estimateIndexCount(indexCount); //0 1 // //2 3 // float widthHalfExtent = size.Width / 2.0f; float heightHalfExtent = size.Height / 2.0f; //Upper Left (0) manualObject.position(new Vector3(-widthHalfExtent, heightHalfExtent, 0f)); manualObject.color(color.r, color.g, color.b, color.a); //Upper Right (1) manualObject.position(new Vector3(widthHalfExtent, heightHalfExtent, 0f)); manualObject.color(color.r, color.g, color.b, color.a); //Lower Left (2) manualObject.position(new Vector3(-widthHalfExtent, -heightHalfExtent, 0f)); manualObject.color(color.r, color.g, color.b, color.a); //Lower Right (3) manualObject.position(new Vector3(widthHalfExtent, -heightHalfExtent, 0f)); manualObject.color(color.r, color.g, color.b, color.a); //First Triangle manualObject.index(1); manualObject.index(0); manualObject.index(3); //Second Triangle manualObject.index(3); manualObject.index(2); manualObject.index(0); manualObject.end(); }