With Android 15, Google introduced support for 16 KB memory page sizes in the OS. It is expected that device manufacturers will start bringing out devices with these capabilities to the market. Google’s testing suggests that there are noticeable performance gains in apps and games launching on 16 KB-capable devices, with up to a 10% improvement.
Support for 16 KB sizes is now available in the following Unity versions:
- Unity 6000.1.0b5 (expected release: February 9, 2025)
- Unity 6000.0.38f1 (expected release: February 14, 2025)
- Unity 2022.3.56f1 (released: January 15, 2025)
- Unity 2021.3.48f1 (released: January 22, 2025)
All native libraries in your project must be 16 KB compatible. Currently, the page size is 4 KB, and larger pages bring the following benefits:
- Lower app launch times under memory pressure: 3.16% lower on average, with more significant improvements (up to 30%) for some apps tested by Google.
- Theoretically reduced page table overhead: Since there are fewer pages to manage.
- Improved I/O performance: Larger pages require fewer read and write operations for data spanning multiple pages.
- Cache efficiency: Larger pages can lead to better cache usage, reducing the number of cache misses if your app has good data locality.
https://discussions.unity.com/t/info-unity-engine-support-for-16-kb-memory-page-sizes-android-15/1589588
#native #pagesize
Support for 16 KB sizes is now available in the following Unity versions:
- Unity 6000.1.0b5 (expected release: February 9, 2025)
- Unity 6000.0.38f1 (expected release: February 14, 2025)
- Unity 2022.3.56f1 (released: January 15, 2025)
- Unity 2021.3.48f1 (released: January 22, 2025)
All native libraries in your project must be 16 KB compatible. Currently, the page size is 4 KB, and larger pages bring the following benefits:
- Lower app launch times under memory pressure: 3.16% lower on average, with more significant improvements (up to 30%) for some apps tested by Google.
- Theoretically reduced page table overhead: Since there are fewer pages to manage.
- Improved I/O performance: Larger pages require fewer read and write operations for data spanning multiple pages.
- Cache efficiency: Larger pages can lead to better cache usage, reducing the number of cache misses if your app has good data locality.
https://discussions.unity.com/t/info-unity-engine-support-for-16-kb-memory-page-sizes-android-15/1589588
#native #pagesize
🔥13👍2
Misconceptions about DOTS and Entities
Not every Unity developer has had a chance to work with the Entities package. So this is a good read to clear misconceptions surrounding DOTS. You should not be surprisied that you can use DOTS even without the Entities package in your project.
https://docs.google.com/document/d/18hFIQipNxTsKsWk9eRroRwkGgswWs6m40X8N4Kkjhy4/edit
#dots #ecs
Not every Unity developer has had a chance to work with the Entities package. So this is a good read to clear misconceptions surrounding DOTS. You should not be surprisied that you can use DOTS even without the Entities package in your project.
https://docs.google.com/document/d/18hFIQipNxTsKsWk9eRroRwkGgswWs6m40X8N4Kkjhy4/edit
#dots #ecs
Google Docs
Misconceptions about DOTS and Entities
Misconceptions about DOTS and Entities False: DOTS, ECS, Unity Entities, and Data-oriented Design are all the same thing Entity Component System (ECS): an architectural pattern that originated in some games of the 2000’s. There are at least several variants…
👍7🔥2
Use Multiplayer Play Mode to test multiplayer functionality within the Unity Editor.
It was released almost a year ago, but I missed the announcement back then. Now that I've decided to work on a small co-op prototype, I find this tool amazing—it saves a lot of time. I remember how inconvenient it was to test a multiplayer game when I was working on my first multiplayer project around the time UNet was still relevant (8–9 years ago, if I'm not mistaken). To test it, I had to build a standalone version first, which took some time. Now, running multiple windows in Play Mode makes the process much faster.
Unreal Engine has had this functionality out of the box for a while, and I really liked it when I was creating another prototype to get acquainted with Unreal some time ago. So I'm very happy that Unity now offers the same functionality. Definitely recommend it if you're working on a multiplayer game.
https://docs-multiplayer.unity3d.com/mppm/current/about/
#netcode #multiplayer
It was released almost a year ago, but I missed the announcement back then. Now that I've decided to work on a small co-op prototype, I find this tool amazing—it saves a lot of time. I remember how inconvenient it was to test a multiplayer game when I was working on my first multiplayer project around the time UNet was still relevant (8–9 years ago, if I'm not mistaken). To test it, I had to build a standalone version first, which took some time. Now, running multiple windows in Play Mode makes the process much faster.
Unreal Engine has had this functionality out of the box for a while, and I really liked it when I was creating another prototype to get acquainted with Unreal some time ago. So I'm very happy that Unity now offers the same functionality. Definitely recommend it if you're working on a multiplayer game.
https://docs-multiplayer.unity3d.com/mppm/current/about/
#netcode #multiplayer
👍10🔥7
Sampling vs. Instrumentation Profilers in Unity: When to Use Each for Better Performance
New Blog Post Alert!
It’s been a while since the last post on my website gamedev.center — lately, I’ve been deep into working on my pet project instead of writing. But finally, a new post is up!
I keep seeing Superluminal mentioned more and more—so is it time to take another look? 🤔
In this post, I break down sampling vs. instrumentation profilers, when to use each, and why a hybrid approach gives the best results. Plus, I share real-world profiling strategies that helped optimize Unity projects.
https://gamedev.center/sampling-vs-instrumentation-profilers-in-unity-when-to-use-each-for-better-performance/
#profiling #sampling
New Blog Post Alert!
It’s been a while since the last post on my website gamedev.center — lately, I’ve been deep into working on my pet project instead of writing. But finally, a new post is up!
I keep seeing Superluminal mentioned more and more—so is it time to take another look? 🤔
In this post, I break down sampling vs. instrumentation profilers, when to use each, and why a hybrid approach gives the best results. Plus, I share real-world profiling strategies that helped optimize Unity projects.
https://gamedev.center/sampling-vs-instrumentation-profilers-in-unity-when-to-use-each-for-better-performance/
#profiling #sampling
🔥7👍5
Easy Text Effects for Unity
An open-source Unity package for animating TextMeshPro text with customizable effects. Includes ready-to-use samples, real-time previews, and per-vertex animation capabilities.
https://github.com/LeiQiaoZhi/Easy-Text-Effects-for-Unity
#text #vfx
An open-source Unity package for animating TextMeshPro text with customizable effects. Includes ready-to-use samples, real-time previews, and per-vertex animation capabilities.
https://github.com/LeiQiaoZhi/Easy-Text-Effects-for-Unity
#text #vfx
👍13🔥5
Everyday Unity
Easy Text Effects for Unity An open-source Unity package for animating TextMeshPro text with customizable effects. Includes ready-to-use samples, real-time previews, and per-vertex animation capabilities. https://github.com/LeiQiaoZhi/Easy-Text-Effects…
TMPEffects
Easily animate Unity text and apply other effects with custom tags
One more asset to animate TMP text. I briefly tried both and noticed they have different approaches to setup.
TMPEffects uses the tag system. While the previous one "Easy Text Effects" allows to combine effects by using presets and referencing them via the inspector.
I found this one more convenient for prototypes with the handy <tag> system (check the 2nd attached video). It looks ideal for quick prototyping.
The previous asset, EasyTextEffects, seems easier to customize, allowing you to tweak effects however you like. Both assets are solid and open source, so I am grateful the authors shared them with the community. I'd recommend checking out both, as some may find one setup more convenient than the other.
https://github.com/Luca3317/TMPEffects
#text #vfx
Easily animate Unity text and apply other effects with custom tags
One more asset to animate TMP text. I briefly tried both and noticed they have different approaches to setup.
TMPEffects uses the tag system. While the previous one "Easy Text Effects" allows to combine effects by using presets and referencing them via the inspector.
I found this one more convenient for prototypes with the handy <tag> system (check the 2nd attached video). It looks ideal for quick prototyping.
The previous asset, EasyTextEffects, seems easier to customize, allowing you to tweak effects however you like. Both assets are solid and open source, so I am grateful the authors shared them with the community. I'd recommend checking out both, as some may find one setup more convenient than the other.
https://github.com/Luca3317/TMPEffects
#text #vfx
👍11🔥3
GitHub - ruccho/WaterRW: WaterRW is 2D interactive water system for Unity.
https://github.com/ruccho/WaterRW
#water
https://github.com/ruccho/WaterRW
#water
GitHub
GitHub - ruccho/WaterRW: WaterRW is 2D interactive water system for Unity.
WaterRW is 2D interactive water system for Unity. Contribute to ruccho/WaterRW development by creating an account on GitHub.
🔥10👍2
Performance checklist provided by Unity in their ECS samples repo covers both regular projects and DOTS.
It gives you a clear plan of what to check after identifying slow parts of your game through profiling. While the list may seem trivial to developers experienced in optimization, it's beneficial to have it formalized and written down somewhere to optimize your optimization workflow. And of course it’s very helpful for less experienced devs.
https://docs.google.com/document/d/1QQZz6xzmWpe6NMdL3t2o7RXmya6UFyl_Xgo3KPfGxzQ/
#performance #profiling
It gives you a clear plan of what to check after identifying slow parts of your game through profiling. While the list may seem trivial to developers experienced in optimization, it's beneficial to have it formalized and written down somewhere to optimize your optimization workflow. And of course it’s very helpful for less experienced devs.
https://docs.google.com/document/d/1QQZz6xzmWpe6NMdL3t2o7RXmya6UFyl_Xgo3KPfGxzQ/
#performance #profiling
Google Docs
Performance checklist
Performance checklist Things to consider when your code is slow. Have you profiled? Where are the bottlenecks? The first rule of performance is always: Don’t guess! Profile! Is your code slow? How slow? Where is it slow? Until you measure the actual…
🔥13
Stencil Debugger for Unity's Universal URP
Stencil Debugger is a utility for visualizing the stencil buffer in Unity URP. This is especially useful for debugging rendering effects that rely on the stencil buffer.
It's been a while since I last debugged a shader, and it was far from trivial—I had to write shader code just to render the debug info into a texture. So this tool is incredibly helpful, as it eliminates the need for custom debug code at least for the stencil buffer.
https://github.com/alexanderameye/stencil-debugger
#stencil #debug
Stencil Debugger is a utility for visualizing the stencil buffer in Unity URP. This is especially useful for debugging rendering effects that rely on the stencil buffer.
It's been a while since I last debugged a shader, and it was far from trivial—I had to write shader code just to render the debug info into a texture. So this tool is incredibly helpful, as it eliminates the need for custom debug code at least for the stencil buffer.
https://github.com/alexanderameye/stencil-debugger
#stencil #debug
🔥17👍1
Reveal-By-Progress-Shader-For-Unity: A custom shader for Unity that reveals an object based on a progress value.
This effect is based on an old tutorial by Alan Zucconi. It's great to see a complete implementation that can be easily used for prototyping. Currently, it supports only the Built-in Render Pipeline.
I have seen this revealing effect in a lot of hyper casual games. Moreover, it can be modified for other purposes—for example, cutting off dark vertices entirely to imitate a 3D printing mechanic.
https://github.com/AnhPham/Reveal-By-Progress-Shader-For-Unity
#shader #reveal #builtin
This effect is based on an old tutorial by Alan Zucconi. It's great to see a complete implementation that can be easily used for prototyping. Currently, it supports only the Built-in Render Pipeline.
I have seen this revealing effect in a lot of hyper casual games. Moreover, it can be modified for other purposes—for example, cutting off dark vertices entirely to imitate a 3D printing mechanic.
https://github.com/AnhPham/Reveal-By-Progress-Shader-For-Unity
#shader #reveal #builtin
GitHub
GitHub - AnhPham/Reveal-By-Progress-Shader-For-Unity: A custom shader for Unity that reveals an object based on a progress value.
A custom shader for Unity that reveals an object based on a progress value. - AnhPham/Reveal-By-Progress-Shader-For-Unity
👍7🔥4
Unity_StarRail_CRP_Sample
An example of a custom rendering pipeline that recreates the rendering of HSR
https://github.com/ChillyHub/Unity_StarRail_CRP_Sample
Custom rendering pipeline doc: https://github.com/ChillyHub/Unity_StarRail_CRP_Sample/blob/main/Documents~/RenderPipeline.md
#render #urp
An example of a custom rendering pipeline that recreates the rendering of HSR
https://github.com/ChillyHub/Unity_StarRail_CRP_Sample
Custom rendering pipeline doc: https://github.com/ChillyHub/Unity_StarRail_CRP_Sample/blob/main/Documents~/RenderPipeline.md
#render #urp
👍11🔥6
How to Use Dependency Injection with ECS
A new post on my blog.
I’ve seen this question come up quite often in ECS discussions, so I decided to share how I typically integrate Dependency Injection containers with ECS — complete with the simplest working example on GitHub. To me, such a setup always feels more convenient and more efficient. But it doesn't mean it is the only or the right way to work with it. If you prefer the Entities approach, or a manual setup of dependencies via the inspector in Morpeh, then that is also okay.
https://gamedev.center/how-to-use-dependency-injection-with-ecs-for-scalable-game-development/
Repo: https://github.com/AlexMerzlikin/ECS-DI-Sample
#ecs #di
A new post on my blog.
I’ve seen this question come up quite often in ECS discussions, so I decided to share how I typically integrate Dependency Injection containers with ECS — complete with the simplest working example on GitHub. To me, such a setup always feels more convenient and more efficient. But it doesn't mean it is the only or the right way to work with it. If you prefer the Entities approach, or a manual setup of dependencies via the inspector in Morpeh, then that is also okay.
https://gamedev.center/how-to-use-dependency-injection-with-ecs-for-scalable-game-development/
Repo: https://github.com/AlexMerzlikin/ECS-DI-Sample
#ecs #di
gamedev.center
How to Use Dependency Injection with ECS for Scalable Game Development
Using Dependency Injection with ECS simplifies system management and improves scalability. A DI container like VContainer automates system setup, reducing boilerplate. In this post, I share my experience, demonstrate DI integration with ECS, and provide a…
🔥12👍4
Post for those who struggle with motivation to finish their projects.
I came across a study that shows writing down your goals and sharing them with a friend can really help you achieve more (kinda obvious, but proves this point once again). Here are the details:
Participants: 267 people from different backgrounds.
Groups:
Group 1: Just thought about their goals.
Group 2: Wrote their goals down.
Group 3: Wrote goals + made action plans.
Group 4: Wrote goals + action plans + told a friend.
Group 5: Wrote goals + action plans + sent weekly updates to a friend.
Success Rates:
Group 1 (Unwritten Goals): 43% success rate.
Group 2 (Written Goals): 64% success rate.
Group 3 (Written Goals + Action Plans): 68% success rate.
Group 4 (Written Goals + Action Plans + Shared with a Friend): 70% success rate.
Group 5 (Written Goals + Action Plans + Weekly Progress Reports to a Friend): 76% success rate.
The study shows that each step—writing down goals, making action plans, and sharing progress with a friend—increases the likelihood of achieving those goals.
Download the report: https://scholar.dominican.edu/cgi/viewcontent.cgi?article=1002&context=psychology-faculty-conference-presentations
Conclusions:
1. The positive effect of accountability was supported: those who sent weekly
progress reports to their friend accomplished significantly more than those who
had unwritten goals, wrote their goals, formulated action commitments or sent
those action commitments to a friend.
2. There was support for the role of public commitment: those who sent their
commitments to a friend accomplished significantly more than those who wrote
action commitments or did not write their goals.
3. The positive effect of written goals was supported: Those who wrote their goals
accomplished significantly more than those who did not write their goals
I’ve been creating TODO lists and full-blown project boards with a backlog, milestones, and sprints using various tools for quite a while. Right now, I’ve settled on Notion and use various templates there for each new prototype. It hasn't helped me finish many recent games, though.
So with my latest prototype, I’m now trying the “Written Goals + Action Plans + Weekly Progress Reports to a Friend” method to see if it helps me reach a first playable prototype more successfully. I'm curious to see how it goes.
If you're interested in hearing more about my progress and how I'm applying this to my game, let me know by reacting to this post.
🔥 – Post progress updates here in this channel
💯 – Post progress updates, but in another channel; leave this one only for references to interesting posts
👎 – Don’t post updates anywhere 💀
I came across a study that shows writing down your goals and sharing them with a friend can really help you achieve more (kinda obvious, but proves this point once again). Here are the details:
Participants: 267 people from different backgrounds.
Groups:
Group 1: Just thought about their goals.
Group 2: Wrote their goals down.
Group 3: Wrote goals + made action plans.
Group 4: Wrote goals + action plans + told a friend.
Group 5: Wrote goals + action plans + sent weekly updates to a friend.
Success Rates:
Group 1 (Unwritten Goals): 43% success rate.
Group 2 (Written Goals): 64% success rate.
Group 3 (Written Goals + Action Plans): 68% success rate.
Group 4 (Written Goals + Action Plans + Shared with a Friend): 70% success rate.
Group 5 (Written Goals + Action Plans + Weekly Progress Reports to a Friend): 76% success rate.
The study shows that each step—writing down goals, making action plans, and sharing progress with a friend—increases the likelihood of achieving those goals.
Download the report: https://scholar.dominican.edu/cgi/viewcontent.cgi?article=1002&context=psychology-faculty-conference-presentations
Conclusions:
1. The positive effect of accountability was supported: those who sent weekly
progress reports to their friend accomplished significantly more than those who
had unwritten goals, wrote their goals, formulated action commitments or sent
those action commitments to a friend.
2. There was support for the role of public commitment: those who sent their
commitments to a friend accomplished significantly more than those who wrote
action commitments or did not write their goals.
3. The positive effect of written goals was supported: Those who wrote their goals
accomplished significantly more than those who did not write their goals
I’ve been creating TODO lists and full-blown project boards with a backlog, milestones, and sprints using various tools for quite a while. Right now, I’ve settled on Notion and use various templates there for each new prototype. It hasn't helped me finish many recent games, though.
So with my latest prototype, I’m now trying the “Written Goals + Action Plans + Weekly Progress Reports to a Friend” method to see if it helps me reach a first playable prototype more successfully. I'm curious to see how it goes.
If you're interested in hearing more about my progress and how I'm applying this to my game, let me know by reacting to this post.
🔥 – Post progress updates here in this channel
💯 – Post progress updates, but in another channel; leave this one only for references to interesting posts
👎 – Don’t post updates anywhere 💀
🔥23👍3💯1
Quick and Dirty PlayerPrefs Persistence with VContainer
Lately, I’ve been deep into prototyping, and I’m always on the lookout for quick patterns that speed up the boilerplate. This blog post by Vigrid shares a neat way to persist data using PlayerPrefs and VContainer with minimal setup.
While the original example uses VContainer, the pattern is container-agnostic—you can adapt it easily to any DI framework you're using.
https://vigrid.gg/blog/2025/05/quick-and-dirty-playerprefs-persistence-with-vcontainer/
#save
Lately, I’ve been deep into prototyping, and I’m always on the lookout for quick patterns that speed up the boilerplate. This blog post by Vigrid shares a neat way to persist data using PlayerPrefs and VContainer with minimal setup.
While the original example uses VContainer, the pattern is container-agnostic—you can adapt it easily to any DI framework you're using.
https://vigrid.gg/blog/2025/05/quick-and-dirty-playerprefs-persistence-with-vcontainer/
#save
👍9🔥2
Is your AI safe? Threat analysis of MCP (Model Context Protocol)
Cyber Ark finished digging into the Model Context Protocol (MCP) security model and found some nasty vulnerabilities that could seriously mess with devs using AI coding tools.
Quick Context: MCP is what lets tools like Claude Desktop and Cursor connect to external services and your local files. Basically, it's an API layer for AI apps.
The Problems:
- Malicious Tool Registration: Attackers can publish “helpful” tools that actually steal your code or secrets
- Server Chaining: Legit servers can quietly route requests to malicious ones
- Hidden Prompt Injection: Servers can embed invisible instructions that hijack the AI
- Weak Auth: Most MCP servers don’t really check who’s calling them
Why It Matters:
If you’re using AI coding assistants with MCP:
- Your codebase could be exfiltrated
- API keys in env vars are exposed
- Custom integrations might be backdoored
Quick Fixes:
- Stick to verified MCP servers
- Check the official registry
- Read server code before installing
- Don’t keep secrets in env vars if using MCP
- Use clients that require approval before calling tools
This is what happens when we rush to plug AI into everything without thinking about security. MCP’s flexibility is a double-edged sword.
I have personally been trying various MCPs for quite a while since they started to become popular. While I was concerned about security, not gonna lie, I didn't put enough effort into reviewing every MCP server myself (it is open source and totally safe, right? 💀), as I was focused on adding new features to multiple prototypes I've been working on lately and was more concerned about the tool's efficiency and how it improves the workflow rather than its security. What's more, I see some companies also pushing for MCP adoption, and I hope they pay more attention to security than I did with my prototypes.
Do you use any MCP for game dev and find it helpful?
Worth a look if you’re building or integrating with MCP
https://www.cyberark.com/resources/threat-research-blog/is-your-ai-safe-threat-analysis-of-mcp-model-context-protocol
#ai #mcp
Cyber Ark finished digging into the Model Context Protocol (MCP) security model and found some nasty vulnerabilities that could seriously mess with devs using AI coding tools.
Quick Context: MCP is what lets tools like Claude Desktop and Cursor connect to external services and your local files. Basically, it's an API layer for AI apps.
The Problems:
- Malicious Tool Registration: Attackers can publish “helpful” tools that actually steal your code or secrets
- Server Chaining: Legit servers can quietly route requests to malicious ones
- Hidden Prompt Injection: Servers can embed invisible instructions that hijack the AI
- Weak Auth: Most MCP servers don’t really check who’s calling them
Why It Matters:
If you’re using AI coding assistants with MCP:
- Your codebase could be exfiltrated
- API keys in env vars are exposed
- Custom integrations might be backdoored
Quick Fixes:
- Stick to verified MCP servers
- Check the official registry
- Read server code before installing
- Don’t keep secrets in env vars if using MCP
- Use clients that require approval before calling tools
This is what happens when we rush to plug AI into everything without thinking about security. MCP’s flexibility is a double-edged sword.
I have personally been trying various MCPs for quite a while since they started to become popular. While I was concerned about security, not gonna lie, I didn't put enough effort into reviewing every MCP server myself (it is open source and totally safe, right? 💀), as I was focused on adding new features to multiple prototypes I've been working on lately and was more concerned about the tool's efficiency and how it improves the workflow rather than its security. What's more, I see some companies also pushing for MCP adoption, and I hope they pay more attention to security than I did with my prototypes.
Do you use any MCP for game dev and find it helpful?
Worth a look if you’re building or integrating with MCP
https://www.cyberark.com/resources/threat-research-blog/is-your-ai-safe-threat-analysis-of-mcp-model-context-protocol
#ai #mcp
Cyberark
Is your AI safe? Threat analysis of MCP (Model Context Protocol)
Unless you lived under a rock for the past several months or started a digital detox, you have probably encountered the MCP initials (Model Context Protocol). But what is MCP? Is this just a...
🔥6👍2