yaarq.dmo
Class yrqDemoApplication

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--java.awt.Window
                    |
                    +--java.awt.Frame
                          |
                          +--yaarq.dmo.yrqDemoApplication
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, yrqApplication

public final class yrqDemoApplication
extends java.awt.Frame
implements yrqApplication

This application demonstrates the abilities of the yaarq engine. Some subclasses have been defined to implement more complex scene elements.

TODO: A lot :-)

See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
Nested classes inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
Nested classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
static int MODE_FULLSCREEN_DEBUG
          Display mode which emulates fullscreen by creating a window the size of the current resolution.
static int MODE_FULLSCREEN_RISKY
          True fullscreen display mode which tries to switch resolutions after taking full exclusive control of the computer.
static int MODE_WINDOWED_CINEMA
          Widescreen-shaped windowed display mode.
static int MODE_WINDOWED_MONITOR
          Monitor-shaped windowed display mode.
 
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
yrqDemoApplication(int a_displayMode)
          Constructs a demo application using a given display mode.
 
Method Summary
 java.awt.Component engineComponentRequest()
          Implementation of yrqApplication engineComponentRequest: Returns the component for the engine to run within.
 void engineInitCallback(yrqEngine a_engine)
          Implementation of yrqApplication engineInitCallback: Add all scene objects to the application
 void engineInputCallback(yrqEngine a_engine, java.awt.AWTEvent a_evt)
          Implementation of the engineInputCallback: Simply place event handling code here to create interactivity.
 void engineLoadCallback(yrqEngine a_engine)
          Implementation of yrqApplication engineLoadCallback: All low-level resources like textures, sounds etc. needed for the Demo are loaded here.
 void engineRenderCallback(yrqEngine a_engine, java.awt.Graphics2D a_gfx)
          Implementation of yrqApplication engineRenderCallback: After rendering each 3D frame, the engine instance calls this callback to allow for the application to do 2D overlay rendering.
 void engineUpdateCallback(yrqEngine a_engine)
          Implementation of yrqApplication engineUpdatCallback: The demos high-level control logic is implemented here, and executed continuously by the engine instance.
 
Methods inherited from class java.awt.Frame
addNotify, finalize, getAccessibleContext, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, paramString, remove, removeNotify, setCursor, setExtendedState, setIconImage, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getMostRecentFocusOwner, getOwnedWindows, getOwner, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindowStateListeners, hide, isActive, isFocusableWindow, isFocusCycleRoot, isFocused, isShowing, pack, postEvent, processEvent, processWindowEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationRelativeTo, show, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, remove, removeAll, removeContainerListener, setFocusTraversalKeys, setFocusTraversalPolicy, setFont, setLayout, transferFocusBackward, transferFocusDownCycle, update, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isOpaque, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Field Detail

MODE_FULLSCREEN_DEBUG

public static final int MODE_FULLSCREEN_DEBUG
Display mode which emulates fullscreen by creating a window the size of the current resolution. Slower than true fullscreen mode on some cards, no change to desired resolution possible, but secure even within development environments.

See Also:
Constant Field Values

MODE_FULLSCREEN_RISKY

public static final int MODE_FULLSCREEN_RISKY
True fullscreen display mode which tries to switch resolutions after taking full exclusive control of the computer. This doesnt work on some machines and crashes a variety of development environments.

See Also:
Constant Field Values

MODE_WINDOWED_CINEMA

public static final int MODE_WINDOWED_CINEMA
Widescreen-shaped windowed display mode. Absolutely secure but slow on some cards.

See Also:
Constant Field Values

MODE_WINDOWED_MONITOR

public static final int MODE_WINDOWED_MONITOR
Monitor-shaped windowed display mode. Absolutely secure but slow on some cards.

See Also:
Constant Field Values
Constructor Detail

yrqDemoApplication

public yrqDemoApplication(int a_displayMode)
Constructs a demo application using a given display mode.

Parameters:
a_displayMode - Displaymode for the demo application to run in, one of the MODE_xxx constants.
Method Detail

engineComponentRequest

public java.awt.Component engineComponentRequest()
Implementation of yrqApplication engineComponentRequest: Returns the component for the engine to run within.

Specified by:
engineComponentRequest in interface yrqApplication
Returns:
The component within which the engine should render

engineInitCallback

public void engineInitCallback(yrqEngine a_engine)
Implementation of yrqApplication engineInitCallback: Add all scene objects to the application

Specified by:
engineInitCallback in interface yrqApplication
Parameters:
a_engine - The engine instance calling this method

engineInputCallback

public void engineInputCallback(yrqEngine a_engine,
                                java.awt.AWTEvent a_evt)
Implementation of the engineInputCallback: Simply place event handling code here to create interactivity.

Specified by:
engineInputCallback in interface yrqApplication
Parameters:
a_engine - The engine instance calling this method
a_evt - The mouse/key event ocurred

engineLoadCallback

public void engineLoadCallback(yrqEngine a_engine)
Implementation of yrqApplication engineLoadCallback: All low-level resources like textures, sounds etc. needed for the Demo are loaded here.

Specified by:
engineLoadCallback in interface yrqApplication
Parameters:
a_engine - The engine instance calling this method

engineRenderCallback

public void engineRenderCallback(yrqEngine a_engine,
                                 java.awt.Graphics2D a_gfx)
Implementation of yrqApplication engineRenderCallback: After rendering each 3D frame, the engine instance calls this callback to allow for the application to do 2D overlay rendering. Note: The Java3D implementation is very slow on this, so dont't draw anything fancy here.

Specified by:
engineRenderCallback in interface yrqApplication
Parameters:
a_engine - The engine instance calling this method
a_gfx - The graphics context onto which to draw

engineUpdateCallback

public void engineUpdateCallback(yrqEngine a_engine)
Implementation of yrqApplication engineUpdatCallback: The demos high-level control logic is implemented here, and executed continuously by the engine instance. This callback is called regulary if framerate suffices

Specified by:
engineUpdateCallback in interface yrqApplication
Parameters:
a_engine - The engine instance calling this method