Red de conocimiento informático - Material del sitio web - Cómo desarrollar un juego de forma independiente

Cómo desarrollar un juego de forma independiente

Para un estudiante de primer año, la inspección visual indica que su base es bastante buena y, si continúa trabajando duro, debería lograr buenos resultados. Los juegos independientes son un tema importante. En primer lugar, debes decidir si quieres hacerlo solo o buscar un pequeño equipo para trabajar juntos. Si lo haces solo, necesitas saber diseño, programación, arte, música, etc. Si trabajas en equipo, puedes centrarte en 1 o 2 de ellos. Hablo principalmente de los aspectos técnicos. Ya has acumulado algo de experiencia en programación, al menos en términos de algoritmos. Este es un buen comienzo para la programación. Al desarrollar juegos, los requisitos para las estructuras de datos y algoritmos básicos siguen siendo muy altos. Luego está el diseño de la estructura del software, que requiere un largo período de acumulación. Es mejor observar cómo se realizan otros proyectos de juegos. Una diferencia entre ese tipo de software de flujo de negocios es que los programas de juegos tienen altos requisitos en tiempo real y habrá algunos patrones de código diferentes para el rendimiento. Lo más básico, el lenguaje de programación, depende de la plataforma de desarrollo que desee. Las diferentes plataformas utilizarán diferentes lenguajes de desarrollo. Esto debe dominarse (no es tan simple como poder escribir algoritmos y ejemplos de juguetes. Es necesario saber cómo hacerlo). utilizar este lenguaje para desarrollar proyectos a gran escala). Permítanme decir algunas palabras sobre la plataforma de desarrollo. Si desea que su propio programa sea utilizado fácilmente por todos en cualquier plataforma, le recomendamos tecnologías relacionadas con la Web, como HTML5/JavaScript (usando el elemento canvas. Si necesita una API 3D subyacente acelerada por GPU, canvas tiene un WebGL). entorno de dibujo (versión de navegador de OpenGL ES 2.0)). Si desea que el desarrollo sea más conveniente, Unity3D es una buena opción. Es un motor de juego y una plataforma de ejecución integrados en uno, y lo mejor de esto es que es compatible con todas las plataformas (PC, móvil, web). Si desarrolla una aplicación nativa en un teléfono móvil, se recomienda aprender cpp y el idioma oficial de esa plataforma, para poder desarrollarla en cpp y luego crear un shell en el idioma oficial. Si se trata de un juego para PC, aún se recomienda cpp. El otro es matemáticas/física, por supuesto, depende del juego que quieras jugar. Las cosas básicas son cosas relacionadas con la geometría, que se pueden usar básicamente en cualquier juego. Si hay incertidumbre (que la mayoría de los juegos deberían requerir), se debe comprender profundamente la distribución de probabilidad básica. Si desea realizar efectos físicos (colisión, elasticidad, deformación, etc.) usted mismo, además de la física relevante (física de cuerpo rígido, física de cuerpo blando (esto suele ser muy problemático), física de fluidos (esto también es muy problemático). ), etc.), también necesita calcular los valores numéricos. En cuanto al método de cálculo, es muy difícil hacer física usted mismo. No se recomienda hacerlo usted mismo. Es mejor utilizar el motor de física existente. . Si desea crear una buena imagen en 3D, también necesitará aprender gráficos por computadora. Habrá mucha óptica, mucha geometría sólida, mucho álgebra lineal y varias formas de integrales. Además, el desarrollo de sistemas de gráficos en tiempo real también requiere capacidades de programación muy altas. Además de los requisitos de los programas ordinarios, también debe poder dominar el desarrollo de código numérico intensivo de alto rendimiento (lo mismo ocurre con el desarrollo relacionado con la física). ). Además, es necesario dominar el uso de al menos una interfaz gráfica acelerada por GPU (OpenGL, Direct3D, etc.) y la escritura del código de sombreado correspondiente. De manera similar, si desea lograr un buen efecto de imagen, se recomienda utilizar el motor de renderizado existente. Es demasiado difícil hacerlo usted mismo. En términos generales, existe una gran diferencia en las habilidades requeridas para los juegos 2D y los juegos 3D. Los requisitos técnicos para los juegos 2D son relativamente simples. Además, los juegos independientes pueden tener menos servidores. Si realmente es necesario, el desarrollo en esta área es relativamente similar al lado del servidor del software de flujo de negocios ordinario, por lo que no es demasiado complicado. Sin embargo, habrá mucha lógica del juego que deberá procesarse en el lado del servidor, y la sincronización en tiempo real de información de múltiples clientes puede convertirse en un problema más difícil. También está la verificación de varias solicitudes de clientes y propósitos anti-trampas. Esto no debería incluirse al principio, así que no hablaré de ello. En general, el desarrollo de juegos es una de las formas más difíciles de desarrollo de programas. Requiere mucha acumulación técnica, y lleva tiempo acumularla. Puedes empezar con juegos muy pequeños (primero juegos casuales como Buscaminas y Snake, y luego juegos de defensa de torres...) y practicar su uso.

Una vez que tengas sólidas habilidades básicas, puedes considerar ingresar al 3D. En términos de arte del juego, 2D y 3D también son muy diferentes. El arte de los juegos 3D es muy complejo e incluye la creación de varios modelos de malla y el dibujo de varias texturas. Si hay personajes, también se necesita animación de personajes, que es otra parte importante. No soy un profesional en el arte, así que no diré más. Espero que alguien que sea profesional pueda agregar algo de información. El 2D es mucho mejor, siempre que sepas dibujar bien, básicamente puedes hacerlo. En términos de música de juegos, se trata principalmente de componer. También es bueno usar el medio, pero parece que muy poca gente lo hace ahora. La interpretación depende de la complejidad de la pieza. Además de la música, también hay efectos de sonido. No lo entiendo, así que no hablaré de ello. Diseño, este es el núcleo de la creación de juegos. A juzgar por tu descripción, deberías haber jugado muchos juegos, por lo que deberías poder comprender los patrones de diseño de varios juegos. Crea tus propias ideas, consulta algunos modelos existentes, planifícalos y haz prototipos. Hay un detalle muy importante en el diseño: las herramientas de desarrollo deben proporcionar un método de iteración lo más eficiente posible. La finalización del juego se pule poco a poco, y la duración de este proceso de pulido depende en gran medida de si las herramientas son fáciles de usar. .

Por favor adopta si estás satisfecho