3D Interactive Wave App

3D Interactive Wave App

3D Interactive Wave App

3D Interactive Wave App

— Make us proud: Creative free assignment —

Year

Platform

Grade

2018

Year: 2018

Year: 2018

macOS & Windows

Platform: macOS & Windows

Platform: macOS & Windows

9.5/10

Grade: 9.5/10

Grade: 9.5/10

Context

Context

This assignment is a part of Programming Bootcamp I attended at The Hague University of Applied Sciences. This bootcamp lasted five days and at the end of each day I was asked to code an app based on certain requirements.

3D Interactive Wave app (let's call it Z3D0 from now on) is programmed entirely by myself in Java using Processing and one preprogrammed library. Tested on Mac.

The assignments were getting more and more challenging to program and I was able to improve my coding skills. Overall it was one of the most intense classes I've ever attended and an amazing experience.

There were total of 5 assignments and I spent about 7 hours working on this final project for Programming Bootcamp.

The app is quite demanding to render because of its visually rich graphics.

Process

Process

My first idea was to develop a 3D game where you would have to avoid moving obstacles in a tunnel with a spaceship. The spaceship would be controlled with trackpad / mouse and the spaceship will basically follow your cursor.

I started with designing an environment. I wanted the background of the game to look epic on its own and I ended up going for moving wave effect that would increase flow and immersion of the player.

Because there is no water in the space I made a decision to form a wave that would be consisting of geometrical shapes and lines. Movement and intensity of the wave would change according to speed of the flying spaceship.

I really liked the wave effect I created and at this point I decided not to make a game I originally intended but instead an interactive 3D wave app. In this project I really challenged myself and put a lot of effort into it. I consider Z3D0 one of the best things I've ever worked on.

wave4
wave9
wave8

Custom modes — to
infinity and beyond

Custom modes — to
infinity and beyond

Custom modes — to
infinity and beyond

Custom modes — to
infinity and beyond

wave5
wave16
wave15

There is literally millions of possibilities you can explore.

wave1
wave3
wave10

See the wave gradually loop between colors of the spectrum.

wave6
wave2
wave12

There is a lot of modes in Z3D0. One of them is earthquake mode [right].

There is a lot of modes in Z3D0. One of them is earthquake mode.

There is a lot of modes in Z3D0. One of them is earthquake mode.

How it works

How it works

The wave is randomly generated and looped in 3000 by 3000px square in 3D interface. I wanted to increase the potential of this app by making the user more immersed to the visuals. You can freely rotate the wave in any direction, zoom in or out and I even made it possible to change the nature of the wave itself (modes).

To turn on color mode press "X" on your keyboard. You can invert the colors by hitting  "I". By pressing "P" or "D" you change the structure of the wave to points.

I also implemented structure made out of lines which you can see by hitting "L" key. There is also this weird effect (you can access it by pressing "E") which I initially intended to demonstrate earthquake but the end result generates triangles above and beneath the wave.

When you press TAB key, everything freezes. To resume, press any other key. All these modes and structure changes work also with lower case characters so you don’t have to hold shift while pressing "X".

wave19
wave14
wave18
wave20
wave17

I'm thinking about releasing this app for personal use only.
If you're interested let me know (:

Copyright © 2019 Matus Hatala