Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Menu

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menu

Temas - blau

#21
XNA / Editor de sprites
19 de Junio de 2011, 02:12:26 AM
He retomado un editor de juegos 2D que tenia hecho en xna 3.1 y lo estoy actualizando a 4.0,

Lo primero que he terminado de pasar, aunque no es xna 3.1 puro y duro, es la herramienta para configurar los sprite sheets, a la que he añadido detección automática de sprites :)

http://www.youtube.com/watch?v=UCfPFn4OLhk

Me queda pasar la parte de editar los frames individualmente para modificar el origen, las animaciones de sprites y la de exportar a xml... pero ya va cogiendo forma...

Ahora me estoy planteando como organizar un formulario para editar estas animaciones, en el antiguo editor mostraba en la ventana de xna todos los frames e iba seleccionando con el raton encima de cada frame, e iba mostrando la animacion resultante a la vez, lo que pasa es que en el nuevo editor quiero hacerlo directamente en el mismo form, sin tirar de la ventana de xna, supongo que me lo organizare parecido, y con un timer y un picturebox podre apañarmelas para que quede decente...

me estoy esforzando mucho dentro de mis posibilidades en que quede bonito y sea manejable... a ver si paso pronto esto y todo el código de transformaciones y de sprites , y puedo ir montando algo decente.
#22
XNA / Content Manager
09 de Junio de 2011, 12:39:47 PM
Buenas, estoy haciendo un content manager para un editor que me abstraiga de la gestion del contenido:

Esta ha sido mi primera aproximacion:

public static class CustomContentManager
    {
        static ContentManager _content;
        static GraphicsDevice _device;

        public static void Initialize( ContentManager Content )
        {
            _content = Content;
        }

        public static void Initialize( GraphicsDevice Device )
        {
            _device = Device;
        }
     
        public static T Load<T>( string assetname )
        {
            if ( _content != null )
            {
                return _content.Load<T>( assetname );
            }

            using ( Stream stream = File.OpenRead( assetname ) )
            {
                if ( typeof( T ) == typeof(Texture2D) )
                {
                    return Texture2D.FromStream( _device, stream );
                }

                if ( typeof( T ) == typeof( SoundEffect ) )
                {
                    return SoundEffect.FromStream( stream );
                }
            }
            return default(T);
        }
    }

El problema es que al usar genericos da error al convertir. Ahora mismo ando algo espeso y no caigo en como hacerlo de forma decente.

El tema es que no quiero llamar a los importers ni processors dinamicamente porque la idea es que no se necesite tener visual studio con el framework completo para editar las texturas, niveles,.. etc...  pero quiero que se pueda probar todo ingame...

Voy a echarle un ratillo a san google, pero si alguien tiene una solucion o una vision alternativa me vendria bien...



#23
General / Wii U
08 de Junio de 2011, 07:44:37 PM
Estaba ilusionado con esta consola hasta que he leido esto:

http://www.meristation.com/v3/des_noticia.php?id=cw4def388035767&pic=GEN

Vaya, puff, una oportunidad de oro perdida para el gameplay multijugador local... yo esperaba que cada jugador pudiese tener un mando con datos especificos para el,... vaya cagada...

Espero que Microsoft permita que la xbox tenga como entrada cualquier dispositivo windows 7 a traves de su touchpanel, sea telefono o tableta, eso seria la caña... y por lo que veo todavia esta a tiempo.... y si lo abre a los indies saldrían cosas super creativas...
#24
XNA / Cambios en ratings
19 de Abril de 2011, 08:27:36 AM
Citar
We've heard your feedback and have made some changes to the ratings system on Xbox.com. Starting today, only users with Xbox LIVE Gold subscriptions will be allowed to rate content on the Xbox.com website. By implementing this change, we believe our customers will experience more consistent ratings and a significantly reduced potential for abuse across the entire Xbox catalog. We have also investigated rolling back suspect votes, however, we determined it will not be possible to do this.

In addition, we are investigating users who may have violated their user agreement during this series of events. Violating user agreements may result in actions up to and including banning from Xbox LIVE, removal of currently posted games, and loss of ability to post games in the future.

