Posted on Leave a comment

The Future of the Defold Game Engine

The Defold game engine is a free cross platform 2D focused game engine from King, we previously covered here and here as well as a video tutorial here.  The Defold team recently released an update on the future roadmap of the Defold game engine.

iOS

We will continue to keep the iOS platform support up to date with the latest iOS versions and requirements. Specific iOS tasks in no particular order:

Metal

Apple has announced that OpenGL will be deprecated on iOS and macOS, but no date has been announced. We have worked during 2019 to add a new Vulkan based graphics backend. This work is nearing completion and it will allow us to use MoltenVK on iOS and macOS. MoltenVK is a Vulkan Portability implementation. It layers a subset of the high-performance, industry-standard Vulkan graphics and compute API over Apple’s Metal graphics framework, enabling Vulkan applications to run on iOS and macOS. We have worked together with members of the Khronos Group to benchmark our implementation and have received only a few points of improvement.

Sign in with Apple

Apple will require that apps that authenticate or set up user accounts must support Sign in with Apple (SIWA). The deadline is June 30, 2020. We will release SIWA support through a native extension in Q2 of 2020. The extension has been developed at King and has already been tested in production.

Storyboard launch screens

Apple will require that apps use Xcode storyboards as the app’s launch screen. The deadline is June 30, 2020. We will automatically create a launch screen storyboard from the launch images set in game.project.

Android

We will continue to keep the Android platform support up to date with the latest Android requirements. We are collaborating with the Android and Google Play partnership teams to identify important tasks. The top four tasks in order of priority are:

Billing

Google Play Billing is a service that lets you sell digital content on Android. We will add support for the new Billing API via the existing IAP extension.

Google Play Game Services

We will continue to improve on the existing Google Play Game Services extension to ensure that it supports all of the latest features of Google Play Game Services.

Android App Bundles

Android App Bundle is a publishing format that includes all your app’s compiled code and resources, and defers APK generation and signing to Google Play. Google Play uses your app bundle to generate and serve optimized APKs for each device configuration, so only the code and resources that are needed for a specific device are downloaded to run your app. We will initially add support for basic bundling of applications using Android App Bundles and then expand upon the feature as needed.

Google Play Instant

Google Play Instant enables native games to launch on devices running Android 5.0 (API level 21) or higher without being installed. By allowing users to run an instant game, known as providing an instant experience, you improve your game’s discovery, which helps drive more active users or installations.

HTML5

We will focus on increased performance and reduced application size on HTML5. We will when possible update to newer versions of Emscripten and WebAssembly to achieve this.

Desktop

On desktop our only identified focus area is to add the ability to run the engine loop while the window is in the background.

Editor

We will mainly focus on performance and stability improvements in the editor. In terms of new features we have identified the following (in no particular order):

Improved 3D support

In 2019 we added support for perspective cameras and made some improvements to how collision shapes were visualised. These changes made it easier to work with and place 3D models in a collection, but there are still many improvements to be made to scene navigation when working in a 3D.

Auto-tiling

While we did some minor improvements to the tilemap system in 2019 (better tile palette and interleaved layers) we have so far left out auto-tiling. Auto-tiling can really speed up tilemap editing and it is the next big feature to add for the tilemap editor.

Editor extensions

We plan to expand the existing system for editor scripts to allow for more complex operations and we will look at how to customize the UI and/or add new UI widgets using editor scripts.

GUI layouts and templates

The system with GUI layouts and templates where one or both involve value overrides is fairly complex and hard to work with from a code maintenance perspective. We plan to review the system and possibly simplify it.

Engine

In 2019 we made several changes to improve editor stability. Two examples of this were reduced ANRs on Android and a standardized application loop on iOS. In 2020 we will continue to identify and fix stability issues in the engine. Besides stability improvements we will also work on the following features (in no particular order):

Sound threading

Sound playback is currently done on the main thread together with the rest of the game loop. This can become a problem if loading large resources while playing sound, resulting in playback stutter. The solution is to do sound playback on a separate thread to avoid stutter when loading content.

