Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





3d+c, ¿cómo Empezar?

Iniciado por Jevi, 19 de Noviembre de 2003, 06:03:45 PM

« anterior - próximo »

Jevi

Hola  colegas,

desde hace un tiempecillo quiero iniciarme en la programación 3D. He estado mirando Engines para programnar en C, porque el C++ no lo domino.  Yo uso Dev-C++ y Allegro, y tengo ligeras nociones de OpenGL.

La verdad; me he frustrado  (nooo) . No encuentro nada con una documentación mínima para empezar. Busqué en http://cg.cs.tu-berlin.de/~ki/engines.html pero dentro de la mega lista de engines no encontré nada.

Me han hablado muy bien de CrystalSpace y OGRE, pero necesito saber C++ ¿verdad?

Alguien puede dar un poco de luz al tunel en el que me encuentro.

Un saludo a todos.
l software es como el sexo, es mejor cuando es gratis. (Linus Torvalds)

DraKKaR

 Hay que diferenciar tu pregunta en 2: ¿que es lo que quieres hacer?
- Programar un juego (o al menos intentarlo XD)
- Programación gráfica 3D

Digo que hay que diferenciarlos porque si lo que quieres es hacer un juego, es algo muy complejo, y deberías ir directamente al grano y no reinventar la rueda utuilizando un engine ya hecho.
Si lo que de verdad te gusta la programación gráfica 3D (como a mí) y quieres aprender y profundizar en ella, pues lo mejor es que te armes de un compilador de C y de OpenGL y aprendas programación gráfica.

Creo que este es realmente el primer paso: definir tus objetivos.

Jevi

Cita de: "DraKKaR"Hay que diferenciar tu pregunta en 2: ¿que es lo que quieres hacer?
- Programar un juego (o al menos intentarlo XD)
- Programación gráfica 3D

Digo que hay que diferenciarlos porque si lo que quieres es hacer un juego, es algo muy complejo, y deberías ir directamente al grano y no reinventar la rueda utuilizando un engine ya hecho.
Pues acertaste con la primera. Mi deseo es hacer un juego en 3D, concretamente un MMORPG, por eso estoy buscando un engine hecho, que funcione y que a ser posible no sea muy complejo  :D

La verdad es que el requisito principal sería que fuera programable en C.

¿qué me recomiendas?
l software es como el sexo, es mejor cuando es gratis. (Linus Torvalds)

DraKKaR

 La verdad es que no estoy muy metido en las características de los motores 3D actuales, pero todos los que conozco se basan en C++. Si lo que quieres es hacer un juego, y es el primero, por favor no hagas un MMORPG (a menos que tengas una buena cantidad de personas currando a tus pies). Ese tipo de juegos es el primero que se nos ocurre a todos (a mí el primero) y el que nunca se termina y se deja por pesadez, un juego así es un palo hacerlo, incluso teniendo un engine ya hecho. Yo estoy ya bastante tiempo haciendo un juego de carreras de naves (Blast!) que es mucho más sencillo que lo que propones. Aunque eso sí, el motor que usa el jeugo también lo he programado yo desde cero.

Zaelsius

 Mi consejo es que empieces por algo for(int i=0;i++;i<1000)cout << "muy"; sencillo.

Algo de este tipo: http://www.alu.ua.es/j/jgf8/software/xvoll...ley/xvolley.htm
Una vez te hayas enfrentado a la tarea de terminar un juego simple, verás qué duro es terminar algo.

Jevi

Cita de: "ZaelSiuS"Mi consejo es que empieces por algo for(int i=0;i++;i<1000)cout << "muy"; sencillo.
Me parece que no me entendeis, o no me explico bien. :huh:

No es que no sepa programar (se muy bien lo que es un for). El problema es que no se cómo empezar en 3D, y lo que quería es alguna recomendación de Engine 3D, pero ya veo que tendré que espavilarme más.

Gracias a todos por vuestros consejos.
l software es como el sexo, es mejor cuando es gratis. (Linus Torvalds)

AgeR

 Hombre, creo que lo que quería decir ZaelSiuS era que empezaras por algo muy muy muy muy MUY sencillo  ;) .
Y lleva mucha razón. Un MMORPG es algo demasiado bestial para empezar. No sólo por el tema de las 3D, sino por la gestión de conexiones, de terreno, quests, usuarios, bugs, etc...
En fin, que vale la pena que te armes de paciencia y pruebes varios motores para ver cuál se adecua más a lo que quieres hacer (olvidándote del mmorpg de momento). No hay un motor mejor que otro. Símplemente depende de lo que quieras conseguir, un motor te vendrá mejor que otro.
Para empezar con algo sencillo con gráficos te recomiendo hacer un Pong en OpenGL. No has de usar nada de C++, solamente C. OpenGL, una vez inicializado, es sumamente fácil empezar a trabajar con él. Otro tema es la complejidad que le quieras dar al juego.

