Welcome to the HD Cookbook source repository! This is an open, collaborative place to gather useful code for Blu-ray Java, and other GEM terminal specifications like MHP, OCAP, and GEM-IPTV. If you have something you'd like to contribute, please do! All we ask is a little bit of coordination on package names, and a few simple formatting conventions. Here's what we have so far:
* Animator, a lightweight animation package. This package manages the animation loop, drawing optimization, and double-buffering for a Java Xlet, such as a BD-J application.
* GRIN - a framework for Graphical Interactivity. This framework uses the animation framework described above, and adds a "scene graph" to it. A scene graph is the thing that, at runtime, represents what gets built with a visual design tool. It's a tree of objects that represents drawing operations, much like an HTML document or a Flash file.
* A set of three Blu-ray Java xlets that can be used in a BD disc image. There's a main menu xlet that uses GRIN in the package com.hdcookbook.bookmenu.menu, a game called "Gun Bunny" in com.hdcookbook.gunbunny, and a "monitor xlet" to control the other apps in com.hdcookbook.bookmenu.monitor.
* A BD disc image with A/V assets, ready to have the three xlets described above added to it. Put these together on a BD-RE disc, and you have a disc image you can play on an off-the-shelf Blu-Ray Disc player, like the PS/3!
* A tool to build a Blu-ray Disc BDJO file in net.java.bd.tools.bdjo, under the tools directory.
* A set of security tools that generate certificates, sign Blu-ray Disc jar files, sign Binding Unit Manifest File (BUMF), and sign jars with file credentials in net.java.bd.tools.security, under the tools directory.
* A set of ant scripts you can use to build the tools and the xlets.
* A set of shell scripts you can use as a starting point to set up a build environment. These can be found in the "scripts" directory.
This code is being used in production Blu-ray titles, including major studio releases.