Our latest version of the Triton Ocean SDK features some big improvements in swells, choppy waves, and the effects associated with them. We even considered calling this Triton 3.0 – but we’ve got some other big features planned before we take that leap. Triton 2.78 is available now and well worth upgrading to.
Improved swell wave accuracy and phase offsets
Triton is being integrated into a high-profile US Navy training program. Their rigorous testing revealed that swell waves added through the Triton::Environment::AddSwell() API weren’t always quite the right size, and we’ve fixed this in Triton 2.78. If you ask for a swell of a given wavelength and wave height – that’s now precisely what you’ll get. Remember swell waves are added into the thousands of wind waves generated by Triton. so at some points the ocean surface may be higher or lower than your swells – but this is how it should be.
We’ve also added a phase parameter to AddSwell(), which opens up the possibility of blending Triton’s JONSWAP wave model with your own. For example, you might choose to simulate light wind waves in Triton to get realistic high-frequency waves, but use the AddSwell() API to inject your own lower-frequency waves at specific wavelengths, directions, wave heights, and phase offsets. What’s even better is that there is no performance overhead to using AddSwell(), so you can add as many of your own waves as you would like. Triton will use the same GPGPU-accelerated inverse FFT transforms used for its own waves on your user-provided swell waves, all at the same time.
If you are using the Triton::Environment::SetDouglasSeaScale() API, you may notice that specific swell conditions may look different now that we’ve corrected our swell wave heights. Some users prefer to tune the look of specific swell conditions with the use of a subject-matter expert (SME.) To enable this, we’ve created a new configuration section in the resources/Triton.config file for Douglas Sea Scale parameters, so you can specify your own wavelengths and wave heights for given swell states. These states are only officially defined as broad ranges, so there is room for interpretation to be had there.
Better spray, foam, and whitecap effects
Triton 2.78 also offers a much-improved simulation of spray, foam, and whitecaps on large waves. As a swell wave comes in, you’ll see a line of foam and spray at its crest blowing in the direction of the wind. Foam effects will be concentrated in places where the water is actually churning according to our physical simulation of water motion. The result is much more convincing effects at higher sea states, as well as additional visual cues of the wind conditions and incoming waves.
You can see the improvements in action in our latest demo video for Triton below. Since the number of new spray particles per frame is capped, you can expect it to look even better in your application than it is in this frame-limited video capture:
Triton has never looked this good, run this fast, or been this extensible before. Get the upgrade!
One integration of the SilverLining Sky, 3D Cloud, and Weather SDK that we’re particularly proud of is the SkyMaxx Pro add-on for the X-Plane 10 consumer flight simulator. As a mass-market product, it’s generated a lot of end users posting screenshots and videos of SilverLining’s 3D volumetric clouds in their flights, and they’re great to see.
Here are some of our favorite videos of SilverLining in action, used with permission from redpiper1:
This last video is one of our favorites, showcasing our new MaxxFX add-on for X-Plane. But, it also features SilverLining’s 3D clouds as well:
We’ve uploaded a 5-page technical white paper: Immersive, Low-Cost Training with Environmental Effect SDK’s. In this paper, we explore the capabilities of today’s sky, cloud, ocean, and weather simulation technology, and how it is empowering the creation of high-fidelity, high-quality simulation and training applications within tight budgets.
If you’re looking for ways to enhance the realism of your flight or maritime trainer, this is essential reading to know what today’s technology has to offer in providing real-time, physically accurate simulations of the sky, weather, and ocean. Technology that was once limited to high-end, expensive visual systems is now available for use with free and low-cost game engines and scene graphs.
Check out our blog entry at GamaSutra.com: “3D Water Effects: What’s Involved“! It presents an overview of the challenges one faces when developing a 3D water system like our Triton Ocean SDK, and aims to help with evaluating in-house or third-party water solutions in games.
What’s more, this article was selected to be featured on GamaSutra’s home page!
GamaSutra is the leading website for game developers.
Working with Albino Chicken Studios, we’ve produced a new demo video showcasing the Triton Ocean SDK and SilverLining Sky & 3D Cloud SDK. It’s a game-oriented pirate battle scene, that really shows what’s possible when using Sundog Software’s technology in a game title. Here’s the one-minute version if you’re tight on time:
And, the full-length “director’s cut”:
This demo was created entirely using the Unity game engine, using our integration assets for Unity. SilverLining and Triton can integrate into any engine using OpenGL or DirectX however, including OpenSceneGraph, Ogre, Havok Vision, Torque3D, and many more.
Triton 2.63 now includes a volumetric deferred decal system – this means you can now place arbitrary textures over the moving water surface at any given location. Whether it’s beds of kelp, debris, oil slicks, or whatever else you can dream up, your texture will conform precisely to the water surface, no matter how rough the conditions.
Applying decal textures to dynamic geometry like our ocean waves is a tough problem, but after a good amount of perseverance we’ve rolled out an easy to use system with minimal performance overhead.
Using decals is easy. Just use the new Triton::Ocean::AddDecal() method to place your texture on the ocean at a given location with a given size. For simple animation effects, the Ocean::ScaleDecal() and Ocean::SetDecalAlpha() methods may be used to adjust the size and transparency of the decal at runtime. When you’re done, clean it up with Ocean::RemoveDecal().
We’re already putting this new technology to use with an improved rotor wash effect. Helicopter rotor wash over water now includes animated decal textures to provide more visual detail to the effect, in addition to the 3D waves, spray, and foam the effect used before. You’ll find a new parameter on the Triton::RotorWash constructor for “useDecals” – set this to true to enable the decal texture effect on rotor wash. It is false by default, so you will need to update your integrations to take advantage of this new effect.
Our Triton Ocean and 3D Water SDK is already known for its speed, using GPGPU technologies to accelerate the simulation of thousands of waves at once. But we’ve made it even faster. Now, you can include high-quality 3D water in your game or simulation without taking a big performance hit in the process – in our tests, an infinite ocean can be drawn in just 1-4 milliseconds depending on your graphics card.
We’ve sped up our use of CUDA for FFT acceleration, removed pipeline stalls in our OpenGL renderer, and improved the performance of intersection tests against the water.
A free evaluation of the latest Triton release is available from our download page, and licensed customers with an up to date support and maintenance plan may access the new release here. We will be rolling these improvements into our Unity asset soon as well.
We’ve closed the books on 2013, and our sales are up 90% relative to 2012. Net income before taxes is up over 100%. Those figures exclude revenue from consulting services and contract work (which is also up).
Thank you to all of our new customers in 2013, and to our old customers who helped spread the word about our products and customer service. We will continue our incessant focus on product development and customer support in 2014.
Looking back on 2013, some things that drove this and future growth were:
- Sales of the Triton Ocean SDK overtook already healthy sales of the SilverLining Sky, 3D Cloud, and Weather SDK. Triton has seen a lot of maturation in the past year, and customers are taking notice.
- We’ve seen steady growth in our asset packages for the Unity Pro engine. Unity’s user base continues to grow, and word is spreading about the quality of our water and clouds. In general, Sundog Software has diversified from being mostly a simulation and training company to one that has gained acceptance in the game development world as well.
- We launched our first consumer product, SkyMaxx Pro for the X-Plane 10 flight simulator, in partnership with Maxx-XP. It has proven amazingly popular with X-Plane users and has quickly become a significant source of revenue for Sundog Software.
- We expanded into new engines and platforms, including Unity on MacOS, Torque 3D, and iOS.
We look forward to what 2014 brings!
Every year, we spot our SilverLining Sky, 3D Cloud, and Weather SDK and our Triton Ocean SDK in new products – and we’ve had several sightings of our customers showing them off at the I/ITSEC conference in Orlando this week! Below are some photos we snapped (all with permission) of some customer products featuring our technology at the show.
We are delighted to announce the release of our first consumer product – SkyMaxx Pro, an add-on for the popular X-Plane 10 flight simulator! Developed in conjuction with Maxx-XP, SkyMaxx Pro replaces X-Plane’s built-in clouds with SilverLining’s 3D cumulus congestus, stratus, cumulonimbus, cirrus, and stratocumulus cloud layers. The result is more detailed, more realistic clouds you can fly through, with lightning, crepuscular rays, and a more sophisticated cloud lighting model. A video says a million words:
Initial sales have been brisk, and we’re quite proud of the results! If you’re a user of X-Plane 10, give your X-Plane clouds a boost with SkyMaxx Pro. It works with X-Plane’s weather system, and is compatible with popular weather add-ons. SkyMaxx Pro is sold exclusively by X-Aviation.
SkyMaxx Pro is intended for non-commercial use. If you’re looking to integrate SilverLining into a commercial X-Plane training application, please contact us for licensing information.