We appreciate everyone's patience on this matter and are excited about the fantastic games being posted to Xbox 360 through the Xbox LIVE Indie Games program.
Charles Cox | Microsoft


Leido en http://forums.create.msdn.com/forums/p/80881/488924.aspx#488924

No todo son malas noticias, parece que no estan sordos del todo... :)
#25
XNA / Xbox y silverlight?
05 de Abril de 2011, 10:35:46 PM
Yo como siempre me emociono de mas, pero si esto es cierto...

http://www.engadget.com/2011/04/05/silverlight-coming-to-xbox-bringing-wp7-games-along-with-it/

parece ser que abren el api de silverlight a xbox y que con kinect se simularian los touch en la pantalla de la tele...  :)_

¿tambien abriran el tema de conexion a internet a traves de protocolo http?  :)_

#26
XNA / Avatares en PC y nueva experiencia live
22 de Marzo de 2011, 08:50:08 AM
Noticia leida en http://www.meristation.com/v3/des_noticia.php?id=cw4d874063c756e&pic=GEN

Citar
definía esta Windows Gaming Experience como "una nueva plataforma de juego que aspira a llevar el juego en PC en la próxima generación de Windows y juego web hasta 300 millones de consumidores potenciales".

Parece una apuesta decidida por el PC... con avatares y red social, es como si Microsoft quisiera presentar batalla a lo grande contra steam y otros contendientes.
Mis preguntas son:

  • ¿los indies tendremos acceso a todo esto?
  • ¿veremos juegos de xna en un bazar de xbox live para PC?
  • ¿tendremos acceso a los avatares en PC?
  • ¿es este el momento de tener acceso a Kinect para PC y Xbox?
  • ¿tendremos acceso a la red live en PC?
  • ¿highscores, logros?

Espero que sean respuestas afirmativas. :)
#27
XNA / Duda c# y pipeline
19 de Marzo de 2011, 04:35:46 PM
Buenas tengo un fallo que me esta volviendo loco, cuando ejecuto este codigo:

Código (AstroLegacy | Astro.cs) [Seleccionar]
Cell cell2 = Content.Load<Cell>("cell1");

Para cargar esto:

Código (Content | cell1.xml) [Seleccionar]

<?xml version="1.0" encoding="utf-8"?>
<XnaContent>
  <Asset Type="AstroLegacy.Cell">
    <Guid>00000000-0000-0000-0000-000000000000</Guid>
    <Pasos>false true true true</Pasos>
  </Asset>
</XnaContent>




Falla en el siguiente codigo diciendo que no encuentra un ContentTypeReader para AstroLegacy.Entity
input.ReadRawObject<Entity>(cell as Entity);   

Y no entiendo por que, ya que en el EntityWriter estoy devolviendo bien la ruta al EntityReader

¿A alguien se le ocurre que puede estar pasando?

Código (Core | Cell.cs) [Seleccionar]

public class Cell : Entity
    {
        ....
        .... 
        public class CellReader : ContentTypeReader<Cell>
        {
            protected override Cell Read(ContentReader input, Cell existingInstance)
            {
                Cell cell = existingInstance;

                Debug.Assert(cell == null, "Existe ya la celda?");

                cell = new Cell();
             
                input.ReadRawObject<Entity>(cell as Entity);

                cell.Pasos = input.ReadObject<bool[]>();

                return cell;
            }
        }
    }   


