Devlog Week 32

A quick summary of this week’s development

Accessibility

I tested a “one handed” mode, using only the mouse. It’s just an experiment for the moment.

One-handed mode gameplay
One-handed Layout

I posted the video on twitter and I got some great feedback and tips. I noted things down and I’ll work on it more in the future. I got told to have a look at Microsoft’s accessibility guidelines, which is a great resource and very well written. Special Thanks to Antonio I. Martínez and Adam Kosakowski for the help.

I also improved the way the high visibility and alternative font is handled, now it’s much easier to switch between the two (or any other style). There is no visual or mechanical change.

High visibility mode

Settings

I thought I’d make the settings and menus in 3D space. So instead of having a regular menu, the player is spawned in a corridor. You can go inside the “graphics” or “controls” or “level select” rooms, or just start/load a game by interacting with the appropriate object (can be a button, screen, computer, lever…etc). This uses the already existing dialog and interaction system, but with an added function that executes console commands depending on which option you pick.

Here is a working proof of concept

The settings are stored in the game instance and set up when the level loads. The only requirement is that it’s a console command, but creating custom ones (eg. for the high visibility font) is straightforward.

Proximity fading:

I added proximity fading to the player material, to hide the model if it gets too close to the camera. This is especially useful when the player is close to a wall and obstructs the view.

Proximity Fading

This also helps when the player is talking with an NPC while standing in front of the custom camera.

I used dithered masking instead of actual blended transparency because it’s more reliable, more performant, and doesn’t cause rendering issues with other transparent objects. The downside is the visual effect, especially with TAA, but it can be improved by switching to MSAA instead, which is exposed in the settings.

Player character

I worked a little bit more on the player model, and this time I imported it to Unreal and replaced Manny with it. It looks decent, but there is still a lot of work remaining on it.

The animations and skeleton don’t look great, they’re too “actiony”. So I think I’ll scrap those and start again from scratch with my own rig and animations.

Robot model sketch

Misc:

I fixed the few bits of code that remained, and then fully tested the demo with the new interaction system. Everything works correctly.
I made new builds to test on the Steam Deck. Everything looks and works correctly.
More minor bug fixes.

That’s all for week 32. Thanks for reading, and I’ll see you next week!

Leave a Reply

Your email address will not be published. Required fields are marked *