¿Qué software se necesita para desarrollar un juego?
El desarrollo de juegos se refiere al uso de lenguajes de programación informática, como el lenguaje de programación C, C++, java, etc., para escribir juegos para ordenadores, teléfonos móviles o consolas de juegos. El lenguaje de desarrollo de juegos actualmente popular es el lenguaje de programación C ++, y las interfaces de desarrollo de juegos actualmente populares son DirectX9.0, OpenGL, SDL (SimpleDirectMediaLayer), etc. Los juegos jugados en teléfonos móviles ahora se dividen en dos plataformas diferentes: Android e IOS, usando eclipse/MyEclipse y xcode respectivamente. Algunos motores de programación multiplataforma también son populares ahora, como cocos2d-x, unity3D, etc.
A continuación, veamos los cursos de desarrollo de juegos. Además del conocimiento teórico, los cursos de desarrollo de juegos también incluyen la operación de software.
Conceptos básicos de programación C++: sienta las bases para la programación aprendiendo el lenguaje C++. Utilice la herramienta de compilación VS.net2005 para crear código de manera eficiente.
Algoritmos y estructuras de datos: al aprender los conceptos básicos de algoritmos y estructuras de datos, comprenderá las estructuras de datos de uso común y las definiciones de datos abstractos relacionadas, y comprenderá las ideas y métodos básicos de resolución informática.
Comenzando con los programas Win32: A través del aprendizaje de API y MFC, se familiarizará con los métodos básicos de programación en el entorno Windows. Dibuja gráficos 2D usando DirectX.
Matemáticas de juegos y aplicaciones inteligentes: sistemas de coordenadas, vectores, matrices, colisiones geométricas, simulaciones físicas, inteligencia artificial y algoritmos de búsqueda de caminos en juegos.
Tecnología y aplicación de juegos 2D: Introducción a la tecnología de juegos 2D, sistema de mapas de juego, sistema GUI, diseño de sistema de combate, sistema de misión excelente motor de sonido BASS, motor Cocos2D-X, motor de física Box2D.
El software más utilizado para el desarrollo de juegos incluye C++, DirectX, Box2D, Cocos2d-x y Unity. No puedo decir cuál es el mejor, porque es un software que se utiliza en el proceso de desarrollo de juegos. , y debes dominar todos ellos.
C++ es un lenguaje de programación general desarrollado sobre la base del lenguaje C y es ampliamente utilizado.
DirectX (DirecteXtension, DX para abreviar) es una interfaz de programación multimedia creada por Microsoft.
Box2D es un motor C++ para simular objetos rígidos 2D. La licencia zlib es una licencia de software libre, pero no es copyleft.
Cocos2d-x es un marco de juego 2D móvil de código abierto, lanzado bajo la licencia MIT. Esta es una versión del proyecto C++Cocos2d-iPhone.
Unity es una herramienta integral de desarrollo de juegos multiplataforma desarrollada por Unity Technologies que permite a los jugadores crear fácilmente contenido interactivo como videojuegos 3D, visualización arquitectónica, animación 3D en tiempo real, etc. Motor de juego profesional integrado
En primer lugar, es mejor si tienes una base de programación.
La plataforma para el desarrollo de juegos móviles es JME y generalmente no se utiliza C++. Por supuesto, aquellos que han aprendido C++ son mejores.
Es posible que estés estudiando JEE, por lo que debes aprender JME con atención, centrándote en MIDlet, CANVAS y RecordStore. Además, debe comprender las características de MIDP 1.0 y 2.0. Si está haciendo algo relacionado con la red, también debe aprender a programar la red MIDP. Dominarlos es básicamente una cuestión de rutina. No hay mucho que aprender. Para una persona que sabe C++/JEE, debería poder terminarlo en aproximadamente 1 mes.
Al igual que otros idiomas, la clave para JME es practicar más. Intentar desarrollar algunos juegos pequeños usted mismo es un método de buena práctica que puede identificar sus deficiencias en el aprendizaje. Si es posible, el juego debe ejecutarse en una máquina real, porque existe una diferencia entre ejecutarlo en un emulador y ejecutarlo en una máquina real.
Si estás desarrollando juegos móviles de forma independiente, también necesitas dominar algunos programas básicos, como PhotoShop, Mappy y el procesamiento simple de efectos de sonido.
Además, si tiene necesidades, puede aprender JTWI, especialmente la tecnología Mobile3DGraphics (M3G), que es la tendencia de desarrollo futuro (dado que soy muy débil en esta área, no puedo engañarlo, así que No diré más).
En resumen, solo necesitas aprender JME y practicar más, eso es suficiente. PD: En términos generales, a los ingenieros de JME se les paga mejor que a JSE y JEE. Además, aquellos que trabajan en la industria del juego no serán regañados por jugar en el trabajo. Si un día estás aburrido y charlas demasiado arrogantemente con tus compañeros y el jefe te ve, su primera frase debería ser: "Juega más cuando tengas tiempo libre, ¡por qué no charlas!"
Producción de juegos móviles
Se revela por completo la producción de juegos móviles 3dmotoracer más importante del mundo
Imágenes y texto_Wu Gang Director ejecutivo de Beijing Digital Red Software Application Technology Co., Ltd.
Lin Zhiqiang Jefe Diseñador de Arte 3D de Digital Red Nightmareii
Wang Ke Digital Red Motoracer Diseñador Jefe de Arte 3D de 3D
3D Motoracer es un juego 3D desarrollado por Digital Red Company para dispositivos Nokia 60 y Sonyerics SON P800 (uiq). En los pocos meses transcurridos desde que se lanzó el juego, se ha convertido en una de las tres aplicaciones de juegos nokias60 y p800 más vendidas en el mundo. Este artículo es una introducción general al proceso de desarrollo de 3dmotoracer.
i.Preparación del motor del juego
Antes de crear un juego, debe haber un conjunto de motores de juego que hayan sido probados durante mucho tiempo y sean adecuados.
Digital pasó dos años resumiendo y desarrollando un conjunto de motores de juegos basados en dispositivos móviles: DragonBone Game Engine para teléfonos móviles (Dragon Bone). No es compatible con la mayoría de los dispositivos móviles de gama alta actuales. solo permite a los desarrolladores de programas. Ahorra mucho tiempo en proyectos de juegos y permite a los artistas ver los efectos de su diseño de manera más intuitiva. Su mayor valor es que permite a los desarrolladores compilar un conjunto de código y ejecutarlo en diferentes plataformas de dispositivos sin cambiar el programa (el cambio no supera el 20%). Actualmente, Digital Red y otras empresas lo han utilizado para desarrollar más de 30 juegos.
El motor proporciona un conjunto muy completo de 9 módulos y 3 módulos de mejora, que pueden satisfacer completamente las necesidades de diversos desarrollos de juegos. El motor del juego se puede integrar directamente en el programa del desarrollador y no se requieren programas de soporte adicionales para permitir que el juego desarrollado se ejecute de forma independiente. El motor del juego es simple y fácil de usar. Después de la compilación, es muy pequeño y ocupa muy poca memoria, lo que puede ahorrar espacio en la memoria de los jugadores y costos de descarga inalámbrica. El motor básico contiene 9 módulos y la interfaz de funciones del motor proporciona un modo de uso similar a Windows:
1. Módulo de operación de archivos: proporciona fopen, fclose y otras funciones similares al estándar C.
2. Módulo de gestión de memoria
3. Módulo de gráficos 2D
4. Módulo de operación de SMS: envío de SMS y la recepción puede ser interceptada y procesada dentro del programa.
6. Módulo de cifrado: proporciona la función imei para identificar el dispositivo utilizado con fines de cifrado de software.
7. Módulo de sonido
8. Módulo de empaquetado y compresión de recursos: esto puede reducir el tamaño del paquete de software lanzado final y ocupar el menor espacio de memoria del usuario posible.
9. Funciones de uso común: funciones como operaciones de cadenas.
10. Ejemplo: Proporcionar un conjunto completo de programas fuente para el juego magicline.
Composición del módulo de mejora del motor
La parte de mejora incluye tres módulos:
1 Módulo de mejora 3D en tiempo real
2. Módulo de mejora
3. Módulo de mejora de archivos gráficos
ii.Trabajo preliminar para el desarrollo formal
a. A los ojos de muchas personas, los juegos móviles siguen siendo algo muy nuevo y de moda, por lo que cuando se habla de juegos móviles, inevitablemente surge una sensación de misterio. De hecho, todo el proceso de producción de juegos móviles es muy sencillo. Desde cierta perspectiva, es un retorno a la tradición y una fusión de tecnologías antiguas y nuevas. Las herramientas de desarrollo más utilizadas son vc++, jbuilder y codewarrior. Las herramientas de diseño no son muy diferentes del software de producción de juegos de PC normal.
Algunos diseñadores prefieren utilizar la herramienta de diseño 2D "incondicional" DP, mientras que otros están dispuestos a utilizar 3dmax y Maya para modelar y luego realizar modificaciones 2D. Por supuesto, todos estos métodos deben determinarse de acuerdo con la configuración final del juego. Cuando creamos juegos Java, generalmente usamos dibujos bidimensionales a nivel de píxel para completar la imagen, es decir, píxel por píxel. Pero al crear juegos para PDA y otros dispositivos similares, se utiliza 3dmax o Maya para construir el modelo y luego se recorta después del renderizado. Durante el proceso de diseño, como la mayoría de las empresas de juegos, también utilizamos herramientas como Maya, 3dmax, Photoshop y Painter.
b. Determinar los parámetros del juego y los dispositivos de destino.
Esto requiere que los programadores proporcionen límites de tamaño de imagen precisos, es decir, cuánto espacio pueden ocupar todas las imágenes para los artistas. Dado que la producción de juegos móviles está muy limitada por la cantidad de datos, a menudo nos cuesta reducir el tamaño del espacio de 1k al diseñar juegos. Además, debes comprender con precisión la cantidad de colores, la resolución y la frecuencia de actualización de pantalla completa permitidas por el teléfono. De hecho, esto también es una prueba del motor del juego.
Tomando motoracer3d como ejemplo, lo imaginamos ejecutándose en plataformas nokia9210, nokia7650/3650, sonyericssonp800 y pocketpc. En Digital Red, dado que tenemos nuestro propio motor de desarrollo de juegos Dragon Bone para teléfonos móviles, el motor de juego es multiplataforma, por lo que ahorramos mucho tiempo en este paso. Usamos nokia7650/3650 como modelo de depuración inicial porque entre estos dispositivos, nokia7650/3650 es relativamente lento y el tamaño de la pantalla es más pequeño que otros dispositivos, por lo que es el dispositivo base más adecuado.
Como se muestra en la siguiente tabla, hemos diseñado los parámetros técnicos básicos de motoracer3d.
Los parámetros técnicos cumplen con los objetivos y requisitos
Velocidad de actualización de la imagen>18/fps
Tamaño de finalización de la instalación del archivo<1000k
El archivo no está instalado Tamaño<400k
Uso máximo de memoria<700k
El juego ocupa memoria durante el uso<700k
Compatibilidad con juegos y sistemas operativos nokia9210, nokia7650/ 3650, sonyericssonp800 , pocketpc
La lista de efectos gráficos del juego no tiene alfa
Archivos gráficos
Archivos de sonido.wav
Personalización de datos
Estructura de directorios/lista de archivos modificados
Se desconoce la biblioteca de enlaces dinámicos utilizada
La siguiente es una lista preliminar estimada de imágenes básicas:
Arena fuera de la pista Elemento de hierba
Una señal que indica la dirección en el borde de la pista. (izquierda y derecha)
Elementos del terreno de la pista
Imagen del cielo de fondo.
La línea de salida.
La imagen del coche al elegir (4 imágenes)
La imagen trasera de pie antes del inicio del juego (4 imágenes).
La vista trasera del coche y del piloto durante la competición (4 sets, 9 fotografías en cada set, 9 ángulos, comenzando desde la posición vertical, una fotografía cada 15 grados.)
Imagen después del accidente (3 cuadros)
La pantalla de clasificación después de la competencia.
Diagrama del velocímetro.
Números (ancho igual de 0 a 9, 4 conjuntos respectivamente, números de velocidad, números de marcha, números de clasificación)
Fondo del menú
topten
Botón
Antecedentes de la clasificación del recorrido
c. Preparar la planificación del juego
Muchos desarrolladores creen que la planificación del juego móvil no es importante, esta opinión está muy equivocada. La carga de trabajo del desarrollo artístico y de programas para juegos móviles es muy limitada y su expresividad también está muy restringida. Por lo tanto, la integridad de un juego móvil depende completamente de la planificación del juego.
En este proceso, la planificación de juegos móviles es básicamente la misma que la planificación de juegos tradicional. Pero los planificadores de juegos deben hacer diseños precisos para las operaciones del juego. Después de todo, los teclados de las PC tienen básicamente 101 teclas.
Además, de acuerdo con las restricciones de espacio artístico dadas en el primer paso anterior, el artista debe discutir con el planificador para calcular estrictamente el espacio ocupado por cada imagen, y no se puede perder ni siquiera un pequeño icono.
Tomemos motoracer3d como ejemplo. Nuestros planificadores de juegos han creado muchas fórmulas relacionadas con la mecánica física para que sus artistas sean más realistas al diseñar imágenes.
Tal y como se muestra en la siguiente tabla: reflejamos las características de velocidad de cada coche de carreras.
gear1gear2gear3gear4gear5color de agarre
Coche 1 Velocidad máxima (mph) 971071351561760.45 verde y amarillo
Aceleración (mph/segundo) 211816128
Coche 2 Velocidad máxima (mph) 901021271481680.25 Morado y amarillo
Aceleración (mph/segundo) 2320181410
Coche 3 Velocidad máxima (mph) 1021121401601800.65 Azul y amarillo
Aceleración ( mph/segundo) 201613107
Velocidad máxima del auto 4 (mph) 941051331521720.35 amarillo y azul
Aceleración (mph/segundo) 221917139
Velocidad máxima del auto 5 (mph) ) 1041151451661820.75 Negro y rojo
Aceleración (mph/segundo) 191714107
Coche 6 Velocidad máxima (mph) 921051331521780.5 Rojo y amarillo
Aceleración (mph/segundo) 211815118
d. Trabajo de desarrollo de arte y programa
Diseño de texturas de Motoracer
Construcción de modelo y corredor de motocicleta
Ajustar acciones en tiempo de ejecución
Lo más importante es que si quieres crear un juego como Motoracer, primero debes ser un experto en motocicletas. Wang Ke, nuestro diseñador artístico jefe de Motoracer3d, es un loco entusiasta de las motocicletas que puede ahorrar dinero para comprarlas. una motocicleta y comer bollos al vapor durante un año. Ha
e.demo test
El trabajo de prueba toma motoracer3d como ejemplo. Nuestro ciclo de desarrollo es de 6 meses. Debido al motor, el ciclo de desarrollo del código principal se reduce a 3 meses. , Para garantizar que este producto cumpla con los estándares internacionales, básicamente pasamos los tres meses restantes buscando problemas y criticando. Así fue como finalmente se lanzó Motoracer3D, que se encuentra entre los tres juegos móviles con mayores ventas en el mundo.
Por supuesto, no hay muchos productos afortunados en Digital Red como motoracer3d. El 30% de los productos de Digital Red no se lanzaron durante el período de demostración debido a problemas como la integridad y la sensación operativa. Después de todo, si quieres construir una marca excelente, tienes que hacer muchos sacrificios.
iii.Guía de producción de juegos para dispositivos móviles
Debido a las muchas limitaciones y diferencias de rendimiento del equipo de hardware de los teléfonos móviles, no podemos crear con la mayor libertad posible durante el desarrollo y la producción de juegos. considerar exhaustivamente el equilibrio de múltiples factores. A continuación se enumeran algunos parámetros de rendimiento clave que afectan directamente el rendimiento del juego.
Resolución
Los tamaños de pantalla de los teléfonos móviles varían, desde 80*30 hasta 320*240, al igual que cga, ega e incluso vga en el proceso de desarrollo de PC. La altura es directa. Afecta el tamaño y la expresividad de la forma. Creo que todo diseñador lo sabe. Además, debido a la diversidad de modelos de teléfonos móviles y sistemas operativos, un juego no puede ejecutarse en diferentes teléfonos móviles sin modificaciones. Para los diseñadores de arte, es necesario considerar la cuestión de la adaptación de la pantalla al comienzo del diseño. Por ejemplo, con una resolución de 128 × 128 y una resolución de 200 × 200, ¿cómo podemos lograr el mismo efecto sin volver a cambiar la imagen?
Número de colores
El número de colores disponibles actualmente en los teléfonos móviles también es un cuello de botella importante que limita el rendimiento de los artistas. Desde los teléfonos móviles con pantalla en blanco y negro de los últimos años hasta los 256 colores, 4096 colores y colores reales de hoy.
El rojo digital ha estado expuesto a muchos teléfonos móviles al desarrollar juegos. Algunos de ellos afirman poder mostrar 4096 colores. Sin embargo, cuando mostramos un gráfico de gradiente de color de 4096 colores, descubrimos que algunos colores eran simplemente indistinguibles. Lo que resulta aún más confuso. Sorprendentemente, algunos teléfonos móviles tienen matices de color importantes. Por lo tanto, los diseñadores deben hacer dibujos basados en teléfonos móviles reales. Digital-red ha aprendido muchas lecciones aquí.
Brillo
Debido a su principio de luminiscencia único, la pantalla LCD no puede alcanzar el brillo de los monitores tradicionales, lo que también resulta en que muchos patrones coloridos no se muestren bajo una luz intensa. El efecto original, que es especialmente evidente cuando el teléfono móvil se muestra al aire libre. Por lo tanto, los diseñadores deben considerar esto al diseñar imágenes de juegos móviles: el contraste de color no se puede establecer demasiado cerca y el diseño de la imagen debe ser simple y claro, y evitar imágenes demasiado pequeñas.
Velocidad de visualización
En muchos de los teléfonos móviles con los que entramos en contacto, debido a problemas de velocidad de cálculo, el número de fotogramas de animación no es fluido y no puede llegar ni a 10 fotogramas/ En segundo lugar, esto es muy difícil para las animaciones de juegos. En términos generales, generalmente usamos el cepillado de cuadros parciales o intentamos evitar la animación de pantalla completa para lograr el efecto deseado. Además, la propia pantalla LCD también tiene problemas de velocidad de visualización. Hemos descubierto que muchos teléfonos móviles tienen imágenes "colas". Esta situación puede causar fácilmente fatiga visual a los jugadores en juegos reales, especialmente en autos con baches o durante la acción. Si el juego dura demasiado, se sentirán mareados. De esta manera, ni siquiera un juego excelente puede retener a los jugadores.
Energía
Dado que los teléfonos móviles tienen pantallas LCD, el consumo de energía de la mayoría de los dispositivos es diferente entre la pantalla de píxeles de alto brillo y la pantalla de píxeles general, como el fondo blanco. Consume más energía de la batería. que un fondo negro. Por lo tanto, para los juegos móviles, es una especie de consideración que los jugadores ahorren la batería del jugador tanto como sea posible.
Algunos conceptos erróneos en el proceso de desarrollo de juegos móviles
Muchos amigos que quieren desarrollar juegos móviles están llenos de fantasías sobre los juegos móviles. Digital-red también los hay. Hay muchas ideas en nuestras mentes esperando a realizarse, pero una vez que realmente desarrollamos el juego, descubrimos que es muy poco realista. Aquí hay algunos malentendidos comunes para compartir con usted:
Transplantar juegos de PC a teléfonos móviles.
Los juegos de PC ya calculan su espacio ocupado en términos de 100 MB, mientras que muchos juegos móviles se calculan en kilobytes. La mayoría de los juegos móviles pueden considerarse buenos si pueden instalar juegos de 60 k.
Los juegos j2me se pueden ejecutar en varios teléfonos móviles sin modificaciones
j2me tiene un estándar midp1.0 en dispositivos móviles, pero varios fabricantes de teléfonos móviles tienen diferentes requisitos al lanzar teléfonos móviles compatibles con j2me. Se ha ampliado e incluso modificado. Si un programa quiere conseguir los mejores resultados, debe estar dirigido a diferentes modelos de teléfonos móviles.
Es mejor usar Java para desarrollar juegos móviles que usar C++
De hecho, es muy conveniente usar Java para desarrollar juegos móviles, pero es difícil de comparar con el efecto. del código C++ en términos de efecto y rendimiento. Por ejemplo, en dispositivos Symbianos/Wince, recomendamos usar C++ para el desarrollo tanto como sea posible.
Las aplicaciones desarrolladas con Java ocupan menos espacio
Al desarrollar aplicaciones pequeñas, los programas Java sí ocupan menos espacio, pero si el proyecto del juego es demasiado grande, la pequeña ventaja de los juegos Java Es difícil reflexionar.
La planificación de juegos móviles no es diferente de la planificación de juegos tradicional
Existen muchos tabúes en la planificación de juegos móviles, lo que requiere que los planificadores comprendan completamente el rendimiento técnico de los teléfonos móviles para poder crear juegos específicos y excelentes juegos.
En arte, puedes dibujar una imagen grande y luego reducirla.
Si una imagen grande se reduce a un tamaño de 12*12, el efecto se puede imaginar.
1.Construct3
Un software de desarrollo de juegos adecuado para principiantes. No es necesario programar usted mismo. Las herramientas de desarrollo de juegos están completamente controladas por la GUI y las variables. son proporcionados por la propia aplicación de la función de diseño.
2. GameMakerStudio2
Al igual que Construct3, GameMakerStudio2 te permite crear juegos completos usando su interfaz de arrastrar y soltar para variables y lógica de juego.
Pero a diferencia de Construct3, GameMaker Studio2 ofrece más funciones a través de su lenguaje GameMaker, que actualmente es uno de los motores de desarrollo de juegos gratuitos más populares y activos.
3.Unity
Unity era originalmente un motor 3D, pero finalmente agregó soporte oficial 2D en 2013. Aunque es totalmente capaz de crear juegos 2D, es posible que encuentres errores o fallas técnicas ocasionales porque el sistema 2D de Unity en realidad está unido a su sistema 3D central. Esto también significa que Unity añade muchos problemas innecesarios a los juegos 2D, lo que puede afectar el rendimiento.
4. Godot Engine
Godot admite la creación de juegos 2D y 3D. Sin embargo, a diferencia de Unity, el soporte de Gordo es mucho mejor. El lado 2D del motor ha sido diseñado desde cero, lo que significa mejor rendimiento, menos errores y un flujo de trabajo más limpio en general.
5. Unreal Engine 4
De todas las herramientas de esta lista, UE4 es la más profesional. Fue creado por los genios detrás de la franquicia Unreal, quienes saben lo que se necesita en un motor de primer nivel y lo que se necesita para ofrecer funciones de próxima generación. Saben exactamente lo que están haciendo.