Ir al contenido

publicidad
publicidad

Foto

¿Quieres aprender a hacer un videojuego? Entra aqui.


Este tema ha sido archivado. Esto significa que no puedes responder en este tema.
137 respuestas en este tema

    Underclass Hero

  • EXPULSADO
  • vida restante: 0%
  • Registrado: 14 mar 2009
  • Mensajes: 1.246
#91

Escrito 07 mayo 2010 - 19:17

Bueno entiendo que el método Main deba tener sus argumentos, pero porqué los pone así () si dentro del paréntesis no hay nada?

Otra duda, para poder poner por ejemplo "El número que has escrito es 25", siendo 25 una variable que el usuario debe poner cuando se le pregunte, se podría poner así no?

Console.WriteLine("El número que has escrito es" +y aquí va el nombre de la variable); no?

Si la variable se llamara numero sería así?

Console.WriteLine("El número que has escrito es" +numero);

gracias

Edito:

Me ha surgido otra duda (siento el tener muchas dudas... no sería mejor poner un post para dudas en general y dejar este para dudas del código que Yirazk va poniendo?)

Siempre que escribamos un método que no nos vaya a devolver ningún dato hay que poner void?

Y otra cosa, no entiendo eso de public, private, internal... se supone que es para ocultar el código. Por ejemplo si pones public la clase será accesible desde todas las otras, pero si pones private solo será accesible desde la clase donde está declarado... que función tiene esto? cualquiera que vaya a leer el código fuente de un programa verá todas las clases... y por qué queremos que algo sea accesible o inaccesible desde otros sitios si total cuando compilamos y usamos un programa todo eso no lo vemos?

Muchas gracias

#92

Escrito 08 mayo 2010 - 11:30

Siempre que escribamos un método que no nos vaya a devolver ningún dato hay que poner void?


Sí, aunque los valores también se pueden devolver por referencia. Es muy importante que conozcas el paso de parámetros por valor y por referencia.

Y otra cosa, no entiendo eso de public, private, internal... se supone que es para ocultar el código. Por ejemplo si pones public la clase será accesible desde todas las otras, pero si pones private solo será accesible desde la clase donde está declarado... que función tiene esto? cualquiera que vaya a leer el código fuente de un programa verá todas las clases... y por qué queremos que algo sea accesible o inaccesible desde otros sitios si total cuando compilamos y usamos un programa todo eso no lo vemos?

Muchas gracias


El motivo de separar métodos en public, private, etc no es para restringir su visibilidad de cara a alguien que le caiga el código en sus manos. Obviamente con un editor de textos ves todo. Un método se declara como privado cuando sólo va a ser utilizado por la propia clase, no tiene sentido declarar un método como público si sólo lo va a usar la clase a la que pertenece. Por otra parte un método se declara como público cuando es posible que sea llamado desde otras clases del proyecto.

  • vanche

  • Methuselah

  • vida restante: 100%
  • Registrado: 01 feb 2009
  • Mensajes: 196
#93

Escrito 08 mayo 2010 - 16:20

Bueno aviso que ya tengo el Visual Studio C# y por razon tengo el XNA (lo estoy descargando) pero ya puedo empezar a entrenar con los lenguajes...

Saludos!!

#94

Escrito 08 mayo 2010 - 18:00

Bueno entiendo que el método Main deba tener sus argumentos, pero porqué los pone así () si dentro del paréntesis no hay nada?


El metodo Main siempre tiene argumentos: un vector de string
[code:1]static void Main(string[] args)[/code]

Y para otros metodos, aunque no tengan argumentos, tambien tienes que poner "()", es obligatorio. Lo obliga la gramatica del lenguaje

    Underclass Hero

  • EXPULSADO
  • vida restante: 0%
  • Registrado: 14 mar 2009
  • Mensajes: 1.246
#95

Escrito 08 mayo 2010 - 21:48

Bueno entiendo que el método Main deba tener sus argumentos, pero porqué los pone así () si dentro del paréntesis no hay nada?


El metodo Main siempre tiene argumentos: un vector de string
[code:1]static void Main(string[] args)[/code]

Y para otros metodos, aunque no tengan argumentos, tambien tienes que poner "()", es obligatorio. Lo obliga la gramatica del lenguaje


Entonces eso se hace, por ejemplo, para que ningún método o código de una clase pueda cambiar por error los valores o argumentos de otra?

Y por favor, alguien me podría explicar así un poco por encima lo que es el constructor? es que no me ha quedado muy claro. Según yo se es como un método que hace que se inicialicen las variables y ejecutar las primeras acciones de un objeto cuando este se crea al instanciar la clase. Pero si el compilador hace eso no? el compilador ejecuta el código que tu escribes... para que hace falta el constructor?

Muchas gracias

  • vanche

  • Methuselah

  • vida restante: 100%
  • Registrado: 01 feb 2009
  • Mensajes: 196
#96

Escrito 08 mayo 2010 - 22:37

Bueno amigos estoy en un aprieto...

Yo me descarge 2 visual C# el 2008 y el 2010 por motivos personales...

Pero en el 2008 instale el XNA pero donde aparece la opcion para comenzar a usarlo?

