Sunday, June 12, 2011

Sgine + VLC = Awesomeness

I have long been interested in being able to play video in OpenGL and if you look back at previous posts I've made here, as well as posts at matthicks.com you'll see most of my previous work has been around the use of JMC (one of the only cool things to come out of JavaFX 1.x). However, it had significant problems playing specific kinds of videos and was just generally buggy. In this new remix of Sgine I'm adding a new project that provides complete support for VLC through the use of the VLCJ project.

Here are a couple screenshots taken in my testing using "Better Off Ted":





Still very preliminary, but both sound and video are displaying flawlessly on the screen. The great features of VLC include the ability to play practically any video file or stream, record from a webcam, watch DVDs, play audio, and even record the desktop. This will open the door for lots of useful non-game applications utilizing Sgine I hope.

It will probably be a while before I commit this new project as I still have a lot of tweaking and customization to do before it's ready. Additionally, this will likely rely on the still undefined scenegraph model for this iteration so check back frequently as there's much more to come.

Friday, June 3, 2011

NeHe Tutorials

In an effort to validate and test the functionality of the OpenGL Generator and derived implementations I have started porting the NeHe tutorials over to Sgine. If you aren't familiar with the NeHe tutorials they are a great resource to learn the fundamentals of OpenGL. I recently finished porting the first chunk to Sgine and wanted to post pictures and links to source. I start here with Lesson 2 since Lesson 1 is all setup and doesn't really apply to what I'm trying to show.



Lesson 02



Sgine Source code




Lesson 03



Sgine Source code




Lesson 04



Sgine Source code




Lesson 05



Sgine Source code



I'm not sure how many more of the NeHe tutorials I'll port as they require a lot of boiler plate to properly represent the OpenGL aspects of the code and my main goal with Sgine is to minimize boiler plate and complexity. However, this does serve as a good test base for OpenGL functionality on both desktop and Android device.

I am currently in the process of defining a good texturing / image abstraction layer for the rendering paradigm and will likely be posting about that in the near future.
Scala Engine for high-performance interactive applications.