Physics decoupling

Physics is currently running at the same rate as the rest of the game loop. We will try to decouple the physics simulation from the game loop by running the simulation on a separate thread and optionally with a different number of updates per second.

Spine as an extension

We will look into the possibility of using the official Spine runtime as an extension and a replacement for the existing custom made native Spine support. This will allow the use of newer versions of Spine, something that currently is not possible with the existing and custom Spine runtime.

Physics as an extension

We will look into the possibility of moving the Box2D and Bullet3D physics engines to a native extension. This will allow the community to update or replace the physics simulation with an update version or completely different implementation.

Live update

We’re very happy to see that the live update functionality is used in several different scenarios (from Android Expansion Files to Steam DLCs). We have with the help of the community identified several improvements and we plan to deliver the most critical improvements in 2020.

Mesh component

The custom mesh component will be released in Q2 of 2020.

Vulkan

We will release support for Vulkan on all systems where it is supported. On Android it will be used by default on newer devices. On iOS it will be used under the hood to be able to use MoltenVK (see iOS above).

Build server

The Defold build server for native extensions will be open sourced in Q2 of 2020 to allow developers to build locally or set up their own build servers to cut the dependency to the Defold provided build service.

You can learn more about the Defold Game engine roadmap in the video below.  The tutorial mentioned in the video is open source and available here on Github.

Posted on Leave a comment

Raylib 3.0 Released

Raylib 3.0 was released today.  Raylib is an open source, cross platform C based framework of tools and libraries for making games.  Components of raylib can be used on their own, however you can also download a preconfigured development environment making it among the easiest ways to get started doing C or C++ game programming. 

Details of the 3.0 release:

  • All global variables from the multiple raylib modules have been moved to a global context state, it has several benefits, first, better code readability with more comprehensive variables naming and categorization (organized by types, i.e. CORE.Window.display.width, CORE.Input.Keyboard.currentKeyState or RLGL.State.modelview). Second, it allows better memory management to load global context state dynamically when required (not at the moment), making it easy to implement a hot-reloading mechanism if desired.
  • All memory allocations on raylib and its dependencies now use RL_MALLOC, RL_FREE and similar macros. Now users can easely hook their own memory allocations mechanism if desired, having more control on how memory is allocated internally by the library. Additionally, it makes it easier to port the library to embedded devices where memory control is critical. For more info check raylib issue #1074.
  • All I/O file accesses from raylib are being moved to memory data access, now all I/O file access is centralized into just four functions: LoadFileData(), SaveFileData(), LoadFileText(), SaveFileText(). Users can just update those functions to any I/O file system. This change makes it easier to integrate raylib with Virtual File Systems or custom I/O file implementations.
  • All raylib data structures have been reviewed and optimized for pass-by-value usage. One of raylib distinctive design decisions is that most of its functions receive and return data by value. This design makes raylib really simple for newcomers, avoiding pointers and allowing complete access to all structures data in a simple way. The downside is that data is copied on stack every function call and that copy could be costly so, all raylib data structures have been optimized to stay under 64 bytes for fast copy and retrieve.
  • All raylib tracelog messages have been reviewed and categorized for a more comprehensive output information when developing raylib applications, now all display, input, timer, platform, auxiliar libraries, file-accesses, data loading/unloading issues are properly reported with more detailed and visual messages.
  • raudio module has been internally reviewed to accomodate the new Music structure (converted from previous pointer format) and the module has been adapted to the highly improved miniaudio v0.10.
  • text module reviewed to improve fonts generation and text management functions, Font structure has been redesigned to better accomodate characters data, decoupling individual characters as Image glyphs from the font atlas parameters. Several improvements have been made to better support Unicode strings with UTF-8 encoding.
  • Multiple new examples added (most of them contributed by raylib users) and all examples reviewed for correct execution on most of the supported platforms, specially Web and Raspberry Pi. A detailed categorized table has been created on github for easy examples navigation and code access.
  • New GitHub Actions CI system has been implemented for Windows, Linux and macOS code and examples compilation on every new commit or PR to make sure library keeps stable and usable with no breaking bugs.

