Everyday Unity – Telegram
Everyday Unity
1.11K subscribers
157 photos
59 videos
42 files
2.36K links
A game developer and tech lead in a top grossing company posting Unity, programming, and gamedev related stuff that I find interesting
Website: https://gamedev.center

Most used tags are:
#performance
#shader
#interview

Author: @alexmtr
Download Telegram
A simple example of using IEnableableComponent

It's a replacement for tag components. Since Unity ECS stores data in chunks based on their archetype, tag components are considered a lot less performant due to structural changes when they are removed or added.

https://coffeebraingames.wordpress.com/2023/08/21/a-simple-example-of-using-ienableablecomponent/

Read more about archetypes and how entities are located in memory: https://docs.unity3d.com/Packages/com.unity.entities@1.0/manual/concepts-archetypes.html

#dots #ecs
👍3💯2🔥1
DialogueGraph: Open-source node-based tool for developing branching conversation trees

https://github.com/TeodorVecerdi/DialogueGraph

#dialogue
👍8
OutlineFx: Simplified Outline for Unity Urp with 2D support

The outline effect is achieved in the following way: selected objects are first rendered into a texture.
Then, the edges of objects on this texture are drawn over the main texture.
Optionally, the outline can be drawn in a separate texture and then used through a shader.

https://github.com/NullTale/OutlineFx

#outline #outline2d
👍3
Porting Unity to CoreCLR | Unity Blog

I love this series where Unity engineers dive deep into details of the engine. The post slightly explains how memory allocation is managed by a garbage collector. Unity currently uses the Boehm GC, which is conservative and non-moving. In contrast, .NET CoreCLR employs a precise, moving garbage collector, which offers better performance. The Unity engine and editor code were initially developed based on the Boehm garbage collector's requirements. To use the CoreCLR GC, several modifications are required, including changes to custom marshaling tools used by Unity, such as the bindings generator and the proxy generator. Unity is gradually transitioning to the new representation of references to managed objects in the unmanaged code to ensure a GC-safety in the engine. This work will enable the use of the CoreCLR GC, which should improve performance and efficiency by minimizing the GC's involvement in native code. There are still no release dates tho

https://blog.unity.com/engine-platform/porting-unity-to-coreclr

#gc #coreclr
👍6🔥1
Introducing the new URP 3D Sample: The beta release of the new URP Sample Scene

I ran the first scene, and after it completely loaded I got a 2+ seconds freeze on my relatively powerful machine (i7 13th gen, 4070 Ti). But it's a beta, right?
Anyway looks pretty impressive for URP, and is definitely worth checking.

https://github.com/Unity-Technologies/URP3DSampleScenes

#urp #sample
👍2
Unit Testing Made Easy: How I Test My Game Made With Unity ECS

I haven't posted on my blog for a while, partly because I've been investing time in developing my game, which is still in its very early stages. Nonetheless, I wanted to share how I write unit tests for this game, built using Unity.Entities – an ECS implementation by Unity itself. It's not rocket science, but I did spend some time setting it up, so you don't have to invest your own if you plan to add automated tests to your ECS-based game.

What I find even more interesting is setting up performance tests for the same project and the benefits it brings. I'm planning to share this as the second post in this series soon, so stay tuned.

https://gamedev.center/unit-testing-made-easy-unity-ecs-best-practices/

A sample repo which will be extended with performance tests for the second post: https://github.com/AlexMerzlikin/UnityEntities-AutomatedTests-Sample

#ecs #dots #testing
🔥6👍3
How can I modify built-in packages?

I have recently faced a bug in a Unity package, so this was the fastest way to fix it and continue the work. Yeah obviously you lose new updates but there is a way to create some sort of a patch tool, that would update the local package and apply your changes. Of course, this is unnecessary if the issue is fixed in an update. If you already know a tool that does it, would be great if you shared it in the comments.

https://support.unity.com/hc/en-us/articles/9113460764052-How-can-I-modify-built-in-packages-

#package #upm
👍8
Why Cities: Skylines 2 performs poorly

An insightful article about performance issues in Cities: Skylines 2. It's mind-blowing that they created a game of this scale using DOTS, which was released relatively recently and is by no means production-ready even now. The author speculates on how DOTS has affected the game's performance, given the extensive rendering tasks the developers had to implement themselves, which may not perform optimally. However, I am more than amazed by developers, it's monumental work that only top-notch engineers can accomplish in such a short time

https://blog.paavo.me/cities-skylines-2-performance/

#rendering #dots #performance
🔥5👍1👎1
Classes vs. Structs. How not to teach about performance!

