Что происходит в этом разделе Self CPU? Куда идут эти циклы?
Это часть 3D -рендеринга FNA? И если да, то почему он отображается там в анализаторе производительности, а не в соответствующих методах? 2:
ниже представлена тестовая игра FNA с аналогичным количеством вершинных буферов и вершин, как и мой настоящий проект. Не существует пользовательского кода, кроме показанного кода. Единственная ссылка на проект - это проект fna.core. < /P>
Код: Выделить всё
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;
namespace FNAPerformanceTest {
public class TestGame : Game {
static void Main(string[] args) {
using (TestGame g = new TestGame()) {
g.Run();
}
}
List Buffers = new();
GraphicsDeviceManager graphics;
BasicEffect effect;
public TestGame() {
graphics = new GraphicsDeviceManager(this);
}
protected override void Initialize() {
Random r = new Random();
for(int a = 0; a < 200; ++a) {
List vertices = new();
for(int b = 0; b < 4096; ++b) {
vertices.Add(new VertexPositionColor(new Vector3(r.NextSingle(), r.NextSingle(), r.NextSingle()), new Color(r.NextSingle(), r.NextSingle(), r.NextSingle())));
vertices.Add(new VertexPositionColor(new Vector3(r.NextSingle(), r.NextSingle(), r.NextSingle()), new Color(r.NextSingle(), r.NextSingle(), r.NextSingle())));
vertices.Add(new VertexPositionColor(new Vector3(r.NextSingle(), r.NextSingle(), r.NextSingle()), new Color(r.NextSingle(), r.NextSingle(), r.NextSingle())));
}
VertexBuffer buffer = new VertexBuffer(GraphicsDevice, typeof(VertexPositionColor), vertices.Count, BufferUsage.WriteOnly);
buffer.SetData(vertices.ToArray());
Buffers.Add(buffer);
}
effect = new BasicEffect(GraphicsDevice);
base.Initialize();
}
protected override void Draw(GameTime gameTime) {
foreach (var buffer in Buffers) {
GraphicsDevice.SetVertexBuffer(buffer);
foreach (EffectPass pass in effect.CurrentTechnique.Passes) {
pass.Apply();
GraphicsDevice.DrawPrimitives(PrimitiveType.TriangleList, 0, buffer.VertexCount / 3);
}
}
base.Draw(gameTime);
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/797 ... f-self-cpu
Мобильная версия