Código (Core | Entity.cs) [Seleccionar]

   public abstract class Entity : BaseObject
    {
        //- PROPIEDADES ---------------------------------------------------------------------------------------------------------
        public Environment Environment { get; private set; }
        public Entity Parent { get; private set; }
        ....
        ....
        //- READER --------------------------------------------------------------------------------------------------------------
        //-----------------------------------------------------------------------------------------------------------------------
        public class EntityReader : ContentTypeReader<Entity>
        {
            protected override Entity Read(ContentReader input, Entity existingInstance)
            {
                Entity entity = existingInstance;

                Debug.Assert(entity != null, "No existe ya la entidad?");

                input.ReadRawObject<BaseObject>(entity as BaseObject);

                return entity;
            }
        }


Código (Core | BaseObject.cs) [Seleccionar]

public abstract class BaseObject : IDisposable
    {
        //- PROPIEDADES ---------------------------------------------------------------------------------------------------------
        public Guid Guid { get; set; }
        public string Name { get; set; }
        public bool IsDisposed { get; private set; }
        .....
        .....       
        public class BaseObjectReader : ContentTypeReader<BaseObject>
        {
            protected override BaseObject Read(ContentReader input, BaseObject existingInstance)
            {
                BaseObject BaseObject = existingInstance;

                Debug.Assert(BaseObject != null, "No existe ya el astro object?");
               
                BaseObject.Guid = new Guid(input.ReadString());
                BaseObject.Name = input.ReadString();

                return BaseObject;
            }
        }
    }


Código ( Pipeline | BaseObjectWriter.cs) [Seleccionar]

   [ContentTypeWriter]
    public class BaseObjectWriter : ContentTypeWriter<BaseObject>
    {
        protected override void Write(ContentWriter output, BaseObject value)
        {
            output.Write(value.Guid.ToString());
            output.Write(value.Name);
        }

        public override string GetRuntimeReader(TargetPlatform targetPlatform)
        {
            return typeof(BaseObject.BaseObjectReader).AssemblyQualifiedName;
        }

        public override string GetRuntimeType(TargetPlatform targetPlatform)
        {
            return typeof(BaseObject).AssemblyQualifiedName;
        }       
    }


Código ( Pipeline | EntityWriter.cs) [Seleccionar]

[ContentTypeWriter]
    public class EntityWriter : ContentTypeWriter<Entity>
    {
        protected override void Write(ContentWriter output, Entity value)
        {           
        }

        public override string GetRuntimeReader(TargetPlatform targetPlatform)
        {
            return typeof(Entity.EntityReader).AssemblyQualifiedName;
        }

        public override string GetRuntimeType(TargetPlatform targetPlatform)
        {
            return typeof(Entity).AssemblyQualifiedName;
        }       
    }


Código ( Pipeline | CellWriter.cs) [Seleccionar]

[ContentTypeWriter]
    public class CellWriter : ContentTypeWriter<Cell>
    {       
        protected override void Write(ContentWriter output, Cell value)
        {
            output.Write(value.Guid.ToString());
            output.WriteObject<bool[]>(value.Pasos);
        }

        public override string GetRuntimeReader(TargetPlatform targetPlatform)
        {
            return typeof(Cell.CellReader).AssemblyQualifiedName;
        }

        public override string GetRuntimeType(TargetPlatform targetPlatform)
        {
            return typeof(Cell).AssemblyQualifiedName;
        }       
    }
#28
XNA / Kinect + Wp7
15 de Febrero de 2011, 08:02:33 PM
Lo del kinect es lo de menos, lo importante es la conectividad wp7+xbox360, madre mia, esto si que abre posiblidades de juego... para los juegos casuales esto es la repera...

http://www.meristation.com/v3/des_noticia.php?pic=GEN&id=cw4d59be6dc8623&tipo=art&c=1


¿y si esto es lo que van a abrir a los indie games?  :)_

para empezar se podria jugar a casi cualquier tipo de juego de mesa de forma sencilla, para mucha gente no es lo mismo un gamepad que la pactalla tactil de un movil...
#29
General Audio / 8 bits
21 de Enero de 2011, 01:35:57 PM
Buenas,

vaya por delante que yo de musica ni papa, :-[,

el caso es que mi hermano es el que me va haciendo musiquillas para lo que voy haciendo, pero lo que hace no suena a 8 bits, suena a su teclado, un famton x6 y a su cool edit pro, y para lo ultimo que estoy haciendo quisiera que sonara en plan 8bits,...

el caso es que he estado buscándole algún programa para generar este tipo de música y lo que encuentro o están los link perdidos, o directamente en windows vista no pita, o es muy complicado.

¿Alguien podría darnos  algún consejo, tutorial u orientación al respecto?

Muchas gracias.



Gracias.
#30
XNA / Spermatozoon en peer review
14 de Enero de 2011, 02:29:01 AM
Buenas,

por fin he subido mi primer juego a peer review.   :)

http://catalog.create.msdn.com/en-US/GameDetails.aspx?catalogEntryId=c22ff2ff-301b-4ca1-95df-01ceca2867b2&type=1

