Code Monkey home page Code Monkey logo

ocean's Introduction

Ocean-JS

Simulating The Ocean with Three.js and JavaScript. This project is an implementation of the first chapter of the GPU Gems book, focusing on effective water simulation.

Try It Out

You can try out the project here. The data takes a little bit time to load, so be patient until everything is loaded (few seconds).

Structure

  • index.html: Contains the basic HTML structure.

  • main.js: Contains the logic of the animation. Be careful, the code is very unorganized. Things to keep in mind:

    • main(): Application entry point function.
    • First Pass: Initializes the first pass (renders wave positions and normals into two textures).
    • Second Pass: Initializes the second pass (final render. Uses the textures from the first pass to draw the scene). Option Main in the UI corresponds to this pass.
    • Third Pass: The third pass handles visualization of the normal and position maps. Normal and Position options in the UI correspond to this pass.
  • shaders.js: Contains the necessary shader codes for the three passes.

Preview

Final Scene

image

UI

image

Normal Map Viewer

image

Position Map Viewer

image

Credits

This project was made possible with the following resources:

ocean's People

Contributors

mohido avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.