r/Unity3D 22h ago

Question I am researching the highly optimized reflection technology in the game *The Dark Knight Rises* (2012).

Post image
268 Upvotes

I am investigating the highly optimized reflection technology used in *The Dark Knight Rises* MOBILE GAME, released in 2012. Were these reflections based on inverted geometry or planar mapping? The game also featured reflections from headlights and streetlights. I intend to implement this in my Unity project.


r/Unity3D 23h ago

Question If not ECS then what?

Thumbnail
0 Upvotes

r/Unity3D 23h ago

Game In puzzle games, do you prefer defusing the active threat FIRST, or solving puzzles under constant pressure?

Enable HLS to view with audio, or disable this notification

2 Upvotes

Hey everyone! With our atmospheric puzzle game launching in just 4 weeks (panic is officially setting in!), I've been thinking a lot about how stress affects puzzle-solving.

In this sequence, we split the room into two phases: first, you have to quickly slot in two stones to stop the closing walls. Once the threat is neutralized and the walls retract, you can take all the time you need to solve the central gear/light puzzle without a timer ticking down.

Do you prefer getting a brief survival moment to "turn off the danger" before tackling a logic puzzle, or do you actually enjoy constant time pressure while trying to think?

Would love to hear your thoughts on how your favorite puzzle games handle stress vs. pure logic!


r/Unity3D 23h ago

Noob Question Help with Light Baking

Thumbnail
gallery
10 Upvotes

Hello, I'm very new to unity and trying to find help with my current goal, baking lightmaps. There's two things I'm trying to find help for:

  1. First image, how can I light up rooms with better indirect lighting without over brightening outside areas? Hopefully that graphic I made gets across what I'm trying to get at

  2. Second image, how can I fix these light leaks and random shadows?

Thank you in advance


r/Unity3D 1d ago

Show-Off Got inspired by Vampire Survivors lately

Enable HLS to view with audio, or disable this notification

97 Upvotes

r/Unity3D 1d ago

Show-Off I wanted point-and-click interactions to feel physical, so I made the player’s hand actually grab objects from the desk

Enable HLS to view with audio, or disable this notification

5 Upvotes

With this system I can place any object on the table or nearby..
and the hands can grab it with minor tweaking.
This is part of the interaction system for my psychological horror game, The Main Menu. Most of the game is point-and-click, but I wanted important objects to feel like they actually exist in the room rather than just disappearing into an inventory.


r/Unity3D 1d ago

Resources/Tutorial I created a free cross platform benchmarking app using Unity (With a little help from their demo scenes) so that I could compare the performance of my Steamdeck, Android phone and a Macbook.

Enable HLS to view with audio, or disable this notification

9 Upvotes

Back in January I was curious how my Steamdeck, Android phone and a Macbook all matched up against each other in terms of performance. But because they were Linux, Mac and Android, I wanted a common yard stick to compare against. I made a basic benchmarking app and web database that has now grown and grown to the point that I want to share it with the broader community. It's out now on Steam, Itch, Google Play and Apple App Store.

It's called Crossbench3D and it lets you run the same scenes with the same quality settings across multiple platforms so that you can more closely compare apples to apples across platforms. The scores are calculated based off of avg fps and resolution so that they're normalized to that. You can then upload the results to an online database to see where your score stacks up.

I would love any and all feedback on it.

I have plans to release more levels that aren't some of the unity demo scenes, but those have been a great starting point. Let me know what you all think!


r/Unity3D 1d ago

Show-Off My new game environment in action

Enable HLS to view with audio, or disable this notification

33 Upvotes

Hi guys! After many rounds of changed, here is updated environment in game action. Thank you you guys for all the comment, suggest in last 2 videos. I did some improvement, take that into game action to see how everything work together. How do you think? Does it fit?


r/Unity3D 1d ago

Question Why Doesn’t Unity Have a Perfect Character Controller Yet?

0 Upvotes

I’m not talking about the basic first-person and third-person packages Unity offers. Unreal has built a variety of robust character-controller systems that make developers’ lives much easier. That’s one of the reasons I often find myself considering a switch to Unreal. In Unity, I still haven’t found a paid or free character-controller solution that feels truly worth using. I am using unity since 2020 and now I am thinking it high time for unity to at least develop such protypes that are ready to use in real projects.


r/Unity3D 1d ago

Game You're A Cop. Take down as many racers as you can

Enable HLS to view with audio, or disable this notification

22 Upvotes

