Repository Summary
| Checkout URI | https://github.com/HonuRobotics/ehukai.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-31 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| ehukai | 0.0.3 |
README
Ehukai
Ehukai (from the Hawaiian ʻehukai, sea spray) is a standalone, headless C++ library for spectral ocean wave synthesis, maintained by Honu Robotics for embedding in simulators and tools (e.g. VRX / Gazebo).
Ehukai is heavily based on EncinoWaves by Christopher Jon Horvath, with the updates described in What this library changes.
The basic architecture of these Waves is based on the TweakWaves application written by Chris Horvath for Tweak Films in 2001. This, in turn, was based on the SIGGRAPH papers and courses by Jerry Tessendorf, and by the paper “A Simple Fluid Solver based on the FTT” by Jos Stam.
The TMA, JONSWAP, and Pierson Moskowitz Wave Spectra, as well as the directional spreading functions are formulated based on the descriptions given in “Ocean Waves: The Stochastic Approach”, by Michel K. Ochi, published by Cambridge Ocean Technology Series, 1998,2005.
This library is written as a working implementation of the paper:
Christopher J. Horvath. 2015.
Empirical directional wave spectra for computer graphics.
In Proceedings of the 2015 Symposium on Digital Production (DigiPro ‘15),
Los Angeles, Aug. 8, 2015, pp. 29-39.
What this library changes
Compared to the original EncinoWaves, Ehukai keeps the spectral-synthesis library and removes everything that made it a desktop application:
-
Headless library only — the interactive OpenGL viewer (
SimpleSimViewer,GeepGLFW) and its OpenEXR / GLFW / Boost / Xrandr dependencies are gone. -
Eigen::FFT backend — the FFTW backend is replaced by an
Eigen::FFT(KissFFT) shim; no FFTW dependency. - Modern math — IlmBase is replaced by Imath.
-
Standalone CMake — exports an
ehukai::ehukaitarget and afind_package(ehukai)config; dependencies are just Eigen3, TBB, Imath. -
Headless smoke tests under
test/exercise the spectra → propagation pipeline without a GPU.
Package installation (Ubuntu)
Prebuilt packages for Ubuntu 24.04 and 26.04 are available from the Honu Robotics APT repository. Follow the setup instructions there, then:
sudo apt install libehukai-dev
Building (Ubuntu)
Ehukai is developed and tested on Ubuntu (24.04 LTS recommended).
Install the build tools and dependencies:
sudo apt-get update
sudo apt-get install -y cmake build-essential \
libeigen3-dev libtbb-dev libimath-dev
Configure and compile the library, running these (and the commands below) from the repository root:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
Run the headless smoke tests:
ctest --test-dir build --output-on-failure
Optionally build and run the FFT microbenchmark (serial vs. parallel inverse FFT at several grid sizes). It needs Google Benchmark and is off by default:
sudo apt-get install -y libbenchmark-dev
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DEHUKAI_BUILD_BENCHMARKS=ON
cmake --build build -j
./build/bench_FftwWrapper
Install (optional — headers, shared library, and the ehukai CMake config):
sudo cmake --install build
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/HonuRobotics/ehukai.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-31 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| ehukai | 0.0.3 |
README
Ehukai
Ehukai (from the Hawaiian ʻehukai, sea spray) is a standalone, headless C++ library for spectral ocean wave synthesis, maintained by Honu Robotics for embedding in simulators and tools (e.g. VRX / Gazebo).
Ehukai is heavily based on EncinoWaves by Christopher Jon Horvath, with the updates described in What this library changes.
The basic architecture of these Waves is based on the TweakWaves application written by Chris Horvath for Tweak Films in 2001. This, in turn, was based on the SIGGRAPH papers and courses by Jerry Tessendorf, and by the paper “A Simple Fluid Solver based on the FTT” by Jos Stam.
The TMA, JONSWAP, and Pierson Moskowitz Wave Spectra, as well as the directional spreading functions are formulated based on the descriptions given in “Ocean Waves: The Stochastic Approach”, by Michel K. Ochi, published by Cambridge Ocean Technology Series, 1998,2005.
This library is written as a working implementation of the paper:
Christopher J. Horvath. 2015.
Empirical directional wave spectra for computer graphics.
In Proceedings of the 2015 Symposium on Digital Production (DigiPro ‘15),
Los Angeles, Aug. 8, 2015, pp. 29-39.
What this library changes
Compared to the original EncinoWaves, Ehukai keeps the spectral-synthesis library and removes everything that made it a desktop application:
-
Headless library only — the interactive OpenGL viewer (
SimpleSimViewer,GeepGLFW) and its OpenEXR / GLFW / Boost / Xrandr dependencies are gone. -
Eigen::FFT backend — the FFTW backend is replaced by an
Eigen::FFT(KissFFT) shim; no FFTW dependency. - Modern math — IlmBase is replaced by Imath.
-
Standalone CMake — exports an
ehukai::ehukaitarget and afind_package(ehukai)config; dependencies are just Eigen3, TBB, Imath. -
Headless smoke tests under
test/exercise the spectra → propagation pipeline without a GPU.
Package installation (Ubuntu)
Prebuilt packages for Ubuntu 24.04 and 26.04 are available from the Honu Robotics APT repository. Follow the setup instructions there, then:
sudo apt install libehukai-dev
Building (Ubuntu)
Ehukai is developed and tested on Ubuntu (24.04 LTS recommended).
Install the build tools and dependencies:
sudo apt-get update
sudo apt-get install -y cmake build-essential \
libeigen3-dev libtbb-dev libimath-dev
Configure and compile the library, running these (and the commands below) from the repository root:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
Run the headless smoke tests:
ctest --test-dir build --output-on-failure
Optionally build and run the FFT microbenchmark (serial vs. parallel inverse FFT at several grid sizes). It needs Google Benchmark and is off by default:
sudo apt-get install -y libbenchmark-dev
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DEHUKAI_BUILD_BENCHMARKS=ON
cmake --build build -j
./build/bench_FftwWrapper
Install (optional — headers, shared library, and the ehukai CMake config):
sudo cmake --install build
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/HonuRobotics/ehukai.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-31 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| ehukai | 0.0.3 |
README
Ehukai
Ehukai (from the Hawaiian ʻehukai, sea spray) is a standalone, headless C++ library for spectral ocean wave synthesis, maintained by Honu Robotics for embedding in simulators and tools (e.g. VRX / Gazebo).
Ehukai is heavily based on EncinoWaves by Christopher Jon Horvath, with the updates described in What this library changes.
The basic architecture of these Waves is based on the TweakWaves application written by Chris Horvath for Tweak Films in 2001. This, in turn, was based on the SIGGRAPH papers and courses by Jerry Tessendorf, and by the paper “A Simple Fluid Solver based on the FTT” by Jos Stam.
The TMA, JONSWAP, and Pierson Moskowitz Wave Spectra, as well as the directional spreading functions are formulated based on the descriptions given in “Ocean Waves: The Stochastic Approach”, by Michel K. Ochi, published by Cambridge Ocean Technology Series, 1998,2005.
This library is written as a working implementation of the paper:
Christopher J. Horvath. 2015.
Empirical directional wave spectra for computer graphics.
In Proceedings of the 2015 Symposium on Digital Production (DigiPro ‘15),
Los Angeles, Aug. 8, 2015, pp. 29-39.
What this library changes
Compared to the original EncinoWaves, Ehukai keeps the spectral-synthesis library and removes everything that made it a desktop application:
-
Headless library only — the interactive OpenGL viewer (
SimpleSimViewer,GeepGLFW) and its OpenEXR / GLFW / Boost / Xrandr dependencies are gone. -
Eigen::FFT backend — the FFTW backend is replaced by an
Eigen::FFT(KissFFT) shim; no FFTW dependency. - Modern math — IlmBase is replaced by Imath.
-
Standalone CMake — exports an
ehukai::ehukaitarget and afind_package(ehukai)config; dependencies are just Eigen3, TBB, Imath. -
Headless smoke tests under
test/exercise the spectra → propagation pipeline without a GPU.
Package installation (Ubuntu)
Prebuilt packages for Ubuntu 24.04 and 26.04 are available from the Honu Robotics APT repository. Follow the setup instructions there, then:
sudo apt install libehukai-dev
Building (Ubuntu)
Ehukai is developed and tested on Ubuntu (24.04 LTS recommended).
Install the build tools and dependencies:
sudo apt-get update
sudo apt-get install -y cmake build-essential \
libeigen3-dev libtbb-dev libimath-dev
Configure and compile the library, running these (and the commands below) from the repository root:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
Run the headless smoke tests:
ctest --test-dir build --output-on-failure
Optionally build and run the FFT microbenchmark (serial vs. parallel inverse FFT at several grid sizes). It needs Google Benchmark and is off by default:
sudo apt-get install -y libbenchmark-dev
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DEHUKAI_BUILD_BENCHMARKS=ON
cmake --build build -j
./build/bench_FftwWrapper
Install (optional — headers, shared library, and the ehukai CMake config):
sudo cmake --install build
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/HonuRobotics/ehukai.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-31 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| ehukai | 0.0.3 |
README
Ehukai
Ehukai (from the Hawaiian ʻehukai, sea spray) is a standalone, headless C++ library for spectral ocean wave synthesis, maintained by Honu Robotics for embedding in simulators and tools (e.g. VRX / Gazebo).
Ehukai is heavily based on EncinoWaves by Christopher Jon Horvath, with the updates described in What this library changes.
The basic architecture of these Waves is based on the TweakWaves application written by Chris Horvath for Tweak Films in 2001. This, in turn, was based on the SIGGRAPH papers and courses by Jerry Tessendorf, and by the paper “A Simple Fluid Solver based on the FTT” by Jos Stam.
The TMA, JONSWAP, and Pierson Moskowitz Wave Spectra, as well as the directional spreading functions are formulated based on the descriptions given in “Ocean Waves: The Stochastic Approach”, by Michel K. Ochi, published by Cambridge Ocean Technology Series, 1998,2005.
This library is written as a working implementation of the paper:
Christopher J. Horvath. 2015.
Empirical directional wave spectra for computer graphics.
In Proceedings of the 2015 Symposium on Digital Production (DigiPro ‘15),
Los Angeles, Aug. 8, 2015, pp. 29-39.
What this library changes
Compared to the original EncinoWaves, Ehukai keeps the spectral-synthesis library and removes everything that made it a desktop application:
-
Headless library only — the interactive OpenGL viewer (
SimpleSimViewer,GeepGLFW) and its OpenEXR / GLFW / Boost / Xrandr dependencies are gone. -
Eigen::FFT backend — the FFTW backend is replaced by an
Eigen::FFT(KissFFT) shim; no FFTW dependency. - Modern math — IlmBase is replaced by Imath.
-
Standalone CMake — exports an
ehukai::ehukaitarget and afind_package(ehukai)config; dependencies are just Eigen3, TBB, Imath. -
Headless smoke tests under
test/exercise the spectra → propagation pipeline without a GPU.
Package installation (Ubuntu)
Prebuilt packages for Ubuntu 24.04 and 26.04 are available from the Honu Robotics APT repository. Follow the setup instructions there, then:
sudo apt install libehukai-dev
Building (Ubuntu)
Ehukai is developed and tested on Ubuntu (24.04 LTS recommended).
Install the build tools and dependencies:
sudo apt-get update
sudo apt-get install -y cmake build-essential \
libeigen3-dev libtbb-dev libimath-dev
Configure and compile the library, running these (and the commands below) from the repository root:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
Run the headless smoke tests:
ctest --test-dir build --output-on-failure
Optionally build and run the FFT microbenchmark (serial vs. parallel inverse FFT at several grid sizes). It needs Google Benchmark and is off by default:
sudo apt-get install -y libbenchmark-dev
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DEHUKAI_BUILD_BENCHMARKS=ON
cmake --build build -j
./build/bench_FftwWrapper
Install (optional — headers, shared library, and the ehukai CMake config):
sudo cmake --install build
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/HonuRobotics/ehukai.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-31 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| ehukai | 0.0.3 |
README
Ehukai
Ehukai (from the Hawaiian ʻehukai, sea spray) is a standalone, headless C++ library for spectral ocean wave synthesis, maintained by Honu Robotics for embedding in simulators and tools (e.g. VRX / Gazebo).
Ehukai is heavily based on EncinoWaves by Christopher Jon Horvath, with the updates described in What this library changes.
The basic architecture of these Waves is based on the TweakWaves application written by Chris Horvath for Tweak Films in 2001. This, in turn, was based on the SIGGRAPH papers and courses by Jerry Tessendorf, and by the paper “A Simple Fluid Solver based on the FTT” by Jos Stam.
The TMA, JONSWAP, and Pierson Moskowitz Wave Spectra, as well as the directional spreading functions are formulated based on the descriptions given in “Ocean Waves: The Stochastic Approach”, by Michel K. Ochi, published by Cambridge Ocean Technology Series, 1998,2005.
This library is written as a working implementation of the paper:
Christopher J. Horvath. 2015.
Empirical directional wave spectra for computer graphics.
In Proceedings of the 2015 Symposium on Digital Production (DigiPro ‘15),
Los Angeles, Aug. 8, 2015, pp. 29-39.
What this library changes
Compared to the original EncinoWaves, Ehukai keeps the spectral-synthesis library and removes everything that made it a desktop application:
-
Headless library only — the interactive OpenGL viewer (
SimpleSimViewer,GeepGLFW) and its OpenEXR / GLFW / Boost / Xrandr dependencies are gone. -
Eigen::FFT backend — the FFTW backend is replaced by an
Eigen::FFT(KissFFT) shim; no FFTW dependency. - Modern math — IlmBase is replaced by Imath.
-
Standalone CMake — exports an
ehukai::ehukaitarget and afind_package(ehukai)config; dependencies are just Eigen3, TBB, Imath. -
Headless smoke tests under
test/exercise the spectra → propagation pipeline without a GPU.
Package installation (Ubuntu)
Prebuilt packages for Ubuntu 24.04 and 26.04 are available from the Honu Robotics APT repository. Follow the setup instructions there, then:
sudo apt install libehukai-dev
Building (Ubuntu)
Ehukai is developed and tested on Ubuntu (24.04 LTS recommended).
Install the build tools and dependencies:
sudo apt-get update
sudo apt-get install -y cmake build-essential \
libeigen3-dev libtbb-dev libimath-dev
Configure and compile the library, running these (and the commands below) from the repository root:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
Run the headless smoke tests:
ctest --test-dir build --output-on-failure
Optionally build and run the FFT microbenchmark (serial vs. parallel inverse FFT at several grid sizes). It needs Google Benchmark and is off by default:
sudo apt-get install -y libbenchmark-dev
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DEHUKAI_BUILD_BENCHMARKS=ON
cmake --build build -j
./build/bench_FftwWrapper
Install (optional — headers, shared library, and the ehukai CMake config):
sudo cmake --install build
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/HonuRobotics/ehukai.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-31 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| ehukai | 0.0.3 |
README
Ehukai
Ehukai (from the Hawaiian ʻehukai, sea spray) is a standalone, headless C++ library for spectral ocean wave synthesis, maintained by Honu Robotics for embedding in simulators and tools (e.g. VRX / Gazebo).
Ehukai is heavily based on EncinoWaves by Christopher Jon Horvath, with the updates described in What this library changes.
The basic architecture of these Waves is based on the TweakWaves application written by Chris Horvath for Tweak Films in 2001. This, in turn, was based on the SIGGRAPH papers and courses by Jerry Tessendorf, and by the paper “A Simple Fluid Solver based on the FTT” by Jos Stam.
The TMA, JONSWAP, and Pierson Moskowitz Wave Spectra, as well as the directional spreading functions are formulated based on the descriptions given in “Ocean Waves: The Stochastic Approach”, by Michel K. Ochi, published by Cambridge Ocean Technology Series, 1998,2005.
This library is written as a working implementation of the paper:
Christopher J. Horvath. 2015.
Empirical directional wave spectra for computer graphics.
In Proceedings of the 2015 Symposium on Digital Production (DigiPro ‘15),
Los Angeles, Aug. 8, 2015, pp. 29-39.
What this library changes
Compared to the original EncinoWaves, Ehukai keeps the spectral-synthesis library and removes everything that made it a desktop application:
-
Headless library only — the interactive OpenGL viewer (
SimpleSimViewer,GeepGLFW) and its OpenEXR / GLFW / Boost / Xrandr dependencies are gone. -
Eigen::FFT backend — the FFTW backend is replaced by an
Eigen::FFT(KissFFT) shim; no FFTW dependency. - Modern math — IlmBase is replaced by Imath.
-
Standalone CMake — exports an
ehukai::ehukaitarget and afind_package(ehukai)config; dependencies are just Eigen3, TBB, Imath. -
Headless smoke tests under
test/exercise the spectra → propagation pipeline without a GPU.
Package installation (Ubuntu)
Prebuilt packages for Ubuntu 24.04 and 26.04 are available from the Honu Robotics APT repository. Follow the setup instructions there, then:
sudo apt install libehukai-dev
Building (Ubuntu)
Ehukai is developed and tested on Ubuntu (24.04 LTS recommended).
Install the build tools and dependencies:
sudo apt-get update
sudo apt-get install -y cmake build-essential \
libeigen3-dev libtbb-dev libimath-dev
Configure and compile the library, running these (and the commands below) from the repository root:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
Run the headless smoke tests:
ctest --test-dir build --output-on-failure
Optionally build and run the FFT microbenchmark (serial vs. parallel inverse FFT at several grid sizes). It needs Google Benchmark and is off by default:
sudo apt-get install -y libbenchmark-dev
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DEHUKAI_BUILD_BENCHMARKS=ON
cmake --build build -j
./build/bench_FftwWrapper
Install (optional — headers, shared library, and the ehukai CMake config):
sudo cmake --install build
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/HonuRobotics/ehukai.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-31 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| ehukai | 0.0.3 |
README
Ehukai
Ehukai (from the Hawaiian ʻehukai, sea spray) is a standalone, headless C++ library for spectral ocean wave synthesis, maintained by Honu Robotics for embedding in simulators and tools (e.g. VRX / Gazebo).
Ehukai is heavily based on EncinoWaves by Christopher Jon Horvath, with the updates described in What this library changes.
The basic architecture of these Waves is based on the TweakWaves application written by Chris Horvath for Tweak Films in 2001. This, in turn, was based on the SIGGRAPH papers and courses by Jerry Tessendorf, and by the paper “A Simple Fluid Solver based on the FTT” by Jos Stam.
The TMA, JONSWAP, and Pierson Moskowitz Wave Spectra, as well as the directional spreading functions are formulated based on the descriptions given in “Ocean Waves: The Stochastic Approach”, by Michel K. Ochi, published by Cambridge Ocean Technology Series, 1998,2005.
This library is written as a working implementation of the paper:
Christopher J. Horvath. 2015.
Empirical directional wave spectra for computer graphics.
In Proceedings of the 2015 Symposium on Digital Production (DigiPro ‘15),
Los Angeles, Aug. 8, 2015, pp. 29-39.
What this library changes
Compared to the original EncinoWaves, Ehukai keeps the spectral-synthesis library and removes everything that made it a desktop application:
-
Headless library only — the interactive OpenGL viewer (
SimpleSimViewer,GeepGLFW) and its OpenEXR / GLFW / Boost / Xrandr dependencies are gone. -
Eigen::FFT backend — the FFTW backend is replaced by an
Eigen::FFT(KissFFT) shim; no FFTW dependency. - Modern math — IlmBase is replaced by Imath.
-
Standalone CMake — exports an
ehukai::ehukaitarget and afind_package(ehukai)config; dependencies are just Eigen3, TBB, Imath. -
Headless smoke tests under
test/exercise the spectra → propagation pipeline without a GPU.
Package installation (Ubuntu)
Prebuilt packages for Ubuntu 24.04 and 26.04 are available from the Honu Robotics APT repository. Follow the setup instructions there, then:
sudo apt install libehukai-dev
Building (Ubuntu)
Ehukai is developed and tested on Ubuntu (24.04 LTS recommended).
Install the build tools and dependencies:
sudo apt-get update
sudo apt-get install -y cmake build-essential \
libeigen3-dev libtbb-dev libimath-dev
Configure and compile the library, running these (and the commands below) from the repository root:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
Run the headless smoke tests:
ctest --test-dir build --output-on-failure
Optionally build and run the FFT microbenchmark (serial vs. parallel inverse FFT at several grid sizes). It needs Google Benchmark and is off by default:
sudo apt-get install -y libbenchmark-dev
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DEHUKAI_BUILD_BENCHMARKS=ON
cmake --build build -j
./build/bench_FftwWrapper
Install (optional — headers, shared library, and the ehukai CMake config):
sudo cmake --install build
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/HonuRobotics/ehukai.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-31 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| ehukai | 0.0.3 |
README
Ehukai
Ehukai (from the Hawaiian ʻehukai, sea spray) is a standalone, headless C++ library for spectral ocean wave synthesis, maintained by Honu Robotics for embedding in simulators and tools (e.g. VRX / Gazebo).
Ehukai is heavily based on EncinoWaves by Christopher Jon Horvath, with the updates described in What this library changes.
The basic architecture of these Waves is based on the TweakWaves application written by Chris Horvath for Tweak Films in 2001. This, in turn, was based on the SIGGRAPH papers and courses by Jerry Tessendorf, and by the paper “A Simple Fluid Solver based on the FTT” by Jos Stam.
The TMA, JONSWAP, and Pierson Moskowitz Wave Spectra, as well as the directional spreading functions are formulated based on the descriptions given in “Ocean Waves: The Stochastic Approach”, by Michel K. Ochi, published by Cambridge Ocean Technology Series, 1998,2005.
This library is written as a working implementation of the paper:
Christopher J. Horvath. 2015.
Empirical directional wave spectra for computer graphics.
In Proceedings of the 2015 Symposium on Digital Production (DigiPro ‘15),
Los Angeles, Aug. 8, 2015, pp. 29-39.
What this library changes
Compared to the original EncinoWaves, Ehukai keeps the spectral-synthesis library and removes everything that made it a desktop application:
-
Headless library only — the interactive OpenGL viewer (
SimpleSimViewer,GeepGLFW) and its OpenEXR / GLFW / Boost / Xrandr dependencies are gone. -
Eigen::FFT backend — the FFTW backend is replaced by an
Eigen::FFT(KissFFT) shim; no FFTW dependency. - Modern math — IlmBase is replaced by Imath.
-
Standalone CMake — exports an
ehukai::ehukaitarget and afind_package(ehukai)config; dependencies are just Eigen3, TBB, Imath. -
Headless smoke tests under
test/exercise the spectra → propagation pipeline without a GPU.
Package installation (Ubuntu)
Prebuilt packages for Ubuntu 24.04 and 26.04 are available from the Honu Robotics APT repository. Follow the setup instructions there, then:
sudo apt install libehukai-dev
Building (Ubuntu)
Ehukai is developed and tested on Ubuntu (24.04 LTS recommended).
Install the build tools and dependencies:
sudo apt-get update
sudo apt-get install -y cmake build-essential \
libeigen3-dev libtbb-dev libimath-dev
Configure and compile the library, running these (and the commands below) from the repository root:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
Run the headless smoke tests:
ctest --test-dir build --output-on-failure
Optionally build and run the FFT microbenchmark (serial vs. parallel inverse FFT at several grid sizes). It needs Google Benchmark and is off by default:
sudo apt-get install -y libbenchmark-dev
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DEHUKAI_BUILD_BENCHMARKS=ON
cmake --build build -j
./build/bench_FftwWrapper
Install (optional — headers, shared library, and the ehukai CMake config):
sudo cmake --install build
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/HonuRobotics/ehukai.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-31 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| ehukai | 0.0.3 |
README
Ehukai
Ehukai (from the Hawaiian ʻehukai, sea spray) is a standalone, headless C++ library for spectral ocean wave synthesis, maintained by Honu Robotics for embedding in simulators and tools (e.g. VRX / Gazebo).
Ehukai is heavily based on EncinoWaves by Christopher Jon Horvath, with the updates described in What this library changes.
The basic architecture of these Waves is based on the TweakWaves application written by Chris Horvath for Tweak Films in 2001. This, in turn, was based on the SIGGRAPH papers and courses by Jerry Tessendorf, and by the paper “A Simple Fluid Solver based on the FTT” by Jos Stam.
The TMA, JONSWAP, and Pierson Moskowitz Wave Spectra, as well as the directional spreading functions are formulated based on the descriptions given in “Ocean Waves: The Stochastic Approach”, by Michel K. Ochi, published by Cambridge Ocean Technology Series, 1998,2005.
This library is written as a working implementation of the paper:
Christopher J. Horvath. 2015.
Empirical directional wave spectra for computer graphics.
In Proceedings of the 2015 Symposium on Digital Production (DigiPro ‘15),
Los Angeles, Aug. 8, 2015, pp. 29-39.
What this library changes
Compared to the original EncinoWaves, Ehukai keeps the spectral-synthesis library and removes everything that made it a desktop application:
-
Headless library only — the interactive OpenGL viewer (
SimpleSimViewer,GeepGLFW) and its OpenEXR / GLFW / Boost / Xrandr dependencies are gone. -
Eigen::FFT backend — the FFTW backend is replaced by an
Eigen::FFT(KissFFT) shim; no FFTW dependency. - Modern math — IlmBase is replaced by Imath.
-
Standalone CMake — exports an
ehukai::ehukaitarget and afind_package(ehukai)config; dependencies are just Eigen3, TBB, Imath. -
Headless smoke tests under
test/exercise the spectra → propagation pipeline without a GPU.
Package installation (Ubuntu)
Prebuilt packages for Ubuntu 24.04 and 26.04 are available from the Honu Robotics APT repository. Follow the setup instructions there, then:
sudo apt install libehukai-dev
Building (Ubuntu)
Ehukai is developed and tested on Ubuntu (24.04 LTS recommended).
Install the build tools and dependencies:
sudo apt-get update
sudo apt-get install -y cmake build-essential \
libeigen3-dev libtbb-dev libimath-dev
Configure and compile the library, running these (and the commands below) from the repository root:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
Run the headless smoke tests:
ctest --test-dir build --output-on-failure
Optionally build and run the FFT microbenchmark (serial vs. parallel inverse FFT at several grid sizes). It needs Google Benchmark and is off by default:
sudo apt-get install -y libbenchmark-dev
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DEHUKAI_BUILD_BENCHMARKS=ON
cmake --build build -j
./build/bench_FftwWrapper
Install (optional — headers, shared library, and the ehukai CMake config):
sudo cmake --install build
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/HonuRobotics/ehukai.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-31 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| ehukai | 0.0.3 |
README
Ehukai
Ehukai (from the Hawaiian ʻehukai, sea spray) is a standalone, headless C++ library for spectral ocean wave synthesis, maintained by Honu Robotics for embedding in simulators and tools (e.g. VRX / Gazebo).
Ehukai is heavily based on EncinoWaves by Christopher Jon Horvath, with the updates described in What this library changes.
The basic architecture of these Waves is based on the TweakWaves application written by Chris Horvath for Tweak Films in 2001. This, in turn, was based on the SIGGRAPH papers and courses by Jerry Tessendorf, and by the paper “A Simple Fluid Solver based on the FTT” by Jos Stam.
The TMA, JONSWAP, and Pierson Moskowitz Wave Spectra, as well as the directional spreading functions are formulated based on the descriptions given in “Ocean Waves: The Stochastic Approach”, by Michel K. Ochi, published by Cambridge Ocean Technology Series, 1998,2005.
This library is written as a working implementation of the paper:
Christopher J. Horvath. 2015.
Empirical directional wave spectra for computer graphics.
In Proceedings of the 2015 Symposium on Digital Production (DigiPro ‘15),
Los Angeles, Aug. 8, 2015, pp. 29-39.
What this library changes
Compared to the original EncinoWaves, Ehukai keeps the spectral-synthesis library and removes everything that made it a desktop application:
-
Headless library only — the interactive OpenGL viewer (
SimpleSimViewer,GeepGLFW) and its OpenEXR / GLFW / Boost / Xrandr dependencies are gone. -
Eigen::FFT backend — the FFTW backend is replaced by an
Eigen::FFT(KissFFT) shim; no FFTW dependency. - Modern math — IlmBase is replaced by Imath.
-
Standalone CMake — exports an
ehukai::ehukaitarget and afind_package(ehukai)config; dependencies are just Eigen3, TBB, Imath. -
Headless smoke tests under
test/exercise the spectra → propagation pipeline without a GPU.
Package installation (Ubuntu)
Prebuilt packages for Ubuntu 24.04 and 26.04 are available from the Honu Robotics APT repository. Follow the setup instructions there, then:
sudo apt install libehukai-dev
Building (Ubuntu)
Ehukai is developed and tested on Ubuntu (24.04 LTS recommended).
Install the build tools and dependencies:
sudo apt-get update
sudo apt-get install -y cmake build-essential \
libeigen3-dev libtbb-dev libimath-dev
Configure and compile the library, running these (and the commands below) from the repository root:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
Run the headless smoke tests:
ctest --test-dir build --output-on-failure
Optionally build and run the FFT microbenchmark (serial vs. parallel inverse FFT at several grid sizes). It needs Google Benchmark and is off by default:
sudo apt-get install -y libbenchmark-dev
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DEHUKAI_BUILD_BENCHMARKS=ON
cmake --build build -j
./build/bench_FftwWrapper
Install (optional — headers, shared library, and the ehukai CMake config):
sudo cmake --install build
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/HonuRobotics/ehukai.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-31 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| ehukai | 0.0.3 |
README
Ehukai
Ehukai (from the Hawaiian ʻehukai, sea spray) is a standalone, headless C++ library for spectral ocean wave synthesis, maintained by Honu Robotics for embedding in simulators and tools (e.g. VRX / Gazebo).
Ehukai is heavily based on EncinoWaves by Christopher Jon Horvath, with the updates described in What this library changes.
The basic architecture of these Waves is based on the TweakWaves application written by Chris Horvath for Tweak Films in 2001. This, in turn, was based on the SIGGRAPH papers and courses by Jerry Tessendorf, and by the paper “A Simple Fluid Solver based on the FTT” by Jos Stam.
The TMA, JONSWAP, and Pierson Moskowitz Wave Spectra, as well as the directional spreading functions are formulated based on the descriptions given in “Ocean Waves: The Stochastic Approach”, by Michel K. Ochi, published by Cambridge Ocean Technology Series, 1998,2005.
This library is written as a working implementation of the paper:
Christopher J. Horvath. 2015.
Empirical directional wave spectra for computer graphics.
In Proceedings of the 2015 Symposium on Digital Production (DigiPro ‘15),
Los Angeles, Aug. 8, 2015, pp. 29-39.
What this library changes
Compared to the original EncinoWaves, Ehukai keeps the spectral-synthesis library and removes everything that made it a desktop application:
-
Headless library only — the interactive OpenGL viewer (
SimpleSimViewer,GeepGLFW) and its OpenEXR / GLFW / Boost / Xrandr dependencies are gone. -
Eigen::FFT backend — the FFTW backend is replaced by an
Eigen::FFT(KissFFT) shim; no FFTW dependency. - Modern math — IlmBase is replaced by Imath.
-
Standalone CMake — exports an
ehukai::ehukaitarget and afind_package(ehukai)config; dependencies are just Eigen3, TBB, Imath. -
Headless smoke tests under
test/exercise the spectra → propagation pipeline without a GPU.
Package installation (Ubuntu)
Prebuilt packages for Ubuntu 24.04 and 26.04 are available from the Honu Robotics APT repository. Follow the setup instructions there, then:
sudo apt install libehukai-dev
Building (Ubuntu)
Ehukai is developed and tested on Ubuntu (24.04 LTS recommended).
Install the build tools and dependencies:
sudo apt-get update
sudo apt-get install -y cmake build-essential \
libeigen3-dev libtbb-dev libimath-dev
Configure and compile the library, running these (and the commands below) from the repository root:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
Run the headless smoke tests:
ctest --test-dir build --output-on-failure
Optionally build and run the FFT microbenchmark (serial vs. parallel inverse FFT at several grid sizes). It needs Google Benchmark and is off by default:
sudo apt-get install -y libbenchmark-dev
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DEHUKAI_BUILD_BENCHMARKS=ON
cmake --build build -j
./build/bench_FftwWrapper
Install (optional — headers, shared library, and the ehukai CMake config):
sudo cmake --install build
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/HonuRobotics/ehukai.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-31 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| ehukai | 0.0.3 |
README
Ehukai
Ehukai (from the Hawaiian ʻehukai, sea spray) is a standalone, headless C++ library for spectral ocean wave synthesis, maintained by Honu Robotics for embedding in simulators and tools (e.g. VRX / Gazebo).
Ehukai is heavily based on EncinoWaves by Christopher Jon Horvath, with the updates described in What this library changes.
The basic architecture of these Waves is based on the TweakWaves application written by Chris Horvath for Tweak Films in 2001. This, in turn, was based on the SIGGRAPH papers and courses by Jerry Tessendorf, and by the paper “A Simple Fluid Solver based on the FTT” by Jos Stam.
The TMA, JONSWAP, and Pierson Moskowitz Wave Spectra, as well as the directional spreading functions are formulated based on the descriptions given in “Ocean Waves: The Stochastic Approach”, by Michel K. Ochi, published by Cambridge Ocean Technology Series, 1998,2005.
This library is written as a working implementation of the paper:
Christopher J. Horvath. 2015.
Empirical directional wave spectra for computer graphics.
In Proceedings of the 2015 Symposium on Digital Production (DigiPro ‘15),
Los Angeles, Aug. 8, 2015, pp. 29-39.
What this library changes
Compared to the original EncinoWaves, Ehukai keeps the spectral-synthesis library and removes everything that made it a desktop application:
-
Headless library only — the interactive OpenGL viewer (
SimpleSimViewer,GeepGLFW) and its OpenEXR / GLFW / Boost / Xrandr dependencies are gone. -
Eigen::FFT backend — the FFTW backend is replaced by an
Eigen::FFT(KissFFT) shim; no FFTW dependency. - Modern math — IlmBase is replaced by Imath.
-
Standalone CMake — exports an
ehukai::ehukaitarget and afind_package(ehukai)config; dependencies are just Eigen3, TBB, Imath. -
Headless smoke tests under
test/exercise the spectra → propagation pipeline without a GPU.
Package installation (Ubuntu)
Prebuilt packages for Ubuntu 24.04 and 26.04 are available from the Honu Robotics APT repository. Follow the setup instructions there, then:
sudo apt install libehukai-dev
Building (Ubuntu)
Ehukai is developed and tested on Ubuntu (24.04 LTS recommended).
Install the build tools and dependencies:
sudo apt-get update
sudo apt-get install -y cmake build-essential \
libeigen3-dev libtbb-dev libimath-dev
Configure and compile the library, running these (and the commands below) from the repository root:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
Run the headless smoke tests:
ctest --test-dir build --output-on-failure
Optionally build and run the FFT microbenchmark (serial vs. parallel inverse FFT at several grid sizes). It needs Google Benchmark and is off by default:
sudo apt-get install -y libbenchmark-dev
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DEHUKAI_BUILD_BENCHMARKS=ON
cmake --build build -j
./build/bench_FftwWrapper
Install (optional — headers, shared library, and the ehukai CMake config):
sudo cmake --install build
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/HonuRobotics/ehukai.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-31 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| ehukai | 0.0.3 |
README
Ehukai
Ehukai (from the Hawaiian ʻehukai, sea spray) is a standalone, headless C++ library for spectral ocean wave synthesis, maintained by Honu Robotics for embedding in simulators and tools (e.g. VRX / Gazebo).
Ehukai is heavily based on EncinoWaves by Christopher Jon Horvath, with the updates described in What this library changes.
The basic architecture of these Waves is based on the TweakWaves application written by Chris Horvath for Tweak Films in 2001. This, in turn, was based on the SIGGRAPH papers and courses by Jerry Tessendorf, and by the paper “A Simple Fluid Solver based on the FTT” by Jos Stam.
The TMA, JONSWAP, and Pierson Moskowitz Wave Spectra, as well as the directional spreading functions are formulated based on the descriptions given in “Ocean Waves: The Stochastic Approach”, by Michel K. Ochi, published by Cambridge Ocean Technology Series, 1998,2005.
This library is written as a working implementation of the paper:
Christopher J. Horvath. 2015.
Empirical directional wave spectra for computer graphics.
In Proceedings of the 2015 Symposium on Digital Production (DigiPro ‘15),
Los Angeles, Aug. 8, 2015, pp. 29-39.
What this library changes
Compared to the original EncinoWaves, Ehukai keeps the spectral-synthesis library and removes everything that made it a desktop application:
-
Headless library only — the interactive OpenGL viewer (
SimpleSimViewer,GeepGLFW) and its OpenEXR / GLFW / Boost / Xrandr dependencies are gone. -
Eigen::FFT backend — the FFTW backend is replaced by an
Eigen::FFT(KissFFT) shim; no FFTW dependency. - Modern math — IlmBase is replaced by Imath.
-
Standalone CMake — exports an
ehukai::ehukaitarget and afind_package(ehukai)config; dependencies are just Eigen3, TBB, Imath. -
Headless smoke tests under
test/exercise the spectra → propagation pipeline without a GPU.
Package installation (Ubuntu)
Prebuilt packages for Ubuntu 24.04 and 26.04 are available from the Honu Robotics APT repository. Follow the setup instructions there, then:
sudo apt install libehukai-dev
Building (Ubuntu)
Ehukai is developed and tested on Ubuntu (24.04 LTS recommended).
Install the build tools and dependencies:
sudo apt-get update
sudo apt-get install -y cmake build-essential \
libeigen3-dev libtbb-dev libimath-dev
Configure and compile the library, running these (and the commands below) from the repository root:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
Run the headless smoke tests:
ctest --test-dir build --output-on-failure
Optionally build and run the FFT microbenchmark (serial vs. parallel inverse FFT at several grid sizes). It needs Google Benchmark and is off by default:
sudo apt-get install -y libbenchmark-dev
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DEHUKAI_BUILD_BENCHMARKS=ON
cmake --build build -j
./build/bench_FftwWrapper
Install (optional — headers, shared library, and the ehukai CMake config):
sudo cmake --install build
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/HonuRobotics/ehukai.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-31 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| ehukai | 0.0.3 |
README
Ehukai
Ehukai (from the Hawaiian ʻehukai, sea spray) is a standalone, headless C++ library for spectral ocean wave synthesis, maintained by Honu Robotics for embedding in simulators and tools (e.g. VRX / Gazebo).
Ehukai is heavily based on EncinoWaves by Christopher Jon Horvath, with the updates described in What this library changes.
The basic architecture of these Waves is based on the TweakWaves application written by Chris Horvath for Tweak Films in 2001. This, in turn, was based on the SIGGRAPH papers and courses by Jerry Tessendorf, and by the paper “A Simple Fluid Solver based on the FTT” by Jos Stam.
The TMA, JONSWAP, and Pierson Moskowitz Wave Spectra, as well as the directional spreading functions are formulated based on the descriptions given in “Ocean Waves: The Stochastic Approach”, by Michel K. Ochi, published by Cambridge Ocean Technology Series, 1998,2005.
This library is written as a working implementation of the paper:
Christopher J. Horvath. 2015.
Empirical directional wave spectra for computer graphics.
In Proceedings of the 2015 Symposium on Digital Production (DigiPro ‘15),
Los Angeles, Aug. 8, 2015, pp. 29-39.
What this library changes
Compared to the original EncinoWaves, Ehukai keeps the spectral-synthesis library and removes everything that made it a desktop application:
-
Headless library only — the interactive OpenGL viewer (
SimpleSimViewer,GeepGLFW) and its OpenEXR / GLFW / Boost / Xrandr dependencies are gone. -
Eigen::FFT backend — the FFTW backend is replaced by an
Eigen::FFT(KissFFT) shim; no FFTW dependency. - Modern math — IlmBase is replaced by Imath.
-
Standalone CMake — exports an
ehukai::ehukaitarget and afind_package(ehukai)config; dependencies are just Eigen3, TBB, Imath. -
Headless smoke tests under
test/exercise the spectra → propagation pipeline without a GPU.
Package installation (Ubuntu)
Prebuilt packages for Ubuntu 24.04 and 26.04 are available from the Honu Robotics APT repository. Follow the setup instructions there, then:
sudo apt install libehukai-dev
Building (Ubuntu)
Ehukai is developed and tested on Ubuntu (24.04 LTS recommended).
Install the build tools and dependencies:
sudo apt-get update
sudo apt-get install -y cmake build-essential \
libeigen3-dev libtbb-dev libimath-dev
Configure and compile the library, running these (and the commands below) from the repository root:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
Run the headless smoke tests:
ctest --test-dir build --output-on-failure
Optionally build and run the FFT microbenchmark (serial vs. parallel inverse FFT at several grid sizes). It needs Google Benchmark and is off by default:
sudo apt-get install -y libbenchmark-dev
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DEHUKAI_BUILD_BENCHMARKS=ON
cmake --build build -j
./build/bench_FftwWrapper
Install (optional — headers, shared library, and the ehukai CMake config):
sudo cmake --install build
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/HonuRobotics/ehukai.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-31 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| ehukai | 0.0.3 |
README
Ehukai
Ehukai (from the Hawaiian ʻehukai, sea spray) is a standalone, headless C++ library for spectral ocean wave synthesis, maintained by Honu Robotics for embedding in simulators and tools (e.g. VRX / Gazebo).
Ehukai is heavily based on EncinoWaves by Christopher Jon Horvath, with the updates described in What this library changes.
The basic architecture of these Waves is based on the TweakWaves application written by Chris Horvath for Tweak Films in 2001. This, in turn, was based on the SIGGRAPH papers and courses by Jerry Tessendorf, and by the paper “A Simple Fluid Solver based on the FTT” by Jos Stam.
The TMA, JONSWAP, and Pierson Moskowitz Wave Spectra, as well as the directional spreading functions are formulated based on the descriptions given in “Ocean Waves: The Stochastic Approach”, by Michel K. Ochi, published by Cambridge Ocean Technology Series, 1998,2005.
This library is written as a working implementation of the paper:
Christopher J. Horvath. 2015.
Empirical directional wave spectra for computer graphics.
In Proceedings of the 2015 Symposium on Digital Production (DigiPro ‘15),
Los Angeles, Aug. 8, 2015, pp. 29-39.
What this library changes
Compared to the original EncinoWaves, Ehukai keeps the spectral-synthesis library and removes everything that made it a desktop application:
-
Headless library only — the interactive OpenGL viewer (
SimpleSimViewer,GeepGLFW) and its OpenEXR / GLFW / Boost / Xrandr dependencies are gone. -
Eigen::FFT backend — the FFTW backend is replaced by an
Eigen::FFT(KissFFT) shim; no FFTW dependency. - Modern math — IlmBase is replaced by Imath.
-
Standalone CMake — exports an
ehukai::ehukaitarget and afind_package(ehukai)config; dependencies are just Eigen3, TBB, Imath. -
Headless smoke tests under
test/exercise the spectra → propagation pipeline without a GPU.
Package installation (Ubuntu)
Prebuilt packages for Ubuntu 24.04 and 26.04 are available from the Honu Robotics APT repository. Follow the setup instructions there, then:
sudo apt install libehukai-dev
Building (Ubuntu)
Ehukai is developed and tested on Ubuntu (24.04 LTS recommended).
Install the build tools and dependencies:
sudo apt-get update
sudo apt-get install -y cmake build-essential \
libeigen3-dev libtbb-dev libimath-dev
Configure and compile the library, running these (and the commands below) from the repository root:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
Run the headless smoke tests:
ctest --test-dir build --output-on-failure
Optionally build and run the FFT microbenchmark (serial vs. parallel inverse FFT at several grid sizes). It needs Google Benchmark and is off by default:
sudo apt-get install -y libbenchmark-dev
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DEHUKAI_BUILD_BENCHMARKS=ON
cmake --build build -j
./build/bench_FftwWrapper
Install (optional — headers, shared library, and the ehukai CMake config):
sudo cmake --install build
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/HonuRobotics/ehukai.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-31 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| ehukai | 0.0.3 |
README
Ehukai
Ehukai (from the Hawaiian ʻehukai, sea spray) is a standalone, headless C++ library for spectral ocean wave synthesis, maintained by Honu Robotics for embedding in simulators and tools (e.g. VRX / Gazebo).
Ehukai is heavily based on EncinoWaves by Christopher Jon Horvath, with the updates described in What this library changes.
The basic architecture of these Waves is based on the TweakWaves application written by Chris Horvath for Tweak Films in 2001. This, in turn, was based on the SIGGRAPH papers and courses by Jerry Tessendorf, and by the paper “A Simple Fluid Solver based on the FTT” by Jos Stam.
The TMA, JONSWAP, and Pierson Moskowitz Wave Spectra, as well as the directional spreading functions are formulated based on the descriptions given in “Ocean Waves: The Stochastic Approach”, by Michel K. Ochi, published by Cambridge Ocean Technology Series, 1998,2005.
This library is written as a working implementation of the paper:
Christopher J. Horvath. 2015.
Empirical directional wave spectra for computer graphics.
In Proceedings of the 2015 Symposium on Digital Production (DigiPro ‘15),
Los Angeles, Aug. 8, 2015, pp. 29-39.
What this library changes
Compared to the original EncinoWaves, Ehukai keeps the spectral-synthesis library and removes everything that made it a desktop application:
-
Headless library only — the interactive OpenGL viewer (
SimpleSimViewer,GeepGLFW) and its OpenEXR / GLFW / Boost / Xrandr dependencies are gone. -
Eigen::FFT backend — the FFTW backend is replaced by an
Eigen::FFT(KissFFT) shim; no FFTW dependency. - Modern math — IlmBase is replaced by Imath.
-
Standalone CMake — exports an
ehukai::ehukaitarget and afind_package(ehukai)config; dependencies are just Eigen3, TBB, Imath. -
Headless smoke tests under
test/exercise the spectra → propagation pipeline without a GPU.
Package installation (Ubuntu)
Prebuilt packages for Ubuntu 24.04 and 26.04 are available from the Honu Robotics APT repository. Follow the setup instructions there, then:
sudo apt install libehukai-dev
Building (Ubuntu)
Ehukai is developed and tested on Ubuntu (24.04 LTS recommended).
Install the build tools and dependencies:
sudo apt-get update
sudo apt-get install -y cmake build-essential \
libeigen3-dev libtbb-dev libimath-dev
Configure and compile the library, running these (and the commands below) from the repository root:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
Run the headless smoke tests:
ctest --test-dir build --output-on-failure
Optionally build and run the FFT microbenchmark (serial vs. parallel inverse FFT at several grid sizes). It needs Google Benchmark and is off by default:
sudo apt-get install -y libbenchmark-dev
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DEHUKAI_BUILD_BENCHMARKS=ON
cmake --build build -j
./build/bench_FftwWrapper
Install (optional — headers, shared library, and the ehukai CMake config):
sudo cmake --install build
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/HonuRobotics/ehukai.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-31 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| ehukai | 0.0.3 |
README
Ehukai
Ehukai (from the Hawaiian ʻehukai, sea spray) is a standalone, headless C++ library for spectral ocean wave synthesis, maintained by Honu Robotics for embedding in simulators and tools (e.g. VRX / Gazebo).
Ehukai is heavily based on EncinoWaves by Christopher Jon Horvath, with the updates described in What this library changes.
The basic architecture of these Waves is based on the TweakWaves application written by Chris Horvath for Tweak Films in 2001. This, in turn, was based on the SIGGRAPH papers and courses by Jerry Tessendorf, and by the paper “A Simple Fluid Solver based on the FTT” by Jos Stam.
The TMA, JONSWAP, and Pierson Moskowitz Wave Spectra, as well as the directional spreading functions are formulated based on the descriptions given in “Ocean Waves: The Stochastic Approach”, by Michel K. Ochi, published by Cambridge Ocean Technology Series, 1998,2005.
This library is written as a working implementation of the paper:
Christopher J. Horvath. 2015.
Empirical directional wave spectra for computer graphics.
In Proceedings of the 2015 Symposium on Digital Production (DigiPro ‘15),
Los Angeles, Aug. 8, 2015, pp. 29-39.
What this library changes
Compared to the original EncinoWaves, Ehukai keeps the spectral-synthesis library and removes everything that made it a desktop application:
-
Headless library only — the interactive OpenGL viewer (
SimpleSimViewer,GeepGLFW) and its OpenEXR / GLFW / Boost / Xrandr dependencies are gone. -
Eigen::FFT backend — the FFTW backend is replaced by an
Eigen::FFT(KissFFT) shim; no FFTW dependency. - Modern math — IlmBase is replaced by Imath.
-
Standalone CMake — exports an
ehukai::ehukaitarget and afind_package(ehukai)config; dependencies are just Eigen3, TBB, Imath. -
Headless smoke tests under
test/exercise the spectra → propagation pipeline without a GPU.
Package installation (Ubuntu)
Prebuilt packages for Ubuntu 24.04 and 26.04 are available from the Honu Robotics APT repository. Follow the setup instructions there, then:
sudo apt install libehukai-dev
Building (Ubuntu)
Ehukai is developed and tested on Ubuntu (24.04 LTS recommended).
Install the build tools and dependencies:
sudo apt-get update
sudo apt-get install -y cmake build-essential \
libeigen3-dev libtbb-dev libimath-dev
Configure and compile the library, running these (and the commands below) from the repository root:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
Run the headless smoke tests:
ctest --test-dir build --output-on-failure
Optionally build and run the FFT microbenchmark (serial vs. parallel inverse FFT at several grid sizes). It needs Google Benchmark and is off by default:
sudo apt-get install -y libbenchmark-dev
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DEHUKAI_BUILD_BENCHMARKS=ON
cmake --build build -j
./build/bench_FftwWrapper
Install (optional — headers, shared library, and the ehukai CMake config):
sudo cmake --install build
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/HonuRobotics/ehukai.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-31 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| ehukai | 0.0.3 |
README
Ehukai
Ehukai (from the Hawaiian ʻehukai, sea spray) is a standalone, headless C++ library for spectral ocean wave synthesis, maintained by Honu Robotics for embedding in simulators and tools (e.g. VRX / Gazebo).
Ehukai is heavily based on EncinoWaves by Christopher Jon Horvath, with the updates described in What this library changes.
The basic architecture of these Waves is based on the TweakWaves application written by Chris Horvath for Tweak Films in 2001. This, in turn, was based on the SIGGRAPH papers and courses by Jerry Tessendorf, and by the paper “A Simple Fluid Solver based on the FTT” by Jos Stam.
The TMA, JONSWAP, and Pierson Moskowitz Wave Spectra, as well as the directional spreading functions are formulated based on the descriptions given in “Ocean Waves: The Stochastic Approach”, by Michel K. Ochi, published by Cambridge Ocean Technology Series, 1998,2005.
This library is written as a working implementation of the paper:
Christopher J. Horvath. 2015.
Empirical directional wave spectra for computer graphics.
In Proceedings of the 2015 Symposium on Digital Production (DigiPro ‘15),
Los Angeles, Aug. 8, 2015, pp. 29-39.
What this library changes
Compared to the original EncinoWaves, Ehukai keeps the spectral-synthesis library and removes everything that made it a desktop application:
-
Headless library only — the interactive OpenGL viewer (
SimpleSimViewer,GeepGLFW) and its OpenEXR / GLFW / Boost / Xrandr dependencies are gone. -
Eigen::FFT backend — the FFTW backend is replaced by an
Eigen::FFT(KissFFT) shim; no FFTW dependency. - Modern math — IlmBase is replaced by Imath.
-
Standalone CMake — exports an
ehukai::ehukaitarget and afind_package(ehukai)config; dependencies are just Eigen3, TBB, Imath. -
Headless smoke tests under
test/exercise the spectra → propagation pipeline without a GPU.
Package installation (Ubuntu)
Prebuilt packages for Ubuntu 24.04 and 26.04 are available from the Honu Robotics APT repository. Follow the setup instructions there, then:
sudo apt install libehukai-dev
Building (Ubuntu)
Ehukai is developed and tested on Ubuntu (24.04 LTS recommended).
Install the build tools and dependencies:
sudo apt-get update
sudo apt-get install -y cmake build-essential \
libeigen3-dev libtbb-dev libimath-dev
Configure and compile the library, running these (and the commands below) from the repository root:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
Run the headless smoke tests:
ctest --test-dir build --output-on-failure
Optionally build and run the FFT microbenchmark (serial vs. parallel inverse FFT at several grid sizes). It needs Google Benchmark and is off by default:
sudo apt-get install -y libbenchmark-dev
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DEHUKAI_BUILD_BENCHMARKS=ON
cmake --build build -j
./build/bench_FftwWrapper
Install (optional — headers, shared library, and the ehukai CMake config):
sudo cmake --install build
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/HonuRobotics/ehukai.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-31 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| ehukai | 0.0.3 |
README
Ehukai
Ehukai (from the Hawaiian ʻehukai, sea spray) is a standalone, headless C++ library for spectral ocean wave synthesis, maintained by Honu Robotics for embedding in simulators and tools (e.g. VRX / Gazebo).
Ehukai is heavily based on EncinoWaves by Christopher Jon Horvath, with the updates described in What this library changes.
The basic architecture of these Waves is based on the TweakWaves application written by Chris Horvath for Tweak Films in 2001. This, in turn, was based on the SIGGRAPH papers and courses by Jerry Tessendorf, and by the paper “A Simple Fluid Solver based on the FTT” by Jos Stam.
The TMA, JONSWAP, and Pierson Moskowitz Wave Spectra, as well as the directional spreading functions are formulated based on the descriptions given in “Ocean Waves: The Stochastic Approach”, by Michel K. Ochi, published by Cambridge Ocean Technology Series, 1998,2005.
This library is written as a working implementation of the paper:
Christopher J. Horvath. 2015.
Empirical directional wave spectra for computer graphics.
In Proceedings of the 2015 Symposium on Digital Production (DigiPro ‘15),
Los Angeles, Aug. 8, 2015, pp. 29-39.
What this library changes
Compared to the original EncinoWaves, Ehukai keeps the spectral-synthesis library and removes everything that made it a desktop application:
-
Headless library only — the interactive OpenGL viewer (
SimpleSimViewer,GeepGLFW) and its OpenEXR / GLFW / Boost / Xrandr dependencies are gone. -
Eigen::FFT backend — the FFTW backend is replaced by an
Eigen::FFT(KissFFT) shim; no FFTW dependency. - Modern math — IlmBase is replaced by Imath.
-
Standalone CMake — exports an
ehukai::ehukaitarget and afind_package(ehukai)config; dependencies are just Eigen3, TBB, Imath. -
Headless smoke tests under
test/exercise the spectra → propagation pipeline without a GPU.
Package installation (Ubuntu)
Prebuilt packages for Ubuntu 24.04 and 26.04 are available from the Honu Robotics APT repository. Follow the setup instructions there, then:
sudo apt install libehukai-dev
Building (Ubuntu)
Ehukai is developed and tested on Ubuntu (24.04 LTS recommended).
Install the build tools and dependencies:
sudo apt-get update
sudo apt-get install -y cmake build-essential \
libeigen3-dev libtbb-dev libimath-dev
Configure and compile the library, running these (and the commands below) from the repository root:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
Run the headless smoke tests:
ctest --test-dir build --output-on-failure
Optionally build and run the FFT microbenchmark (serial vs. parallel inverse FFT at several grid sizes). It needs Google Benchmark and is off by default:
sudo apt-get install -y libbenchmark-dev
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DEHUKAI_BUILD_BENCHMARKS=ON
cmake --build build -j
./build/bench_FftwWrapper
Install (optional — headers, shared library, and the ehukai CMake config):
sudo cmake --install build
File truncated at 100 lines see the full file
CONTRIBUTING
Repository Summary
| Checkout URI | https://github.com/HonuRobotics/ehukai.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-08-31 |
| Dev Status | DEVELOPED |
| Released | RELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| ehukai | 0.0.3 |
README
Ehukai
Ehukai (from the Hawaiian ʻehukai, sea spray) is a standalone, headless C++ library for spectral ocean wave synthesis, maintained by Honu Robotics for embedding in simulators and tools (e.g. VRX / Gazebo).
Ehukai is heavily based on EncinoWaves by Christopher Jon Horvath, with the updates described in What this library changes.
The basic architecture of these Waves is based on the TweakWaves application written by Chris Horvath for Tweak Films in 2001. This, in turn, was based on the SIGGRAPH papers and courses by Jerry Tessendorf, and by the paper “A Simple Fluid Solver based on the FTT” by Jos Stam.
The TMA, JONSWAP, and Pierson Moskowitz Wave Spectra, as well as the directional spreading functions are formulated based on the descriptions given in “Ocean Waves: The Stochastic Approach”, by Michel K. Ochi, published by Cambridge Ocean Technology Series, 1998,2005.
This library is written as a working implementation of the paper:
Christopher J. Horvath. 2015.
Empirical directional wave spectra for computer graphics.
In Proceedings of the 2015 Symposium on Digital Production (DigiPro ‘15),
Los Angeles, Aug. 8, 2015, pp. 29-39.
What this library changes
Compared to the original EncinoWaves, Ehukai keeps the spectral-synthesis library and removes everything that made it a desktop application:
-
Headless library only — the interactive OpenGL viewer (
SimpleSimViewer,GeepGLFW) and its OpenEXR / GLFW / Boost / Xrandr dependencies are gone. -
Eigen::FFT backend — the FFTW backend is replaced by an
Eigen::FFT(KissFFT) shim; no FFTW dependency. - Modern math — IlmBase is replaced by Imath.
-
Standalone CMake — exports an
ehukai::ehukaitarget and afind_package(ehukai)config; dependencies are just Eigen3, TBB, Imath. -
Headless smoke tests under
test/exercise the spectra → propagation pipeline without a GPU.
Package installation (Ubuntu)
Prebuilt packages for Ubuntu 24.04 and 26.04 are available from the Honu Robotics APT repository. Follow the setup instructions there, then:
sudo apt install libehukai-dev
Building (Ubuntu)
Ehukai is developed and tested on Ubuntu (24.04 LTS recommended).
Install the build tools and dependencies:
sudo apt-get update
sudo apt-get install -y cmake build-essential \
libeigen3-dev libtbb-dev libimath-dev
Configure and compile the library, running these (and the commands below) from the repository root:
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j
Run the headless smoke tests:
ctest --test-dir build --output-on-failure
Optionally build and run the FFT microbenchmark (serial vs. parallel inverse FFT at several grid sizes). It needs Google Benchmark and is off by default:
sudo apt-get install -y libbenchmark-dev
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DEHUKAI_BUILD_BENCHMARKS=ON
cmake --build build -j
./build/bench_FftwWrapper
Install (optional — headers, shared library, and the ehukai CMake config):
sudo cmake --install build
File truncated at 100 lines see the full file