0

我的问题始于我对顶点进行纹理示例(https://gamedev.stackexchange.com/questions/30050/building-a-shape-out-of-an-texture-with-farseer)然后我弹出如果可以将这个“farseer vertices”传递给可以在 DrawUserIndexedPrimitives 中使用的顶点数据,以便让顶点准备好在 alpha 纹理上进行修改。

示例:您在三角形带状顶点数据上绘制纹理(在某些地方具有透明度),以便您可以操纵这些点以像这样使图像失真: http://www.tutsps.com/images/Water_Design_avec_Photoshop/Water_Design_avec_Photoshop_20。 jpg

正如您所看到的,A 字母只是 PNG 文件上的普通图像,但在转换后,我正在寻找它可以用来对图像进行分类。

请任何解决方案提供一些代码或教程链接,以帮助我弄清楚这一点......

谢谢大家!!

PD 我认为主要问题是如何仅从 PolygonTools.CreatePolygon 制作的顶点制作 indexData 和 textureCoordination。

4

1 回答 1

0

TexturedFixture 多边形 = fixture.UserData as TexturedFixture;

                    effect.Texture = polygon.Texture;
                    effect.CurrentTechnique.Passes[0].Apply();

                    VertexPositionColorTexture[] points;
                    int vertexCount;
                    int[] indices;
                    int triangleCount;

                    polygon.Polygon.GetTriangleList(fixture.Body.Position, fixture.Body.Rotation, out points, out vertexCount, out indices, out triangleCount);

                    GraphicsDevice.SamplerStates[0] = SamplerState.AnisotropicClamp;
                    GraphicsDevice.RasterizerState = new RasterizerState() { FillMode = FillMode.Solid, CullMode = CullMode.None, };

                    GraphicsDevice.DrawUserIndexedPrimitives<VertexPositionColorTexture>(PrimitiveType.TriangleList, points, 0, vertexCount, indices, 0, triangleCount);

这会成功的

于 2013-06-18T19:07:40.380 回答