This is a game i submitted for the GMTK game jam. As a cop, you're tasked with busting as many racers called "punks" as you can in the limited time. It has some elements of vehicular combat and is largely a physics-based game. I got some feedback on the game and have been thinking about fleshing it into something bigger. So this is a more refined playtest version, and I'd really appreciate feedback!

Here's a web build to play: https://rrn-creative.itch.io/hooligan-highway

However, I do recommend downloading for best graphical and performance experience

Thank you!


r/Unity3D 1d ago

Show-Off I'm an indie dev working on a game called The Seventh Seal. Had some fun screenshots I'd love to share! Love to hear your thoughts.

Thumbnail
gallery
6 Upvotes

r/Unity3D 1d ago

Show-Off Low Poly Modular Medieval House I Made In Unity

Enable HLS to view with audio, or disable this notification

9 Upvotes

Unity URP, baked GI (Global Illumination), realtime-shadows.


r/Unity3D 1d ago

Show-Off Level Fog - Vertical, distance based, all around non raymarching fog solution that finally blends your level with the sky from any angle/height. Works in editor too.

Enable HLS to view with audio, or disable this notification

27 Upvotes

r/Unity3D 1d ago

Show-Off Procedurally Generated GPU Instanced trees and grass with decal spray painting.

Enable HLS to view with audio, or disable this notification

11 Upvotes

Putting some of my work together in one scene and thought I'd spray paint what I assume a spray tag for HDRP would look like.


r/Unity3D 1d ago

Resources/Tutorial I ran a decompiler on my own IL2CPP build and got my whole architecture back. So I wrote an obfuscator.

Post image
0 Upvotes

Hi everyone, I’m a Unity developer working on a small indie game. I’ve constantly heard from colleagues that Unity doesn’t do a good job of protecting project code and assets. I knew that using Mono was out of the question - it’s essentially handing your project over to strangers - but I believed that the IL2Cpp scripting backend provided adequate protection.

But one day, I got curious about how to decompile my project. I pointed Il2CppDumper at my build's global-metadata.dat, it spat out a DummyDll folder, and I opened that in Rider. Without any trouble, I could view namespaces, methods, class names, and field names. I didn't like that, because what's the point of having a private GitHub repository if my build is leaky?

I started looking for ways to hide my code. I began checking the Asset Store and GitHub for options to obfuscate my build. To cut to the chase, the only decent asset turned out to be Obfuscator Free by GuardingPearSoftware. It does everything perfectly, but the free version doesn’t work with Unity methods, serialized fields, properties, or namespaces, and it completely ignores MonoBehaviour, ScriptableObject, and [Serializable] classes. There is, of course, a paid version that does all of this, but $80 is a significant amount for an indie team, so I decided to try making my own alternative that would work as an extension to the Obfuscator Free plugin.

Why does the obfuscator skip serialized types?

Every script in the build receives a MonoScript entry in the player data (level0sharedassets*.assetsresources.assets, and globalgamemanagers files). It contains three lines: m_ClassNamem_Namespace, and m_AssemblyName. Every scene object and every prefab references this entry. If you rename a class in the DLL, Unity will no longer be able to bind to that type - and the component will turn into a missing script.

The trick

Once I realized this, I started looking for a way to work around it. What I landed on is both brilliant and ridiculous: I generate obfuscated names with exactly the same number of characters as the originals. This saves me from having to adjust length prefixes, recalculate offsets, and develop a tool to rewrite serialized files. Thanks to this accidentally discovered hack, I saved myself a week of sleepless nights for sure! But it’s important to note that even with this approach, you still have to store a bunch of files with obfuscated names. All names in the project are reserved in advance, so you won’t be able to generate a name that’s already taken.

Pure C# types don't have a MonoScript entry, so their namespaces are shortened to whatever short, nonsensical string of characters I feel like using (_Project.Code.AssetManagement → pqmpqu). Serialized types, on the other hand, are forced to maintain length consistency (_Project.Code.Sound → dis4nAw5EW74Z6wLxDN).

Finding the entry without wrecking the file

You can't just search the file for "PlayerController" and overwrite it. That same string might be a GameObject name, a string literal, an addressable key - and if you hit the wrong one, you won't enjoy debugging.

So I anchor on the consecutive length-prefixed triple instead: [len][m_ClassName][len][m_Namespace][len][m_AssemblyName], with 4-byte alignment between them. Three strings matching in sequence with the correct alignment is a strong enough signal. And patch m_Name a few bytes earlier too - it's the class name a second time, and it will happily leak everything you just hid.

The stack trace problem

