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. | ||