Programación Específica > Programación de Videojuegos

 La Mejor Forma Para Crear Un Juego?

<< < (2/4) > >>

lalo_soft:
No seamos despectivo con C# al tratarlo como un simple codigo interpretado ya que la realidad no es tan asi.

El proceso funciona de esta forma:

Cuando se ejecuta un programa .Net, CLR activa el compilador JIT. Asi este compilador
convierte MSIL en codigo nativo segun la demanda cuando se necesita cada parte del programa.De esta forma, el programa en C# se ejecuta en realidad en codigo nativo,aunque fuera compilado inicialmente en MSIL. Esto quiere decir que el programa  se ejecuta casi tan rapido como si se hubiera compilado para codigo nativo en primer lugar, y hereda las ventajas de la portabilidad de MSIL.

Amilius:
Ni Java menos Csharp son interpretados. En un lenguaje interpretado puedes pedir una cadena de código al usuario en "run time" y llamar a una funcion que ejecute ese código en el acto por que al interpretador le da lo mismo trabajar con el codigo original que con el nuevo que le pasaste.

En Java y Csharp la administracion de memoria no la haces tu y dependiendo de que sigas las recomendaciones para generar codigo optimo puedes generar programas practicamente tan eficientes o incluso mas eficientes que si tu mismo hubieras hecho la administracion de memoria (Ojo, esto en caso que tus conocimientos de como administrar memoria no sean suficientes, o lo que es más común: no tengas el tiempo necesario para crear un codigo óptimo y debido a esto el resultado tenga menor eficiencia.)

De todas formas una aplicacion win32 donde puedas encajar ASM donde quieras tiene acceso más directo a los recursos de la máquina, comparado con una aplicación cuya administracion de memoria NO la haces tu y a parte esta pensada para evitar en lo posible esos accesos directos a recursos por seguridad. Asi que el truco final es utilizar una libreria de funciones que ocupan mas tiempo de cpu en codigo nativo y el grueso de la aplicacion que generalmente ocupa un tiempo de cpu menor en un lenguaje que te sea más cómodo de usar y te permita avanzar rápidamente en tu juego.

La gran ventaja de programar en C++ es tener la ventaja del control total, pero eso tiene sus costos en tiempo de programacion, ademas de tener una gran documentacion para win32, mucho mejor incluso que la de .NET.

Delphi tiene la ventaja de darte tanto comodidad al momento de hacer tu juego gracias a toda una infraestructura de objetos que te simplifican el trabajo. Pero, si lo necesitas puedes programar al estilo C++, dejando de lado la estructura de objetos que te provee el lenguaje y utilizar directamente la API y la GDI de windows de la misma forma que lo harias en C++. Tanto asi que tiene definidos tipos de datos equivalentes a los de C para tener total compatibilidad al momento de utilizar Dlls, objetos COM, o llamadas a la API y GDI de windows.

lalo_soft:

--- Citar ---De todas formas una aplicacion win32 donde puedas encajar ASM donde quieras tiene acceso más directo a los recursos de la máquina
--- Fin de la cita ---

¿En un juego basado en directX que parte seria practica hacerla en ASM?

PENTEX:
Para cuestiones de rendimiento entre lenguajes observar

http://www.tommti-systems.de/go.html?http:...benchmarks.html

por ejemplo.

Camilo.
Grupo PENTEX.

Amilius:

--- Cita de: "lalo_soft" ---
--- Citar ---De todas formas una aplicacion win32 donde puedas encajar ASM donde quieras tiene acceso más directo a los recursos de la máquina
--- Fin de la cita ---

¿En un juego basado en directX que parte seria practica hacerla en ASM?
--- Fin de la cita ---
No todo el codigo tiene que ver con graficos 3d.   Tambien hay que programar el engine lógico del juego, incluso en algunos casos algo de I.A.   Si en esa parte de tu codigo tienes alguna funcion que consume mucho tiempo de cpu, ya sea por que es un proceso pesado o llamado millones de veces entonces tienes un buen candidato para optimizarlo en asm.   Claro, si existe el tiempo y necesidad de hacerlo en un proyecto formal o si tienes tiempo o simplemente se te antojo optimizar alguna cosa en tu proyecto personal. Pero lo primero es conocer bien las estadisticas de consumo de cpu de tu programa, sólo asi estarás seguro que no estás perdiendo tiempo optimizando algo que no influirá ni será notado por el usuario luego de ser optimizado.

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

[*] Página Anterior

Ir a la versión completa