Cargar un archivo en Amazon S3 con Script Canvas - Guía del usuario de Lumberyard

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Cargar un archivo en Amazon S3 con Script Canvas

Open 3D Engine (O3DE), el sucesor de Lumberyard, ya está disponible en Developer Preview. Descargar O3DEo visite elBlog de AWS Game Techpara obtener más información.

Puede utilizar elCargar AWSBehaviorS3en Script Canvas para cargar un archivo desde su equipo en el bucket de Amazon S3 especificado. Si el objeto que especifica ya existe, se sobrescribe.

Paso 1: Añadir nodos que cargan un archivo en Amazon S3

En el siguiente procedimiento se muestra cómo crear un gráfico de Script Canvas que carga un archivo en Amazon S3. En el ejemplo se utiliza el archivolumberyard_version\dev\Cache\CloudGemSamples\pc\cloudgemsamples\levels\awsbehaviorexamples\testdata\s3example.txtque se incluye con Lumberyard.

Para cargar un archivo en Amazon S3

  1. En Lumberyard Editor, elijaHerramientas de,Script Canvas.

  2. En la Node Palette (Paleta de nodos), expanda Utilities (Utilidades) y arrastre On Graph Start (Al iniciar el gráfico) hasta el lienzo.

  3. A la derecha, en el Variable Manager (Administrador de variables), haga clic en Create Variable (Crear variable).

  4. En el cuadro de búsqueda Variable Type (Tipo de variable), escriba AWSBehaviorS3Upload o desplácese hasta AWSBehaviorS3Upload.

  5. Haga clic en AWSBehaviorS3Upload. En Node Inspector (Inspector de nodos), aparece AWSBehaviorS3Upload Variable. El nombre predeterminado de la variable es Variable 1.

  6. En Node Inspector (Inspector de nodos), expanda AWSBehaviorS3Upload para mostrar los campos de entrada. Escriba los valores de la siguiente tabla en los cuadros correspondientes.KeyNamees el nombre que tendrá el archivo en Amazon S3.

    Campo de entrada Valor Descripción
    BucketName CloudGemAWSScriptBehaviors.s3nodeexamples Nombre del bucket de Amazon S3 para el archivo cargado.
    KeyName uploadtest.txt Nombre del archivo tal como aparecerá en el bucket de Amazon S3.
    LocalFileName levels\awsbehaviorexamples\testdata\s3example.txt

    Ruta (relativa a la carpeta del proyecto) y nombre del archivo que se va a cargar. Se admiten los alias de ruta de archivo como @user@. La ruta se resuelve en @assets@ de forma predeterminada.

    Para obtener más información sobre los alias de ruta de archivo, consulte ID de activos y rutas de acceso a archivos.

    ContentType text/html Tipo de contenido del objeto que se va a cargar. Dado que se va a cargar un archivo de texto, el tipo de contenido es text/html.
  7. Desde el Variable Manager (Administrador de variables), pulse Mayús y arrastre Variable 1 AWSBehaviorS3Upload al lienzo para crear el nodo Get Variable 1 (Obtener variable 1). (También puede arrastrar AWSBehaviorS3Upload al lienzo y, a continuación, seleccionar Get Variable (Obtener variable) en el menú desplegable).

  8. Conecte el pin Out (Salida) del nodo On Graph Start (Al iniciar el gráfico) al pin In (Entrada) del nodo Get Variable 1 (Obtener variable 1).

  9. En Node Palette (Paleta de nodos), expanda AWS, AWSBehaviorS3Upload.

  10. Arrastre el nodo Upload (Cargar) a la derecha del nodo Get Variable 1 (Obtener variable 1) en el lienzo.

  11. Conecte el pin Out (Salida) del nodo Get Variable 1 (Obtener variable 1) al pin In (Entrada) del nodo Upload (Cargar).

  12. Conecte el pin AWSBehaviorS3Upload del nodo Get Variable 1 (Obtener variable 1) al pin AWSBehaviorS3Upload:0 del nodo Upload (Cargar).

Paso 2: Adición de nodos para mostrar el resultado

A continuación, para ver el éxito o el error de la operación, añada nodos AWSBehaviorS3UploadNotificationBus y un nodo Print (Imprimir) al gráfico. El monitor de nodos paraAWSBehaviorS3UploadNotificationBuseventos y muestran el resultado en la ventana de la consola de Lumberyard.