No dice ningun proyecto nunca como para empezar..Q onda?

    Underclass Hero

  • EXPULSADO
  • vida restante: 0%
  • Registrado: 14 mar 2009
  • Mensajes: 1.246
#97

Escrito 08 mayo 2010 - 23:01

Bueno amigos estoy en un aprieto...

Yo me descarge 2 visual C# el 2008 y el 2010 por motivos personales...

Pero en el 2008 instale el XNA pero donde aparece la opcion para comenzar a usarlo?

No dice ningun proyecto nunca como para empezar..Q onda?


Si, mira yo te explico: te vas a Visual C# 2008 y a Archivo/Nuevo Proyecto. Ahí verás que hay una ventanita en el que te aparece el XNA y los proyectos que puedes hacer. Salu2

  • vanche

  • Methuselah

  • vida restante: 100%
  • Registrado: 01 feb 2009
  • Mensajes: 196
#98

Escrito 08 mayo 2010 - 23:08

No me aparece ninguna que aparesca XNA 3.0 o algo por el estilo..

La verdad que me aparecen solo 6 ventanas y BUSCAR MAS PLANTILLAS ONLINE...no mas...

Ayuda!XD

#99

Escrito 09 mayo 2010 - 03:35

Y por favor, alguien me podría explicar así un poco por encima lo que es el constructor? es que no me ha quedado muy claro. Según yo se es como un método que hace que se inicialicen las variables y ejecutar las primeras acciones de un objeto cuando este se crea al instanciar la clase. Pero si el compilador hace eso no? el compilador ejecuta el código que tu escribes... para que hace falta el constructor?


En el constructor puedes inicializar atributos de la clase, como tú dices eso se puede hacer en un método a parte. Pero un constructor lo que hace es instanciar un objeto de la clase y eso no lo puedes hacer con un método explícitamente.

  • kerith

  • Childrer

  • vida restante: 100%
  • Registrado: 18 abr 2010
  • Mensajes: 31
#100

Escrito 09 mayo 2010 - 11:02

Tengo un problema:

estoy intentando currarme un HOLAMUNDO, pero no puedo añadir archivos a la carpeta content de mi juego, cuando hago click derecho y en agregar me salen todas las opciones en gris.
Agradecería mucho la ayuda.

salu2, kerith

#101

Escrito 10 mayo 2010 - 22:29

Me he instalado el Microsoft Visual C# 2008 y el XNA Game Studio 3.1, he abierto el Microsoft Visual C# 2008, ¿cómo creo un proyecto? De programación orientada a objetos se bastante pero de XNA no tengo ni idea, ¿alguien me echa un cable?

Saludos.

  • Ellolo17

  • Zodiark

  • vida restante: 100%
  • Registrado: 16 nov 2006
  • Mensajes: 6.208
#102

Escrito 10 mayo 2010 - 22:55

Por lo que veo el problema no es de XNA, si no de visual Studio -y un poco de xna-. Tu tienes que abrir el acceso directo a xna en vez del de c# o en el de c# en las opciones de proyectos a realizar busca los de xna -esto no recuerdo si esta pero creo que si, por eso lo menciono-.

Una vez en la ventana de proyectos de xna a realziar puedes ver algun juego ya hecho y tocarle o bien crearte uno nuevo de 0 o algo de eso.

Un saludo.

#103

Escrito 11 mayo 2010 - 20:10

Tu tienes que abrir el acceso directo a xna en vez del de c#


No veo tal icono, sólo el de Microsoft Visual C# 2008 Express Edition.

o en el de c# en las opciones de proyectos a realizar busca los de xna -esto no recuerdo si esta pero creo que si, por eso lo menciono-.


Aquí veo un árbol que pone Visual C# con dos nodos: XNA Game Studio 3.0 y XNA Game Studio 3.1 y dentro de ellos tengo Windows Game (3.1), Windows Game Library (3.1), Xbox 360 Game (3.1), Xbox 360 Game Library (3.1), Zune Game (3.1), Zune Game Library (3.1), Content Pipeline Extension Library (3.1) y Platformer Starter Kit (3.1).

Descartando Zune, Xbox 360 y también hacer una librería, supongo que habrá que empezar con el Windows Game (3.1).

Yirazk he seguido tu tutorial Clase FaseEstandar, primera clase del proyecto he compilado sin errores con F5 y me ha salido una ventanita azul, ¿es esto correcto?

¿Las clases Menu, Fondo y PantallaTitulo también las creo mediante la plantilla GameComponent dentro de la carpeta Fases?

Estoy siguiendo estos tutoriales para entender un poco lo de Yirazk que no me entero, a ver si se pasa y me da unas clases.

De momento conozco los métodos Draw() y Update() y como manejar las pulsaciones del teclado para hacer cosas.

#104

Escrito 12 mayo 2010 - 00:52

¿Tu sueño es trabajar creando videojuegos?

Entonces debes saber que para ello primero hay que aprender. De ahi surge la idea de este proyecto, aprender creando un videojuego indi.