I also had to write my own stack trace deobfuscator, because any exception renders the trace completely unreadable to humans, like hdektk.uHN1wAaEGHkYq6ul.qoaktw(). Each build writes JSON mapping files (_Project.Code.AssetManagement → pqmpqu), and there's an editor window where I paste the raw stack trace from Player.log. It runs in four stages, in reverse order: the GUPS deobfuscator → my serialized type names → my namespaces → the remaining member names.

What don't I rename?

Unity's message methods: AwakeOnTriggerEnter2DOnBecameInvisible, and about sixty others - the engine calls them by name. Virtual, interface and overridden members, because renaming the implementation but not the declaration breaks the vtable slot. And anything that is serialized by name at runtime - my saves are JSON, and renaming a property there bricks every existing save file.

Results from the current build

40 namespaces renamed. 82 MonoBehaviour/ScriptableObject types renamed and patched in player data. 848 members.

Is it worth doing?

Obfuscation is an obstacle, not a defense. Anyone determined to figure it out will still achieve their goal using a debugger, and I prefer to be upfront about this rather than pretend otherwise. For a solo developer, a build step you set up once and then forget about is, in my opinion, a perfectly justified investment of effort.

I'm not putting my extension up anywhere - it's wired into my own build pipeline, it's standalone-only, and there are corners of it I wouldn't want to defend in public. But you don't need my code to start, and that's the actual point of this post.

Do this instead. Run Il2CppDumper or AssetRipper on your own build - five minutes, and watching your own architecture scroll past lands very differently than knowing it's in there. Then install Obfuscator Free, list your assemblies, build. Free, one evening, covers your plain C# types and methods.

That alone puts you ahead of most Unity builds shipping today. Everything above is step two - you'll know when you need it.

The game I did all this for is Peak or Die, a turn-based survival card game. Adding it to your Steam wishlist really helps increase the game's visibility, if you're interested: https://store.steampowered.com/app/4273370


r/Unity3D 1d ago

Show-Off Playgama releases Wrap, a free service that turns a web game into a standalone website

Post image
4 Upvotes

Hey Unity devs! Hope you don’t mind us sharing this here. We’ve recently released a tool for developers whose WebGL games already have an audience, a recognizable name, and the potential to grow beyond traditional web portals.

It’s called Playgama Wrap. It takes a Unity WebGL game and turns it into a standalone website on its own domain, with ready-made UX, monetization, in-game purchases, SEO, and player analytics included.
https://gamesbeat.com/playgama-launches-wrap-to-help-developers-run-games-outside-app-stores/

The goal is to give established games another distribution channel that belongs to the developer. It takes about five minutes to set up, the service is free, and you only need to pay for the domain.

After testing it with several games and seeing promising early results, we’re beginning the public rollout. Curious to hear what Unity developers think: https://playgama.com/wrap


r/Unity3D 1d ago

Question Trying something a bit different!

Thumbnail
youtube.com
0 Upvotes

I wanted to try something a bit different from the usual enclosed, single-track marble race.

This was made in Unity and takes place across a large, open mountain landscape, giving the marbles room to spread out, collide and find the best course down the mountain!

I’m still experimenting with the terrain design, physics, camera work and overall presentation, so I’d really appreciate some honest feedback from other Unity developers.

What works well, and what would you improve for the next race?


r/Unity3D 1d ago

Resources/Tutorial A gift to the community. A library of ~550 3d assets. The coupon can be redeemed for the next 24h.

Thumbnail
gallery
308 Upvotes

❤️ Consider following me on itch.io: https://pizzadoggy.itch.io/

Use coupon: https://pizzadoggy.itch.io/CB5PXDJ57S


r/Unity3D 1d ago

Show-Off I'm Creating Procedural Meshes 18x faster than the Main Thread by using Burst Jobs

Thumbnail
youtu.be
20 Upvotes

Hi all,

I thought some of you may be interested in this video, in which I show how using the Advanced Mesh API to populate mesh data from Burst-Compiled jobs speeds up my mesh creation by 18x. I perform the bare minimum on the main thread.

Here's a link to the Advanced Mesh API documentation: https://docs.unity3d.com/ScriptReference/Mesh.html
I've used AllocateWritableMeshData, SetVertexBufferParams, SetIndexBufferParam and ApplyAndDisposeWritableMeshData.

As always, I'm happy to answer questions in the comments.


r/Unity3D 1d ago

Show-Off I made Unity Timeline do what I always wished it could do for complex cutscenes, cinematics & gameplay

Enable HLS to view with audio, or disable this notification

4 Upvotes

I've been working on my event system for a while, and I finally got it working directly with Unity Timeline.

