Yesterday before logging off, I had an agent generate an audit report on which VFX graph properties need scaling when bodyScale changes its value. I’ve been reviewing the audit, and in turn looking through various components. In doing so, I noticed that my tdRadius value does not link in any way to the actual scale of the trail distorter game objects. I’m sure I’ll find more bugs like this.
Well, that was actually the only bug I found. I did quite a bit of infrastructure enhancing in my graph to prepare it for an impending agent handoff. The plan is to add a new VFX tab in the in-game settings menu exposing VFX graph properties for live tuning and to auto-tune all necessary values when bodyScale changes.
In the audit report, the agent flagged a bunch of inline values that needed to be exposed so that they could be multiplied by bodyScale in the C# scripts (I decided against doing the scaling inside the graph for obvious clunkiness reasons). I originally intended for the handoff agent to create, expose, and wire these properties for me but thankfully changed my mind—I’m making some big changes here and the last thing I need is a fucked up VFX graph. It’s not like I’m in a rush.
It’s funny, because at the same time I’m working on this project, I’m also developing a project for a client that has been completely agent-driven; I’m far less meticulous in reviewing that codebase than this one. I guess you could say I’m a sellout for the world but not for my own art. On the other hand, though, perhaps this is a reminder that I need to start being more hands-on in the client work; its codebase just feels so far outside my grasp and I’m not sure that can be reconciled at this point. I’ve spent a lot of time in that work project creating auto-review mechanisms for agents because I figure they’ll do a better job reviewing the code since they at least know how it all works. The best thing I came up with is a slash command I run periodically that has an agent quiz me on that project’s architecture so that I can at least appear to have a sense of know-how when asked in meetings. Enough work rambling—that’s beyond the scope of this blog and besides, I don’t need the client or my boss reading this.
During the audit of my graph the agent had trouble reading a particular connection and found a blind spot in my VFX Graph CLI. Essentially, the CLI’s describe tool couldn’t report wires connected to the individual sub-parts (like the x or y) of any bundled/compound slot even though it read the slot’s overall value fine. Now that I’ve figured out how to switch ports on the Unity CLI Bridge in the Unity Editor to give agents the ability to inspect multiple open Unity projects at the same time, I was able to implement the fix in a single pass by letting my HandEffects graph demonstrate the issue so fixes could be issued in the UnityCliBridge test project.