Soy Ingeniero Informatico y llevo tres años trabajando en consultoria, pero mi sueño ha sido siempre crear videojuegos. Por ello he estado aprendiendo a usar XNA (creando motores de Tiles, Interfaces de Menu, motores de colisiones, conociendo las Clases propias y tal).

Mi propuesta es simple. Crear un grupo de trabajo para que juntos hagamos un pequeño juego. Si sabes programar a nivel basico y quieres dar el paso a XNA. Si estas estudiando (carrera o modulo) y te apetece entrar en este mundillo este es tu proyecto. Por supuesto, tambien es fundamental gente con conocimientos de diseño grafico.
Yo me ofrezco a enseñar (en la medida de lo posible) a programar en C# para XNA y tambien programacion orientada a objetos (Fundamentos de herencia, polomorfismo y tal) para la parte del Analisis. Tambien puedo resolver dudas o ayudar a que el codigo compile. Lo ideal seria que alguien con conocimientos de diseño grafico hiciese lo mismo coordinando a la gente que tiene menos idea y asesorandoles.
Por supuesto si gente con experiencia quiere entrar al proyecto sera bienvenida. Me encanta aprender y cualquier aporte sera bien recibido.

Las "normas" del proyecto serian:

-1 Es un proyecto para divertirnos, aprender y realizar una primera toma de contacto con el mundo de la programacion de videojuegos. Vamos a realizarlo en nuestro tiempo libre como un hobby, por lo que no habra fecha limite, plazos de entrega fijos ni nada por el estilo.

-2 Aunque es un proyecto de aficionados, en su tiempo libre y como diversion; debemos tomarnoslo en serio. Es decir, coordinemosnos, hagamos diseños, establezcamos estandares.
Colaborar en un proyecto de programacion entre varias personas requiere que pongamos un poco mas de nuestra parte que si lo hacemos solos. Tenemos que evitar pisarnos el codigo, tener siempre la ultima version para trabajar y hacer que todo nuestro codigo funcione junto.
Lo mismo en la parte grafica, sera necesario definir unas medidas y estandares.

-3 Olvidaos por ahora de pensar en vender el producto o cosas asi. Crear un juego es un proceso complejo y dificilmente nuestro primer proyecto pueda ser vendido (aunque he visto algunas cosas en la 360... :? ). Por ahora trabajaremos pensando en PC (para testear) y si algun dia vemos que tenemos algo interesante ya hablaremos de ello.

-4 En un principio el proyecto seria en 2D (me he centrado en aprender primero en 2D porque pense que seria mas sencillo). Si alguien tiene conocimientos de programacion o diseño grafico en 3D y quiere ayudarnos a los demas a aprender podemos hacerlo.

-5 No necesitamos por ahora, dedicar tiempo a escribir guiones, crear personajes o cosas similares. Intentar embarcarse en la creacion de un JRPG de 50 horas con una historia densisima seguramente caera en saco roto. Lo ideal seria algun juego mas arcade (directo) donde veamos "resultados" de una forma mas rapida y nos ayude a aprender de este mundillo. Por lo que si solo quieres crear guiones este no es tu proyecto.

-6 Por otra parte, aunque no vayamos a necesitar a alguien que cree guiones, si que vamos a necesitar a alguien que diseñe el juego, la mecanica. Si tienes alguna buena idea esta es una buena oportunidad para plasmarla. Como ya he dicho, aunque sea un proyecto de aficionados seria un proyecto serio, por lo que estaria bien que la propuesta se enviase en un documento (de Word o OpenOffice) detallando la mecanica (movimientos posibles, botones, comportamiento de enemigos y los principios del juego) asi como una fase de ejemplo detallada.

Bueno, esta es mi propuesta. Los interesados comentad en el hilo (para que nos vayamos conociendo) y enviadme un MP para que intercambiemos correos y tal.
Si quereis aprender no lo dudeis, juntos podemos comenzar.

Agradezco cualquier consejo de personas con experiencia y si he metido la gamba detallando alguna norma (por que sea absurda) comentadmelo.

Un saludo!


Me alegro que te haya dado por esto, me hace recordar los viejos tiempos.


Suerte y un saludo,
Sanguinae

  • vanche

  • Methuselah

  • vida restante: 100%
  • Registrado: 01 feb 2009
  • Mensajes: 196
#105

Escrito 13 mayo 2010 - 17:32

Bueno espero que alguien me conteste...
Estoy creando y familiarizandome con XNA para poder empezar mejor,Empeze con movimiento de sprites,cambio de colores y letras en pantalla, le agrege un sistema de ultra velocidad(echo por mi XD) pero ahora estoy aca..

Luego de tanto que hice quiero ejecutar y el codigo de PROGRAM.CS me da error...
[code:1]
namespace Run_Scape
{
static class Program
{
///
/// The main entry point for the application.
///

static void Main(string[] args)
{
using (Game1 game = new Game1()) -ESTO ME DA ERROR-
{
game.Run();
}
}
}
}
[/code]

Que esta mal?
El codigo MAIN seria el Game1.Cs se llama igual todo igual...Que paso aca XD


Este tema ha sido archivado. Esto significa que no puedes responder en este tema.
publicidad
publicidad