una trabajo proyecto para necesito libro investigacion introduccion informe hacer escribir ensayo ejemplos ejemplo como c++ lua

trabajo - Lua, C++, alguna buena introducción que sea más profunda que lua_open()?



introduccion de un proyecto ejemplo (2)

Busqué mucho en Google ahora, pero todo lo que encuentro son ejemplos de "Hello World" para Lua con C ++.

Situación: juego, gran juego. Tiene una consola en el juego, actualmente codificada en C ++ (orientada a objetos y todo), tiene una gran cantidad de bloques if-else-if-else ... para verificar los comandos que el usuario ingresó en la consola. Cada comando puede cambiar miembros de otras clases del juego (como el comando "velocidad 5" cambia la double speed variable en la class Car llamando a Car::setSpeed(5) ) y también devuelve a la consola el resultado. También hay comandos que hacen más "detrás de escena" que solo cambiar una variable, esto también lo debe hacer Lua y solo el resultado final pasó de nuevo al código C ++ (salida de consola + variables modificadas en la clase correcta).

¿Dónde / cómo / con qué debería empezar a convertir el código que está detrás de las funciones de comando de la consola a Lua? De esta manera: el usuario ingresa "velocidad 5" en la consola, luego Lua llama a Car::setSpeed(5) y luego Lua informa a la consola C ++. En lugar de codificar el código detrás de los comandos, deberían escribirse en Lua, pero el resto del juego debería permanecer en C ++ (como mis clases y sus miembros y el marco de la consola).

¿Algún buen tutorial? ¿Alguna pista por dónde empezar? Algunas experiencias para compartir?

Gracias por adelantado


No puedo darle muchas pistas ya que solo usé lua para jugar con scripting.
Pero descubrí que luabind es mucho más útil en c ++ que en lua simple. Tal vez los tutoriales allí también puedan ayudarte.


Obtenga una copia de Programación en Lua si aún no lo ha hecho. La sección que describe la interoperabilidad con C (y, por lo tanto, C ++) es de casi 100 páginas, y mucho más que un "mundo de hola".

No hay información específica de enlace de C ++ en el libro, pero si su compilador C ++ tiene alguna capacidad RTTI, puede ser útil. Así es como integramos lua con C ++ Builder