Game Dev Digest — Issue #33 - HDRP, DOTS, Optimizing, Effects and More!
Tags: gamedev, unity3d, csharp, news
Published: 2020-02-28 12:03:53

###Issue #33 - HDRP, DOTS, Optimizing, Effects and More!

![Issue #33 - HDRP, DOTS, Optimizing, Effects and More!](https://gamedevdigest.com/assets/social-posts/issue-33.jpg)

This week Unity verified the High Definition Render Pipeline, meaning it is out of preview and ready for production use. With that came a lot of strong posts on making the most out of HDRP, so if you've been holding off, now is the time to dig in.

DOTS, the Data Oriented Tech Stack, which includes the Entity Component System (ECS) was another common topic, check out the video tutorials below.

Of course, there was more of the usual great content around Shader Graph, the Visual Effects Graph, and effects in general. As well as plenty of great tips and examples on the coding side of Unity game dev. For some useful assets in your coding life, check the Assets section.

Hope you enoy!

---

[**HDRP: Out of Preview in 2019.3**](https://blogs.unity3d.com/2020/02/24/hdrp-out-of-preview-in-2019-3/)  - High Definition Render Pipeline is verified in 2019.3 with new features and artist tools for achieving high-fidelity graphics.
[_Unity_](https://blogs.unity3d.com/2020/02/24/hdrp-out-of-preview-in-2019-3/)

[**Fixing World-Space UI with Unity’s HDRP**](https://www.gamasutra.com/blogs/TravisHawks/20200224/358618/Fixing_WorldSpace_UI_with_Unitys_HDRP.pp)  - If you have decided to jump into using Unity’s oft-touted High Definition Render Pipeline (HDRP) for your next project, there are a lot of gotchas you probably won’t uncover until you are well on your way. I was stung the hardest by the HDRP’s inability to play nice with Unity’s UI in world-space - at least before I did a few simple things.
[_Travis Hawks_](https://www.gamasutra.com/blogs/TravisHawks/20200224/358618/Fixing_WorldSpace_UI_with_Unitys_HDRP.pp)

[**Sprite Stencil Overlay Breakdown (Forward Renderer)**](https://cyangamedev.wordpress.com/2020/02/24/sprite-stencil-overlay-breakdown/)  - Hey! I recently helped someone out with an effect they wanted to create, which involved creating an dithering-like overlay effect when the character is behind other sprites. I thought this might provide a nice example of how to use the Universal RP’s Forward Renderer to override Stencil values, so thought I might as well write it up as a post.
[_Cyan_](https://cyangamedev.wordpress.com/2020/02/24/sprite-stencil-overlay-breakdown/)

[**Shadow Masks Baking Direct Occlusion**](https://catlikecoding.com/unity/tutorials/custom-srp/shadow-masks/)  - This is the sixth part of a tutorial series about creating a custom scriptable render pipeline. It uses shadow masks to bake shadows while still calculating realtime lighting.
[_Catlike Coding_](https://catlikecoding.com/unity/tutorials/custom-srp/shadow-masks/)

[**Create beautiful and complex effects with the Visual Effect Graph: Verified in 2019.3**](https://blogs.unity3d.com/2020/02/21/create-beautiful-and-complex-effects-with-the-visual-effect-graph-verified-in-2019-3/)  - Visual Effect Graph has many new features and fixes based on your feedback, so you can start using it in production with the High Definition Render Pipeline (HDRP). This node-based editor enables beautiful, complex effects.
[_Unity_](https://blogs.unity3d.com/2020/02/21/create-beautiful-and-complex-effects-with-the-visual-effect-graph-verified-in-2019-3/)

[**Ultra Effects | Part 9 - Obra Dithering**](https://danielilett.com/2020-02-26-tut3-9-obra-dithering/)  - I recently finished Return of the Obra Dinn by Lucas Pope, a fantastic detective game about an ill-fated ship and its crew. One of the distinguishing features of the game is its 1-bit early Macintosh graphical style, which is realised by an extremely in-depth dithering effect. You can read Lucas’ excellent articles on how to perfect the dithering effect - today, we’ll cover the basics.
[_Daniel Ilett_](https://danielilett.com/2020-02-26-tut3-9-obra-dithering/)

[**URP and Shader Graph Cracked Effect**](https://twitter.com/scoutaheadgames/status/1229857811158487043)  - For #unitytips this week, here's a mini-breakdown of how I used URP and Shader Graph to make a cracked effect for the target in Carchery! The blend node in Shader Graph is very useful and lets you implement blends similar to Photoshop.
[_Scout Ahead Games_](https://twitter.com/scoutaheadgames/status/1229857811158487043)

[**Unity ShaderGraph Procedural Skybox Tutorial Pt.2 (Day/Night Cycle)**](https://timcoster.com/2020/02/26/unity-shadergraph-procedural-skybox-tutorial-pt-2-day-night-cycle/)  - In this part two of the Unity ShaderGraph Procedural Skybox tutorial, we are going to create a basic day/night cycle C# script.
[_Tim Coster_](https://timcoster.com/2020/02/26/unity-shadergraph-procedural-skybox-tutorial-pt-2-day-night-cycle/)

[**Skewing**](https://twitter.com/MajorMcDoom/status/1231447166092054528)  - Did you know you can skew objects in Unity without skinned meshes or shaders? All it takes is a hierarchy of 3 transforms! (2 transforms for 2D skewing). Zi Ye breaks down how to implement this trick.
[_Zi Ye_](https://twitter.com/MajorMcDoom/status/1231447166092054528)

[**UNITY ADDRESSABLES: PlayFab CDN Integration**](https://thegamedev.guru/unity-addressables/playfab-integration/)  - How would you cut your content update iteration times by 10x? You know, these 5+ days you may spend to ship a new build with updated game assets. Let's see how to improve these times with addressables and PlayFab.
[_The Gamedev Guru_](https://thegamedev.guru/unity-addressables/playfab-integration/)

[**Signals Without Garbage**](https://coffeebraingames.wordpress.com/2020/02/23/signals-without-garbage/)  - In our game Academia, we were using this signal system before but it has a major downside: garbage. It incurs garbage whenever a value type parameter is passed (boxing) and read (unboxing) as it accepts parameters using the “object” supertype. Something must be done. It turns out, the solution is pretty easy.
[_Coffee Brain Games_](https://coffeebraingames.wordpress.com/2020/02/23/signals-without-garbage/)

[**Introducing the Unity Student plan: Start creating like a pro**](http://prf.hn/click/camref:1011l8NVc/destination:https%3A%2F%2Fstore.unity.com%2Facademic%2Funity-student)  - We’re excited to announce the new Unity Student plan. If you’re a student, you can get free access to the same tools and workflows that professionals use on the job in industries like gaming, architecture, engineering, automotive, and entertainment.
[_Unity_](http://prf.hn/click/camref:1011l8NVc/destination:https%3A%2F%2Fstore.unity.com%2Facademic%2Funity-student) **Affiliate**

[**Reinforcement Learning with Unity ML Agents**](http://ml.blogs.losttech.software/Reinforcement-Learning-With-Unity-ML-Agents/)  - In this post we present an example bot built with C# and TensorFlow framework, that learns to play a game in a simple Unity-based virtual environment using one of the state of the art reinforcement learning algorithms: soft actor-critic.
[_Gradient Blog_](http://ml.blogs.losttech.software/Reinforcement-Learning-With-Unity-ML-Agents/)

[**Custom Gravity**](https://catlikecoding.com/unity/tutorials/movement/custom-gravity/)  - This is the fifth installment of a tutorial series about controlling the movement of a character. It covers replacing standard gravity with a custom approach, through which we support walking on a sphere.
[_Catlike Coding_](https://catlikecoding.com/unity/tutorials/movement/custom-gravity/)

[**Issues with new InputSystem**](https://twitter.com/BinaryImpactG/status/1232253407781687297)  - Did you encounter a problem with the new InputSystem rebinding UI? It does not record space or return? The cause is the EventSystem catching those keys for the button navigation. Our Unity tips for this week: Update the EventSystem component to prevent this! _[gif tutorial included. For another tip on [debugging the EventSytem](https://twitter.com/JfranMora/status/1232324728821624832), check out this tweet by Jaun Francisco Mora]_.
[_Binary Impact_](https://twitter.com/BinaryImpactG/status/1232253407781687297)

[**Read a Unity TextAsset Line by Line**]()  - Need to read a Unity TextAsset line-by-line like you can with files via StreamReader? Well... you can't. The simple solution is to split the contents of the TextAsset.
[_smartgamedev.com_](#)

[**How Many Temp Allocators Are there?**](https://jacksondunstan.com/articles/5484)  - Last time we saw that jobs apparently have their own Temp allocator. Still, it was unclear how many of these allocators there are. One per job job? One per thread? Just one? Today we’ll run an experiment to find the answer!
[_JacksonDunstan.com_](https://jacksondunstan.com/articles/5484)

[**Unity 2020.1.0 Alpha 25**](https://unity3d.com/unity/alpha/2020.1.0a25)  - Unity version 2020.1.0a25 has been released.
[_Unity_](https://unity3d.com/unity/alpha/2020.1.0a25)

[**Escape the witch’s cottage in our new VR learning experience**](https://blogs.unity3d.com/2020/02/27/escape-the-witchs-cottage-in-our-new-vr-learning-experience/)  - Our brand new project for Unity Learn is an immersive VR escape room. Explore the potential of VR in Unity and create your own experience in a simple prototype environment. Let us introduce you to working with VR in Unity – with clear learning material and engaging gameplay.
[_Unity_](https://blogs.unity3d.com/2020/02/27/escape-the-witchs-cottage-in-our-new-vr-learning-experience/)

## Videos

[![Getting Started with HDRP in Unity (Awesome Graphics!)](https://gamedevdigest.com/assets/images/425f24c23dfddf0fb6de8968c66868fc.png)](https://www.youtube.com/watch?v=YAVL6grnsiM)
[**Getting Started with HDRP in Unity (Awesome Graphics!)**](https://www.youtube.com/watch?v=YAVL6grnsiM)  - Physical Cameras, Lights, Shadows, Post Processing and many more!
[_Code Monkey_](https://www.youtube.com/watch?v=YAVL6grnsiM)

[**Intro to HD Render Pipeline(HDRP) in Unity 2019.3 (Updated Workflow)**](https://www.youtube.com/watch?v=VD5Qr4Rt7-Q&amp;feature=youtu.be)  - Let's explore the updated workflow of Unity's most powerful High Definition Render Pipeline(HDRP) using Unity 2019.3 We will also learn how to convert your existing project into HDRP project.
[_Unity Guruz_](https://www.youtube.com/watch?v=VD5Qr4Rt7-Q&amp;feature=youtu.be)

[**Volumetric Lights in HDRP with Unity 2019.3! (Tutorial)**](https://www.youtube.com/watch?v=EF5jy30ebVw)  - In this video, we're gonna take a look at adding Volumetric Lights to your Unity scenes, using Unity 2019.3 and HDRP! Volumetric Lighting helps improve the quality of your scenes by allowing light sources to affect the Volumetric Fog in the scene.
[_Unity_](https://www.youtube.com/watch?v=EF5jy30ebVw)

[**Pixelation effect and shader**](https://www.youtube.com/watch?v=UT04BS2WWYI)  - In this video we'll show you how to achieve a pixelized scene transition thanks to a shader. This effect has been used in many big titles like Super Mario and The binding of Isaac!
[_TNTC_](https://www.youtube.com/watch?v=UT04BS2WWYI)

[**Floating Origin: Solve Long Distance Glitches (Unity3D Tutorial)**](https://www.youtube.com/watch?v=qIxifMcvYTs&amp;feature=youtu.be)  - Ever dealt with glitches or flickering issues when your camera gets far from the world origin in Unity3d? In this tutorial you'll learn to use a floating origin to reset the player camera to 0,0,0 smoothly. A floating origin is a technique which brings all objects back to 0,0,0 in world space without allowing the player to detect that that is happening.
[_Matt MirrorFish_](https://twitter.com/MattMirrorFish/status/1231552852302213120)

[**FPS boosting with performance profiling**](https://www.youtube.com/watch?v=XNcEZHqtC0g)  - Squeezing game performance with Unity profiling Left-pointing magnifying glass, frame debugging and garbage collection in the real world rather than tutorial code.
[_Rob Lang_](https://twitter.com/brainwipe/status/1231573451980312579)

[**Want To Start Making Multiplayer Games?**](https://www.youtube.com/watch?v=NA5rO8j21JY)  - Unity - Photon Networking
[_Dapper Dino_](https://www.youtube.com/watch?v=NA5rO8j21JY)

[**Elemental Resistances Tutorial - Unity DOTS (ECS, Burst, Jobs)**](https://www.youtube.com/watch?v=xEJeShrZ9Wc)  - Unity DOTS (ECS, Burst, Jobs), lets extend what we have already and add in elemental resistances so that our characters can take more/less damage from fire, water, earth, etc...
[_Dapper Dino_](https://twitter.com/DapperDino4/status/1232009503178153992)

[**How to handle Events in Unity DOTS! (C# Events from ECS)**](https://www.youtube.com/watch?v=fkJ-7pqnRGo)  - Let's learn 2 ways we can handle Events in Unity DOTS!
[_Code Monkey_](https://www.youtube.com/watch?v=fkJ-7pqnRGo)

[**Unity DOTS: Conversion Workflow**](https://www.youtube.com/watch?v=wsohegMV6fk)  - In this episode, we create Entities using the "hybrid" Conversion Workflow for DOTS.
[_Game Academy.school_](https://www.youtube.com/watch?v=wsohegMV6fk)

[**How to make a grappling hook in Unity!**](https://www.youtube.com/watch?v=PZ72ghUCe-4)  - In this video, I will be showing you how to make a grappling hook in Unity! I will show how to set up the scripts I provided on the GitLab page.
[_Affax_](https://www.youtube.com/watch?v=PZ72ghUCe-4)

## Assets

[![Optimizers](https://gamedevdigest.com/assets/images/d447b00a-1719-46b6-91b1-97cd40d54c21.jpg)](https://assetstore.unity.com/packages/tools/utilities/optimizers-122247?aid=1011l8NVc)
[**Optimizers**](https://assetstore.unity.com/packages/tools/utilities/optimizers-122247?aid=1011l8NVc)  - **Release Month Sale 30% Off!**

Cull, deactivate or activate, adjust quality basing on distance or visibility. Do it on anything inside scenes of your project! Give your game more FPS and be able to arrange more details!

Optimizers can optimize almost everything, things like Lights, Particle Systems, Multiple Terrains, Renderers, NavMesh Agents, Script Components and more! Just add optimizer to your game object, select components of which you want change quality. Define distances and percentage amount of parameters you want to change when reaching certain LOD levels, now your optimizer is ready!
[_FImpossible Creations_](https://assetstore.unity.com/packages/tools/utilities/optimizers-122247?aid=1011l8NVc) **Affiliate**

[**Humble Best Of Polygon Game Dev Bundle**](https://www.humblebundle.com/software/best-of-polygon-game-dev?partner=unity3dreport)  - Create a polygonal style game in Unity or Unreal engine with this bundle of low poly asset packs! Each pack features heaps of 3D assets including characters, vehicles, buildings, props, environments, and FX to create computer, console, mobile or VR/AR games.

$391 WORTH OF AWESOME STUFF
[_Humble Bundle_](https://www.humblebundle.com/software/best-of-polygon-game-dev?partner=unity3dreport) **Affiliate**

[**Blender Sprite Sheets**](https://github.com/theloneplant/blender-spritesheets)  - This addon allows you to export an animated 3D model to a sprite sheet and import it into Unity. It can be used for pixel art or pseudo-3D assets to improve performance in your game projects. Simply model, rig, and animate your assets in Blender as you would normally, and then export all animations to a texture sheet and metadata sidecar. These two files can be imported into Unity, automatically creating animations for each Blender action. _[If you liked to read more on this type of technique, check out the author's [Reddit post](https://www.reddit.com/r/gamedev/comments/f6p1xa/a_couple_weeks_ago_i_posted_about_a_sprite_sheet/), as well as [Art Design Deep Dive: Using a 3D pipeline for 2D animation in Dead Cells](https://www.gamasutra.com/view/news/313026/Art_Design_Deep_Dive_Using_a_3D_pipeline_for_2D_animation_in_Dead_Cells.php)]_.
[_Michael LaPlante_](https://github.com/theloneplant/blender-spritesheets) *Open Source*

[**Object Placer Tool**](https://autumnpioneer.itch.io/object-placer-tool-unity-20191)  - This tool allows you to place objects/meshes/prefabs where you click in the scene view, provided there is collision detected where you click. There are several features that include random scaling and rotation, aligning the object to the collision normals, tags, toggling static, assigning a parent etc.
[_autumnpioneer_](https://autumnpioneer.itch.io/object-placer-tool-unity-20191) *Open Source*

[**Wrapping**](https://assetstore.unity.com/packages/tools/modeling/wrapping-rope-57407?aid=1011l8NVc)  - Wrapping rope is a tool for creating thin rope stretched between two points. Wrapping rope does not provide realistic rope physics, but very useful if you want to show very long rope, that could bend, if it collides with other objects. For example, you can use this tool for creating bungee cord, sling, cable railway, catapult.
[_DK Denis Kirillov_](https://assetstore.unity.com/packages/tools/modeling/wrapping-rope-57407?aid=1011l8NVc) **Affiliate**

[**Unity auto attach component via attributes**](https://github.com/Nrjwolf/unity-auto-attach-component-attributes)  - Custom attributes to automatically assign component fields on your monobehaviours.
[_Nrjwolf_](https://github.com/Nrjwolf/unity-auto-attach-component-attributes) *Open Source*

[**find-unity**](https://github.com/neogeek/find-unity)  - Are you looking to set up a local build pipeline for Unity? I've just released a command-line tool for macOS called find-unity that can locate the specific version of Unity your project was built with.
[_Scott Doxey_](https://twitter.com/neogeek/status/1232336433513406469) *Open Source*

[**jp.keijiro.libsoundio**](https://github.com/keijiro/jp.keijiro.libsoundio)  - libsoundio C# thin wrapper class library for Unity.
[_Keijiro Takahashi_](https://github.com/keijiro/jp.keijiro.libsoundio) *Open Source*

[**FlyCamera.cs**](https://gist.github.com/FreyaHolmer/650ecd551562352120445513efa1d952)  - A camera controller for easily flying around a scene in Unity smoothly. WASD for lateral movement, Space & Ctrl for vertical movement, Shift to move faster. Add this script to an existing camera, or an empty game object, hit play, and you're ready to go.
[_Freya Holmer_](https://gist.github.com/FreyaHolmer/650ecd551562352120445513efa1d952) *Open Source*


## Spotlight

[![Labyrinthine](https://gamedevdigest.com/assets/images/dea1989f-98eb-4d8f-968d-36075e9978c7.jpg)](https://www.labyrinthinegame.com/)
[**Labyrinthine**](https://www.labyrinthinegame.com/)  - Labyrinthine is a cooperative horror game focused on delivering a terrifying experience for up to four players online. The game takes place within a labyrinthine maze filled with nightmarish creatures that prey on the fear of those unlucky enough to get lost between the hedges. Players will have to use their skills to solve puzzles, collect clues, and ultimately unravel the dark mysteries standing between them and escape. All of this while they avoid monsters, sinister agents of an unknown power, and the other unfortunate souls who already succumbed to the evil of the maze; people just like them, who were transformed into the very things they feared.

This is the fate that awaits you within Labyrinthine.

Escape, or become what you fear most.

Follow development on their [dev blog](https://www.valkogames.com/category/dev-blog/labyrinthine/).
[_Valko Studios_](https://www.labyrinthinegame.com/)



---

You can subscribe to the free weekly newsletter on [GameDevDigest.com](https://gamedevdigest.com)

This post includes affiliate links; I may receive compensation if you purchase products or services from the different links provided in this article.