Lumberyard Release Notes – Beta 1.7 (January 2017)
Lumberyard Beta 1.7 adds new features, improvements, and fixes. As we continue to improve Lumberyard, we want to thank everyone in our developer community. Without your participation in the forums, your messages, and your bug reports, Lumberyard 1.7 wouldn't be as strong as it is. Keep sending your feedback to firstname.lastname@example.org. If you haven't spoken up in the forums yet, we would love to have you. You can also keep up with new changes by following our blog and leave comments to let us know what you think.
Here's a sampling of the new features found in Lumberyard 1.7.
- Install Visual Studio 2013 and 2015 with Lumberyard Setup Assistant
- Multiplayer Sample Project and Spawner Component Example
- New Audio and Shape Components
- New Video Playback Gem
- New Animation Features
- ScreenFader Added to Post-processing Effects
- Numerous Cloud Canvas Updates – Cloud Gem Framework, Command Lines, and AWS SDK
- New Amazon GameLift Features
- AZ Test Scanner HTML Report Updated
- Virtual Reality Project Sample Demonstrates Building VR Applications
- Stereoscopic Spherical Video for Virtual Reality
- Haptic Feedback for Motion Controllers
- Lumberyard Integrates with Perforce
Install Visual Studio 2013 and 2015 with Lumberyard Setup Assistant
Lumberyard adds support for Microsoft Visual Studio 2015 Update 3 or later. You can use the Lumberyard Setup Assistant to install Visual Studio 2013, Visual Studio 2015, or both versions. You must select at least one version in order to install the appropriate Visual Studio redistributables.
The Lumberyard Setup Assistant provides third-party SDK content that is shared between Visual Studio 2013 and Visual Studio 2015. Only the files for the versions that you select are installed.
If you use the configuration file for the Lumberyard Setup Assistant, the following updates have been made to support Visual Studio 2015 and enable platform-aware downloads:
Capability definitions now include categories and host systems.
SDK definitions now support tracking categories.
SDK symlink definitions now support tracking categories.
Waf generates a Visual Studio solution that you can manage with the
user_settings.options file (located in the
\dev\_WAF_ directory). The Visual Studio version field in
this file is automatically updated with the version that you install. If you install
both versions, the file uses Visual Studio 2013 as the default value.
For more information, see Using Lumberyard Setup Assistant to Set Up Your Development Environment.
Multiplayer Sample Project and Spawner Component Example
Lumberyard 1.7 includes the following new sample projects and examples:
Multiplayer Sample (Preview)
A Multiplayer Sample preview project demonstrates how to build and structure multiplayer games that use the various features of the GridMate networking library. This sample is supported for PC only and offers the following features:
Dedicated server split (partial) – Because the clients can also host game sessions for LAN play, a true split is never done when the client has no server code. However, the code is compartmentalized and can be easily split.
Client authoritative control
Encryption – You can use FileDataSource with self-signed certificates and certificate pinning to encrypt network traffic.
Custom component net binding
Custom type marshalling
As the sample evolves, support for Amazon GameLift, as well as console and mobile development, will be added.
For more information, see Multiplayer Sample (Preview for 1.7).
Spawner Component Script Sample
The Spawner Component Script sample demonstrates how to set up a spawner component and drive it using a simple Lua script. It facilitates the spawning of a design-time selected or run-time-provided dynamic slice at an entity's location with an optional offset. The sample includes examples of all of the spawner component's events and notifications. For more information, see Samples Project – Spawner Component Script Sample.
New Audio and Shape Components
Lumberyard 1.7 adds two audio components and one shape component:
Audio Listener component – Use this component to add a listener to the component entities. When the Audio Listener component is active, it overrides previous (legacy) audio listeners.
Audio Area Environment component – Use this component to apply an environmental effect to entities that are moving through and around a shape. This affects any sounds that are playing.
Compound Shape component – Use this component to combine multiple shape components to create a compound shape that behaves as one contiguous shape.
For more information, see the Component Reference.
New Video Playback Gem
With the VideoPlayback Gem you can play back video files (for
.webm) up to 4K 60fps. The gem uses libavcodec, provided by
FFmpeg or LibAV, to decode the video and provide frames to the video playback
component. After you enable the VideoPlayback Gem, you can add
the corresponding component to any entity in your level and specify the video to
play. For more information, see the Lumberyard Gems.
New Animation Features
Lumberyard 1.7 introduces the following new features for character and animation:
The Simple Animation and Mannequin components now support animation-driven root motion. This allows for animation-driven characters based on component entities.
Component entities now support populating parametric blend values based on physical motion.
You can set custom blend parameters from C++ or Lua script through the
CharacterAnimationRequestBusEBus. This allows runtime manipulation of per-instance blend parameters from C++ or Lua.
For more information, see Characters and Animation.
ScreenFader Added to Post-processing Effects
ScreenFader, which has a similar effect to the Flow Graph node
Image:ScreenFader, has been added to the post-processing effects
group. You can set the following parameters:
Enable – Determines whether or not the
ScreenFaderis active for the post-processing effect group
FadeInTime – Time, in seconds, for the screen fader to fade in, once enabled
FadeOutTime – Time, in seconds, for the screen fader to fade out, once disabled
ScreenCoordinates – Determines where the screen fader quad is rendered
FadeColor – Sets the quad color by multiplying the color by the specified texture; if no texture is specified, the quad will be a solid color
TextureName – Path of the texture to use for the screen fader
The following example demonstrates how to use this effect in an
<PostEffectGroup priority="2" hold="1"> <Effect name="ScreenFader"> <Param name="Enable" floatValue="1.0"/> <Param name="FadeInTime" floatValue="2.5"/> <Param name="FadeOutTime" floatValue="1.0"/> <Param name="ScreenCoordinates" vec4Value="0.0,0.0,1.0,1.0"/> <Param name="FadeColor" vec4Value="0.2,0.7,0.7,0.5"/> <Param name="TextureName" stringValue="textures/StyleTown/_dev_Blue_Light.tif"/> </Effect> </PostEffectGroup>
Numerous Cloud Canvas Updates – Cloud Gem Framework, Command Lines, and AWS SDK
Lumberyard 1.7 introduces numerous updates for Cloud Canvas:
The following commands were added for setting resource group parameters:
The following command was added for viewing Lambda function log output:
This data is retrieved from an Amazon CloudWatch log file.
Cloud Canvas is now supported on Xbox One and PlayStation 4.
For more information, see Cloud Canvas.
Updated AWS SDK
The AWS SDK has been upgraded to version 1.024, which removes the
.pdb files and libraries of the services that are not
being used. It also reduces the size of the SDK. Native C++ libraries that are
not included in the distribution are still accessible through other Cloud Canvas
services, such as the HTTP client.
The Native C++ libraries for Lumberyard 1.7 include the following services:
Amazon Cognito Identity
If you need access to the
.pdb files or libraries that were removed, please contact Lumberyard support.
Cloud Gem Framework Gem Executes C++ AWS API Calls
The Cloud Gem Framework Gem provides C++ classes and EBus interfaces. You can use these to execute C++ AWS API calls through the Lumberyard job execution system. This allows processing of operations in background threads that are managed by the job system. For more information, see Lumberyard Gems.
New Amazon GameLift Features
The following features have been added for GameLift:
Remote access to GameLift instances – Remotely access individual instances running in an Amazon GameLift fleet. This capability is useful for debugging fleet activation and performance issues and for tracking game server activity in real time. Access Windows instances using a remote desktop protocol (RDP) client, or connect to Linux instances with an SSH client. For more information, see Connect to Fleet Instances.
Expanded region support – Deploy fleets of game servers closer to your players to further minimize gameplay latency. Use GameLift to deploy fleets in these five additional regions: São Paulo, Mumbai, Seoul, Singapore, and Frankfurt. See the region names and endpoints supported by GameLift and a complete list of instance types available in each region, with pricing information.
AZ Test Scanner HTML Report Updated
The AZ Test Scanner is a tool for running unit tests that are built into Lumberyard libraries and executables. The scanner produces three types of files, one of which is an
.html file that contains a summary of the test results from the entire scan, time stamped by default. The
.html report now also shows disabled tests and includes a color legend. For more information, see Using AZ Test Scanner.
Virtual Reality Project Sample Demonstrates Building VR Applications
The Virtual Reality Project sample is a template that you can use to build virtual reality (VR) applications for any supported device. The sample is configured with the base set of Gems that you need for VR. For information, see Virtual Reality Project Sample.
Stereoscopic Spherical Video for Virtual Reality
The video playback system supports stereoscopic spherical video that you can use
in a virtual reality project. Stereoscopic video is achieved with a
StereoTexture class that extends the basic
class and overrides the
Apply method. The Video
Playback component populates the two textures (left or right) that
are applied to the eye that is rendering.
Haptic Feedback for Motion Controllers
Lumberyard uses a force feedback system for haptic feedback for motion controllers. A new feature lets you specify to which input device to send feedback. You can set the Input Device Type parameter in the
Game:ForceFeedbackTriggerTweaker node to one of the following:
For more information, see the Flow Graph Node Reference.
Lumberyard Integrates with Perforce
Lumberyard integrates with Perforce as a source control solution. The engine uses the
p4 set command to configure settings, and the Perforce visual client (P4V) to selectively sync and submit changed assets. You can use the Perforce Settings dialog box in Lumberyard Editor to configure how Lumberyard connects to Perforce. For more information, see Using the Perforce Plugin with Lumberyard.