Ací es mostren les diferències entre la revisió seleccionada i la versió actual de la pàgina.
| Ambdós costats versió prèvia Revisió prèvia Següent revisió | Revisió prèvia | ||
|
libgdx_jsyn [2025/03/02 23:40] enric_mieza_sanchez [Projecte libGDX amb JSyn] |
libgdx_jsyn [2025/03/03 00:24] (actual) enric_mieza_sanchez [Projecte libGDX amb JSyn] |
||
|---|---|---|---|
| Línia 31: | Línia 31: | ||
| } | } | ||
| </ | </ | ||
| - | - Afegir biblioteques als mòduls '' | + | - Afegir biblioteques als mòduls '' |
| dependencies { | dependencies { | ||
| implementation " | implementation " | ||
| Línia 41: | Línia 41: | ||
| public class Main extends ApplicationAdapter { | public class Main extends ApplicationAdapter { | ||
| + | private Synthesizer synth; | ||
| public Main(AudioDeviceManager device) { | public Main(AudioDeviceManager device) { | ||
| if( device==null ) { | if( device==null ) { | ||
| Línia 49: | Línia 49: | ||
| } | } | ||
| } | } | ||
| + | </ | ||
| + | - Modificar el // | ||
| + | /** Launches the desktop (LWJGL3) application. */ | ||
| + | public class Lwjgl3Launcher { | ||
| + | // ... | ||
| + | private static Lwjgl3Application createApplication() { | ||
| + | return new Lwjgl3Application(new Main(null), getDefaultConfiguration()); | ||
| + | } | ||
| + | //... | ||
| + | </ | ||
| + | - Modificar el // | ||
| + | /** Launches the Android application. */ | ||
| + | public class AndroidLauncher extends AndroidApplication { | ||
| + | @Override | ||
| + | protected void onCreate(Bundle savedInstanceState) { | ||
| + | // ... | ||
| + | AndroidAudioForJSyn device = new AndroidAudioForJSyn(); | ||
| + | initialize(new Main(device), | ||
| + | // ... | ||
| </ | </ | ||
| - Descarregar l' | - Descarregar l' | ||
| - | - | + | - Implementa el codi comú al mòdul '' |
| + | public class Main extends ApplicationAdapter { | ||
| + | //... | ||
| + | LineOut lineOut; | ||
| + | SineOscillator sineOsc; | ||
| + | |||
| + | @Override | ||
| + | public void create() { | ||
| + | // engeguem el sintetizador | ||
| + | synth.start(); | ||
| + | // Afegir un oscil·lador sinusoïdal | ||
| + | sineOsc = new SineOscillator(); | ||
| + | sineOsc.frequency.set(440); | ||
| + | sineOsc.amplitude.set(0.5); | ||
| + | // Connexió a la sortida d' | ||
| + | lineOut = new LineOut(); | ||
| + | synth.add(sineOsc); | ||
| + | synth.add(lineOut); | ||
| + | sineOsc.output.connect(0, | ||
| + | sineOsc.output.connect(0, | ||
| + | } | ||
| + | | ||
| + | @Override | ||
| + | public void render() { | ||
| + | // al detectar un touch engeguem o apaguem | ||
| + | if( Gdx.input.isTouched() ) { | ||
| + | lineOut.start(); | ||
| + | } else { | ||
| + | lineOut.stop(); | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | - Comprova que funciona tant en Desktop (LWJGL3) com en Android. | ||