Red de conocimiento informático - Conocimiento del nombre de dominio - ¿Cómo utilizar Java para crear juegos?

¿Cómo utilizar Java para crear juegos?

Está escrito principalmente utilizando J2ME en la rama Java, pero J2ME requiere conocimientos básicos de Java.

La mayoría de las personas ahora aprenden J2ME desde cero. Cuando aprenden J2ME, siempre comienzan con los conceptos básicos de Java, y todos los libros que hablan sobre los conceptos básicos de Java ahora usan J2SE como conceptos básicos. Problemas innecesarios en el aprendizaje Aquí hay una breve explicación de los conocimientos básicos de Java utilizados e innecesarios en J2ME.

Conocimientos básicos de Java utilizados en J2ME:

1. Sintaxis básica de Java: incluidos tipos de datos básicos, palabras clave, operadores, etc.

2. pensamiento orientado: conceptos de clases y objetos, herencia y polimorfismo, etc.

3. Manejo de excepciones

4. Multi-threading

Conocimientos básicos de Java no utilizados en J2ME:

1. uso de comandos javac y java

2. Muchas clases básicas de Java no están disponibles en J2ME, o los métodos de las clases se han simplificado enormemente. Por lo tanto, se recomienda estar familiarizado con las bibliotecas de clases en J2ME.

3. El conocimiento de Applet, AWT y Swing no se puede utilizar en J2ME en absoluto.

En pocas palabras, espero que los amigos que están aprendiendo J2ME puedan evitar algunos desvíos. Espero que todos corrijan y complementen activamente las deficiencias

1

. Temas relacionados Todos

Soy xiaowutonxue. En primer lugar, me gustaría expresar mi sincero agradecimiento a mi supervisor, el profesor Hu Anjiang, por su orientación intelectual, sus invaluables instrucciones y comentarios sobre mi tesis. Es con su valiosa ayuda que finalmente he logrado esta tesis.

Aquí estoy.

1. Para diseñar un juego, primero debes diseñar la interfaz. Primero, eche un vistazo a una interfaz que diseñé. La interfaz se divide en un área de juego a la izquierda y un área de control a la derecha. El área de juego incluye "información de puntuación" y el área de juego Snake. El área de control derecha tiene botones de "Inicio", "Pausa" y "Detener", botones de opción de selección de nivel y clasificaciones de juego.

2. Entonces necesitamos definir los componentes swing, inicializar estos componentes y agregar componentes cuando se inicializa la clase. Porque cuando diseñemos el juego más adelante, necesitamos saber exactamente el tamaño del área de juego, por lo que aquí establecemos un valor de tamaño fijo para el área de juego. Originalmente quería usar el diseño para una mejor administración, pero el autor no sabía lo suficiente sobre el diseño, así que primero establecí un tamaño fijo.

3. Definir nuestro juego. El juego de la Serpiente en realidad consta de muchas cuadrículas pequeñas y la serpiente se mueve dentro de la cuadrícula. La serpiente consta de una serie de cuadrículas, con el cuerpo marcado en azul y la comida en rojo sobre un fondo blanco para lograr un efecto visual. Como se muestra en la primera imagen. Por lo tanto, necesitamos definir una matriz bidimensional, guardar la información de la cuadrícula, guardar la información de posición del cuerpo de la serpiente y la comida, etc. Durante la inicialización, también necesita agregar eventos de teclado para controlar el movimiento hacia arriba, abajo, izquierda y derecha.

4. La información de ubicación de Doudou es bidimensional, así que simplemente definí una clase para guardar la información bidimensional.

5. El siguiente paso es implementar las funciones del juego. Los botones de inicio, pausa y parada agregan eventos para controlar el inicio del juego. Los botones de nivel definen la dificultad del juego, etc.

6. Después de iniciar el juego, definimos un cronómetro. El cuerpo de la serpiente se mueve en la dirección especificada. La dirección está controlada por los eventos del teclado agregados durante la inicialización y los botones arriba, abajo, izquierda y derecha del teclado. El cuerpo de la serpiente es información de posición continua, que se guarda en la cola, por lo que el movimiento del cuerpo de la serpiente es para aumentar la posición de la cabeza del equipo, disminuir la posición de la cola y luego volver a dibujar el área de juego.