Raylib is available on https://www.raylib.com/, with the source code hosted on GitHub under the liberal ZLib license.  The raylib cheatsheet is a one stop shop for learning the commands from the various libraries.  Raylib is also well documented on the Wiki.

Learn more about raylib in the video below.

[embedded content]

GameDev News


<!–

–>

Posted on Leave a comment

Laigter Wins an Epic MegaGrant

At GDC 2019 Epic Games announced their $100M Epic MegaGrant program supporting among other things, open source efforts in the world of game development.  Prior winners have included Blender, Godot and ArmorPaint.  Today, the open source cross platform sprite tool Laigter has joined that list!  If you are a regular of GameFromScratch, Laigter may sound familiar as we featured it in the Summer of 2019.

I spoke via email and Twitter with the author Azagaya about his experiences with the Epic MegaGrant program and on the future of Laigter:

I applied to the Epic Games MegaGrant project in April 2019. About three month later, i recieved an e-mail from them, stating they would
need more time for reviewing the tool. This year I received another e-mail stating that my project was approved for the MegaGrant! It was a
couple month ago, but I didn’t make it public until I revived the official badge from them.

The process was very simple. For the application, I just had to fill in an online form. They reviewed the project without any question or
notification. Once approved, they sent me two forms (one for taxes and another one for banking information), and a digitally signed letter. I
filled all the forms and signed the letter and send all the documents back to them, and that was all. People from Epic were always very
gentle, and helped me a lot if I did not understand something from the forms. They answered all my e-mails soon, and in a very friendly way.

The only problems I had were with my bank, because strict regulations exists in my country about receiving money from another country.
The process overall is really simple, and people from epics helps you in everything you need.

As to the near future of Laigter:

– Ability to preview animations with lighting. For now, only framed based animations are going to be supported.
– Brush for painting textures. You will be able to use textures from sites like https://3dtextures.me/ to paint textures into your sprites.
– Toon lighting preview.
– Theming support (dark and light themes for now)
– Ability to change display language in runtine (now, the language from your system is selected, if available)

Laigter is available on Itch.io and is open source under the GPL v3 license on Github.  Check out Laigter in action in the video below.  Congratulations on the Epic MegaGrant win!

[embedded content]

Art GameDev News


<!–

–>

Posted on Leave a comment

Pixel Vision 8 Free During COVID-19 Crisis

Today on Twitter, Pixel Vision 8 – a highly configurable and fully featured virtual console, announced that it would be free, including the pro tools during the current health crisis.

From the Pixel Vision twitter:

image

Pixel Vision 8 is available here, simply register an account and you can download Pixel Vision as well as all of the premium pro features.  You can learn more about PV8 and see it in action in the video below.  If you check out Pixel Vision 8, be sure to stop by Twitter and thank developer Jesse Freeman for his generosity during these trying times!

[embedded content]

GameDev News


<!–

–>

Posted on Leave a comment

Buildbox 3.2 Beta

Buildbox, the recently made free no-code game engine, just released Buildbox 3.2 beta.  This beta takes a huge step forward in 3D usefulness with the abity to import and use animated FBX 3D models.  This is of course a beta release, so expect bugs and do not use in a production environment.

Details of the release from the Buildbox forums:

3D Animation Support

  • FBX files containing 3D model skeletons and animations are now supported in Buildbox.
  • New Brainboxes available for 3D animated assets:
    • Animated Platformer
    • Keyboard Controls
    • Mobile Controls
    • Keyboard Camera Controls
  • New Content Nodes available for 3D animated assets:
    • Sub Scene
    • Keyframe Animation

Worlds

  • 2D Worlds
    • To rotate an object 45 degrees, select the rotate tool, hold shift and drag an axis handle.
  • 3D Worlds
    • Ground object that covers an entire scene and provides a solid platform for dynamic assets.

Textures

  • Unused textures are removed when Buildbox opens a project.
  • Alpha channel support
    • Enabled transparency in textures
    • The texture area without the transparency can cast shadows onto other objects.

