13/12/08 15:22
Thejuster
Ah dopo un po di tempo rieccomi qui a richidere consigli
mi trovo dico anche concludendo che finalmente ho fatto il collision detection
Un piccolo problemino con le sprite2D.
Avevo intenzione di creare delle Billboarding
per evitare di usare personaggi 3D e animazioni skinning, perchè e ancora troppo presto per me.
Alcuni mi hanno consigliato di usare la Quad Class.
Ma stranamente non mi dà l'effetto desiderato in billboard.
ho provato anche i diversi modi usando la quad
principalemente per la quadclass ho un problema
Il problema non me lo da sui vertici o quant'altro
ho un problema proprio di posizionamento
come posso spiegare
1° la sprite vorrei che sarebbe sempre orientata verso la camera e girerebbe di conseguenza.
Usando il quad non solo non ottengo quest'effetto
ma mi stampa la faccia di un cubo con una texture sopra applicata.
ma non l'appoggia nemmeno sul terreno
anche se ho specificato come cordinate 0f,0f,0f
ecco l'effetto stranissimo che mi dà
img183.imageshack.us/img183/684/…
si è in 3D.
Ma e come se stampassi una semplice sprite.
e ovviamente si sà qual'è il risultato se si stampa una sprite2D in un ambiente 3D
ovunque giri la camera o ovuque vai la sprite resta sempre a video non rimane in una posizione fissa
Voi che siete più esperti di me, come faccio a stampare un semplicissimo billord?
Sta cosa mi sta dando sui nervi...
pls.
mi trovo dico anche concludendo che finalmente ho fatto il collision detection
Un piccolo problemino con le sprite2D.
Avevo intenzione di creare delle Billboarding
per evitare di usare personaggi 3D e animazioni skinning, perchè e ancora troppo presto per me.
Alcuni mi hanno consigliato di usare la Quad Class.
Ma stranamente non mi dà l'effetto desiderato in billboard.
ho provato anche i diversi modi usando la quad
principalemente per la quadclass ho un problema
quad = new Quad(Vector3.Zero, Vector3.Backward, Vector3.Up, 1, 1); View = Matrix.CreateLookAt(new Vector3(10, 0, 5), Vector3.Zero, Vector3.Up); Projection = Matrix.CreatePerspectiveFieldOfView(MathHelper.PiOver4, 4.0f / 3.0f, 1, 500); //variabili texture = Content.Load<Texture2D>(@"Sprite\char"); quadEffect = new BasicEffect(graphics.GraphicsDevice, null); quadEffect.EnableDefaultLighting(); quadEffect.World = Matrix.Identity; quadEffect.View = View; quadEffect.Projection = Projection; quadEffect.TextureEnabled = true; quadEffect.Texture = texture; quadVertexDecl = new VertexDeclaration(graphics.GraphicsDevice, VertexPositionNormalTexture.VertexElements); // protected override void Draw(GameTime gameTime) { graphics.GraphicsDevice.Clear(Color.CornflowerBlue); GraphicsDevice.VertexDeclaration = quadVertexDecl; quadEffect.Begin(); foreach (EffectPass pass in quadEffect.CurrentTechnique.Passes) { pass.Begin(); GraphicsDevice.DrawUserIndexedPrimitives<VertexPositionNormalTexture>( PrimitiveType.TriangleList, quad.Vertices, 0, 4, quad.Indexes, 0, 2); pass.End(); } quadEffect.End(); base.Draw(gameTime); }
Il problema non me lo da sui vertici o quant'altro
ho un problema proprio di posizionamento
come posso spiegare
1° la sprite vorrei che sarebbe sempre orientata verso la camera e girerebbe di conseguenza.
Usando il quad non solo non ottengo quest'effetto
ma mi stampa la faccia di un cubo con una texture sopra applicata.
ma non l'appoggia nemmeno sul terreno
anche se ho specificato come cordinate 0f,0f,0f
ecco l'effetto stranissimo che mi dà
img183.imageshack.us/img183/684/…
si è in 3D.
Ma e come se stampassi una semplice sprite.
e ovviamente si sà qual'è il risultato se si stampa una sprite2D in un ambiente 3D
ovunque giri la camera o ovuque vai la sprite resta sempre a video non rimane in una posizione fissa
Voi che siete più esperti di me, come faccio a stampare un semplicissimo billord?
Sta cosa mi sta dando sui nervi...
pls.
Ultima modifica effettuata da Thejuster 14/12/08 9:54
mire.forumfree.it/ - Mire Engine
C# UI Designer
C# UI Designer