Package org.xjge.core

Contains various classes, objects, and utilities many of which are essential to the function of the engine. These are listed in greater detail below:

Core Classes:
NameDescription
HardwareManages the state of various peripheral devices including those used for audio output and visual display.
InputProvides a single point of access through which the state of peripheral input devices may be managed.
MonitorRepresents a visual display device such as a computer monitor or television.
ViewportRepresents a rectangular region of the game window through which the perspective of a scene and its rendered objects may be viewed.
WindowProvides a point of access which can be used to alter the properties of the game window at runtime.


Gameplay Utilities:
NameDescription
AudioProvides a single point of access through which sound effects and music can be played.
CameraAbstract class which can be used to create specialized objects that will render the current perspective of a viewport.
CommandAllows an interactive component of an input device to be coupled to some player action.
EntityAbstract class which can be used to represent dynamic game objects in the game world.
EventRepresents a game or engine event (such as a pause, cutscene, or error) that temporarily disrupts the normal flow of execution.
GameProvides utilities for managing high-level game logic.
InputDeviceRepresents a peripheral device that can capture input actions from a user.
ObservableUsed to relay information about state changes occurring in the implementing object to one or more observers located anywhere in the codebase.
PuppetComponent object that enables implementing objects to make use of input actions captured from an input device.
SceneA 3D representation of the game world that contains entities, light sources, and camera objects.
SkyboxAn object which can be used to create a background to a scene.
TextProvides utilities for rendering text to the screen.
TimerA simple monotonic timing mechanism.
WidgetAn abstract class which can be used to define subclasses that will comprise individual elements of a user interface.


Other Miscellaneous Features:
NameDescription
ErrorUtilsProvides convenience methods for locating errors encountered by the engine at runtime.
FontSupplies the data parsed from a font file as an immutable object which can be used to render text in some desired font.
SongRepresents a musical composition.
SoundSupplies the data parsed from an audio file into a new sound object that can be used by the Audio class
See Also:
XJGE
  • Class Summary
    Class Description
    Audio
    Provides an abstraction of the OpenAL API through which sound effects and music may be played.
    Camera
    Abstract class which can be used to create specialized objects that will render the current perspective of a Viewport.
    Command
    Abstraction of the Gang of Four pattern by the same name- command objects serve as a point at which a Control from an InputDevice can be coupled to various player actions and passed to a Puppet object.
    Entity
    Abstract class which can be used to represent dynamic game objects within the game world.
    ErrorUtils
    Provides convenience methods for locating errors encountered by the engine at runtime.
    Event
    Objects of this type represent a game or engine event (such as a pause, cutscene, or error) that temporarily disrupts the normal flow of execution.
    Font
    Supplies the data parsed from a font file as an immutable object which can be passed to the drawString() method of a Widget to render text in some desired font.
    Game
    Provides utilities for managing high-level game logic.
    Hardware
    Provides utilities to manage the state of various connected peripheral devices not directly related to user input.
    Input
    Provides a single point of access through which the state of peripheral input devices may be managed.
    Light
    Represents a source of visible light at some point in 3D space.
    Logger
    A lightweight application logger comprised of a single static class which can be used to keep a chronological record of significant events occurring within the application at runtime.
    Monitor
    Represents a visual display device such as a computer monitor or television.
    Observable
    A Component object which can be used to relay information about state changes occurring in the implementing object to one or more observers located anywhere in the codebase.
    Puppet
    Component object that enables implementing objects to make use of input actions captured from an input device by coupling interactive components to some meaningful action.
    Scene
    A 3D representation of the game world that contains entities, light sources, and camera objects.
    ShadowMap
    Shadow maps generate a 2D texture that is then projected over the scene to create the appearance of dynamic shadows.
    Skybox
    Enables a Scene to exhibit a greater level of detail in its environment by projecting a 3D texture onto the corresponding faces of a cuboid mesh, creating the illusion of an infinitely distant sky.
    Song
    Represents a musical composition, may or may not contain an intro which is played once before entering a looping body section.
    Sound
    Supplies the data parsed from an audio file into a new sound object that can be used by the Audio class to play sound effects.
    Speaker
    Represents a peripheral audio output device such as a speaker, headset, or headphones.
    StopWatch
    Provides a simple timing mechanism that exhibits greater accuracy than Game.tick(int) alone by capturing the timestamp of the initial game tick from which StopWatch.tick(int,int,boolean) was called and comparing it to subsequent ticks until the specified number of cycles have passed.
    TerminalCommand
    Abstract class used to define additional commands for the Terminal.
    TerminalOutput
    A data structure which contains information pertaining to a commands response when executed.
    Text
    Provides utilities for rendering text to the screen.
    Timer
    A simple monotonic timing mechanism.
    Widget
    An abstract class which can be used to define subclasses that will comprise individual elements of a user interface.
    Window
    Provides a point of access which can be used to alter the properties of the game window at runtime.
    XJGE
    Represents the game engine in its broadest sense and provides a point at which its functionality may be extended to better suit the individual requirements of the implementation.
  • Enum Summary
    Enum Description
    Control
    Represents an interactive component on a Gamepad such as an analog stick, button, or trigger.
    Split
    Represents a way in which the screen can be divided during split screen mode.