Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon
24. December 2015


ShiVa, a 3D WYSIWYG game engine, just released ShiVa 2.0 Beta 4.


From the release:

Beta 4 features

When we changed the rendering pipeline with Beta 3, we intended to move ShiVa into a better, more future-proof direction, that would give us lots of room for exciting new features in the future. Unfortunately, this also broke backwards compatibility with older ShiVa 1.9.2 generated STK packs. We are going to remedy this problem with Beta 4. In the Authoring Module, you will find a new target named ShiVa. From here, you can generate STKs containing either games or just resources, as well as STE packages. Naturally, these new STKs will be fully compatible with the new engine shaders.

For everyone working with Android, we are very pleased to tell you that ShiVa is now supporting Android Studio, which means error messages caused by newer SDK/NDK combinations that plagued your 1.9.2 development pipeline should be a thing of the past. We have a tutorial on the new process in our online docs.


As software engineers, we are naturally most excited about the changes under the hood. The Editor interface, which was previously rendered using Qt4, is now powered by modern Qt5 libraries. This might not sound like a big change, but in fact it completely overturned our schedule for this release. That means you are not getting the full feature set we originally envisioned for this release, but instead something much more valuable in the long run: optimization and performance. Previous Beta versions of ShiVa 2.0 have been rightfully criticized for loading assets and games much more slowly than 1.9.2, along with the framerate lock of 30 FPS on some hardware configurations. Qt5 forced us to implement some previously neglected enhancements, which led to a much needed performance boost. We are now able of reaching framerates well beyond 60 fps Vsync and hundreds to literally thousands of frames unsynced - depending on hardware configuration and scene complexity of course. These improvements carry over to all platforms, including Linux and the open source driver world, which now deliver playable framerates with most of the engine rendering features supported.


The Apple TV engine has evolved and become a truly separate target with plugin support, not just an iOS afterthought. Beta 4 also adds full support for the Apple TV touch remote. We have mapped the touchpad to a conventional controller stick and Menu, Play as well as the Click to joypad buttons. The gyro is fully mapped too, of course.

These are the big changes waiting for you in Beta 4. However we have added numerous tweaks to almost every module, and updated all the engine ports to support the current S3DX SDK. We hope you will enjoy these little changes wherever you may find them, because they add significantly to a smoother and more satisfying editing experience.

More Betas coming soon

The move to QT5 was much more work than originally anticipated, but we are now back on track working on the last missing modules. We are determined to ship a first public release of ShiVa 2.0 as soon as possible next year. Beta 4 was released just a little over a month after Beta 3.1, and we intend to keep the development momentum and bring you more Betas in quicker succession. Please make good use of our Beta website and especially our bugtracker. If you have already reported on our system, please check whether your bug has been fixed with the new version and close or bump the threat (add a note) when appropriate.

GameDev News

23. December 2015


Unity just released the first patch for Unity 5.3.

