Kana DS

Learning Japanese writing on the Nintendo DS

26 November, 2006

Documento de diseño simple

Entre prácticas y más prácticas de la universidad, he tenido algo de tiempo para terminar la tarea pendiente de esta semana: El documento de diseño básico. Y digo básico, porque no he querido hacer un documento de diseño completo- que para un juego por simple que sea, puede tomar decenas de páginas-.

Segun vaya avanzando en el desarrollo iré completando algunas partes del documento, y cambiando otras. Podeis descargarlo en formato PDF pulsando en este enlace.

En el documento he listado:
  • Objetivos de la aplicación
  • Breve descripción de la plataforma destino
  • Lista de actividades(mini-juegos), incluyendo la descripción de cada una
  • Diagrama con la navegación entre menús

En fin.. con esto completo el segundo "To-do" de la forja, y paso al siguiente, que es "Creación del framework". O sea, sentarme una tarde y lograr tener un entorno de desarrollo para Nintendo DS funcional. Hacer un hello world, y poco más.

Cuando tenga eso escribiré un nuevo post con los avances, y hablaré sobre las variantes en cartuchos flash para poder ejecutar código casero. Para terminar, un boceto de una prueba de escritura de kanjis:


16 November, 2006

Diseñando los mini-juegos

He estado echando un vistazo a varios juegos de Nintendo DS para poder copiar vilmente inspirarme en el diseño de los mini-juegos de Kana DS. Concretamente:
Los tres juegos se manejan exclusivamente con la stylus, lo que los hace inmediantamente accesibles. Los menús son coloridos en general pero muy claros y sencillos, usando casi siempre la pantalla superior para las explicaciones y dejando la inferior para la interacción.

Tanto Brain Training como English Training usan mecánicas muy similares, y son en las que me voy a basar para la mayoría de los mini-juegos. Ejemplos: escritura de la solución, selección de elementos en un orden determinado, unión de elementos relacionados mediante líneas. Me gustaría incluír algun ejercicio con el micrófono, pero no va a poder ser.

Para cada prueba haré unos bocetos animados como el siguiente:



Creo que la mecánica de la prueba anterior está bastante clara: se han de ir selecionando los kanjis segun el valor numérico que representa. Para aumentar el factor didáctico, me gustaría reproducir una voz con la pronunciación de cada número segun se pulsan. Así el jugador va aprendiendo y memorizando sin casi darse cuenta.. :)

12 November, 2006

Reconociendo formas - Prueba de concepto

Antes de pasar a la acción, es necesario explicar algo más sobre la escritura japonesa. Tanto los caracteres hiragana, katakana como kanji se deben escribir siempre con el mismo número de trazos y en el mismo sentido. ¿Por qué es importante que todo el mundo mantenga el mismo número, orden y sentido de los trazos?
  1. Facilita la lectura de manuscritos, al escribir todos de la misma manera.
  2. Ayuda a distinguir símbolos similares, como por ejemplo los katakana シ(shi) y ツ(tsu).
Ejemplos: Excelente página con animaciones mostrando la escritura de todos los kana

Un punto crítico de Kana DS es el reconocimiento de estos carácteres mediante la pantalla táctil de Nintendo DS. Sería un error por mi parte el empezar a desarrollar la aplicación sin saber si voy a ser capaz de lograr un funcionamiento decente de este módulo, ya de él depende la "gracia" de la aplicación.
Aunque no he hecho una búsqueda exhaustiva de algoritmos de reconocimiento de la escritura, he encontrado uno bastante simple, cuyas limitaciones son precisamente los requisitos de la escritura japonesa antes comentados: mismo número, orden y sentido de los trazos :). El algoritmo en cuestión se encuentra aquí:
Recognition of handwritten gestures, by Oleg Dopertchouk
http://www.gamedev.net/reference/articles/article2039.asp

He desarrollado un pequeño applet como "prueba de concepto", que puede probarse haciendo click en la imágen siguiente:


Instrucciones de uso:
  • Dibujar la forma o caracter que queremos reconocer
  • Pulsar en el botón "set gesture" para registrar la forma actual como plantilla
  • Dibujar la misma forma de nuevo. Si coinciden, veremos la cadena "match? yes" a la derecha del applet.
  • Pulsar en el botón "erase" para borrar la forma o caracter actual.
  • Si no os arranca el applet, instaláos el JRE (Java Runtime Engine)
El algoritmo funciona bastante bien de entrada, aunque requerirá modificaciones ya que le cuesta diferenciar kanas similares en los que sólo varia una parte del trazo final, como es el caso de れ(re), わ(wa) y ね(ne). De todas maneras estoy bastante contento con el funcionamiento inicial, tenía miedo de que este módulo fuese demasiado difícil y pudiese bloquear por completo el proyecto. Así que de momento seguiré puliendo el applet y el algoritmo, no tengo prisa por meterme con la programación de Nintendo DS..

En la próxima entrada publicaré una versión mejorada del applet y subiré el código fuente al repositorio de la forja.

02 November, 2006

Vistazo al sistema de escritura japonesa

