Ver la versión completa : ppogramacion en c
buenas. soy nuevo en esto de la progrmacion y me gustaria encontrar algun tutorial para programar un juego sencillo en c. gracias.
mentalthink
18/12/2009, 12:32
Hola abelsan, mira lo que comentas de C, yo te recomiedno que te mires para empezar algo más sencillo, como por ejemplo GLbasic o Bennu, que parece que en el foro hay bastantes personas que lo utiliza.
De todas formas te paso este enlace, es de c++, ya que al igual que tu quiero aprender c/c++ y es una pagina realmente muy interesante, ya que está muy, pero que muy bien explicado el temario.
ENLACE.
http://c.conclase.net/curso/index.php
Un saludo.
mentalthink
Ñuño Martínez
18/12/2009, 12:32
Si eres nuevo en la programación te recomiendo que huyas de C, por que es el peor lenguaje para aprender. Mejor que aprendas a programar en Fenix, que además está pensado específicamente para hacer juegos. Cuando seas experto en Fenix, ya te pasas a C si quieres.
Te digo l omismo que mis apañeros, premero otro lenguaje, si quieres uno un poco mas parecido a C, piensa en pascal TP7, que programa para DOS (que es dónde mas fácil se hacen juegos)
lo básico es hacerse una función como esta:
procedure modeVGA;
begin
ASM
mov ax,13h
int 10h
END;
end;
para poner el modo 320X200X8 y luego dibujar en la pantalla a partir del $A000:0000:
var
VGA: array [0..64000] of byte absolute $A000:0000;
aunque te recomiendo hacerlo bidimensional para acceder más fácil a las coordenadas del pixel
VGA: array [1..200,1..320] of Byte;
Tendrás una paleta por defecto feisima, pero para empezar esta bien
cybernoid
18/12/2009, 13:17
discrepo!!!
aprender C es tan facil como aprender bennu/fenix, otra cosa es que estos dos te den facilidades para hacer juegos y por eso se prefieran.
Yo personalmente, me aclaro mas con C que con Fenix, eso de la programacion procedural es un lio de cojones
Recomendar TP para hacer juegos y luego pasar codigo en ensamblador para inicializar la pantalla es un poco contradictorio ¿no? xD
discrepo!!!
Recomendar TP para hacer juegos y luego pasar codigo en ensamblador para inicializar la pantalla es un poco contradictorio ¿no? xD
Si, pero es la mejor forma de iniciar el "modo 13h", eso se aprende de memorieta y el resto en pascal!
cybernoid
18/12/2009, 14:46
Si, pero es la mejor forma de iniciar el "modo 13h", eso se aprende de memorieta y el resto en pascal!
si, pero el acceso al video es directo, no tienes ninguna funcion que te permita manejar graficos ¿no? (lo digo por la manera de iniciar el modo)
y la lectura del teclado? y los sonidos? (creo que no hay ninguna manera de acceder que no sea asm)
si no tiras de asm estas vendido ¿no?
¡Qué bueno! Recomendar Pascal como lenguaje sencillo y en la primera línea del juego meter código ensamblador. Y aluego, ala, acceso directo a la memoria de vídeo sin vaselina ni nada :D Ahora, eso le va a valer para MS-DOS y para... emmm... ¿La interrupción 10h sigue funcionando en Windows?
Lo siento, XWolf, pero discrepo radicalmente de tu consejo. Qué le vamos a hacer :D
Para empezar a programar un juego recomiendo Fenix/Bennu, Pygame o incluso Flash. Si te empeñas con C (que te costará más que con cualquier otro lenguaje, con la probable excepción de Pascassembler), entonces mira la librería SDL y sus cientos de tutoriales por internet.
cybernoid
18/12/2009, 15:19
Pascassembler
xDDD brutal!!!!!
bueno, no sera mucho peor que las mezclas basic/asm que hacia en el spectrum/msx :)
*****... lo de el modo 13h ahí a muerte me ha parecido retro que te cagas xDDDD
Aprende C y SDL... que no es tan difícil... hasta yo conseguí hacer una especie de pseudo efecto demoscener antes de dejarlo porque no tenía tiempo... y le dediqué nada... además en el sdk que había para gp2x, al abrir un proyecto ya directamente metía el código suficiente para dejartelo mascadito... y encima te va a servir para aprender C o C++... que se puede usar para muchas más cosas que fenix, al final.
Ahí va un enlace de un libro para programar en C y SDL (también se puede comprar en papel). Son 150 páginas, que para un libro de programación está muy bien.
http://www.agserrano.com/publi.html
Yo creo que para aprender el pascal viene bien, porque te fuerza a hacer las cosas bastante estructuradas, ademas tiene una comprobación de tipos mas fuerte que el C.
flozanot
18/12/2009, 21:56
Pasa del modo 13h. Mírate la especificación VBE 3.0 (VESA 3.0, en http://www.vesa.org) y la DPMI 1.0.
Pero lo mejor es C+SDL.
El ensamblador es recomendable sólo si estas dispuesto a aprender hasta los 64bits.
Si no, no merece la pena. :P
Yo creo que todo depende de la formacion que ya tenga y si esta cursando algun tipo de estudios al respecto... incluso cual es el objetivo... hacer juegos/minijuegos/dedicarse a ello profesionalmente/aplicaciones etc...
Si lo que te han dicho los otros foreros te suena a rana... pasate a Bennu y sinó... pasate a Bennu igual! [wei]
MasterVix
18/12/2009, 23:34
A mi tambien me gustaria programar, pero tampoco se por que empezar. T.T
Vamos a ver, centrémonos, por favor. Está muy bien que cada cual defienda su lenguaje favorito, pero a los noobs hay que quitarles la paja de alrededor y ser más directos:
Abelsan, y novatos vosotros. Para aprender a programar lo suyo es empezar con un lenguaje sencillo y muy bien documentado. C o C++ son las mejores opciones, sobre todo porque te coges un entorno preparado, como puede ser dev-c++, y con un sólo botón ya puedes ver los resultados.
Pero ojo, he dicho APRENDER A PROGRAMAR, imprescindible, pero no es necesariamente APRENDER A HACER VIDEOJUEGOS.
En este caso, según mi experiencia hay tres caminos:
-Flash: si hay miles de juegos hechos con esta herramienta será por algo. No se recomienda, supongo que porque no se programa y porque sólo "está de moda".
-C+SDL: no sólo aprendes un lenguaje que vale para todo, sino que además usas una librería gráfica, de sonido y de mandos muy sencilla.
-Fenix/Bennu: apto para tódos los públicos, es muy sencillo y con resultados prácticamente inmediatos. En su contra juega el rendimiento y su "particular" método de programación.
Personalmente, como defensor de Bennu, te lo recomiento. Aprendes porque ves que la cosa funciona y haces un matamarcianos en la primera tarde. Luego, cuando ya dominas bastante el lenguaje, y te manejas con estructuras y punteros, entonces ya te puedes pasar a C+SDL casi del tirón.
Aunque la ruta que seguí yo también es muy recomendable: C básico, Fenix, Bennu, C+SDL.
Los tutoriales de lazyfoo, a pesar de que estan en inglés... son super facilitos y te guian paso a paso de más simple a más complejo... son los que usé yo:
http://lazyfoo.net/SDL_tutorials/index.php
Y además son específicos para creación de videojuegos con C y SDL... que te servirá tal cual para PC, gp2x... casi lo que sea...
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions Inc. All rights reserved.