viernes, 11 de octubre de 2013

2) Config que te config

¡Muy buenas!

Ya tenemos nuestro flamante UDK en nuestro disco duro, listo para ser trasteado. Si utilizáis la opción de instalación sin assets, os vendrá todo ya configurado para que abráis el IDE y le déis a ejecutar y ya funcione una cámara muy precaria libre, con un mapa por el que puedas moverte.

Si por el contrario, os gustan las cosas bonitas y brillantes y no sois unos urraquillas, entonces tendréis que configurar algunos ficheros para tener un proyecto propio.

Lo primero que debemos hacer es abrir el editor y guardar un mapa para poder trastear con él. En la pestaña File arriba a la izquierda podéis guardar con un nombre el que viene por defecto con el nombre NULLDefaultMap.udk. Más adelante lo utilizaremos para iniciar nuestro proyecto con él. Por favor, aseguraos que tiene un PlayerStart y al menos una fuente de Luz. Mi recomendación es que seleccionéis la escena que tiene luz de atardecer o día de las que te permite al principio antes que una escena vacía si no controláis el uso del Editor. Guardad dicho nivel en la carpeta UDKGame/Content y allí donde prefiráis.

En primer lugar, deberemos pensar un prefijo para nuestro juego. En nuestro caso es NULL y por ende, crearemos en la carpeta Development/Src/ una carpeta llamada NULLGame y dentro de la subcarpeta a su vez Classes [Development/Src/NULLGame/Classes].

Allí crearemos unos ficheros .uc básicos de funcionamiento, copiados tal cual, de los que genera con la instalación vacía. Os los dejo por aquí:

 NULLGameInfo.uc
class NULLGameInfo extends GameInfo;

auto State PendingMatch
{
Begin:
    StartMatch();
}

defaultproperties
{
    HUDType=class'GameFramework.MobileHUD'
    PlayerControllerClass=class'NULLGame.NULLPlayerController'
    DefaultPawnClass=class'NULLGame.NULLPawn'
    bDelayedStart=false
}


NOTA: Nótese que todo aquello que tenga el prefijo NULL en el código, debe cambiarse por el prefijo de nuestro juego. Al igual que ser modificado en el nombre de los ficheros que contienen el código.

NULLPlayerController.uc

class NULLPlayerController extends GamePlayerController
    config(Game); 
NULLPawn.uc

class NULLPawn extends GamePawn
    config(Game); 

Bien, en estos momentos, ya tenemos un "juego" básico, con la cámara libre como tendríamos en una instalación "limpia" de UDK.

 Ahora nos toca en el IDE de Real Script o bien "a pelo" en la carpeta UDKGame/Config modificar algunos ficheros .ini listados a continuación.


DefaultEngine.ini

Aquí veremos que hay diferentes "apartados" colocados entre []. Se refieren a clases que "leen" de ficheros de configuración. Suele estar compuesto del siguiente modo: <CarpetaDentroDeDevelopment>.<ClaseDondeSeVaAModificarLasVariablesQueColoquemosDebajo>

Sabiendo esto, buscamos [Engine.ScriptPackages]
Debajo, modificamos para que sea:

[Engine.ScriptPackages]
+NonNativePackages=NULLGame

Lo que estamos diciendo al motor es que tenemos una carpeta llamada NULLGame en Development/Src con scripts que queremos utilizar. Continuamos con más apartados

[UnrealEd.EditorEngine]
+EditPackages=NULLGame
Queremos que se pueda utilizar en el editor los scripts de nuestro juego.

[Engine.StartupPackages]
+Package=FX_HitEffects
+Package=UDKFonts
+Package=NULLGame
Pues lo mismo, añadimos nuestro juego a la carga de paquetes que se cargan al iniciarse.

Como último retoque, es necesario que indiquemos un mapa para iniciar. Para eso, bastaría con iniciar el editor de UDK y guardar el mapa por defecto en nuestra carpeta NULLContent/Maps con el nombre que queráis. En mi caso, NULLDefaultMap:

[URL]
MapExt=udk
; Any additional map extension to support for map loading.
; Maps without an extension always saved with the above MapExt
AdditionalMapExt=mobile
Map=NULLDefaultMap.udk
LocalMap=NULLDefaultMap.udk
TransitionMap=EnvyEntry.udk
EXEName=NULLGame.exe
DebugEXEName=DEBUG-NULLGame.exe

Como mencioné antes, hay que modificar una pequeña cosilla en DefaultEngineUDK.ini

DefaultEngineUDK.ini

[UnrealEd.EditorEngine]
EditPackagesOutPath=..\..\UDKGame\Script
FRScriptOutputPath=..\..\UDKGame\ScriptFinalRelease
+EditPackages=UDKBase
+EditPackages=UTEditor
+EditPackages=NULLGame
;ModEditPackages=MyMod
AutoSaveDir=..\..\UDKGame\Autosaves
InEditorGameURLOptions=?quickstart=1?numplay=1


Una vez hecho esto, pasamos al fichero DefaultGame.ini. Modificamos el tipo de juego con el que queremos iniciar:

DefaultGame.ini

 [Engine.GameInfo]
DefaultGame=NULLGame.NULLGameInfo
DefaultServerGame=NULLGame.NULLGameInfo
PlayerControllerClassName=NULLGame.NULLPlayerController
GameDifficulty=+1.0
MaxPlayers=32
DefaultGameType=NULLGame.NULLGameInfo
 De este modo, ya estaremos listos para utilizar nuestro "juego" con los assets de UT. Igualmente, si queréis utilizarlos, seguramente tengáis que añadir posteriormente en alguno de los ficheros anteriormente mencionados.

¡Nos vemos en el siguiente paso!



No hay comentarios:

Publicar un comentario