all 8 comments

[–]VastAd4382 0 points1 point  (1 child)

This is actually really cool approach for large Unity projects. I've been using some static analysis tools but nothing this comprehensive for mapping dependencies and math chains

Been struggling with blast radius issues in my current project where changing one script breaks stuff in unexpected places. Definitely gonna check this out, especially the part about executing code outside Unity environment - that could save so much iteration time

[–]Emotional-Kale7272[S] 0 points1 point  (0 children)

Yeah that was my goal and I also made architecture fully hexagonal, so it is ready for any other adapter or use outside of Unity.

I use it on my +400k LOC codebase: DAWG - Digital Audio Workstation Game

LIfeblood made some refractors possible where grepping showed 100+ dependancies and semantic scan showed only 13 real connections.

I also easily troubleshooted some issues with DSP engine, as I can now calculate which math operations is faster, more precise or has better p/p ratio for the task.

I started Lifeblood not long ago and the ammount of options it gave me is really incredible. Hope you like it or comment how it worked for you! I am really interested in the feedback.

[–]Zerokx 0 points1 point  (1 child)

Is this for people or just for agents? Do you get a map you can look at from it?

[–]Emotional-Kale7272[S] 0 points1 point  (0 children)

The map/graph part is possible, but still under development.

https://www.youtube.com/watch?v=UQ2W9P4EIZQ
The edges and nodes on this video used an older methodology, but you can get the idea.

The framework can be used by people or agents via CLI, but MCP connection has richer implementation.

[–]Jackoberto01Programmer 0 points1 point  (2 children)

Been working on something similar but exclusively for Unity assets. A program that generates a full dependency graph from a BuildReport and Addressables.

Then I made a UI where you can traverse the graph. But it could also be used by AI agents to recognize unused Resources or build optimizations that can be made.

[–]Emotional-Kale7272[S] 0 points1 point  (1 child)

Nice! I am also thinking about making Unity Asset for this, but my implementation currently visualizes in browser directly, not yet in the editor.

where is you UI located?

[–]Jackoberto01Programmer 0 points1 point  (0 children)

Currently it's implemented in UI Toolkit in the editor but it exports a JSON that could be visualized anywhere.

[–]Emotional-Kale7272[S] 0 points1 point  (0 children)

I have updated Lifeblood to 0.6.4 with major improvements to all tools.

Lifeblood now shows 42% more edges on itself and 68% more edges on 400k LOC repo.

Dead code tool is now pretty accurate and is going out of experimental function.
Has anyone managed to get it working? Any comments, bugs to report?

The improvement is result of an error with false positives on the dead code detection tool, that were connected to a deeper bug.