si alguien puede echarle un ojo, todas las reviews son bienvenidas :)

saludos.
#31
General Programadores / c# Multithreading y xbox
11 de Enero de 2011, 09:06:00 PM
Buenas, :)

ando liado con la creacion de un segundo hilo para que salve en segundo plano en la xbox.

el tema es que no controlo mucho esto, y encontre un codigo que usa un monitor para parar la ejecucion del hilo hasta que tenga que realizar alguna operacion de salvado, y el problema es que el compact framework no soporta esta clase.

Pongo el codigo:

//Codigo para inicializar el hilo
        void InitializeSavingThread()
        {
            hilo = new Hilo("Save");
            hilo.Pause();
            Thread thread = new Thread(new ThreadStart(hilo.Work));
            thread.Start();
        }


//Clase hilo que gestiona lo necesario
         public class Hilo
        {       
            private bool paused = false;
            private bool end = false;
            private string name = "";

            public Hilo(string name)
            {
                this.name = name;
                this.end = false;
                this.paused = false;
            }

            public void Work()
            {
#if XBOX
                Thread.CurrentThread.SetProcessorAffinity(5);
#endif
                while (!end)
                { 
                 
                    Thread.Sleep(2000);

                    lock (this)
                    {
                        if (this.paused) System.Threading.Monitor.Wait(this);
                    }

                    if (StateStoreHighScores.LiveDirty) StateStoreHighScores.SaveLiveScoresSinThread();
                    if (StateStoreHighScores.LocalDirty) StateStoreHighScores.SaveLocalScoresSinThread();
                    if (StateStoreHighScores.LockDirty) StateStoreHighScores.SaveLockLevelStatus();

                    LocalDirty = LiveDirty = LockDirty = false;
               
                }
            }

            public void Pause()
            {
                lock (this)
                {
                    this.paused = true;
                }
            }

            public void Play()
            {
                lock (this)
                {
                    this.paused = false;
                    Monitor.PulseAll(this);
                }
            }

            public void End()
            {
                lock (this)
                {
                    this.end = true;
                    Monitor.PulseAll(this);
                }
            }
        }
    }


¿La pregunta es como puedo hacer algo equivalente para la xbox?
#32
Compos / Global Game Jam 2011
24 de Diciembre de 2010, 09:14:27 AM
Me ha picado un poco la curiosidad sobre las game jam, es algo que nunca he hecho, y ahora cumplidos los treinta y tantos, en plena decadencia, :P, me estoy planteando el acudir. 

a priori me tira para atrás el no conocer a nadie, supongo que aunque la inscripción es individual, los grupos mas o menos van preconstituidos, por otro lado eso mismo lo puedo tomar como aliciente.

¿alguien ha participado? ¿merece la pena? ¿alguien  piensa participar?
#33
XNA / ¿Nokia + wp7?
20 de Diciembre de 2010, 07:08:06 PM
Leo que hay rumores de que nokia abrace a windows phone 7, ¿sera este el empujón que necesita microsoft?

http://www.xataka.com/moviles/un-nokia-con-windows-phone-7-no-lo-descartes
#34
Programación en red / Voz IP
12 de Diciembre de 2010, 03:37:07 PM
Buenas, esto no va de juegos, pero es que estoy algo perdido y no se donde preguntar  ^_^'

El tema es que tengo un problema, hasta hace unos dias mi oficina compartia el mismo numero telefonico que mi casa, pero el puente que unia casa y oficina ha caido.

Tengo un enlace wireless entre mi casa y la oficina que va bastante bien. Asi que he pensado en comprar un par de telefonos IP, una centralita IP y seguir compartiendo numero a traves de la casa.

Estoy buscando información y ando muy perdido. ¿Alguien ha tocado esto? ¿Alguna recomendacion?

He encontrado asterisk, que es un software open source que por lo visto sirve para hacer que un ordenador se comporte como una centralita IP, yo tengo un NAS QNAP T219P que permite instalar el PKG de asterisk, pero ¿como le hago llegar la telefonia analogica? Deberia tener un modem/conversor de analogico a IP.