A medida que la serpiente se mueve, otras acciones incluyen comer, golpear paredes y golpearse a sí misma. Esta es la lógica principal del juego.

7. Finalmente, cuando finalice el juego, aparecerá un cuadro de diálogo preguntando si desea guardar la puntuación del juego.

Hemos creado información de clasificación y solo mantenemos las 10 puntuaciones principales de los juegos. Primero, se define una categoría de puntuación del juego que implementa la interfaz Comparable, ordenada por puntuación más alta y fecha más temprana.

8. Guarda la información de la puntuación cuando termine el juego para ver si has entrado en la clasificación. Anteriormente, la información de clasificación del juego se cargaba al inicializar el componente de clasificación.

Al guardar y leer información de clasificación, también estamos familiarizados con las operaciones de lectura de archivos, así como con las funciones de algoritmos de recopilación y clasificación.

9. Soy Xiaowu, un estudiante que difunde amor y justicia. Mi respuesta ha terminado.

Ah, me han hecho esta pregunta más de una vez.

Como uno de los lenguajes de código abierto más potentes del mundo, Java puede hacer cualquier cosa, ¿escribir un marco? ¿Escribir un programa? ¿O hacer un juego?

Pero primero debes poder usar un motor: Unity, Unreal, incluso Frost, pero debes poder usar uno.

Luego viene una de las partes más difíciles: el modelo y las texturas. En términos generales, 3DSMAX se usa principalmente para el desarrollo de juegos, pero si no es real, MAYA es más conveniente. Construya el modelo, dibuje la textura, tírela al motor y el primer paso estará completo.

Luego, dibuja la escena; esto requiere que tengas excelentes habilidades de diseño de niveles, y este paso generalmente requiere mucho tiempo para aprender.

Luego puedes desarrollar el programa, usar Java para crear el programa principal y luego, basándose en el programa principal, crear condiciones, sprites, tareas, etc.

Finalmente, utiliza tus excelentes habilidades de diseño de UI para crear una UI, depurarla y empaquetarla, ¡y tu juego estará completo!

Vamos, interrogador, el juego te está esperando.

Java puede crear juegos 3D, juegos 3D geniales, ¡y su rendimiento no es peor que el de esos motores C++! ¡Y la eficiencia del desarrollo es varios órdenes de magnitud mayor!

¿Por qué? Debido a que la representación de gráficos subyacente del juego es esencialmente OpenGL o Direct3D, es poco probable que los motores de juegos modernos te permitan realizar operaciones gráficas manualmente. Las cosas complejas se dejan en manos de los archivos de biblioteca estáticos dll subyacentes y la ejecución de la GPU, y el código de la capa superior. Principalmente haga un buen trabajo en la gestión de escenas y el control lógico. Es por eso que el motor Unity3D puede usar C# y JavaScript como scripts de juego, y nadie ha dicho nunca que el rendimiento del juego del motor Unity3D sea deficiente.

Además, la pantalla del juego, ya sea un juego 3D o 2D, el principal factor que afecta el efecto de la pantalla es el material del juego, no el lenguaje de programación. Los juegos 3D tienen un lenguaje de sombreado único específicamente responsable de los efectos especiales de los gráficos. HDR, PBR, SSAO, desenfoque de movimiento y mapas normales de próxima generación son manejados por Shader. No tiene nada que ver con el lenguaje que usas para escribir la lógica del juego.

En cuanto al rendimiento del propio Java, ningún lenguaje de programación moderno, excepto C/C++, se atreve a presumir de su rendimiento frente a Java. Además, Java tiene muchas bibliotecas de clases de código abierto. ¿Por qué no podemos usar Java para crear juegos?

Es cierto que los motores comerciales como Unity3D, CryEngine y Unreal no son solo motores de juegos. También tienen muchas herramientas de soporte y fábricas de recursos maduras, que los motores de juegos Java no tienen.