-
Xna renderizar modelos
Tengo un problema, pues uso un modelo generado a través de una matriz cuadrada donde sus valores son entre 0 - 200, simulando así un terreno, separando los vectores x, z según un espaciado, todo resulta ok, siempre y cuando la cámara mire hacia adelante, o sea, que el terreno solo ocupe visualmente un 20% de la pantalla, de esta forma se toma para renderizar 11 milisegundos(aun así creo que es mucho tiempo).
Cuando la cámara gira hacia abajo (mirando al suelo), que es donde en toda la pantalla se ve el suelo, se demora entonces 21 milisegundos el renderizar el modelo, lo que conlleva a una reducion sustancial del framerate.
El modelo redenrizo de esta forma:
Void drawmodel(model model).
{.
Matrix[] bonetransforms = new Matrix[model. Bones. Count].
Model. Copyabsolutebonetransformsto (bonetransforms).
Foreach (modelmesh Mesh in model. Meshes).
{.
Foreach (basiceffect effect in Mesh. Effects).
{.
Effect.world = bonetransforms[Mesh. Parentbone. Index].
Effect. View = Camera. View.
Effect. Projection = Camera. Projection.
Effect. Enabledefaultlighting().
Effect. Preferperpixellighting = true.
// set the Fog todo match the black background color.
Effect. Fogenabled = true.
Effect. Fogcolor = new vector3(1).
Effect. Fogstart = Camera. Farplanedistance *.4f.
Effect. Fogend = Camera. Farplanedistance.
}.
Mesh. Draw().
}.
}.
Mi correo es este : skullwarrior, Sergio@gmail.com.
Por favor cualquiera que tenga una idea de cómo reducir el tiempo en que se toma el renderizar el modelo, pues realmente no entiendo, el modelo no cambia, solo el ángulo de visón de la cámara, y solo aumenta el tiempo de renderizado cuando miro al suelo o tengo de frente a una montaña y la cámara esta suficientemente cerca como para que la montaña ocupe toda la pantalla.
-
Xna renderizar modelos
Tengo el XNA algo oxidado, pero si te pasas por Stratos seguro que alguno de los cracks te contestan. Aunque por lo que cuentas es simplemente que tienes mucho polígono y cuantos más dibuja, más tarda, así que, igual no hay mucho por dónde rascar. Aun así, pregunta por www.stratos-ad.com si nadie te sabe decir algo concreto por aquí.
-
Xna renderizar modelos
Men, eso no debe ser, puesto que he incrementado y decrementado, exponencialmente la cantidad de vértices que dibujan el terreno, y el resultado es el mismo, ya sea con una matriz de 20 * 20, o de una de 256 * 256, solo se ralentiza cuando dije, que toda la pantalla esta ocupada por algo, si algo dime tu correo y te mando imágenes para que te ayuden a entender, me es difícil explicarlo, es en 3d.
-
Xna renderizar modelos
Ya, pero para eso se inventó el descarte de geometría, para que sólo se renderice lo que se verá en pantalla. De todas formas, por Stratos veo que ya te han dirigido a algún tutorial que te puede servir de referencia.
-
Xna renderizar modelos
No, ese no es el problema, es lo contrario, como ya te había intentado decir, no es la cantidad de polígonos que no se renderizan porque no caen dentro del campo de visión actual, sino los que se ven, deja ver cómo me hago entender, si hago que la cámara mire al cielo, así la matriz sea de 256 * 256, utiliza el mismo tiempo de renderizado (~10 ms) que con una matriz de 20 * 20, si miro al suelo, que es lo que simula la matriz, o sea que se ve toda la pantalla llena de los colores de la textura que le aplique el modelo, se lleva el mismo tiempo (~22 ms), ya sea con la matriz de 256 *256 o con la matriz de 20 * 20.
Ya me entiendes?
-
Xna renderizar modelos
Ni una palabra, pero por Stratos ya te han apuntado una posible solución.