Week 36/2013: Control Panel replaced

edited 2013 Sep 13 in Developers
Last week I made a lot of progress with the new UI and replaced the old Control Panel.

The pages of the Control Panel were replaced with dialogs that can be accessed via the task bar. However, this made the DE menu a bit long, so I moved the settings dialogs to their own "gear" menu. Also, the dialog style was tweaked to include a title for each dialog. Here is a screenshot of the new Renderer Settings dialog:

renderer_settings.jpg

As you can see, this includes only the high-level settings of the renderer. The old Control Panel had several pages reserved for various features of the renderer, and it didn't seem like the best solution to simply create corresponding dialogs for each. Instead, I added a new kind of sidebar editor (first time ever in Doomsday) that lets one adjust the settings while actually playing the game. This naturally makes it much easier to set everything to the appropriate values. Also, it is now possible to reset settings to their default values through the GUI. This was always a big issue with the old Control Panel. Below is a screenshot of what the new sidebar editor looks like:

appearance_editor_500.jpg

The settings groups are foldable, so one can focus on the relevant settings.

However, we are not expecting you to adjust everything yourself. We plan to include a few built-in appearance profiles in 1.12, for instance "Retro" and "Enhanced."

As I mentioned, there are now separate dialogs for each subsystem of the engine. New dialogs include Audio Settings, Network Settings (although the old network settings aren't relevant any more), and Input Settings with a new UI for adjusting mouse axes. The Video Settings dialog was also tweaked so that the "Mode" setting only affects the fullscreen mode.

All of these changes mean that the old Control Panel is now fully redundant, and has been removed from the engine. Now the last remaining piece of the old GUI is the multiplayer server connect UI.

Since I run Doomsday a lot in a window during development, I've been thinking that the camera FOV angle needs to better react to window aspect ratio changes. I modified the FOV angle calculations so that the configured FOV angle is interpreted to mean the FOV angle that one would have on a 4:3 display, even though you are running on a 16:9 display mode. The benefit is that one doesn't have constantly keep tweaking the FOV angle to suit the current window size.

Note: The sidebar editor and other UI enhancements haven't been merged to the master branch yet, so presently they are not available in unstable builds.

The 1.12 release has been scheduled for the end of September, which means we'll be entering Candidate phase around mid-September. Until then I will be continuing work on refining the new UI elements.

Comments

  • Last week I continued work on improving map hack support.

    Unlike previous weeks this time I focused on how the supported map hacks interact with rendering features such as dynamic lighting. Glowing surfaces under "fake 3D bridge" constructs being the most obvious issue I decided to tackle these first. I actually ended up reimplementing most of the dynamic lighting components and much of their management. As of now all supported map hacks work harmoniously with dynamic light source projection, halo occlusion and any glowing surfaces visually appear to cast light as one would expect. In the process of which, I found and fixed various bugs with halos and lens flares plus a case of HOM at the start of ksutra.wad MAP03.

    There isn't a great deal for me to talk about this week as most of my time was spent on refactoring existing code and systems.

    One remaining task on this front is where light decorations are used in map hacks involving mapped sector planes. Presently decorations from the wrong plane are used (e.g., resulting in a halo beneath the floor in some cases).

    My plan for this week is to address this issue and then finish up on map hacks by implementing support for the "fake plane" class of hack. I'll also be switching some of these to use dynamic interpretation (e.g., when a surface material changes we need to re-evaluate).
  • Will the MP server GUI be converted to the new UI for 1.12, or will that come in 1.13?
  • Vermil wrote:
    Will the MP server GUI be converted to the new UI for 1.12, or will that come in 1.13?
    I may not have enough time to finish the MP GUI for 1.12, so it is probable that it will be left to 1.13. Instead of the MP GUI, I'm planning on focusing on candidate stuff like polishing and bug fixing.
  • I like the new renderer appearance menu, but I wonder if the headings should visually be buttons, to help identify them?

    The Dday forums may use yellow text for links everywhere, but this is the only place in the Dday UI to use them as clickable things (in the rest of the UI, yellow text is used for unclick able headers).

    I wonder if the taskbar renderer option should go straight to the new renderer appearance menu instead of a renderer sub menu first. What is in that sub menu would be merged into the video and renderer appearance menus?

    I'm personally not sold on the need for screen resizing when the rendering menu is open, but I understand people wish to show off ;)
Sign In or Register to comment.