From the release notes:

  • (706098) - Compute: Improved compute shader import times, particularly on Windows (since 5.1 we were always compiling them for GL4.3+GLES3.1 too, while most people only need DX11).
  • (754898) - GI: Light probes and ambient (everything with SH calculations) match ground truth more closely now.
  • IL2CPP: Optimize method prologues for code size and incremental builds.
  • SceneManagement: Add Scene.GetRootGameObjects() to return the root game objects of the scene.
  • SceneManagement: Add SceneManager.CreateScene() API to allow creating new empty scene at runtime
  • tvOS: Enable Dynamic GI
  • iOS: Enable bitcode support by default.
  • (687655) - Core: Fixed: Not ignoring '~' folders in projects
  • (none) - Android: Fixed NullReferenceException on x86 devices running Android 5.0 or newer.
  • (750362) - Android: Fixed Cloth::SetUpSkinnedBuffers() crash.
  • (none) - DX11/XB1: Fixed FP16 static batched mesh vertex compression to actually work there, was always decompressing to FP32 before.
  • (none) - DX11: Fixed wrong VRAM detection on some Intel GPUs, resulting in shadows not being rendered.
  • (none) - Editor: Fixed MissingMethodException when using some of the API from UnityEngine.WSA namespace.
  • (754898) - GI: Fixed light probes / skybox ambient being wrong in some cases, 5.3 regression.
  • (740808), (747666) - Global Illumination: Enlighten – Fixed an issue where Unity crashed if scene was unloaded before it got a chance to fully load.
  • (752879) - Graphics: Fixed - Realtime reflection probes in some cases did not have trilinear filtering properly set on them.
  • (691038) - IL2CPP: Ensure thread id is valid for all threads.
  • (752737), (751428) - IL2CPP: Fixed an issue that caused a crash in Class::IsSubclassOf.
  • (737529) IL2CPP: Fixed ExecutionEngineException being thrown on System.Reflection.MonoProperty::GetterAdapterFrame.
  • (752153) - IL2CPP: Implemented out marshaling for arrays correctly.
  • (746822) - IL2CPP: Implemented the Thread::Abort and Thread::ResetAbort methods. This should allow a Socket to be closed properly while another thread is waiting in a call to Accept or Connect on that socket.
  • (749988), (733609) - IL2CPP: Properly cleanup when a native thread is cancelled rather than exiting normally.
  • (750153) - IL2CPP: Provide a proper argument for instance methods on value types invoked via a delegate.
  • (none) - iOS/IL2CPP: Fire all GC profiler events. Fixed GC data in internal profiler.
  • (755365) - iOS/tvOS: Build all object files with correct SDK.
  • (752178) - iOS: Added bitcode support.
  • (750311) - iOS: Added Xcode 7.2 to iOS plugin compatibility list.
  • (749289) - iOS: Duplicate another image layer when not all are defined.
  • (none) - Linux: Fixed a corner case where tearing would occur on some WMs even with vsync enabled.
  • (753595) - Mecanim: Fixed a bug where lights would not be animated in Legacy.
  • (752847) - Mecanim: Fixed a bug where RectTransform couldn't be animated in Legacy.
  • (none) - Metal: Wrongly claimed to support DXT1/DXT5 texture formats on iOS, and ETC on Mac.
  • (691466) - Mono: Preserve non-volatile XMM registers across calls on 64-bit Windows during JIT compilation.
  • (none) - OpenGL core: Fixed shaders with multiple const arrays.
  • (755423) - Particles: Fixed error message spam on particle systems that have no particles (5.3.1 regression).
  • (none) - SamsungTV: Fixed wrong jpg library access problem.
  • (748904) - SceneManagement: Fixed the issue that script association was lost when another scene was loaded.
  • (none) - SceneManagement: Fixed the issue that the unloaded scenes would be removed from the hierarchy when entering playmode, if they were first in the hierarchy
  • (none) - Shaders: Fixed a bug in Standard shader GGX specular term, introduced in 5.3.
  • (none) - Shaders: More proper environment reflection in Standard shader for very rough surfaces.
  • (753925) - tvOS: Fixed rendering path selector in player settings.
  • (756044) - tvOS: Fixed missing symbols for simulator builds.
  • (none) - tvOS: Fixed UnityEngine.Apple.TV.Remote API access in editor.
  • (740782) - UI: Fixed crash in some cases after deleting world space Canvas.
  • (751207) - Windows Store Apps: Populate autorotation settings to screen manager.
  • (752546) - Windows Store Apps: Fixed Directory.CreateDirectory() for forward slashes.

GameDev News

22. December 2015


There is a preview of the upcoming Leadwerks Game Engine 4 available on Steam today.

From the announcement:

We completely rethought how large-scale scene management should work to bring you a one-of-a-kind vegetation system for handling massive amounts of foliage. Instead of storing each instance in memory, our new system uses a distribution algorithm to dynamically calculate all relevant instances each frame for rendering and physics. This allows enormous densely packed scenes with minimal overhead. The results are blazingly fast, efficient, and easy to use.  In fact, the new system is so advanced it's featured in the upcoming book Game Engine Gems 3.  Other features include autocomplete in the built-in script editor and integration with Steam Leaderboards.

Attached Image

To help you make the most of the new vegetation system, we're also introducing the Nature Model Pack DLC.  This includes trees, plants, grass, and rocks, to make a variety of outdoors settings with.
Leadwerks Game Engine 4 is a free update and allows publishing of games for the PC and Steam Machines.


The timing is good as right now Leadwerks is 80% off on Steam.

GameDev News

22. December 2015


Unreal have just released a preview version of Unreal Engine 4.11 today. 

