Posted on Leave a comment

VoxEdit Beta Hands-On

VoxEdit is a free 3D Voxel graphics editor you can freely download for Windows and Mac OS here, with a Linux version mentioned as “coming soon”. The application is actually designed as the content creation tool for The Sandbox a voxel based game platform where artists can monetize their voxel creations. That said, the modelling portions support exporting in OBJ, FBX and GLTF formats making it useful for use with other engines and DCC tools. The animation tools however cannot export except to the Sandbox marketplace.

The modelling tools have the following features:

  • All-in-One software (Model, Rig, and Animate)
  • Incredible performance
  • Available for Windows and Mac
  • Amazing voxel creation tools
  • High level of detail models
  • Advanced Renderer
  • Versatile Color Palette
  • Friendly 3D environment

These are the key features if you are using VoxEdit as a straight out voxel modelling tool. However if you are intending to publish on the Sandbox marketplace, the tool also has advanced animation features, as well as the ability to define and texture voxel blocks. Neither of these features however support exporting into “open” file formats.

If VoxEdit isn’t to your taste for Voxel modelling, be sure to check out BlockBench or possibly MagicaVoxel for alternatives. You can learn more about VoxEdit in the video below.

Posted on Leave a comment

GameDev Map & Level Creator Humble Bundle

There is a new bundle of interest to game developers, the GameDev Map & Level Creator Bundle. This is a collection of graphics, tiles, backgrounds and tilesets for use in 2D game development. As with all Humble’s this bundle is organized into tiers:

1$ Tier

  • Egyptian Tileset
  • World Map Pixel Art Tileset
  • Super Pixel Dungeon
  • Fantasy Map
  • Night City Game Level Kit
  • Tropical Island 2D Game Tileset
  • Desert Tileset
  • Fantasy Village

15$ Tier

  • Game Level Map Set Kit
  • Fantasy Jungle Pixel Art Tileset
  • House Interiors Tileset Pack
  • City Street Tileset Pack
  • WiraWiri Game Level Map Builder
  • Misty Forest Ground Tiles
  • 595 Medieval 2D Game Asset Pack
  • Platformer Game Tile Set 3
  • Simple RPG Tileset
  • Platformer Game Tile Set 1
  • Super Pixel Ice Cavern Tileset

25$ Tier

  • Cartoon Platformer Tileset Pack
  • Mega Factory Scene Creation Pack
  • Pxiel Art Tileset Collection
  • Game Level Map 9 Different Worlds
  • Underwater Tile Set
  • Isometric Forest
  • Wolfsong Tilesets
  • Top Down Tileset Interior
  • 16 Jump Vertical Game Backgrounds
  • 2D Isometric Starter Style Kit
  • The Dungeon Top Down Tileset
  • Game Level Map Pack Side Scrolling
  • Top Down Tileset Forest
  • Mega Castle & Dungeon Pack
  • Game Level Map Creator For Water Levels
  • Landscape Constructor Set
  • Woodlands Level Map Creator
  • Green Greens Forest Platformer Tileset

As with all Humbles, you get to decide how your funds are allocated, between Humble, charity, the publisher and if you so choose (and thanks if you do!) to support GFS purchasing through this link. An important thing to consider with any purchased assets is the legal license, which is available here. You can learn more about this bundle in the video below.