UI Changes

  • Color coded axis fields
  • Tabs and home button in the Navigation bar, along with navigation control arrows.

Nodes

  • Health node now contains Starting Health and Max Health attributes.
  • Script nodes now have a purple self reference output, and each input and output can now be color coded.
  • Move and Rotate nodes now contain a set of range attribute fields.
  • The following nodes are now available in the asset Node Map.
    • Sub Scene
    • Keyframe Animation
    • Rotate Towards
    • Speedometer
    • Self Attribute

Ad Monetization

  • Facebook Analytics in the SDK tab of the Project Settings window.

The Mac and Windows binaries are available at this link, however you need to have a registered Buildbox account and serial number to install the 3.2 beta.  You can learn more about the beta in the video below.

[embedded content]

GameDev News


<!–

–>

Posted on Leave a comment

NVIDIA Release RTXGI and DLSS 2.0 SDKs

In addition to the recently released NVIDIA Texture Tool, NVIDIA have released a pair of SDKs of interest to game developers.  The first is RTXGI, a global illumination solution for DXR compatible hardware, the second is DLSS 2.0 or Deep Learning Super Sampling.

Details about RTXGI:

  • Full Source Code. We are providing full source code so you can easily integrate RTXGI into your tools and customize it to your specific needs.
  • No Baking, No Leaks. Dramatically speed up your iteration time with real-time ray traced lighting. No more waiting for bakes. No more obsessing over light probe positioning either; no light or shadow leaking.
  • Any DXR GPU. RTXGI runs on a broad range of hardware. All DXR-enabled GPUs are supported, including GeForce RTX 20 Series, GTX 1660 Series, and GTX 10 series.
  • Tuned & Optimized. Easy to integrate and fast to provide results, right out of the box. Performance optimized to fit in 60Hz frame budgets.

Details about DLSS:

  • Superior Image Quality – DLSS 2.0 offers image quality comparable to native resolution while rendering only one quarter to one half of the pixels. It employs new temporal feedback techniques for sharper image details and improved stability from frame to frame.
  • Great Scaling Across All GeForce RTX GPUs and Resolutions – A new AI network more efficiently uses Tensor Cores to execute 2X faster than the original. This improves frame rates and eliminates previous limitations on which GPUs, settings, and resolutions could be enabled.
  • One Network For All Games – The original DLSS required training the AI network for each new game. DLSS 2.0 trains using non-game-specific content, delivering a generalized network that works across games. This means faster game integrations, and ultimately more DLSS games.
  • Customizable Options – DLSS 2.0 offers users 3 image quality modes – Quality, Balanced, Performance – that control the game’s internal rendering resolution, with Performance mode enabling up to 4X super resolution (i.e. 1080p → 4K). This means more user choice, and even bigger performance boosts.

DLSS 2.0 is currently only available for Unreal Engine developers and you need to request access to both SDKs.  To request access to the DLSS SDK click here, while the RTXGI application is available here.  You can learn more about both SDKs in the video below.

GameDev News


<!–

–>

Posted on Leave a comment

Humble Music Producer Bundle

Humble have just released a bundle targeted as musicians.  The Humble Music Producer Bundle is a collection of sound banks and VSTs.  As with all Humble Bundles it is organized into tiers:

1$ Tier

  • Angelicals
  • Frontier
  • AAS Player (Note, this is available free)

15$ Tier

  • Analog Essentials
  • UltraFX
  • Kitnetix
  • Journeys

20$ Tier

  • Strum Sessions
  • Lounge Lizard Sessions
  • Ultra Analog Session

This bundle gives you a key that you redeem as a single download from https://www.applied-acoustics.com/.  As with all Humble Bundles you can decide how your money is allocated, between charity, the publisher, Humble and if you choose (and thanks if you do!) to support GFS if purchased using this link.  You can learn more about this bundle including briefly seeing the 20$ Tier items in action in the video below.

[embedded content]

GameDev News


<!–

–>

Posted on Leave a comment

