Apakah ada cara untuk memutar video dengan LibGDX?
Saya ingin meletakkan video sebagai splash screen di Android, tetapi saya tidak ingin menggunakan Android SDK, karena saya menggunakan LibGDX dan saya hampir selesai: /
Apakah ada cara untuk memutar video dengan LibGDX?
Saya ingin meletakkan video sebagai splash screen di Android, tetapi saya tidak ingin menggunakan Android SDK, karena saya menggunakan LibGDX dan saya hampir selesai: /
Jawaban:
Memutar video dengan LibGDX telah didefinisikan sebagai di luar cakupan proyek. Jadi tidak , Anda tidak dapat memutar video menggunakan LibGDX.
Ini tidak menghalangi kemungkinan penulisan kode khusus untuk Android untuk memutar video. Itu hanya berarti aplikasi Anda tidak akan mempertahankan portabilitas LibGDX.
Seperti yang dikatakan Byte56, di libGDX Anda tidak dapat memutar video :( jadi saya melakukan ini:
Saya membuat aktivitas baru "SplashScreen"
public class SplashScreen extends Activity implements OnCompletionListener
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.splash);
String fileName = "android.resource://"+ getPackageName() +"/raw/video";
VideoView vv = (VideoView) this.findViewById(R.id.surface);
vv.setVideoURI(Uri.parse(fileName));
vv.setOnCompletionListener(this);
vv.start();
}
@Override
public void onCompletion(MediaPlayer mp)
{
// TODO Auto-generated method stub
Intent intent = new Intent(this, libgdx.class);
startActivity(intent);
finish();
}
}
Dalam metode "onCompletion", saya menggunakan maksud untuk memanggil aktivitas baru saya di mana "menginisialisasi" panggilan untuk mesin libGDX untuk bekerja
Dan tata letak baru untuk videoView
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal" >
<VideoView
android:id="@+id/surface"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center" >
</VideoView>
</LinearLayout>
Ini cara bermain: libname adalah "indiespot-media-0.8.09.jar" yang bisa Anda dapatkan di sini .
Bagaimana cara menggunakan:
player = new MoviePlayer(videoFile);
Texure playerTexture = new Texture(
player.movie.width(),
player.movie.height(),
Pixmap.Format.RGBA8888) {
@Override
public void bind() {
Gdx.gl.glBindTexture(0, player.textureHandle);
}
};
playerTexture
tekstur seperti biasa