Para mostrar el éxito o el error de la operación de carga en la ventana de la consola

  1. En Node Palette (Paleta de nodos), expanda AWS, AWSBehaviorS3UploadNotificationBus.

  2. Arrastre OnError al lienzo. Coloque el nodo debajo de los tres nodos que ya están conectados.

  3. Arrastre OnSuccess al lienzo y sitúelo debajo del nodo OnError.

  4. En la Node Palette (Paleta de nodos), expanda Utilities (Utilidades), Debug (Depurar) y arrastre Print (Imprimir) a la derecha de los dos nodos AWSBehaviorS3UploadNotificationBus en el lienzo. LaPrint (Imprimir)muestra mensajes en la consola de Lumberyard Editor.

  5. Conecte los pines Out (Salida) de los nodos AWSBehaviorS3UploadNotificationBus OnError y OnSuccess al pin In (Entrada) del nodo Print (Imprimir).

  6. Conecte los pines String (Cadena) de los nodos AWSBehaviorS3UploadNotificationBus OnError y OnSuccess al pin Value (Valor) en el nodo Print (Imprimir). El lienzo debería tener un aspecto similar al de la imagen siguiente:

    
                        Un gráfico de Script Canvas que carga un archivo en Amazon S3
  7. Guarde el lienzo con un nombre como MyS3UploadTest.scriptcanvas. El directorio lumberyard_version\dev\project_name\scriptcanvas es la ubicación predeterminada del archivo.

  8. Salga del editor de Script Canvas.

Paso 3: Probar la carga de un archivo en Amazon S3

Ahora ya puede asociar el lienzo de script a una entidad y probar el script.

Para probar la carga en Amazon S3

  1. En Lumberyard Editor, haga clic con el botón derecho en la ventanilla y elijaCrear entidad.

  2. EnEntity Inspector, haga clic enAdd Component.

  3. UNDERScripts, haga clic enScript Canvaspara agregarScript Canvascomponente de la entidad.

  4. En Script Canvas, haga clic en el botón de examinar (...).

  5. En el navegadorLienzo de Script Canvas, elija el lienzo que ha creado, por ejemplo,mys3uploadtest (Script Canvas)y, a continuación, enDE ACUERDO.

  6. Si la ventana de la consola de Lumberyard no está abierta todavía, pulse`o eligeHerramientas de,Consolapara abrir la ventana de la consola de. Si la ventana de la consola ya está abierta y desea borrarla, pulse Ctrl+Mayús+C.

  7. Para iniciar el nivel, pulse Ctrl+G. La consola informa de que la operación se ha realizado correctamente, como en el siguiente ejemplo.

    general.enter_game_mode Returned: (Found resource management based identity pool %s.) - us-east-1:guid (Found resource management based identity pool %s for authenticated access.) - us-east-1:guid (CloudCanvas) - Anonymous Credentials pulled successfully for identity pool us-east-1:guid. Disable Accelerators (Script Canvas) - File Uploaded general.exit_game_mode

Paso 4: Verificar la carga

Para verificar que el archivo se ha cargado en Amazon S3, puede utilizar laAWS Management Console.

Para verificar que el archivo de prueba se ha cargado en Amazon S3

  1. Abra el archivo lumberyard_version\dev\Cache\CloudGemSamples\pc\user\AWS\user-settings.json en un editor de texto.

  2. En el navegadoruser-settings.json, localice el nombre de Amazon S3 para elCloudGemAWSScriptBehaviors.s3nodeexamplesbucket de. El nombre del bucket de Amazon S3 está en la cadena dePhysicalResourceId, como en el siguiente ejemplo:

    "CloudGemAWSScriptBehaviors.s3nodeexamples": { "PhysicalResourceId": "cgsamples14-221-cgsamples14-221dep-s3nodeexamples-16ud5gt53zjx7", "ResourceType": "AWS::S3::Bucket"
  3. En Lumberyard Editor, elijaAWS,AbiertoAWSConsola,S3.

  4. En la consola de administración de Amazon S3, abra el bucket que ha identificado en el paso 2.

  5. El archivo s3uploadtest.txt aparece en el bucket.