Wait this can't be related the Hunt Down The Freeman, can it?
Wait this can't be related the Hunt Down The Freeman, can it?
I need to know more...
Go to bed with 34 open bug reports after closing a dozen, feeling accomplished.
Wake up to 77 open bug reports.
One inch of black water on deck in berthing? Just another day in the navy.
EVE's ship designs have always done such a great job of not giving a damn and just being their own thing.
The good news is I can't remember the last time @unity.com actually finished a feature, so I assume this cynical attempt at bumping their stock price will evaporate just like all the others.
This style of light doesn't really appear in animation anymore. You know it when you see it -- it's bright, hot and almost dangerous.
Our new issue explores the tricks behind it, and how one artist has revived the look for the digital age: animationobsessive.substack.com/p/dangerous-...
An orange and white cat sitting at my feet with one paw raised and her ears pulled back, yearning for a half cup of soft butter being held near the camera.
Should I give her a half cup of soft butter? (She really wants it)
It never stops feeling cool seeing my game get mentioned on Spacedock. You're going to love the Mercator class in the campaign too, Hooj.
After working myself to near-death for the entire month of January to get my singleplayer campaign code feature complete, I can now focus on the fun stuff: art, lighting, shaders, and story.
Just kidding, now I have to switch back to main branch and deal with multiplayer balance. ๐
I feel genuinely awful for the Highguard devs. They wouldn't be the hate du jour if someone *else* hadn't overhyped their game *for* them. Especially maddening to see other game devs join in, who know exactly how many years of peoples' lives are being dragged right now. Why are we eating our own?
I really loved the Trans rep in The Pitt S1. It's such a simple, mundane, blink-and-miss-it slice of what we deal with every day. The fact that the doctor, with everything else going on in the ER that day, cared enough to find the time to fix her records without being asked was really heartwarming.
It's a family shibboleth for hard games now too: "Is it Ecco-The-Dolphin-Hard?"
My little sister got the PS2 version of this game because she wanted to play with dolphins, and then when we realized it was actually a good game the whole family became obsessed with it. We never got past the alien mothership level though, it was too dark on our TV and we couldn't find our way.
I just spent 14 straight hours merging two branches that have been steadily accumulating overlapping changes in 1,600 files for almost a year. Protip: don't let your feature branch stay isolated for that long. Now the fun part of slowly uncovering all the things the merge broke begins... #gamedev
It doesn't matter that it was "for kids", Infinity Train is my favorite show, animated or otherwise, and I've watched it through at least a dozen times with anyone who would let me show it to them. It was my go-to comfort on deployment. Thanks so much for making it.
A blurred screenshot of a piece of C# code, half of which is large paragraph-style comments.
You know it was annoying problem when it results in a method that is 50% comments by volume. #gamedev
Unity Addressables is really neat but wow whoever designed it seems to really hate modders and anyone who tries to make their game moddable.
A gray cat sitting on the lap of a woman wearing a blue flannel, paws over her arm on the desk, squinting at the computer screen behind the camera and looking unamused.
Code review. She doesn't look too impressed...
I'm glad this is finally fixed, there's few things more frustrating than having your last missile make it through PD only to do nothing because of bad luck. Thanks to our tester Imaginary Lobster for figuring out the reliable repro steps that allowed me to investigate and fix this.
The final code for fixing the issue: // Integrate velocity directly instead of using AddForce because with AddForce // the modified velocity will not be calculated and set until the end of the // FixedUpdate when the physics solver runs. This results in the missile // potentially skipping past the end of its lookahead raycast and phasing through // objects. This was also the root cause of "the clonk" bug. _body.velocity = Vector3.ClampMagnitude(_body.velocity + (thrustVector * (motor / _body.mass) * Time.fixedDeltaTime), speedLimit);
While it was hard to find the root cause, in the end the solution was simple: remove the AddForce call in favor of integrating the velocity for the body manually. That way I could be sure the velocity I was using the do the lookahead raycast was always accurate.
Once I had repro steps and could see where it was failing, a quick fix for the clonk could have involved UV sampling against the entire collider group, not just the detected collider, but I had an inkling there was more at play that was causing, or would cause, other issues if I didn't keep digging.
The example above is interesting because of the stacked colliders, which causes the clonk. If there is no other collider below this actually results in the missile just passing straight through the target, though that was rarer.
Because there is a hole (another collider sits on top, the one it missed) no UV is sampled. Without the UV to know where to check for armor penetration (remember this is main branch, old armor system not the fancy new one I've talked about here before), the missile detonates but does no damage.
The convex version is required by Unity for dynamic objects for performance reasons, so any holes are covered up. That means a ray can hit this collider even though there shouldn't be anything there.
A comparison of the full mesh collider and the giftwrapped convex collider used for physics calculations. The full collider has a hole corresponding to the bottom platform on the hull, while the giftwrapped one does not.
The collider it hits is the one on the right, which is used on the physical hulls. This is a giftwrapped convex version of the left collider. After the hit is detected the UV to apply armor damage at is sampled using the collider on the left. You can see there is a hole there.
An example of the raycast gap falling perfectly on the edge of a hull surface, causing it to not be detected before the missile steps through it.
Here's an example on the bottom of the Ferryman. The gap goes across the bottom edge of the collider, but because there is also a collider underneath it still detects a collision.
In the first image you can see a gap between the end of the lookahead raycast and the solved position, because the raycast is calculated with the velocity post-capping (but pre-physics-solving). If this gap happened to align on the edge of a hull's collider we get an instance of this bug.
This meant all missiles could have one fixed frame worth of additional acceleration above their advertised cap, about 25m/s in the case of this rocket. The effect, and thus likelihood of the bug occurring, was more pronounced with high acceleration missiles like hybrids and rockets.
These weapons have a capped speed, and the order of operations is a killer. I was using AddForce(Impulse) to apply the thrust, and then capping the velocity immediately after, but Unity only applies the sum of all impulses after FixedUpdate completes.