¡Sobre el trabajo futuro de desarrollar juegos en línea o juegos independientes!
El desarrollo de programas en el desarrollo de juegos incluye principalmente los siguientes aspectos:
1. Motor gráfico
2. Motor de sonido.
3.Física. motor
4. Motor de juego
5. Inteligencia artificial o lógica de juego
6. Interfaz GUI del juego (menú)
7. Herramientas de desarrollo de juegos
8. Desarrollo de motores de red para respaldar las operaciones de la red de área local
9.
A continuación se describe cada parte una por una:
1. El motor gráfico incluye principalmente la gestión y renderizado de escenas (interiores o exteriores) del juego, la gestión de acciones y el dibujo. de personajes, sistema de efectos especiales (partículas), gestión y renderizado de simulación natural (como simulación de líneas de agua y plantas), iluminación y procesamiento de materiales, gestión de LOD (nivel de detalle de objetos), etc. y el desarrollo de herramientas de conversión de datos gráficos. Estas herramientas se utilizan principalmente para convertir modelos y datos de movimiento producidos por artistas que utilizan software DCC (como 3DS Max, Maya, Soft XSI, Soft Image3D, etc.). ) y utilizar herramientas como Photoshop o Painter para crear mapas en archivos de recursos utilizados en programas de juegos.
2. El motor de sonido incluye principalmente efectos de sonido (SE), voz y música de fondo (BGM). SE se refiere a aquellos que juegan con frecuencia y el tiempo de juego es relativamente corto, pero deben jugar a tiempo y sin demora. La voz se refiere al sonido o la voz humana en el juego, que tiene altos requisitos de calidad del sonido. Básicamente, el sonido se graba y reproduce a una frecuencia de muestreo relativamente alta, pero al igual que SE, es necesario reproducirlo en el tiempo y sin demora. A veces, debido a problemas de capacidad de la memoria, SE puede reducir la frecuencia de muestreo sin afectar el efecto. Pero el sonido tiene una gran influencia en el efecto, y así suele ser. BGM se refiere a una pieza larga de música de fondo que se reproduce en bucle (o no en bucle, solo se reproduce una vez) en el juego. Es precisamente por esta característica de la BGM que la música de fondo de los juegos generales se reproduce leyendo un disco (CD o disco duro). Otros efectos de sonido avanzados, como EAX, sistema de cine digital (DTS5.1), sonido envolvente Dolby digital, etc.
3. El motor de física incluye principalmente la simulación mecánica de objetos en el mundo del juego, la colisión de objetos y escenas y la simulación mecánica del movimiento esquelético de los objetos después de la colisión (los motores de física conocidos incluyen SDK de dinámica de juegos de la compañía Havok y ODE de código abierto (motor Open Dynamics).
4. El motor del juego integra principalmente un motor gráfico, un motor de sonido y un motor de física. Se utiliza principalmente como sistema de juego para un determinado juego. Incluye un editor de niveles de juego. ajustar la escena, la niebla y otros efectos, configurar eventos, colocar accesorios, configurar NPC y un editor de personajes se utilizan principalmente para editar los atributos de los personajes y verificar la exactitud de los datos de acción. En términos generales, las compañías de juegos japonesas colocarán el editor de niveles y el editor de personajes directamente en el juego. Todos los ajustes de parámetros se editan a través del menú de depuración del juego, por lo que generalmente hacen que esta parte del menú de depuración sea muy poderosa y mostrará información importante. en la pantalla en tiempo real. La ventaja de esto es que el efecto del ajuste del editor de niveles es directamente el efecto del juego, pero la reutilización del programa puede no ser muy buena. Por ejemplo, es más difícil usarlo en otro proyecto de juego, a menos que los dos juegos sean del mismo tipo, siempre que se cambien los datos de la escena y los personajes, no hay problema en crear el producto de próxima generación. la función del menú de depuración se agrega según el estilo.
5. Desarrollo de inteligencia artificial y lógica de juegos, los modelos de desarrollo de juegos en Japón, Europa y Estados Unidos también son muy diferentes. Es muy común que las empresas de juegos europeas y estadounidenses utilicen lenguajes de secuencias de comandos, por lo que esta parte del desarrollo del programa se escribe principalmente en lenguajes de secuencias de comandos. El acoplamiento entre los programas de secuencias de comandos y los programas de juegos es muy bajo y existe una edición, compilación y depuración independientes. El entorno es más propicio para la separación de los programas de juegos y el diseño y desarrollo de niveles. Se desarrollan en paralelo al mismo tiempo, por lo que generalmente tienen puestos de programador dedicados al diseño de niveles. Sin embargo, los lenguajes de programación de las empresas de juegos japonesas generalmente están muy acoplados a los juegos.
Generalmente, un sistema de script simple se completa mediante funciones macro de algunos lenguajes y funciones específicas de algunos compiladores. Por lo tanto, generalmente estos programas de secuencias de comandos solo se pueden depurar en el programa del juego y no se pueden desarrollar en un entorno de compilación y edición de secuencias de comandos independiente.
6. La interfaz GUI del juego (menú) se refiere principalmente al diseño de la interfaz de usuario del juego, que es complejo pero simple. La simple es la interfaz GUI 2D y la compleja es la interfaz GUI 3D.
7. Las herramientas de desarrollo de juegos incluyen principalmente editor de niveles, editor de personajes, gestión de paquetes de recursos, herramientas de complemento de software DCC y otros desarrollos.
8. El desarrollo de motores de red que admitan operaciones LAN resuelve principalmente problemas como la contracción de la red LAN, el procesamiento de retrasos y la sincronización de las comunicaciones. Hay dos métodos: comunicación sincrónica y comunicación asincrónica. La comunicación asincrónica se utiliza para juegos que requieren altas velocidades de fotogramas. La comunicación síncrona es menos eficiente que la comunicación asíncrona, pero el modelo de programación de la comunicación síncrona es más simple que la comunicación asíncrona.
9. Apoyar el desarrollo de motores de red para batallas en Internet. En la actualidad, la mayoría de los juegos en línea tienen una arquitectura C/S, gestión de configuración de software del lado del servidor, optimización del programa del servidor, sala de juegos, formación de equipos, procesamiento de lógica de juego, gestión de accesorios y sistema de carga. Además, algunos sistemas de red combinan estructuras C/S y P2P, como XBOX Live.
2. ¿Cuáles son los puestos relacionados con los programadores en las empresas de juegos?
Las posiciones de los programadores en las empresas de juegos japonesas y en las empresas de juegos europeas y americanas son algo diferentes. Los puestos de programador en las empresas de juegos japonesas incluyen principalmente supervisores técnicos (directores), programadores principales y programadores responsables del desarrollo de proyectos de juegos en las empresas de juegos japonesas generalmente no dividen a los programadores según el contenido del trabajo. Además del laboratorio de investigación de sistemas independiente y el departamento de producción de sistemas de sonido (estos dos departamentos son relativamente independientes y a menudo atienden varios proyectos al mismo tiempo), los programadores responsables del desarrollo de cada proyecto de juego pueden desempeñar múltiples funciones en cualquier momento. Por ejemplo, el programador principal puede no solo ser responsable del desarrollo de los gráficos o el motor de sonido de todo el sistema de juego, sino que también puede ser responsable de la producción de menús además de la inteligencia artificial. Esta situación es relativamente rara entre las empresas de juegos europeas y americanas. Tienen una muy fina división del trabajo. Generalmente hay programadores gráficos, programadores de sonido, programadores de inteligencia artificial o de nivel de juegos y programadores de física. Cada grupo puede tener un líder de equipo.
3. ¿Cómo contratan programadores generalmente las empresas de juegos?
En este punto, las empresas japonesas también son algo diferentes de las europeas y americanas. A las empresas japonesas generalmente les gusta contratar graduados destacados de algunas universidades. Por un lado, el coste es menor que el de contratar personas con experiencia. Por otro lado, los recién llegados son una pizarra en blanco y fáciles de cultivar. Por ejemplo, SEGA y KONAMI reclutan empleados de acuerdo con este principio, por lo que si desea ingresar a una empresa de juegos japonesa, debe estudiar bien sus cursos de software. Las empresas europeas y americanas quieren reclutar personas y quieren comenzar el desarrollo de proyectos de inmediato, por lo que generalmente quieren reclutar personas con experiencia laboral, incluso si no son conocedores de la industria y han trabajado en industrias relacionadas durante 2 o 3 años, por lo que es Es muy importante entrar en empresas de juegos europeas y americanas.
4. ¿Cuáles son los requisitos para convertirse en programador de desarrollo de juegos?
En mi opinión, el requisito mínimo para un programador de software de juegos es dominar los conocimientos aprendidos en una licenciatura en informática, que incluye principalmente lenguaje C o lenguaje C, estructura de datos, principios de compilación, algoritmos, etc. Además, el álgebra lineal, el cálculo y la mecánica newtoniana también se utilizan ampliamente en el desarrollo de motores gráficos y de física. Si queremos mejorar, necesitamos comprender los conocimientos relacionados con el hardware, como la arquitectura de la computadora y el lenguaje ensamblador. Esto nos ayudará a aprender una nueva plataforma de hardware, escribir código optimizado y mejorar. Además, también es importante ser persistente y no tener miedo a las dificultades (como trabajar horas extras toda la noche) y tener pasión por el juego. Para aquellos que desean ingresar a la industria del juego pero carecen de conocimientos sobre desarrollo de software, hay disponible capacitación en desarrollo de juegos.
Verbo (abreviatura de verbo) ¿Cuáles son algunas buenas formas de aprender a programar juegos?
Hoy en día, muchas personas se han graduado en informática y han aprendido muchos conocimientos de desarrollo de software, pero una vez que quieren utilizarlos en el desarrollo de proyectos reales, se sienten perdidos. hay demasiadas oportunidades para aplicar lo que han aprendido en la escuela. Menos. Entonces, la mejor manera de aprender a programar juegos es participar en un buen proyecto de juego y desarrollar juegos con personas que tengan una rica experiencia en desarrollo. Es posible que aprenda muchos conocimientos y habilidades que no se pueden aprender en los libros.
Pero a veces no tienes la oportunidad de participar en un buen proyecto o ingresar a una buena compañía de juegos, pero te apasiona el desarrollo de juegos y quieres aprender habilidades de desarrollo de juegos, entonces tienes que participar en una capacitación especial en desarrollo de juegos, porque el juego capacitación de desarrollo Los maestros de la clase son todos maestros con una rica experiencia en desarrollo. Generalmente tienen cinco años de rica experiencia en desarrollo de proyectos. De hecho, estoy compartiendo muchos años de experiencia en desarrollo con él. Además, algunos proyectos y temas especialmente diseñados en los cursos de capacitación en desarrollo de juegos se pueden utilizar directamente en el desarrollo de juegos, de modo que pueda aprender algunas habilidades de desarrollo comunes de estas empresas sin ingresar a una empresa de juegos famosa. Otra forma económica es unirse a algunos proyectos voluntarios en línea de código abierto. Los proyectos varían en calidad de buena a mala. Elegir un buen proyecto es importante. Además, muchos de ellos son insiders. Originalmente tienes que ingresar a su empresa para aprender de su experiencia, pero a través de proyectos de código abierto tendrás la oportunidad de aprender de ellos. Quizás algún día ingrese a una empresa de juegos conocida. Sin embargo, actualmente no hay muchos proyectos de juegos completos de código abierto. Incluso si hay algunos proyectos de código abierto muy buenos en términos de motores gráficos y motores de física, si quieres unirte a ellos, tu base debe ser buena. No todos pueden unirse a algunos. equipos de código abierto.