Voy a hacer un resumen sobre el sistema de escritura japonés. He usado los contenidos de la wikipedia y de algunas de las fuentes que enlazo al final de esta entrada. Empezamos:

El japonés (日本語 , pronunciado "Nihongo") es un idioma hablado por más de 127 millones de personas, principalmente en Japón. Aunque el japonés no tiene nada que ver con el chino, debido a influencias culturales( comercio, invasiones, etc), los japoneses adoptaron el alfabeto chino para, básicamente, poder escribir. Se conservaron las lecturas chinas de los símbolos, y tambien se añadieron lecturas propias. Éstos símbolos se conocen como "kanjis". Aunque la leyenda cuenta que existen más de 40.000 kanjis(lo de la leyenda me lo acabo de inventar), existen "sólo" unos 2.000 kanjis oficiales, que son los empleados en libros, periódicos y publicaciones escritas en general. He aquí algunos kanjis de ejemplo:



Y otro par de ejemplos:

- Fuego
- Agua

Además de los kanji, se crearon dos silabarios de pictogramas simplificados para representar todos los posibles sonidos del japonés, denominados Hiragana y Katakana. Aunque se podría escribir cualquier cosa sólo en Hiragana, en la práctica se combinan con los kanjis para facilitar la lectura, ya que en el japonés no hay espacios entre palabras.

Esta es la tabla Hiragana básica(faltan variaciones de los símbolos):

El silabario katakana es similar al hiragana, y cuenta con el mismo número de símbolos. Suele emplearse para transcribir palabras extranjeras, o para añadir énfasis o llamar la atención. Tabla katakana básica:


Podeis ver un ejemplo de uso de katakana en la siguiente imagen. Se trata de la portada de Blue Dragon, un juego RPG para Xbox 360. Como "Blue Dragon" es un término extranjero, se usa una transcripción al katakana para que los japoneses sepan cómo pronunciarlo. Esta transcripción tiene sus propias reglas que comentaremos en otra entrada.

Blue Dragon -> ブル-ドラゴン-> bu-ru-u-do-ra-go-n
click en la imágen para mostar la portada completa

Me dejo muchos detalles en este resumen, y seguramente haya alguna pequeña incorreción, pero creo que sirve como intruducción para poder entender el cometido del software a desarrollar. Kana DS se centrará en el aprendizaje de los dos silabarios y de los 80 kanjis básicos respectivos al nivel JLPT-4. En el próximo artículo hablaré sobre la escritura de los kanjis, la importancia del orden de los trazos y de cómo es factible reconocer su escritura mediante un algoritmo simple.

Si quereis saber más, podeis consultar los siguientes enlaces:

El sistema de escritura japonés
en el blog de Kirai
Guía de gramática japonesa
Tutorial de caligrafía japonesa
Artículo sobre el idioma Japonés en la Wikipedia

01 November, 2006

Motivación y presentación

¿Quién soy?¿Por qué desarrollar Kana DS? ¿Por qué querría alguien aprender Japonés? Esta entrada responde a esas preguntas.

Como el primer post no ha salido en el planet, repito de nuevo aquí la descripción del proyecto:
Kana DS, una aplicación/juego para Nintendo DS que busca facilitar el aprendizaje de los silabarios Katakana y Hiragana(y el conjunto de "kanjis" o ideogramas más básicos) de la lengua nipona.

Quién soy
Mi nombre es Julio Gorgé, y soy estudiante de Ingeniería Informática en la Universidad de Alicante. Me encanta el mundo de los videojuegos, e incluso antes de comenzar la carrera, ya me había marcado como objetivo entrar en la industria del desarrollo. A día de hoy, y aunque ya he alcanzado la meta parcialmente, mi prioridad actual es terminar los estudios.

Por qué aprender japonés
Pensando de aquí a dos años máximo, y aunque en España hay bastantes empresas de videojuegos(y muy capaces), me gustaría trabajar en el extranjero y ver mundo. Quiero visitar otros países, conocer su cultura e intentar entenderla. Siendo Japón el país de los videojuegos, es obvio que me encantaría poder pasar allí algunos años... pero desgraciadamente no se puede trabajar por esas tierras sin saber un mínimo de japonés, ya que en general la gente que está en los equipos de desarrollo no sabe hablar inglés -por no mencionar la gente de la calle. Quizá alguien tenga la falsa impresión de que en Japón la gente se maneja con el inglés, pero no es así. ¡No tienen ni idea!

Por qué desarrollar Kana DS
Empecé a estudiar algo de japonés por mi cuenta hace unos meses, y la principal dificultad que cualquiera se encuentra es la lectura y escritura de esos simbolitos tan extraños. Kana DS prentende servir de herramienta para dominar los silabarios básicos Katakana y Hiragana. Si el tiempo me lo permite, me gustaría tambien incluir los 80 "kanjis" o ideogramas más básicos.


En el próximo post hablaré algo más sobre la escritura japonesa y las razones que me llevaron a elegir la Nintendo DS como plataforma destino. Si alguien tiene curiosidad, puede echar un vistazo a mi blog personal o a la página de Lemon Team.