¿Es posible usar Unreal Engine como una gran biblioteca de C ++, sin usar el editor?

16

Quiero escribir un juego completamente en C ++, pero me gustaría aprovechar las posibilidades que ofrece el Unreal Engine, especialmente en términos de gráficos y física. Sin embargo, no me gusta mucho su editor visual: lo encuentro pesado, lento y poco intuitivo. Finalmente, me obliga a usar Visual Studio en lugar de mi IDE favorito de C ++.

¿Hay alguna manera de usar el motor de Unreal como una gran biblioteca que simplemente podría incluir en mi proyecto de C ++, o me veo obligado a usar el Editor de Unreal?

Pregunta relacionada para Unity: ¿Cómo puedo construir un juego en Unity con un uso mínimo / sin uso del editor visual?

Agujero negro
fuente
Es posible que pueda utilizar los .dll-s de "Epic Games \ 4.7 \ Engine \ Binaries \ Win64" o una ruta similar. Pero no querían que lo usaras así, así que tendrás problemas para descubrir cómo usarlos.
zoran404
1
Supongo que esto podría ser posible utilizando la fuente de Unreal Engine en lugar del editor: unrealengine.com/ue4-on-github
Kostas

Respuestas:

3

Desglosando lo que proporciona el editor y cómo puede evitar su uso:

Compilando

Técnicamente, esto es algo que proporciona Visual Studio pero que sigue siendo importante. Compilar Unreal no es trivial e implica invocar la Herramienta de compilación Unreal para generar algo de código (admite cosas como la reflexión, la interfaz de planos, etc.). Hacer esto sin usar Visual Studio es posible pero en gran medida indocumentado. Creo que el mejor lugar para comenzar sería observar cómo se basa en Linux e imitarlo.

Construyendo el juego (es decir, para distribución)

En teoría, esto se puede hacer a través de la línea de comandos, pero he tenido problemas en los que obtengo errores de compilación extraños si no ejecuto primero el editor. Supongo que esto se puede resolver. Pero de nuevo, será indocumentado y probablemente propenso a errores.

Editor de mapas

El formato del mapa es binario, por lo que crear mapas sería un problema. Creo que Unreal Engine necesita al menos un mapa para ejecutar el juego, por lo que probablemente tengas que crear un mapa vacío como mínimo. Una vez que se creó, puede generar cosas del código.

De hecho, curiosamente, dado que el editor está realmente incluido en la fuente, quizás podría usar los métodos del editor para crear un mapa vacío y guardarlo sin usar el editor. En teoría, incluso podría escribir su propio editor de mapas simple, aunque en ese momento esencialmente está re-implementando Unreal.

Planos

Presumiblemente no usarías ninguna de las funciones. Aunque esto es una pena, ya que es una buena separación de los datos de la función.

Materiales

Hay algunos materiales básicos que podría usar, pero nuevamente esto podría ser un gran dolor. Supongo que podría escribir los sombreadores directamente, pero no estoy seguro de cómo podría usarlos como material.

Estoy seguro de que me he perdido algunos aspectos, pero para resumir: probablemente, pero te encontrarás con muchos problemas .

De manera crucial, se puede acceder a las funciones del editor desde el código, por lo que teóricamente puede implementar las partes del editor que necesita. Sin embargo, todo esto plantea la pregunta, ¿por qué no quieres usar el editor? Probablemente esté mucho mejor simplemente minimizando la cantidad de tiempo que usa el editor.

T. Kiley
fuente