Affinity Products Half Price And Free For 3 Months

Serif, the makers of Affinity Designer and Affinity Photo are currently offering all of their products at a 50% discount.  Additionally they are now offering a completely functional 3 month demo download.

Full details from the Affinity announcement:

With all that’s going on right now due to the COVID-19 pandemic and in response to the many stories we’re hearing from the creative community about how they’re being severely impacted, we felt it was our responsibility to try to offer as much support as possible during this incredibly difficult time.

That’s why we’ve put in place three new measures which we hope will help at least some of you out there. These are:

  • + A new 90-day free trial of the Mac and Windows versions of the whole Affinity suite
  • + A 50% discount for those who would rather buy and keep the apps on Mac, Windows PC and iPad
  • + A pledge to engage more than 100 freelance creatives for work, spending the equivalent of our annual commissioning budget in the next three months (more details of this will be announced soon).

The introduction of the 90-day free trial and deeply discounted pricing is done in the hope that this will make life a little easier for people who rely on creative software to make a living, but may be stuck at home without their usual tools, or for students who might not have access to their Affinity apps on their personal devices.

In addition, by increasing our spend on commissioning work from freelancers we can also put some extra money into a part of the industry which will be particularly affected.

We plan to make the free trial and additional discount available until 20 April, but we’ll continue to review the situation as time goes on.

We know we’re not saving the world, but we hope these measures can at least provide some form of relief to those who need it. We’ll pull through this together…

You can learn more about the deal and promo in the video below.  If you want to learn more about Affinity products check out our hands on video available here.

[embedded content]

GameDev News


<!–

–>

Posted on Leave a comment

Unreal Engine Project Nature Giveaway

Epic Games have just announced a massive giveaway of asset packs from Project Nature.  This is a collection of trees, bushes, grasses and controlling blueprints for creating nature scenes in your Unreal Engine games.

Details from the Unreal Engine blog:

In collaboration with Project Nature, Epic Games has released over 20 environment and vegetation products for free on the Unreal Engine Marketplace.

The collection includes over 75 varieties of plant species, many of which were photoscanned from real-world vegetation, ranging from towering trees to the smallest of ground plants and flowers. Create a refreshing oasis retreat, escape to a serene meadow, or adorn a warm desert landscape for your audience to explore; with more than 550 optimized models, the sky, or the ground, is the limit on what you can grow!

The pack consists of:

  • Hundreds of optimized plant models and materials
  • The shader-based Project Nature Wind System 2.0
  • The Project Nature Interaction System 2.0, including replicated animations
  • A dynamic low-poly grass system
  • A dynamic ivy creation pack
  • And more!

You can download the assets using the Epic Game Launcher or via the website available here.  There is no time limit on this giveaway, all 21 packs are available free forever.  If you want to learn how to export from Unreal Engine to another engine or tool (such as Blender) you can learn more here.  Learn more about the asset giveaway in the video below.

[embedded content]

GameDev News


<!–

–>

Posted on Leave a comment

CryEngine Getting Mobile Support

Announced at Google’s virtual GDC 2020 event, CryEngine will be receiving Android support in beta form this summer.  However if you check out the beta signup page, you will notice another key mobile OS is also shown.

image

More details are available on the CryEngine news page:

Crytek is pleased to announce that developers everywhere are invited to experience the power of CRYENGINE on mobile first by registering for a beta program at cryengine.com/beta. The beta program will launch later this year. CRYENGINE is the cutting-edge 3D game development platform famed for its industry-leading renderer, real-time lighting, and optimized VR support, and Crytek has partnered with Google to bring the engine to the Android ecosystem.

The technology behind CRYENGINE is platform-agnostic by design. Starting with the Android pipeline, the mobile beta program is the first step in bringing the engine that powers some of the most ambitious and beautiful games on console and PC to more mobile platforms, following the Oculus Quest launch of Crytek’s award-winning free solo rock climbing game, The Climb.

You can learn more about the upcoming mobile support in CryEngine in the video below.

[embedded content]

GameDev News


<!–

–>