[youtube https://www.youtube.com/watch?v=DQaceCBz_eo?feature=oembed&w=1500&h=844]
Posted on Leave a comment

Core Engine Monetization With Perks

Developers creating games using the Core game engine can now make money from their creation with the newly announced Perks monetization system. Lagging behind user content platforms like YouTube and Twitch, creating game content is becoming hotter and hotter. With the recent massive IPO of Roblox revealing that developers just made 1/4 billion dollars on the platform it’s obvious there is money to be made here. With the Perks monetization system, Manticore Games are offering developers a much more equitable 50% share instead of the 24.5% currently earned by Roblox developers.

Details from the Core Perks announcement blog:

With Perks, monetizing your games is easy. Simply put, Perks are in-game purchases built specifically for Core. They allow creators to sell in-game benefits and earn Credits from players. Players buy Perks with Core Credits, which creators can then easily convert to fiat (real) currency.

In just a few simple steps, you can make your game free-to-play or premium, require a membership, offer expansion packs, or whatever you want. No matter how you choose to engage and entice your players, we make it simple. And if after going in one economic direction you decide to pivot to another, you can change it up very quickly. Perks always gives you full control over the economics of your games.

Another significant difference is how developers make money and what is covered by the platform. In addition to double the earnings, the Core platform will also be taking care of a bigger portion of the workload as illustrated in this graphic.

Core Costs covered vs Roblox and Steam AppStore Etc

The Core Platform is powered by Unreal Engine and Epic Games have recently taken a stake in the company illustrating a certain belief in the idea. We went hands-on with the Core Engine when the open alpha release was announced. You can check out the video below to learn more about Core and the new Perks monetization program.

[youtube https://www.youtube.com/watch?v=HiLFDbi_kjk?feature=oembed&w=1500&h=844]
Posted on Leave a comment

Blender Tips Everyone Should Know

Today we are taking a look at 3 Blender 2.9 tips that every Blender user should know but probably don’t including enabling experimental mode, undo/redo stack and preventing UI from loading. There is a step by step video embedded below if you get lost on a step in the written version.

Tip 1: Enabling Undo/Redo Stack

If you’re are a error prone as I am, or are the type that likes to experiment, you probably find yourself using undo and redo all the time. If you want to jump forward multiple steps or flip forward and back in the undo history, this feature is for you.

To turn Undo History on, select Edit->Preferences…

Now select Keymap on the left, then locate Screen->Screen(Global) scroll down and locate Add New.

Setting up Undo History in Blender 2.9 settings

Now in the Add New window, expand the arrow, click the Select a Key button and enter Z. Also toggle Ctrl and Alt on, then in the text box area replace “none” with “ed.undo_history” then hit enter, like so:

Configuring Undo History from Ctrl Alt Z

Now if you hit Ctrl + Alt + Z in Blender, you will get an on screen menu to jump forward and back in the undo/redo history stack.

Blender Undo/Redo menu

You can now move forward and back in undo by selecting the state from the window.

Tip 2: Enabling Developer Extras/Experimental Options

With each new release of Blender, especially alpha and beta releases, there are several experimental features. You do however need to enable them. Once again select Edit->Preferences…, then select the Interface tab. Toggle the option next to Developer Extras and the Experimental tab will now be displayed.

Enabling Developer Mode/Experimental Features in Blender 2.9

Clicking the Experimental Tab, you can now turn off and on experimental features by clicking the check box next to each feature. Most features will also have an info link to learn more, which will open the development page in a web browser.

Enabling Experimental features in Blender 2.92

Keep in mind these features are marked as experimental for a reason, do not use them in production.

Tip 3: Preventing UI from Loading When Opening A Blend File

This tip is probably the most obvious, but also the most life changing if you didn’t already know it. When you open a .blend file you download from online you will notice you also get the UI settings of the author of that Blend file. If you’d rather have it load with your own UI settings there are two ways to do it.

First is on a case by case basis. When you open a Blend file using File->Open, in the open dialog, click the gear icon, and unselect Load UI.

Preventing Blender Blend File opening from loading UI

Now if you would prefer to have this setting disabled by default, you can also do it via Edit->Preferences… select the Save & Load tab then disable Load UI.

Disabling Load UI on Blend files in Blender

Also remember, if you want to keep these settings each time you load Blender, you need to save your changes. Simply click the Hamburger icon in the Preferences window and select Save Preferences, you shouldn’t have to perform this step if you have Auto-Save Preferences turned on.

You can see all three to these tips in action in the video below.

[youtube https://www.youtube.com/watch?v=rIfihp237rQ?feature=oembed&w=1500&h=844]
Posted on Leave a comment

Add storage to your Fedora system with LVM

Sometimes there is a need to add another disk to your system. This is where Logical Volume Management (LVM) comes in handy. The cool thing about LVM is that it’s fairly flexible. There are several ways to add a disk. This article describes one way to do it.

Heads up!

This article does not cover the process of physically installing a new disk drive into your system. Consult your system and disk documentation on how to do that properly.

Important: Always make sure you have backups of important data. The steps described in this article will destroy data if it already exists on the new disk.

Good to know

This article doesn’t cover every LVM feature deeply; the focus is on adding a disk. But basically, LVM has volume groups, made up of one or more partitions and/or disks. You add the partitions or disks as physical volumes. A volume group can be broken down into many logical volumes. Logical volumes can be used as any other storage for filesystems, ramdisks, etc. More information can be found here.

Think of the physical volumes as forming a pool of storage (a volume group) from which you then carve out logical volumes for your system to use directly.

Preparation

Make sure you can see the disk you want to add. Use lsblk prior to adding the disk to see what storage is already available or in use.

$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
zram0 251:0 0 989M 0 disk [SWAP]
vda 252:0 0 20G 0 disk
├─vda1 252:1 0 1G 0 part /boot
└─vda2 252:2 0 19G 0 part
└─fedora_fedora-root 253:0 0 19G 0 lvm /

This article uses a virtual machine with virtual storage. Therefore the device names start with vda for the first disk, vdb for the second, and so on. The name of your device may be different. Many systems will see physical disks as sda for the first disk, sdb for the second, and so on.

Once the new disk has been connected and your system is back up and running, use lsblk again to see the new block device.

$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
zram0 251:0 0 989M 0 disk [SWAP]
vda 252:0 0 20G 0 disk
├─vda1 252:1 0 1G 0 part /boot
└─vda2 252:2 0 19G 0 part
└─fedora_fedora-root 253:0 0 19G 0 lvm /
vdb 252:16 0 10G 0 disk

There is now a new device named vdb. The location for the device is /dev/vdb.

$ ls -l /dev/vdb
brw-rw----. 1 root disk 252, 16 Nov 24 12:56 /dev/vdb

We can see the disk, but we cannot use it with LVM yet. If you run blkid you should not see it listed. For this and following commands, you’ll need to ensure your system is configured so you can use sudo:

$ sudo blkid
/dev/vda1: UUID="4847cb4d-6666-47e3-9e3b-12d83b2d2448" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="830679b8-01"
/dev/vda2: UUID="k5eWpP-6MXw-foh5-Vbgg-JMZ1-VEf9-ARaGNd" TYPE="LVM2_member" PARTUUID="830679b8-02"
/dev/mapper/fedora_fedora-root: UUID="f8ab802f-8c5f-4766-af33-90e78573f3cc" BLOCK_SIZE="4096" TYPE="ext4"
/dev/zram0: UUID="fc6d7a48-2bd5-4066-9bcf-f062b61f6a60" TYPE="swap"

Add the disk to LVM

Initialize the disk using pvcreate. You need to pass the full path to the device. In this example it is /dev/vdb; on your system it may be /dev/sdb or another device name.

$ sudo pvcreate /dev/vdb
Physical volume "/dev/vdb" successfully created.

You should see the disk has been initialized as an LVM2_member when you run blkid:

$ sudo blkid
/dev/vda1: UUID="4847cb4d-6666-47e3-9e3b-12d83b2d2448" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="830679b8-01"
/dev/vda2: UUID="k5eWpP-6MXw-foh5-Vbgg-JMZ1-VEf9-ARaGNd" TYPE="LVM2_member" PARTUUID="830679b8-02"
/dev/mapper/fedora_fedora-root: UUID="f8ab802f-8c5f-4766-af33-90e78573f3cc" BLOCK_SIZE="4096" TYPE="ext4"
/dev/zram0: UUID="fc6d7a48-2bd5-4066-9bcf-f062b61f6a60" TYPE="swap"
/dev/vdb: UUID="4uUUuI-lMQY-WyS5-lo0W-lqjW-Qvqw-RqeroE" TYPE="LVM2_member"

You can list all physical volumes currently available using pvs:

$ sudo pvs
PV VG Fmt Attr PSize PFree
/dev/vda2 fedora_fedora lvm2 a-- <19.00g 0
/dev/vdb lvm2 --- 10.00g 10.00g

/dev/vdb is listed as a PV (phsyical volume), but it isn’t assigned to a VG (Volume Group) yet.

Add the pysical volume to a volume group

You can find a list of available volume groups using vgs:

$ sudo vgs
VG #PV #LV #SN Attr VSize VFree
fedora_fedora 1 1 0 wz--n- 19.00g 0

In this example, there is only one volume group available. Next, add the physical volume to fedora_fedora:

$ sudo vgextend fedora_fedora /dev/vdb
Volume group "fedora_fedora" successfully extended

You should now see the physical volume is added to the volume group:

$ sudo pvs PV VG Fmt Attr PSize PFree
/dev/vda2 fedora_fedora lvm2 a– <19.00g 0
/dev/vdb fedora_fedora lvm2 a– <10.00g <10.00g

Look at the volume groups:

$ sudo vgs
VG #PV #LV #SN Attr VSize VFree
fedora_fedora 2 1 0 wz–n- 28.99g <10.00g

You can get a detailed list of the specific volume group and physical volumes as well:

$ sudo vgdisplay fedora_fedora
--- Volume group ---
VG Name fedora_fedora
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 2
Act PV 2
VG Size 28.99 GiB
PE Size 4.00 MiB
Total PE 7422
Alloc PE / Size 4863 / 19.00 GiB
Free PE / Size 2559 / 10.00 GiB
VG UUID C5dL2s-dirA-SQ15-TfQU-T3yt-l83E-oI6pkp

Look at the PV:

$ sudo pvdisplay /dev/vdb --- Physical volume --- PV Name /dev/vdb VG Name fedora_fedora PV Size 10.00 GiB / not usable 4.00 MiB Allocatable yes PE Size 4.00 MiB Total PE 2559 Free PE 2559 Allocated PE 0 PV UUID 4uUUuI-lMQY-WyS5-lo0W-lqjW-Qvqw-RqeroE 

Now that we have added the disk, we can allocate space to logical volumes (LVs):

$ sudo lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root fedora_fedora -wi-ao---- 19.00g

Look at the logical volumes. Here’s a detailed look at the root LV:

$ sudo lvdisplay fedora_fedora/root
--- Logical volume ---
LV Path /dev/fedora_fedora/root
LV Name root
VG Name fedora_fedora
LV UUID yqc9cw-AvOw-G1Ni-bCT3-3HAa-qnw3-qUSHGM
LV Write Access read/write
LV Creation host, time fedora, 2020-11-24 11:44:36 -0500
LV Status available
LV Size 19.00 GiB
Current LE 4863
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0

Look at the size of the root filesystem and compare it to the logical volume size.

$ df -h /
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/fedora_fedora-root 19G 1.4G 17G 8% /

The logical volume and the filesystem both agree the size is 19G. Let’s add 5G to the root logical volume:

$ sudo lvresize -L +5G fedora_fedora/root
Size of logical volume fedora_fedora/root changed from 19.00 GiB (4863 extents) to 24.00 GiB (6143 extents).
Logical volume fedora_fedora/root successfully resized.

We now have 24G available to the logical volume. Look at the / filesystem.

$ df -h /
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/fedora_fedora-root 19G 1.4G 17G 8% /

We are still showing only 19G free. This is because the logical volume is not the same as the filesytem. To use the new space added to the logical volume, resize the filesystem.

$ sudo resize2fs /dev/fedora_fedora/root
resize2fs 1.45.6 (20-Mar-2020)
Filesystem at /dev/fedora_fedora/root is mounted on /; on-line resizing required
old_desc_blocks = 3, new_desc_blocks = 3
The filesystem on /dev/fedora_fedora/root is now 6290432 (4k) blocks long.

Look at the size of the filesystem.

$ df -h /
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/fedora_fedora-root 24G 1.4G 21G 7% /

As you can see, the root file system (/) has taken all of the space available on the logical volume and no reboot was needed.

You have now initialized a disk as a physical volume, and extended the volume group with the new physical volume. After that you increased the size of the logical volume, and resized the filesystem to use the new space from the logical volume.

Posted on Leave a comment

Wave Engine 3.1 Released

Wave Engine recently released version 3.1. Wave Engine is a completely free to use 3D game engine capable of targeting most platforms and XR devices. We have been keeping an eye on this engine since 2015 when we featured it in the Closer Look series. More recently we looked at Wave Engine again in 2019 when WaveEngine 3.0 was previewed after a long period of silence. After another long period of silence we received the 3.1 release which brings .NET 5 and C# 9 support as well as graphical improvements.

Details from a guest post on the DotNet team blog:

We are glad to announce that, aligned with Microsoft, we have just released WaveEngine 3.1 with official support for .NET 5 and C# 9. So if you are using C# and .NET 5, you can start creating 3D apps based on .NET 5 today. Download it from the WaveEngine download page right now and start creating 3D apps based on .NET 5 today. We would like to share with you our journey migrating from .NET Core 3.1 to .NET 5, as well as some of the new features made possible with .NET 5.

From .NET Core 3.1 to .NET 5

To make this possible we started working on this one year ago, when we decide to rewrite our low-level graphics abstraction API to support the new Vulkan, DirectX12 and Metal graphics APIs. At that time, it was a project based on .NET Framework with an editor based on GTK# which had problems to support new resolutions, multiscreen or the new DPI standards. At that time, we were following all the great advances in performance that Microsoft was doing in .NET Core and the future framework called .NET 5 and we decided that we had to align our engine with this to take advantage of all the new performance features, so we started writing a new editor based on WPF and .NET Core and changed all our extensions and libraries to .NET Core. This took us one year of hard work but the results comparing our old version 2.5 and the new one 3.1 in terms of performance and memory usage are awesome, around 4-5x faster.

Now we have official support for .NET 5 and this technology is ready for .NET 6 so we are glad to become one of the first engines to support it.

In the video below we review Wave Engine 3.1. All of the samples used in the video are available on GitHub. Please note this repository should not be cloned, it simply links to a different repository for each sample.

[youtube https://www.youtube.com/watch?v=9zIQHBPW1E4?feature=oembed&w=1500&h=844]
Posted on Leave a comment

Unity Make MLAPI Official Networking Library for GameObjects

Way back in 2018 Unity announced the official deprecation of the UNET networking solution, which consisted of the low level (LLAPI) and high level (HLAPI) networking solutions. The reasons for the deprecation were:

Through our connected games initiatives, we’re revamping how we can make networked games easier, more performant, and multiplayer-ready by default. To make these important changes, we need to start anew. That means existing multiplayer features will be gradually deprecated, with more performant, scalable, and secure technologies taking their place. But don’t worry – games with impacted features will have plenty of time to react.

At this point in time the future was clearly DOTS (Data Oriented Technology Stack) which included a new solution called Unity NetCode. In the end the migration to DOTS hasn’t gone as smoothly as expected and recently Unity have started back-filling support for GameObject based development. One recent example was the acquisition, then subsequent free release of the Bolt visual scripting solution. Today Unity have made a similar move, by adopting the open source MLAPI networking project as the new official Unity networking solution. Details from the Unity blog:

One of Unity’s top priorities for 2021 is to expand the Unity ecosystem with a first-party multiplayer networking solution for GameObjects that is easy to set up and extend, scales to meet the needs of high-performance titles, and is seamlessly integrated into the Unity ecosystem.

The existing UNet HLAPI architecture is not well suited for the in-depth evolution that is required to support games at scale. Rest assured, we don’t want to reinvent the wheel. The ecosystem currently offers multiple strong solutions, and the best path toward providing you with the scalable framework we envision is to build on the amazing work that already exists in the community. 

We considered various open source software (OSS) alternatives and found a framework that fit our needs. We’re thrilled to share that the OSS multiplayer networking framework MLAPI is joining the Unity family, along with its creator, Albin Corén.

As of today, we’re already working on integrating and evolving MLAPI into what will become Unity’s first-party GameObjects netcode solution. We plan to continue the development fully open source. Developing in the open and welcoming community contributions. If you are interested, you can join us on the GitHub MLAPI repo.

You can learn more about MLAPI and the ongoing saga of networking on Unity in the video below.

[youtube https://www.youtube.com/watch?v=Zc3lLnE7zFs?feature=oembed&w=1500&h=844]
Posted on Leave a comment

FMOD Studio Now Free For Indie Game Developers

FMOD, perhaps the most popular audio middleware solution for games, just updated their indie developer licenses effectively making the use of FMOD free for smaller indie game developers. So what defines an indie game developer here? First you need to make less than $200K gross revenue per year and second, you need to have less than $500K USD in funding for your game title. There are also some limitations on industry, so for example gambling and simulation projects do not qualify for this license.

The primary details of this announcement came via this tweet:

FMOD Free indie license tweet.

The key paragraph from the linked legal document is the following:

This EULA grants you the right to use FMOD Studio Engine, for Commercial use, subject to the following:

  • Development budget of the project is less than $500k (Refer to www.fmod.com/licensing#licensing-faq for information);
  • Total gross revenue / funding per year for the developer, before expenses, is less than $200k (Refer to www.fmod.com/licensing#licensing-faq for information);
  • FMOD Studio Engine is integrated and redistributed in a game application (Product) only;
  • FMOD Studio Engine is not distributed as part of a game engine or tool set;
  • Project is registered in your profile page at www.fmod.com/profile#projects;
  • Product includes attribution in accordance with Clause 3.

More details about the licensing changes are available here. FMod has support for several game engines including Unreal and Unity, if you are a Godot developer there is FMOD support available via this project, as well as a GDNative version available here. To learn more about FMOD and the new indie licensing check out the video below.

[youtube https://www.youtube.com/watch?v=XF-AbQHme3s?feature=oembed&w=1500&h=844]
Posted on Leave a comment

Unreal Engine 4.26 Released

Epic Games have just release UE 4.26. In this release we see features such as hair and anisotrophy reach production ready status. Additionally there is a new water simulation system (previewed here) and better integration of the new Chaos Physics System (tutorial here) and a brand new system for creating better skies, lighting and environmental clouds. Additionally there were several advancements on the film making side of the equation along side hundreds of other small improvements and bug fixes. With each new Unreal Engine release more and more functionality traditionally done in your DCC tool of choice such as modelling, rigging, animating and sculpting are being added to Unreal.

A summary of new features from the Unreal Engine 4.26 release notes:

The production-ready Hair, Fur, and Feathers system enables you to design the most believable humans and animals. You can use the Volumetric Cloud component along with the Sky Atmosphere and Sky Light to author and render realistic or stylized skies, clouds, and other atmospheric effects with full artistic freedom. The new Water System makes it possible to create believable bodies of water within your landscape terrains that react with your characters, vehicles, and weapons. With an improved and expanded feature set, Chaos physics now lets you simulate Vehicles, Cloth, and Ragdolls in addition to Rigid Bodies so every aspect of the environment comes to life.

Sequencer now works in conjunction with Control Rig and the new full-body IK solution to create new animations inside of Sequencer, reducing the need to use external tools. Movie Render Queue (formerly known as High Quality Media Export) has been enhanced to support render passes enabling further enhancements to be made to the final image in a downstream compositing application. nDisplay multi-display rendering is easier to set up and configure in addition to enabling more pixels to be rendered at a higher frame rate, thus increasing performance and supporting larger LED volumes with existing hardware. The Collaborative Viewer Template has been significantly improved to enhance the collaborative design review experience, and enable more users to join a session. The Remote Control API has been improved to seamlessly connect properties and functionality in Unreal Editor to UI widgets giving users the ability to quickly change properties from an external device, such as an artist on stage changing the sky rotation or the sun position from an iPad.

In the video below we take a quick look at the new water system as well as a quick tutorial on creating Hair alembic files using Blender for export to Unreal Engine, then quickly showcase the new Groom hair functionality.

[youtube https://www.youtube.com/watch?v=72nts1vPcDk?feature=oembed&w=1500&h=844]
Posted on Leave a comment

Godot 4 New 2D Features Showcase

Over on the Godot Engine blog they recently put together a summary of some of the exciting new 2D features that will arrive in Godot 4. Today we go hands-on with the majority of these new features. In addition to the new tricks showcased in the video there are other 2D improvements in Godot 4 including across the board performance improvements (due to the new Vulkan renderer and internal optimizations) as well as support for 2D signed distance fields.

Highlighted new features include:

  • new 2D CanvasTexture with support for diffuse, normal and specular maps
  • better support for 2D lights (all drawn in a single pass)
  • directional light and shadow support
  • new child clipping feature
  • new CanvasGroup for grouping multiple sprites into a single draw call

In addition to these new features, Godot have also just released an update on the improvements to tilemap support, which will be covered in a separate video. Check out the video below to see these excellent new Godot 2D features in action.

[youtube https://www.youtube.com/watch?v=_VR-xHsio78?feature=oembed&w=1500&h=844]