En fin, pero ciñéndose a lo que preguntabas... pues no conozco así de repente de ningún motor en C. De todos modos, yo de ti intentaría aprender un poco de C++, que no es tan difícil, y menos si ya sabes C  (uoh) .

Saludos!

Jevi

 AgeR, creo que tu y ZaelSius teneis razón. No se puede empezar al casa por el tejado. Mejor me pongo con algo más sencillo. Lo que pasa es que la idea de hacer un Pong... ¿esta muy visto, no?  :rolleyes:

Bueno, seguiré vuestro consejo. Gracias a los dos.
l software es como el sexo, es mejor cuando es gratis. (Linus Torvalds)

BeRSeRKeR

 Yo los únicos motores que conozco en C son el de quake1 y quake2 :D

Saludos.
¡Si te buscan en nombre de la ley, huye en nombre de la libertad!!

AgeR

 Sí que está muy visto, pero... ¿y qué? Por algo hay que empezar, y un pong creo que es lo más fácil para empezar en la programación gráfica. Después del pong, pues sigue con un arkanoid, un plataformas... Trata de ir aumentando la dificultad de tus proyectos poco a poco. Cuando te des cuenta, te encontraras preparado para afrontar el desarrollo de un PEQUEÑO mmorpg, pero ya te digo, siempre hay que empezar por las bases.
Además seguro que te aparecen dificultades hasta con el Pong. Acabar un juego no es hacer una pantalla o dos y poder jugarlas. Es hacer un menú de opciones, una presentación, un final, diferentes niveles, diferentes tipos de juego, sonidos y música, una buena interfaz... Y acoplar todo esto ya no es tan trivial, te lo digo por experiencia. Solo he acabado 2 juegos desde que empecé con esto (sin contar los que hacía en basic XD).
Además, de lo que se trata al principio es de aprender y divertirse. Lo dice quien ha programado un pong y se ha viciado a él con sus amigos (menudos piques! XD). Como también te interesa el networking... pues haz un pong multiplayer en red y habrás aprendido otra cosa  (uoh) .
Lo que aprendas ahora te servirá de base para proyectos más ambiciosos.

De la forma que escribo parece que sea el puto amo, me molo XDDDDD.
Venga, no me enrollo más, que me emociono XD. Espero ver muchos posts tuyos solicitando ayuda por aquí. Para cualquier duda, aquí estamos! (toma apología stratil!)  (ole) .

Saludos!

seryu

 mas visto esta un mmorpg. El problema javi esqe los foros estan llenos de novatos qe preguntan x un engine para hacerse un mmorpg, cuando es una empresa titanica qe a los propios experimentados les cuesta sudor y lagrimas sacar adelante. X eso no te extrañe obtener respuestas algo ariscas. Simplemente la gente se qema de ver siempre la misma historia.

Te recomiendo qe aprendas c++ en condiciones, y luego vuelvas a las 3d. Sin saber desenvolverte en POO no vas a lograr nada a dia de hoy.

y x supuesto, recuerda qe c++ simplemente es c orientado a objetos, puedes seguir haciendo todo lo qe hacias antes. De echo mucho del codigo qe veo x ahi es mas una mezcla qe c++ puro y duro.

pd: te recomiendo qe tb eches un ojo a las STL.

pd2: aun hoy dia hay engines 3d escritos en C.

Jevi

Cita de: "seryu"pd: te recomiendo qe tb eches un ojo a las STL.
Esto.... he mirado STL, pero... ¿Para qué sirve?  :blink:  
l software es como el sexo, es mejor cuando es gratis. (Linus Torvalds)

deadLock++

 STL (Standar Template Library) es una librería que trae consigo estructura de datos (listas, vectores, pilas, colas, etc) y algunos algoritmos (de ordenamiento, búsqueda, etc).

Es muy práctica, algunos programadores reusan utilizarla porque prefieren codificar sus propios templates de listas.


DraKKaR

 He leido gente que dice que la STL es poco eficiente en cuando a velocidad de ejecución, ¿hay algo de cierto en esto?

NeLo

 No hay nada de cierto.

Antes de .Net las STL de Microsoft eran poco óptimas. Pero parece que esto ya se ha arreglado. Pero siempre puedes probar STlport o las STL de SGI.

Saludos.
Drowning deep in my sea of loathing






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.