SiVi, a Gradient Noise Visualizer & GIF MakerTool to help game programmers manipulate layers of gradient noise, for exploring the creation of very organic-looking textures. Power with Simplex or OpenSimplexNoise engines. Can export jpgs, gifs. |
The open source project can be found at github.com/philfrei/SiVi. Visit the repository for the latest build, and additional information |
|
GitHub Library: AudioCue |
![]() |
AudioCue is an open source Java library for audio asset playback. The code is free to use. The AudioCue class has most of the functionality of a Java Clip, but with additional capabilities: real time volume, pan, and pitch controls, as well as concurrent playback. |
![]() |
Currently available from itch.io for Windows-64 and Mac OSX systems. More information here. |
Reference Tone Keyboard 1.1Turn your laptop or desktop computer into a polyphonic musical keyboard! With the number row for black keys and the Q-W-E-R row for white keys, you can play chords and melodies! This program is an easy way to get tuning notes or for playing a drone for intonation training. Can even be used to figure out that elusive melody or chord change you just heard in your head or on the coffee shop sound system. |
Leviaphon - a Virtual ThereminThis virtual theremin is played via mouse or touchpad. Highly configurable, the horizontal axis controls pitch, and the vertical can control volume, timbre or vibrato. Drawn paths can be saved and replayed, cues can be exported as wav assets. Core synth choices include a classic theremin sawtooth, a square wave, "power-chord" inspired distortion, or human-vowels for speechlike effects. |
Please contact me if you are interested in beta testing this unit! I'm currently looking at reworking the GUI, but am keen to get feedback on the existing functionality. | ![]() |
Application can be downloaded from here. Requires Java 8. |
HexaraThis is a work-in-progress puzzle game. The task is to fit together all the mystical icons from the side scrolls into a central frame, while preserving the scroll-neighbor relations. The sound design is an example of a generative sound-score. Musical tension increases as the player gets closer to solving the puzzle. |
|
Tone Circle DroneThis musical drone tool can loop up to 12 overlapping tones with metronome-accurate timing. It is useful as a musical accompaniment, or electronic tanpura. This tool can also help with intonation training. Easily tunable, pitches can be set based on classic temperaments such as Pythagorean or Werckmeister, or to Indian shrutis. (Alternative names being considered: Shruti Dev, Pitch Maester |
Would you like to better discern the difference, say, between equal-tempered third and a harmonically perfect third? Please contact me if you are interested in beta testing this unit! |
|
The most current version can be downloaded from here. Double click the .jar file to run. Requires Java 8. |
![]() |
Peaceful BrookUsing innovative tools for ambient sound effects, this app generates, in real time, a peaceful soundscape. Most notably, a 4-second long WAV file of nearby El Cerrito Creek plays continuously without discernible looping, and a single frog croak (1/2 second) is used to create the illusion of an entire pond filled with croaking frogs. |
Circles Sounds DemoBuilt to test interoperability possible between audio and graphic threads, and an example of generative music. The motion of the circles is handled in a game-loop thread. Image coordinates affect the volume and pan of corresponding musical motifs. Each new iteration of the real-time generated musical motif triggers a flash of the corresponding circle. |
Currently available as a downloadable jar file. Requires Java 8. |
![]() |
Spiderbell DashboardA real-time synthesizer, plays up to 20 bells polyphonically. The bell sounds are created via Frequency Modulation (FM). The GUI has a 2D pad for triggering plays, with one dimension for pitch, and the other for timbre. There are also sliders for volume and duration, and a glowball visualization. |
Currently available as a downloadable jar file. Requires Java 8. |
|
Shepard Chord BuilderAvailable as a downloadable jar file. Requires Java 8. |
![]() |
Creates an audio illusion of continuously rising or falling tones. Works with up to three-note chords, played in sequence or as a continuous glissando. Output can be exported to a wav file that will recreate the illusion when looped. |
A generative composition inspired in part by Dune, with five asynchronous loops that are set into motion and mixed live. Select the 'Drift' checkbox and volumes of the tracks will slowly evolve in a constrained-random fashion. |
The Fivefold WayAvailable as a downloadable jar file. Requires Java 8. |
Getting Started with JavaFX Game Programming (for-Java-Programmers)
This tutorial has four short lessons, aimed at getting experienced Java game programmers quickly up to speed on JavaFX game programming basics. I emphasize overcoming some common gotcha's, covering the use of Eclipse, a basic overview of the graphics hierarchy, the preferred animation/game loop method, and how to capture keystrokes. Written in Feb 2017, some of the info pertaining to Eclipse has become obsolete, but the basic JavaFX content remains valid. This tutorial has had over 150,000 views!
Packaging Java as a Native Application with a Self-Contained, Custom Runtime: A Manual Walkthrough
This tutorial was written shortly after modular Java and the jlink capability became available, and few tutorials existed that explicitly addressed packaging and distributing a JavaFX program with a custom run-time. [Since writing, JavaFX has been separated from Java and this tutorial does not include the additional steps required to handle that new development. Tools for deriving the module-info.java file have also improved.] As a way to help better understand the process, only command-line tools (javac, java, jlink) are used. Once the program is built, the tutorial includes steps to using InnoSetup 5 (now 6) to package the application as an installable Windows .exe program. The tutorial assumes that the reader has a beginner's level of expertise with command shell operations.