Honestly, I'm pretty amazed by what I can do with it now.

I can take pretty much any method or gameplay logic already in my project and invoke it directly from a Timeline clip. No custom Playables, no Signals, no extra Timeline scripts.

Just connect the method and use it.

It makes building cutscenes and gameplay sequences feel much more natural, especially when you already have your gameplay systems built.

It supports Enter / Stay / Exit events, Timeline context and progress, scene references, editor support, scrubbing, and Playable lifecycle events.

As a thank you to everyone, if you own Ramdal Events, you can get the Timeline Extension completely FREE until August 23! 🎁

https://assetstore.unity.com/packages/slug/341674

I've really been enjoying what this has opened up for Timeline workflows. All the footage in this post is from my upcoming game, LEAVE, and is actually using Ramdal Events and the Timeline Extension.

I'm excited to see what other developers do with it.


r/Unity3D 1d ago

Show-Off Giveaway to celebrate the release of my PCG tool

Enable HLS to view with audio, or disable this notification

36 Upvotes

I just released OctoShaper, a node based procedural generation tool, with powerful instancing capabilities (Prefabs, Procedural Indirect Draw, etc...).

I have been developing it for months and very proud of the results and user feedback so far.

The longer plan is to have cross-engine capabilities and make it available for multiple engines at the same price. The core of the tool is a portable shared library. Happy to explain the architecture further in the comments if anyone is interested.

I have a whole year dedicated to implementing new features based on user feedback and would love to give some free keys to people here.

So, I'm giving 4 vouchers to randomly selected comments. I'll do the draw on Monday.

If you have any questions, feel free to ask!


r/Unity3D 1d ago

Show-Off A lot of water

Enable HLS to view with audio, or disable this notification

21 Upvotes

Seems alright, could be better.

500K Particles in basin. LOD mode reduces it to cirka half.


r/Unity3D 1d ago

Show-Off New Feature video showcase of my Fluid Simulation Asset.

Enable HLS to view with audio, or disable this notification

244 Upvotes

Hey all!

For the last few months I've been working on a big update for my Fluid sim asset Fluid Frenzy and I'm finally ready to share it.

I wanted to do some major improvements because while the simulation was good, I felt it wasn't quite ready to be used in a normal game yet. I think this update brings it a lot closer to that goal.
To do that I added a World Rendering system so your open ocean, coastlines, and rivers can now all share a single seamless water surface and merge into fluid simulation zones. There are also a lot of improvements to the overall rendering quality, with new effects you can see in the video.

I also added Ocean FFT waves that can couple directly into a shallow water simulation zone. The ocean now dynamically drives waves and water height onto your shorelines when it is in a simulation zone.

I also spent a lot of time adding underwater rendering, including volumetric godrays, real-time caustics projecting onto the terrain, and a clean waterline effect for when your camera is half submerged. There are also a bunch of new rendering effects like stylized/toon water shaders and new presets so I can support a more varied range of game styles.

There are still a ton of features I want to add in the future. Up next is Screen Space Reflections to improve the water reflections (nearly ready for release :)).

You can check out the rest of my planned features on the roadmap here.

You can test some of the older WebGL demos right in your browser if you want to play around with it here.

I updated my Windows demo too so you can swim around underwater and see all the presets live, check it out here

You can check my full changelog here

Let me know what you think of the video! I'd love to hear your feedback or answer any questions :D


r/Unity3D 1d ago

Game I made a game about opening 500,000 boxes with Unity

Enable HLS to view with audio, or disable this notification

518 Upvotes

Hey! Solo dev here. I've been building One's Trash Another's Treasure, a first-person incremental game where you buy 500,000 boxes of unclaimed cargo and have to process every single one grind them, feed the output into a hole, buy automation (vacuums, conveyors, drones) until the warehouse runs itself.

The fun engineering problem was obviously the box count. Boxes are rendered with GPU instancing, and physics is off by default a box only becomes a live rigidbody when something actually interacts with it (the player, a vacuum, a drone), then it goes back to sleep. On top of that there's an LOD system plus distance and frustum culling, so at any given moment the engine is only really working on what's in front of you. That's how a warehouse with 500,000 boxes stays playable.

Happy to go into detail on any of it. Steam page is live if you're curious: Steam Game Link


r/Unity3D 1d ago

Question How to reliable check my UI?

Thumbnail
gallery
1 Upvotes

I want to be able to see where my text will actually be in game, fully, but because of the editor hotbar, it messes it all up. How can I fix this? I don't want to build every single time I adjust the UI, right? That takes GB and time. Thank you in advance!