The following is a list of items updated within this release:

  • Rendering Updates:
    • New physically based shading model for realistic hair based on the latest research from film. It models 2 specular lobes, transmission, and scattering.
    • New physically based shading model for eyes.
    • New physically based shading model for cloth. This combines the standard shading model with a layer of velvet fibers. This layer simulates fuzz and fabrics.
    • Capsule Shadows - We now have support for very soft indirect shadows cast by a capsule representation of the character
    • Lightmass Portals - Skylight quality indoors can be massively improved by setting up Portal actors over openings. Portals tell Lightmass where to look for incoming lighting, they don’t actually emit light themselves. Portals are best used covering small openings that are important to the final lighting. Placing large Portals all over the level will dramatically increase build times.
    • Per-vertex translucency lighting - There are two new translucency lighting modes available in the material editor which compute lighting per-vertex. PerVertex lighting modes use half as many shader instructions and texture lookups.
    • We now have support for 3 lighting channels. You can set which channels a PrimitiveComponent or a LightComponent is in.
    • We’ve integrated Intel's Embree ray tracing library into Lightmass and we got a huge lighting build speedup from it, as the majority of lighting build time goes toward tracing rays to figure out how light is bouncing.
    • We’ve integrated updates to the D3D12 RHI to allow better CPU utilization while generating rendering commands in parallel.
    • Improved quality and performance of the SubsurfaceScatteringProfile shading model.
    • Circle Depth of Field post process - New Material Functions to render small particles with out of focus.
    • Materials using separate translucency can now be rendered at a lower resolution, which can be useful to improve GPU performance for fillrate and overdraw heavy geometry (for example particle effects).
      The resolution is controlled via a console variable, r.SeparateTranslucencyScreenPercentage, which expresses separate translucency as a percentage of current screen resolution.
    • Static mesh LOD transitions now supporting dithering.
  • Core Updates:
    • CrashReporter Server available
    • Improvements
      • Garbage Collection up to 4x faster
      • Dependency preloading - brings us close to seek free loading (90% of the time seek free), faster package loading
      • UnrealHeaderTool makefiles - iterative UHT runs are 5x faster
  • Platform Updates:
    • Metal on Mac
    • AppleTV support
    • Fast Semantics on XboxOne
    • VS2015 on XboxOne
    • Code plugins for PS4
    • Deterministic cooking "bug-finder" commandlet
    • Background content precaching for most-recently-cooked-platform
  • Editor/Tools Updates:
    • Sequencer improvements
      • New tracks: Shot/director, play rate, slomo, fade, material, particle parameter tracks.
      • Improved movie rendering, exr support
      • Improved/consistent keyframing behaviors, copy/paste keyframes, copy keys from matinee, 3d keyframe path display
      • Master sequence workflow
      • Spawnables workflow
      • UI improvements: track coloring, keyframe shapes/coloring, track filtering
  • Framework Updates:
    • Anim Dynamics Skeletal Control for Animation Blueprints - allows dynamic motion to be procedurally added to skeletal meshes without having to use a full physics solution. This is accomplished using the new “Anim Dynamics” node in the Animation Graph of an Animation Blueprint.
  • Networking Updates:
    • Packet handler system
      • Easy interception of packets for things like encryption, compression, etc
      • Added CryptoPP, and packet handler components that support it out of the box
    • Oodle integration (SDK purchase required)
    • Client-side replays
  • Blueprint Updates:
    • The Blueprint search tool has been updated to support more advanced search functionality (to get more targeted results).
    • Native C++ functions marked BlueprintCallable can now also be optionally marked as DevelopmentOnly. This new metadata allows calls to those functions to be disabled (compiled out) of all Blueprint function graphs in cooked/packaged builds without breaking the execution flow.
  • Mobile Rendering Updates:
    • Support for hardware instancing on iOS and many Android devices, reducing draw calls for Foliage and InstancedStaticMeshComponents.
    • Improved reflections on mobile, optionally interpolating between up to 3 reflection captures and performing parallax correction
  • VR Updates:
    • Instanced Stereo Rendering
    • Head Mounted Display Camera Refactor
    • Stereo Layers
    • SDK Updates: Oculus SDK 1.0, SteamVR 1.0, PlayStationVR SDK3 Updates, and Gear VR LibOVRMobile 1.0 (not yet updated for Preview 1, but will be by final release)
  • Landscape/Foliage Updates:
    • Landscape layer whitelisting, allowing you to control which landscape components should accept which layers in the painting tool
    • Landscape layer usage view mode, to quickly see which landscape components are using which layers
    • Support for baking WorldPositionOffset changes into landscape collision


Known issues in this release are:

UE-24744 Editor crashes when a Character is selected in Paint Mode.
UE-24721 Hot Reload fails to take effect when compiled from Xcode
UE-24716 Crash occurs selecting to open Session Frontend on Mac
UE-24715 Unplayable GearVR tracking sensitivity in First Person Template
UE-24699 Unable to build Linux editor ConvexHull2D file not found
UE-24650 Materials using separate translucency stop rendering if r.SeparateTranslucency is 0
UE-24590 Crash resetting Bound Bone in Anim Dynamics node
UE-24369 MAC: UI: Top half of the game client is not visible to users when Mac client is launched in fullscreen.
UE-23231 Can't Upload iOS build signed on PC


More details of the release are available here.  You can download the preview release using the Epic Game Launcher.

GameDev News

22. December 2015


LÖVE, the popular Lua based open source game engine, just released version 0.10.  This is excellent news for me as I can now use the newest release in my upcoming complete beginners series.


So, what’s so special about this release?  Well the biggest feature has to be iOS and Android support, which I think you will agree is pretty big. 


That said, there are tons of new features in this release:

Changes from 0.9.2

Changed APIs
Renamed APIs
Performance improvements
Other changes

GameDev News

GFS On YouTube

See More Tutorials on!

Month List