Map
You know what would be cool? An in-game map so you can find where you are without using a web-page and a bunch of console commands. You know what would be cooler? If the map was an item you crafted. You know what would be even cooler? If it had persistent
fog of war, you could draw on it, and it could be looted.
The basic usage is this: craft it, then put it in your belt bar. It needs to be in your belt to be active. When it's active and you're walking around, it will update the visibility automatically. You can open it holding the map key (default G). To draw on it you just press the right mouse button to unlock the cursor.
We have a bunch of future plans depending on how it works out, but for now you have no idea how totally sick I am of looking at this map. You have no idea how much I hate Unity's RectTransform coord translation stuff. I have suffered through it all for you.
UI Speedups
The UI should feel a bit snappier now. This is particularly apparent when opening the inventory menu. I saw consistent times of 50ms+ when scrolling around the map completely disappear.
UnityUI has a setting for "pixel perfect", which you use if you want your UI to be pixel perfect. Our UI scales with the screen size and we don't need that enabled, so I turned it off. BAM! Shitloads faster UI.
Speedtree Aren't Speedy
I've been looking into performance again this week, because it fucking sucks that people with BEAST computers are getting shitty framerates. I added a render timings thing to the F2 menu, which renders the camera in a bunch of different scenarios, and it revealed something pretty interesting.
What this is telling us is that on average a normal frame takes around 11.5ms - with no terrain it takes about 11ms. With no trees it takes 4ms. So rendering trees is taking the majority of the frame.
We had more trees in Legacy. A shit-ton more, but Unity could handle it because of these settings...
But most of these settings don't work anymore. If they worked properly, exposing these settings in the tweak menu would solve a buttload of performance issues with have with the trees right now.
The way trees are handled and culled internally in Unity must be slower with a large amount of them now too, because we get the frame rate drop even if we're nowhere near trees, and not looking at any trees, and the shadows aren't being rendered.
Unity's support said for us to get
this issue bumped up to the top of their issue tracker so the developers take notice. Right now it's
third top with 64 votes, and has been for a while.
To get things kind of under control we're lowering the amount of spawned trees. There should be less than half the amount of trees after this update, which should hopefully give everyone a nice frame-rate boost.
Other Stuff
- Fixed missing feet in player shadow.
- Fixed shadow jitter when dead/wounded/sleeping.
- Fixed accidentally dropping items between inventory cells.
- Fixed blue shirt collisions (was scaled 100x).
- Fixed metal plate collisions (was scaled 0.3x).
- Fixed hazmat helmet collisions (was scaled 100x).
- Console history is less terrible.
- Player animation performance.
- ShaderLOD is clamped (was being used to see through walls).
- Ban command bans family share owner ID too (if family shared).
- Status command shows family share owner.
- Status command can take a player filter string.
- Fixed clearing a texture creating a bunch of garbage collection that caused performance spikes.
- Banned Fake Servers.
I'm going to have more fun next week. The map burned me out. So I'm going to have fun implementing a bunch of stuff we have backed up.
I'm going to look at asset bundles again to see if they'll speed up our build process and our upload process - because right now it's taking an hour to upload to Steam and that's slowing up our iterations a lot. I guess I'm gonna be helping out Helk with stage two of his research stuff too.