Tb he encontrado una centralita bastante economica, (400€), la linksys SPA9000, y parece que es lo que necesito.

Voy a seguir viendo cosillas antes de terminar de marearme...


#35
XNA / Test de stress
23 de Noviembre de 2010, 04:57:38 PM
Bueno, tenia ganas de probar a hacer algo similar a un juego que probé hace mucho tiempo, en el que habían tropecientas navecitas pequeñas hechas de forma vectorial a base de lineas.

Esto no se mueve tan bien como el original, porque en tres dias no da para pulir pero no queda mal tampoco.

Video: http://www.youtube.com/watch?v=X2-7Y2oQ2P0

El caso es que optimizando, optimizando pase de las 15000 naves iniciales en mi super pc de casa,  a las 45000 a 60 fps, y aquí en la oficina en una integrada consigue las 15000.  

He pasado todos los cálculos que he podido al shader, y aun así estoy seguro que se puede optimizar mas, porque sigo pasando todos los vértices en cada frame con demasiada informacion.

He estado viendo funciones del tipo setfrequency, setfrequencyindex, y setfrequencyindexofinstancedata pero todavía no pillo como funcionan... aunque si tengo claro que no valen para la xbox donde parece ser que hay que usar vfetch.

¿Alguien sabe de algún tutorial o articulo al respecto a ser posible en castellano?


Un saludo

#36
XNA / XBConnect
06 de Noviembre de 2010, 11:43:59 PM
Me he quedado un poco traspuesto con esto:

http://www.xbconnect.com/

parece ser que se salta el xbox live y puedes jugar online a juegos sin estar suscrito, montando tus propios servidores...

voy a investigar... a ver si alguien a montado algo relacionado con los indies...
#37
XNA / Grabar informacion en un StorageDevice bloquea
01 de Noviembre de 2010, 09:02:39 PM
Buenas, estoy teniendo problemas al grabar cualquier informacion en un StorageDevice.

Se queda bloqueado menos de un segundo, pero como tengo cosas en movimiento en la pantalla queda fatal.

He probado a lanzar la tarea desde otro thread pero da igual, ¿alguien ha tenido este problema?
#38
Estoy intentando hacer un drag de unos items de un listbox en modo de seleccion multiextended, y no consigo hacerlo.

Cuando hago click sobre un item me deselecciona los demas, ¿sabeis alguna forma de hacerlo?,

he estado buscando pero no encuentro nada, y aunque se me ocurre alguna forma es un poco chapu...

#39
XNA / Nivel21 en creators spotlight
11 de Octubre de 2010, 10:13:00 PM
Citar
Dream.Build.Play Spotlight: Rotor'scope
Posted4/13/2010
Nivel12 Entertainment brings Rotor'scope to Xbox LIVE Indie Games!

MIrandome la pagina del spotlight me he encontrado con que le han bajado el nivel a los chicos de Nivel21 y  Rotor´scope.

Ahora son Nivel12,  :D

http://create.msdn.com/en-US/community/spotlight/
#40
              
Buenas,

estoy implementando un sistema de undo para un editor que estoy haciendo.

La idea es usar delegados anonimos y funciona bien :)

El tema es que para que funcione las variables que uso en el delegado anonimo tienen que estar definidas en el ambito de la llamada a la funcion, en este caso el Update() .

En este caso tengo una variable "beginCrono" definida en el ambito de la clase para guardar el valor inicial y cuando registro el Undo y el Redo, es cuando creo las dos variables que usaran los delegados en el ambito de la llamada a la funcion.

            if (controller.IsDragBeginning)
               {
                   beginCrono = selected.Crono;                    
               }
               else if (controller.IsDragging)
               {
                   OnMouseCursorMove(mousePos);
               }
               else if (controller.IsDragEnding)
               {
                   int EndDragCrono = selected.Crono;
                   int BeginDragCrono = beginCrono;
                   HelperUnDo.AddUndoRedo(delegate() { selected.SetCrono(beginCrono); }, delegate() { selected.SetCrono(EndDragCrono); });
               }
             

mi pregunta es mas por curiosidad que por otra cosa, ::), pero existe alguna forma de pasarle al delegado el valor de "beginCrono" o una copia, sin tener que crear una nueva variable?






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.