I always love reading posts by Sergey Teplyakov. Even though they are sometimes overly technical and tough to go through (not a bad thing at all). This one is a great example of why you should always profile your code, especially critical parts on the hot path, and not believe tests on the web, as some authors try to mislead you for their reasons or just out of pure negligence or ignorance.

https://sergeyteplyakov.github.io/Blog/benchmarking/2023/11/02/Performance_Comparison_For_Classes_vs_Structs.html

#performance #benchmark
🔥7👍1
How I got streamers and YouTubers to play my demo

An author shares great tips and resources on how to find relevant people increasing chances of your game being noticed.

https://www.reddit.com/r/gamedev/s/kmF6RDmqni

#marketing
👍6
How to template your Unity project

This article describes two ways to create a template via GitHub and Unity Hub. It sounds super convenient, especially if you create new projects often or have core tools and logic that you integrate into each of your projects.

https://medium.com/@wondrous_aqua_toad_341/how-to-template-your-unity-project-cc021231e33e

#template #editortools
👍7
New Shader Graph Node Reference Samples

An invaluable resource, especially for those diving into shader intricacies. It's fascinating how seasoned shader experts dissect complex visual effects into a sequence of small and simple steps. This library of samples acts as a comprehensive guide, providing insights into the inner workings of these individual steps and unveiling the diverse possibilities available from the outset.

https://blog.unity.com/engine-platform/new-shader-graph-node-reference-samples

#shadergraph
👍6
A Primer on Unity Addressables and UGS Cloud Content Delivery

A very basic, step-by-step guide on how to set up Addressables and UGS for content delivery. Worth adding to bookmarks for when you would need to set up this pipeline, for example, for a prototype, since this setup will be free with the current pricing plans for small scale tests and prototypes.

https://dev.to/attiliohimeki/a-primer-on-unity-addressables-and-ugs-cloud-content-delivery-4n1d

#addressables #ugs #ccd
👍5💯1
Everyday Unity
Unit Testing Made Easy: How I Test My Game Made With Unity ECS I haven't posted on my blog for a while, partly because I've been investing time in developing my game, which is still in its very early stages. Nonetheless, I wanted to share how I write unit…
Unity ECS Performance Testing

The second post in my series on automated testing with Unity.Entities, where I shared why I believe performance testing is valuable and worth adopting. I also provided examples in the post, along with a sample repo that you can use to skip setting it up yourself in your project.

https://gamedev.center/unity-ecs-performance-testing-the-way-to-the-best-performance/

Repo with the sample: https://github.com/AlexMerzlikin/UnityEntities-AutomatedTests-Sample

#ecs #dots #performance #testing
🔥6👍4
This media is not supported in your browser
VIEW IN TELEGRAM
The current version of Unity Shader Graph supports the Custom Render Texture target. It's handy to generate a dynamic cubemap.

A Unity sample project showing how to provide an animated cubemap

https://github.com/keijiro/DynamicCubemapTest

#rendertexture #cubemap
👍7
Gamedev • 2 | November • 2023

We are publishing the second edition of the Gamedev compilation!

A week ago, we released the first edition within our channel community. Surprisingly, many enthusiasts reached out to participate. And now – one link and a compilation of 10 channels are again in a separate folder for you!

Gamedev • 2

Every week, 10 channels about gamedev
In several channels from our community
In all channels from the weekly compilation

Disclaimer: all other channels are in russian language, you can try to use a built-in Telegram translator feature to check them out.

The current compilation includes
MD/LD
Celestial Beasts
Про гейм-дизайн за 5 минут
Everyday Unity
Лев Дизайнит
Кодзима Гений - канал про геймдизайн
Лавка Разработчика
lediiana
Креативный Анатолий
KSI Games × О геймдеве

__

H
ow to get featured in the compilation?
Fill out the form

We'll check relevance to the theme and audience presence
Make a post with the weekly compilation

We'll reach out to you before publication
Share if you find this helpful!
👍7🔥3
UI Toolkit: New and updated demos for programmers and artists

I’ve seen some Entities samples by Unity Technologies that use UI toolkit for in-game UI and not just for editor tools. It was interesting to play around a bit, but I have no real experience working with it in production yet. If anyone has used UI toolkit for in-game UI in production, I would be happy to hear about your feedback in the comments.

https://blog.unity.com/engine-platform/new-ui-toolkit-demos-for-programmers-artists

Quiz sample: https://assetstore.unity.com/packages/essentials/tutorial-projects/quizu-a-ui-toolkit-sample-268492

Dragon Crashes sample: https://assetstore.unity.com/packages/essentials/tutorial-projects/ui-toolkit-sample-dragon-crashers-231178

Video: https://www.youtube.com/watch?v=XtQist-I3Xo

#uitoolkit
👍6