Synchronized updates with Pro
Fixes to the shared core reach Lite and Pro at the same time. No more waiting for a fix to be ported across two separate codebases.
Until now, Oceanology shipped as two separate source trees. Legacy was one product, NextGen and Pro were another, and they shared ideas but not code. In practice that meant a fix written in one tree usually never reached the other, because reaching the other meant writing it a second time against a different architecture. From 6.0.0 there is one tree: Oceanology Pro. Lite is built directly from it, without the river system, the shallow-water simulation and its hydraulics kit, Spectral Gerstner and FFT waves, or breaking waves.
The two-tree problem, in the source
The clearest example is the Gerstner wave summation itself. It exists twice: OceanologyLegacyGerstnerWaveUtils in the Legacy tree, and OceanologyGerstnerWaveUtils plus OceanologyGerstnerWaves.ush in the Pro tree. Both started from the same math and then drifted. The Pro version gained foam from the Jacobian determinant of the wave field, normals derived from the displacement derivatives, and a GPU compute wave baker. The Legacy version received none of it. Not because it was refused, but because delivering it would have meant re-implementing three separate systems in a codebase with a quarter of the surface area and no shader files to land them in.
What drift looked like
- Legacy exposes a sub-wave-count selector with five settings from four to twenty waves. The line that reads it in the wave solver and the line that interpolates it between presets are both commented out. The enum still ships; nothing consumes it.
- No occurrence of a foam bias, a foam gain, or a Jacobian foam term exists anywhere in the Legacy source. Foam on the Pro side is computed from the folding determinant of the displaced surface.
- Legacy has four shader files, and none of them are the wave, quadtree or underwater shaders. A rendering fix written against the 49-file Pro shader set had no corresponding place to land.
- Legacy has no spline component, no water body collision component and no navigable geometry export anywhere in its source. Any feature depending on those could not be backported even in principle.
What changes for you
After 6.0.0, a fix to the buoyancy solver, the water quadtree, the underwater pass, the swimming component or the Gerstner evaluation is one change, in one file, in Oceanology Pro, and every Pro update reaches Lite and Riverology 3. There is no separate Lite implementation of any system to keep in step, because Lite does not have its own implementation of anything. Lite and Pro version numbers move together, and when Pro gets a core fix, Lite gets the same core fix in the same release window.
It also changes what upgrading later costs you. Because Lite and Pro are the same actors, components and parameter names, moving from Lite to Pro adds rivers, the shallow-water simulation and its hydraulics kit, Spectral Gerstner and FFT waves and breaking waves on top of a scene that already works. It is not a plugin swap and a scene rebuild, which is what moving from Legacy to any newer Oceanology has been until now.
How updates reached you, before and after
| Feature | Oceanology Legacy | Oceanology Lite |
|---|---|---|
| Source trees | Two independent trees | One shared tree |
| Where a core fix lands | One tree, hand re-implemented for the other, often never | One commit, both products |
| Gerstner implementation | A Legacy-only copy that stopped receiving work | The same code Pro runs |
| Shader surface a fix can target | 4 files | 49 files |
| Feature backports | Manual, expensive and rare | Not applicable, the code is shared |
| Moving up to Pro | A different plugin and a scene migration | The same classes, with rivers, shallow water and the hydraulics kit, Spectral Gerstner, FFT and breaking waves added |
| Shared codebase | Oceanology Pro, 99,961 lines of C++ |
|---|---|
| Shared shader files | 49 |
| Modules shared by Lite and Pro | 6 |
| Systems with a Lite-specific implementation | 0 |
| Not in Lite | Rivers, shallow-water simulation and hydraulics kit, Spectral Gerstner and FFT waves, breaking waves |
| Legacy tree at end of life | 17,478 lines, 4 shader files |
| Cost to Legacy owners | Free |