Friday Devblog 45

GamesCom and optimzation

This week we were at GamesCon with a few of our games, one of which was World of Diving.

We showed WoD on the Vive virtual reality display. This display runs on 90 frames per second, which was quite a challenge to achieve. 90 fps might seem high, but is necessary to reduce the risk the user gets motion sickness from playing the game.

Even though we ran the demo on quite a powerful machine, a lot of optimizations had to be done to always stay above 90 fps:
- Lots of code optimizations
- Configuring level of detail, so lower quality models are visible at a distance
- Reducing visibility so less models are in visible at any time
- Loads of other optimizations

One of the optimizations that was a little more work, was a system I created to greatly reduce the amount of objects on the screen. The system has two main responsibilities:

The first one is to never render anything that's not visible because it is occluded by the under water / above water fog. Before this system was implemented, this was always done manually. This means every group of objects, like small under water objects, big above water objects etc., was configured to hide itself when it was at a certain distance from the player. The new system actually calculates how far the player can look at the current fog visibility setting. Objects further than that value are automatically configured to hide.

The second responsibility of the system is to hide objects that are above water when the player is, or is looking, under water, and vice versa. For this part of the system, the same code could be used that was written for blending in the under water post-processing effects. Those also had to be enabled when the player was under water, or at the surface and looking down into the water.

As you've noticed, we did less updates to the game in the past few weeks. This is because we want to slightly change the way we are handling the development of World of Diving. Instead of pushing weekly builds, which take up a lot of our time, we want to spend more time on implementing features and gameplay. We will be working in more of a milestone kind of way. Each milestone will produce a build for you guys with some more features in it. We plan to share the roadmap with all milestones next week, at the time of publishing next week's dev blog. This way you know what you can expect in the builds to come.

See you next week!

Progress on the Flying Dutchman

Hey People!

This week we've finally got the terrain for The Flying Dutchman level working. There will be a cave and some old ruins, aside from the amazing Flying Dutchman ship. On the pictures you can see I've started working on the terrain mainly, making it look like a real caribbean island. After the main shape of the island had its place I did a first pass to get the impression of how the underwater world would look like in the caribbean. (The pic with the ship and flora) It is a rather large level and the ship is at a depth of 27 meters. In this situation you could get a bit lost, thats why I gave the place on the side of the ship an pillar wich will give you some visual feedback of where you are. You could also surface and look for the bouy thats attached to the ship. Keep in mind it is not done yet and changes will be made.
Take a look at the pictures below and tell us what you think of it in the forums.

Have a great weekend,

Davey Boy Hoek

Previous blogs:


- Devblog 44 July 17
- Devblog 43 July 10
- Devblog 42 July 3
- Devblog 41 June 26
- Devblog 40 June 19
- Devblog 39 June 12
- Devblog 38 June 5
- Devblog 37 May 29
- Devblog 36 May 22
- Devblog 35 May 15
- Devblog 34 May 8
- Devblog 33 May 1
- Devblog 32 April 24
- Devblog 31 April 17
- Devblog 30 April 10
- Devblog 29 April 3
- Devblog 28 March 27
- Devblog 27 March 20
- Devblog 26: March 13
- Devblog 25: March 6
- Devblog 24: February 27
- Devblog 23: February 20
- Devblog 22: February 13
- Devblog 21: February 6
- Devblog 20: January 30
- Devblog 19: January 23
- Devblog 18: January 23
- Devblog 18: January 17
- Devblog 17: January 9
- Devblog 16: December 19
- Devblog 15: December 12
- Devblog 14: December 5
- Devblog 13: November 28
- Devblog 12: November 21
- Devblog 11: November 14
- Devblog 10: November 7
- Devblog 09: October 31
- Devblog 08: October 17
- Devblog 07: October 10
- Devblog 06: October 3
- Devblog 05: September 26
- Devblog 04: September 19
- Devblog 03: September 12
- Devblog 02: September 5
- Devblog 01: August 29


6 users have voted.
NAUI Diver's picture
Points: 211071

This may turn out to be the coolest map so far, I've had my doubts for a while, but the game is starting to come along better. Thanks for the update.

6 users have voted.
Jace's picture
Points: 489471

The Flying Dutchman level looks like it will be a lot of fun. Moving to updates based on milestones sounds like a great idea. I'm looking forward to seeing the list when it is posted. Thanks for the update!

7 users have voted.

Nice, update. I would have to agree that a weekly update to the game would be time consuming, and am in favor of the milestone build update system. Also the Flying Dutchman stage looks like it's going to be the next community favorite map as soon as it goes live.

Current status: working 2-10 really s*#k ^_^

4 users have voted.
Pat Tornado's picture
Points: 146814

Thank you guys for the update, looks great! :)
Glad and corious to see the ongoing, will be great to have a diving spot like that, keep up the good work! ;)

6 users have voted.

Doing updates when you hit milestones makes much more sense than trying to push out weekly updates. If you try to push updates weekly, you're going to end up pushing out updates for the sole purpose of pushing out updates. Much better to push out an update when there's an update you want people to see.

12 users have voted.

A roadmap sounds great!
But you should stay in contact with the community in between these milestones.

6 users have voted.

agreed, now that we know that an update will now occur with each milestone. Maybe take and have a day or time set off each week to show up and communicate with the community on what's all going on. Maybe do a live stream on twitch for an impromptu Q&A session

Current status: working 2-10 really s*#k ^_^

0 users have voted.

"Maybe take and have a day or time set off each week to show up and communicate with the community on what's all going on."

almost like a weekly dec blog or something.

0 users have voted.
0 users have voted.
Richard's picture
Points: 1142054

Apologies for the delayed devblog post - The blog was done but I forgot to set the page live yesterday. - please refresh!