Blowbox 2017
A 3D Game Engine by Riko Ophorst using DirectX 12
|
Typedefs | |
typedef uint32_t | Index |
template<typename T > | |
using | Deque = eastl::deque< T > |
template<typename Result , typename... Arguments> | |
using | FunctionWithArguments = eastl::function< Result(Arguments...)> |
template<typename Result , typename Argument0 > | |
using | FunctionWithArgument = eastl::function< Result(Argument0)> |
template<typename Result > | |
using | Function = eastl::function< Result()> |
template<typename T > | |
using | IntrusivePtr = eastl::intrusive_ptr< T > |
template<typename T > | |
using | LinkedPtr = eastl::linked_ptr< T > |
template<typename Key , typename T > | |
using | Map = eastl::map< Key, T > |
template<typename T > | |
using | PriorityQueue = eastl::priority_queue< T > |
template<typename T > | |
using | Queue = eastl::queue< T > |
template<typename T > | |
using | RingBuffer = eastl::ring_buffer< T > |
template<typename T > | |
using | SafePtr = eastl::safe_ptr< T > |
template<typename T > | |
using | ScopedPtr = eastl::scoped_ptr< T > |
template<typename T > | |
using | SharedPtr = eastl::shared_ptr< T > |
template<typename T > | |
using | Stack = eastl::stack< T > |
using | String = eastl::string |
using | WString = eastl::wstring |
template<typename... Ts> | |
using | Tuple = eastl::tuple< Ts... > |
template<typename T > | |
using | UniquePtr = eastl::unique_ptr< T > |
template<typename Key , typename T > | |
using | UnorderedMap = eastl::unordered_map< Key, T > |
template<typename T1 , typename T2 > | |
using | Pair = eastl::pair< T1, T2 > |
template<typename T > | |
using | Vector = eastl::vector< T > |
template<typename T > | |
using | WeakPtr = eastl::weak_ptr< T > |
Enumerations | |
enum | PixelComposition { PixelComposition_R, PixelComposition_RG, PixelComposition_RGB, PixelComposition_RGBA, PixelComposition_UNKNOWN } |
enum | ProfilerBlockType { ProfilerBlockType_GAME, ProfilerBlockType_CORE, ProfilerBlockType_RENDERER, ProfilerBlockType_CONTENT, ProfilerBlockType_MISC, ProfilerBlockType_COUNT } |
enum | FindAdapterFlag { FindAdapterFlag_NO_SOFTWARE = 0x1, FindAdapterFlag_NO_INTEL = 0x2 } |
enum | ShaderType { ShaderType_VERTEX, ShaderType_PIXEL, ShaderType_GEOMETRY, ShaderType_COMPUTE, ShaderType_HULL, ShaderType_DOMAIN, ShaderType_UNKNOWN } |
enum | KeyCode { KeyCode_SPACE = GLFW_KEY_SPACE, KeyCode_APOSTROPHE = GLFW_KEY_APOSTROPHE, KeyCode_COMMA = GLFW_KEY_COMMA, KeyCode_MINUS = GLFW_KEY_MINUS, KeyCode_PERIOD = GLFW_KEY_PERIOD, KeyCode_SLASH = GLFW_KEY_SLASH, KeyCode_0 = GLFW_KEY_0, KeyCode_1 = GLFW_KEY_1, KeyCode_2 = GLFW_KEY_2, KeyCode_3 = GLFW_KEY_3, KeyCode_4 = GLFW_KEY_4, KeyCode_5 = GLFW_KEY_5, KeyCode_6 = GLFW_KEY_6, KeyCode_7 = GLFW_KEY_7, KeyCode_8 = GLFW_KEY_8, KeyCode_9 = GLFW_KEY_9, KeyCode_SEMICOLON = GLFW_KEY_SEMICOLON, KeyCode_EQUAL = GLFW_KEY_EQUAL, KeyCode_A = GLFW_KEY_A, KeyCode_B = GLFW_KEY_B, KeyCode_C = GLFW_KEY_C, KeyCode_D = GLFW_KEY_D, KeyCode_E = GLFW_KEY_E, KeyCode_F = GLFW_KEY_F, KeyCode_G = GLFW_KEY_G, KeyCode_H = GLFW_KEY_H, KeyCode_I = GLFW_KEY_I, KeyCode_J = GLFW_KEY_J, KeyCode_K = GLFW_KEY_K, KeyCode_L = GLFW_KEY_L, KeyCode_M = GLFW_KEY_M, KeyCode_N = GLFW_KEY_N, KeyCode_O = GLFW_KEY_O, KeyCode_P = GLFW_KEY_P, KeyCode_Q = GLFW_KEY_Q, KeyCode_R = GLFW_KEY_R, KeyCode_S = GLFW_KEY_S, KeyCode_T = GLFW_KEY_T, KeyCode_U = GLFW_KEY_U, KeyCode_V = GLFW_KEY_V, KeyCode_W = GLFW_KEY_W, KeyCode_X = GLFW_KEY_X, KeyCode_Y = GLFW_KEY_Y, KeyCode_Z = GLFW_KEY_Z, KeyCode_LEFT_BRACKET = GLFW_KEY_LEFT_BRACKET, KeyCode_BACKSLASH = GLFW_KEY_BACKSLASH, KeyCode_RIGHT_BRACKET = GLFW_KEY_RIGHT_BRACKET, KeyCode_GRAVE_ACCENT = GLFW_KEY_GRAVE_ACCENT, KeyCode_WORLD_1 = GLFW_KEY_WORLD_1, KeyCode_WORLD_2 = GLFW_KEY_WORLD_2, KeyCode_ESCAPE = GLFW_KEY_ESCAPE, KeyCode_ENTER = GLFW_KEY_ENTER, KeyCode_TAB = GLFW_KEY_TAB, KeyCode_BACKSPACE = GLFW_KEY_BACKSPACE, KeyCode_INSERT = GLFW_KEY_INSERT, KeyCode_DELETE = GLFW_KEY_DELETE, KeyCode_RIGHT = GLFW_KEY_RIGHT, KeyCode_LEFT = GLFW_KEY_LEFT, KeyCode_DOWN = GLFW_KEY_DOWN, KeyCode_UP = GLFW_KEY_UP, KeyCode_PAGE_UP = GLFW_KEY_PAGE_UP, KeyCode_PAGE_DOWN = GLFW_KEY_PAGE_DOWN, KeyCode_HOME = GLFW_KEY_HOME, KeyCode_END = GLFW_KEY_END, KeyCode_CAPS_LOCK = GLFW_KEY_CAPS_LOCK, KeyCode_SCROLL_LOCK = GLFW_KEY_SCROLL_LOCK, KeyCode_NUM_LOCK = GLFW_KEY_NUM_LOCK, KeyCode_PRINT_SCREEN = GLFW_KEY_PRINT_SCREEN, KeyCode_PAUSE = GLFW_KEY_PAUSE, KeyCode_F1 = GLFW_KEY_F1, KeyCode_F2 = GLFW_KEY_F2, KeyCode_F3 = GLFW_KEY_F3, KeyCode_F4 = GLFW_KEY_F4, KeyCode_F5 = GLFW_KEY_F5, KeyCode_F6 = GLFW_KEY_F6, KeyCode_F7 = GLFW_KEY_F7, KeyCode_F8 = GLFW_KEY_F8, KeyCode_F9 = GLFW_KEY_F9, KeyCode_F10 = GLFW_KEY_F10, KeyCode_F11 = GLFW_KEY_F11, KeyCode_F12 = GLFW_KEY_F12, KeyCode_F13 = GLFW_KEY_F13, KeyCode_F14 = GLFW_KEY_F14, KeyCode_F15 = GLFW_KEY_F15, KeyCode_F16 = GLFW_KEY_F16, KeyCode_F17 = GLFW_KEY_F17, KeyCode_F18 = GLFW_KEY_F18, KeyCode_F19 = GLFW_KEY_F19, KeyCode_F20 = GLFW_KEY_F20, KeyCode_F21 = GLFW_KEY_F21, KeyCode_F22 = GLFW_KEY_F22, KeyCode_F23 = GLFW_KEY_F23, KeyCode_F24 = GLFW_KEY_F24, KeyCode_F25 = GLFW_KEY_F25, KeyCode_KP_0 = GLFW_KEY_KP_0, KeyCode_KP_1 = GLFW_KEY_KP_1, KeyCode_KP_2 = GLFW_KEY_KP_2, KeyCode_KP_3 = GLFW_KEY_KP_3, KeyCode_KP_4 = GLFW_KEY_KP_4, KeyCode_KP_5 = GLFW_KEY_KP_5, KeyCode_KP_6 = GLFW_KEY_KP_6, KeyCode_KP_7 = GLFW_KEY_KP_7, KeyCode_KP_8 = GLFW_KEY_KP_8, KeyCode_KP_9 = GLFW_KEY_KP_9, KeyCode_KP_DECIMAL = GLFW_KEY_KP_DECIMAL, KeyCode_KP_DIVIDE = GLFW_KEY_KP_DIVIDE, KeyCode_KP_MULTIPLY = GLFW_KEY_KP_MULTIPLY, KeyCode_KP_SUBTRACT = GLFW_KEY_KP_SUBTRACT, KeyCode_KP_ADD = GLFW_KEY_KP_ADD, KeyCode_KP_ENTER = GLFW_KEY_KP_ENTER, KeyCode_KP_EQUAL = GLFW_KEY_KP_EQUAL, KeyCode_LEFT_SHIFT = GLFW_KEY_LEFT_SHIFT, KeyCode_LEFT_CONTROL = GLFW_KEY_LEFT_CONTROL, KeyCode_LEFT_ALT = GLFW_KEY_LEFT_ALT, KeyCode_LEFT_SUPER = GLFW_KEY_LEFT_SUPER, KeyCode_RIGHT_SHIFT = GLFW_KEY_RIGHT_SHIFT, KeyCode_RIGHT_CONTROL = GLFW_KEY_RIGHT_CONTROL, KeyCode_RIGHT_ALT = GLFW_KEY_RIGHT_ALT, KeyCode_RIGHT_SUPER = GLFW_KEY_RIGHT_SUPER, KeyCode_MENU = GLFW_KEY_MENU, KeyCode_UNKNOWN } |
enum | MouseButton { MouseButton_LEFT, MouseButton_MIDDLE, MouseButton_RIGHT, MouseButton_4, MouseButton_5, MouseButton_6, MouseButton_7, MouseButton_8 } |
Functions | |
KeyCode | GlfwKeyToBlowboxKeyCode (int glfw_key) |
int | BlowboxKeyCodeToGlfwKey (KeyCode key) |
MouseButton | GlfwMouseButtonToBlowboxMouseButton (int glfw_mouse_button) |
int | BlowboxMouseButtonToGlfwMouseButton (MouseButton mouse_button) |
The main Blowbox namespace.
All symbols that are in Blowbox exist in the blowbox namespace. Because the design philosophy behind Blowbox is based on flat hierarchies, there are no other namespaces in the entirity of Blowbox except for blowbox itself.
using blowbox::Deque = typedef eastl::deque<T> |
Typedef for wrapping the EASTL Deque.
A Deque is a double ended queue. Refer to EASTL documentation for more information.
using blowbox::Function = typedef eastl::function<Result()> |
Typedef for wrapping the EASTL function.
Wraps the EASTL function container. Refer to EASTL documentation for more information.
using blowbox::FunctionWithArgument = typedef eastl::function<Result(Argument0)> |
Typedef for wrapping the EASTL function.
Wraps the EASTL function container. Refer to EASTL documentation for more information.
using blowbox::FunctionWithArguments = typedef eastl::function<Result(Arguments...)> |
Typedef for wrapping the EASTL function.
Wraps the EASTL function container. Refer to EASTL documentation for more information.
Descibes an index.
This data type is typedef-ed because it allows the entire application to easily switch from 16 bit indices to 32 bit indices, if desired.
using blowbox::IntrusivePtr = typedef eastl::intrusive_ptr<T> |
Typedef for wrapping the EASTL intrusive_ptr.
Wraps the EASTL intrusive_ptr. Refer to EASTL documentation for more information.
using blowbox::LinkedPtr = typedef eastl::linked_ptr<T> |
Typedef for wrapping the EASTL linked_ptr.
Wraps the EASTL linked_ptr. Refer to EASTL documentation for more information.
using blowbox::Map = typedef eastl::map<Key, T> |
Typedef for wrapping the EASTL map.
Wraps the EASTL map. Refer to EASTL documentation for more information.
using blowbox::Pair = typedef eastl::pair<T1, T2> |
Typedef for wrapping the EASTL pair.
Wraps the EASTL pair. Refer to EASTL documentation for more information.
using blowbox::PriorityQueue = typedef eastl::priority_queue<T> |
Typedef for wrapping the EASTL priority_queue.
Wraps the EASTL priority_queue. Refer to EASTL documentation for more information.
using blowbox::Queue = typedef eastl::queue<T> |
Typedef for wrapping the EASTL queue.
Wraps the EASTL queue. Refer to EASTL documentation for more information.
using blowbox::RingBuffer = typedef eastl::ring_buffer<T> |
Typedef for wrapping the EASTL ring_buffer.
Wraps the EASTL ring_buffer. Refer to EASTL documentation for more information.
using blowbox::SafePtr = typedef eastl::safe_ptr<T> |
Typedef for wrapping the EASTL safe_ptr.
Wraps the EASTL safe_ptr. Refer to EASTL documentation for more information.
using blowbox::ScopedPtr = typedef eastl::scoped_ptr<T> |
Typedef for wrapping the EASTL scoped_ptr.
Wraps the EASTL scoped_ptr. Refer to EASTL documentation for more information.
using blowbox::SharedPtr = typedef eastl::shared_ptr<T> |
Typedef for wrapping the EASTL shared_ptr.
Wraps the EASTL shared_ptr. Refer to EASTL documentation for more information.
using blowbox::Stack = typedef eastl::stack<T> |
Typedef for wrapping the EASTL stack.
Wraps the EASTL stack. Refer to EASTL documentation for more information.
using blowbox::String = typedef eastl::string |
Typedef for wrapping the EASTL string.
Wraps the EASTL string. Refer to EASTL documentation for more information.
using blowbox::Tuple = typedef eastl::tuple<Ts...> |
Typedef for wrapping the EASTL tuple.
Wraps the EASTL tuple. Refer to EASTL documentation for more information.
using blowbox::UniquePtr = typedef eastl::unique_ptr<T> |
Typedef for wrapping the EASTL unique_ptr.
Wraps the EASTL unique_ptr. Refer to EASTL documentation for more information.
using blowbox::UnorderedMap = typedef eastl::unordered_map<Key, T> |
Typedef for wrapping the EASTL unordered_map.
Wraps the EASTL unordered_map. Refer to EASTL documentation for more information.
using blowbox::Vector = typedef eastl::vector<T> |
Typedef for wrapping the EASTL vector.
Wraps the EASTL vector. Refer to EASTL documentation for more information.
using blowbox::WeakPtr = typedef eastl::weak_ptr<T> |
Typedef for wrapping the EASTL weak_ptr.
Wraps the EASTL weak_ptr. Refer to EASTL documentation for more information.
using blowbox::WString = typedef eastl::wstring |
Typedef for wrapping the EASTL wstring.
Wraps the EASTL wstring. Refer to EASTL documentation for more information.
Flags that are provided to Adapter::FindAvailableAdapters()
These flags are used by the Adapter::FindAvailableAdapters(). They help in specifying what adapter should be used.
enum blowbox::KeyCode |
All keycodes.
This enumeration is to enumerate all different key codes that Blowbox supports.
enum blowbox::MouseButton |
All mouse buttons.
Enumerates all the different mouse buttons that blowbox supports.
An enumeration of all different pixel compositions.
When requesting pixel data from a blowbox::Image, you get an array of pixels. The pixels are composed of a number of components that together form the per pixel data. Each component is an unsigned char (8 bits). This enumeration is used to determine what the components are per pixel. Remember, all components are 8 bits (1 byte / 1 unsigned char). So if the PixelComposition is PixelComposition_RGB, that means that each pixel takes up three bytes: the red channel (R), the green channel (G) and blue channel (B) - in that order.
Identifies a type of profiling block.
enum blowbox::ShaderType |
Enumeration for all different shader types.
This enumeration is necessary for the Shader to understand what it is trying to compile. It enumerates all different shader types.
int blowbox::BlowboxKeyCodeToGlfwKey | ( | KeyCode | key | ) |
Converts a KeyCode_* to a GLFW_KEY_*.
[in] | key | A blowbox::KeyCode that should be converted to a GLFW_KEY |
int blowbox::BlowboxMouseButtonToGlfwMouseButton | ( | MouseButton | mouse_button | ) |
Converts a MouseButton_* to a GLFW_MOUSE_BUTTON_*.
[in] | mouse_button | A blowbox::MouseButton that should be converted to a GLFW_MOUSE_BUTTON |
KeyCode blowbox::GlfwKeyToBlowboxKeyCode | ( | int | glfw_key | ) |
Converts a GLFW_KEY_* to a KeyCode_*.
[in] | glfw_key | A GLFW_KEY that you want to convert to a blowbox::KeyCode |
MouseButton blowbox::GlfwMouseButtonToBlowboxMouseButton | ( | int | glfw_mouse_button | ) |
Converts a GLFW_MOUSE_BUTTON to a blowbox::MouseButton.
[in] | glfw_mouse_button | A GLFW_MOUSE_BUTTON that should be converted to a blowbox::MouseButton |