mirror of
https://github.com/AquariaOSE/Aquaria.git
synced 2025-10-09 07:51:28 +00:00
Merge branch 'experimental' into moreclean
Conflicts: Aquaria/Avatar.cpp Aquaria/BoxElement.cpp Aquaria/BubbleRender.cpp Aquaria/FFTNotes.cpp Aquaria/StarRenderer.cpp Aquaria/WaterFont.cpp Aquaria/resource.h BBGE/AnimatedSprite.cpp BBGE/AnimatedSprite.h BBGE/BloomEffect.cpp BBGE/CShim.cpp BBGE/Collision.cpp BBGE/Collision.h BBGE/Core.cpp BBGE/Core.h BBGE/Cube.cpp BBGE/Cutscene.cpp BBGE/DFSprite.cpp BBGE/DFSprite.h BBGE/Datafile.cpp BBGE/Datafile.h BBGE/Flags.h BBGE/Interpolator.cpp BBGE/Light.cpp BBGE/Light.h BBGE/LightCone.cpp BBGE/Model.cpp BBGE/Model.h BBGE/OggStream.cpp BBGE/PackRead.cpp BBGE/PointSprites.cpp BBGE/RenderObject.cpp BBGE/SkeletalSprite.cpp
This commit is contained in:
commit
d6dc3a8a09
145 changed files with 1977 additions and 8889 deletions
669
BBGE/Core.h
669
BBGE/Core.h
|
@ -40,11 +40,7 @@ BUILD_LINUX
|
|||
|
||||
#include "DarkLayer.h"
|
||||
|
||||
/*
|
||||
#ifdef BBGE_BUILD_WINDOWS
|
||||
#include "Joystick.h"
|
||||
#endif
|
||||
*/
|
||||
|
||||
|
||||
#include "FrameBuffer.h"
|
||||
#include "Shader.h"
|
||||
|
@ -102,183 +98,10 @@ class Texture;
|
|||
const int baseVirtualWidth = 800;
|
||||
const int baseVirtualHeight = 600;
|
||||
|
||||
#if (defined(BBGE_BUILD_WINDOWS)) && !defined(BBGE_BUILD_SDL)
|
||||
enum GameKeys
|
||||
{
|
||||
KEY_BACKSPACE = DIK_BACKSPACE,
|
||||
KEY_CAPSLOCK = DIK_CAPSLOCK,
|
||||
KEY_CIRCUMFLEX = DIK_CIRCUMFLEX,
|
||||
KEY_DOWNARROW = DIK_DOWNARROW,
|
||||
KEY_LALT = DIK_LALT,
|
||||
KEY_LEFTARROW = DIK_LEFTARROW,
|
||||
KEY_NUMPADMINUS = DIK_NUMPADMINUS,
|
||||
KEY_NUMPADPERIOD = DIK_NUMPADPERIOD,
|
||||
KEY_NUMPADPLUS = DIK_NUMPADPLUS,
|
||||
KEY_NUMPADSLASH = DIK_NUMPADSLASH,
|
||||
KEY_NUMPADSTAR = DIK_NUMPADSTAR,
|
||||
KEY_PGDN = DIK_PGDN,
|
||||
KEY_PGUP = DIK_PGUP,
|
||||
KEY_RALT = DIK_RALT,
|
||||
KEY_RIGHTARROW = DIK_RIGHTARROW,
|
||||
KEY_UPARROW = DIK_UPARROW,
|
||||
KEY_TILDE = DIK_GRAVE,
|
||||
KEY_0 = DIK_0,
|
||||
KEY_1 = DIK_1,
|
||||
KEY_2 = DIK_2,
|
||||
KEY_3 = DIK_3,
|
||||
KEY_4 = DIK_4,
|
||||
KEY_5 = DIK_5,
|
||||
KEY_6 = DIK_6,
|
||||
KEY_7 = DIK_7,
|
||||
KEY_8 = DIK_8,
|
||||
KEY_9 = DIK_9,
|
||||
KEY_A = DIK_A,
|
||||
KEY_ABNT_C1 = DIK_ABNT_C1,
|
||||
KEY_ABNT_C2 = DIK_ABNT_C2,
|
||||
KEY_ADD = DIK_ADD,
|
||||
KEY_APOSTROPHE = DIK_APOSTROPHE,
|
||||
KEY_APPS = DIK_APPS,
|
||||
KEY_AT = DIK_AT,
|
||||
KEY_AX = DIK_AX,
|
||||
KEY_B = DIK_B,
|
||||
KEY_BACK = DIK_BACK,
|
||||
KEY_BACKSLASH = DIK_BACKSLASH,
|
||||
KEY_C = DIK_C,
|
||||
KEY_CALCULATOR = DIK_CALCULATOR,
|
||||
KEY_CAPITAL = DIK_CAPITAL,
|
||||
KEY_COLON = DIK_COLON,
|
||||
KEY_COMMA = DIK_COMMA,
|
||||
KEY_CONVERT = DIK_CONVERT,
|
||||
KEY_D = DIK_D,
|
||||
KEY_DECIMAL = DIK_DECIMAL,
|
||||
KEY_DELETE = DIK_DELETE,
|
||||
KEY_DIVIDE = DIK_DIVIDE,
|
||||
KEY_DOWN = DIK_DOWN,
|
||||
KEY_E = DIK_E,
|
||||
KEY_END = DIK_END,
|
||||
KEY_EQUALS = DIK_EQUALS,
|
||||
KEY_ESCAPE = DIK_ESCAPE,
|
||||
KEY_F = DIK_F,
|
||||
KEY_F1 = DIK_F1,
|
||||
KEY_F2 = DIK_F2,
|
||||
KEY_F3 = DIK_F3,
|
||||
KEY_F4 = DIK_F4,
|
||||
KEY_F5 = DIK_F5,
|
||||
KEY_F6 = DIK_F6,
|
||||
KEY_F7 = DIK_F7,
|
||||
KEY_F8 = DIK_F8,
|
||||
KEY_F9 = DIK_F9,
|
||||
KEY_F10 = DIK_F10,
|
||||
KEY_F11 = DIK_F11,
|
||||
KEY_F12 = DIK_F12,
|
||||
KEY_F13 = DIK_F13,
|
||||
KEY_F14 = DIK_F14,
|
||||
KEY_F15 = DIK_F15,
|
||||
KEY_G = DIK_G,
|
||||
KEY_GRAVE = DIK_GRAVE,
|
||||
KEY_H = DIK_H,
|
||||
KEY_HOME = DIK_HOME,
|
||||
KEY_I = DIK_I,
|
||||
KEY_INSERT = DIK_INSERT,
|
||||
KEY_J = DIK_J,
|
||||
KEY_K = DIK_K,
|
||||
KEY_KANA = DIK_KANA,
|
||||
KEY_KANJI = DIK_KANJI,
|
||||
KEY_L = DIK_L,
|
||||
KEY_LBRACKET = DIK_LBRACKET,
|
||||
KEY_LCONTROL = DIK_LCONTROL,
|
||||
KEY_LEFT = DIK_LEFT,
|
||||
KEY_LMENU = DIK_LMENU,
|
||||
KEY_LSHIFT = DIK_LSHIFT,
|
||||
KEY_LMETA = DIK_LWIN,
|
||||
KEY_M = DIK_M,
|
||||
KEY_MAIL = DIK_MAIL,
|
||||
KEY_MEDIASELECT = DIK_MEDIASELECT,
|
||||
KEY_MEDIASTOP = DIK_MEDIASTOP,
|
||||
KEY_MINUS = DIK_MINUS,
|
||||
KEY_MULTIPLY = DIK_MULTIPLY,
|
||||
KEY_MUTE = DIK_MUTE,
|
||||
KEY_MYCOMPUTER = DIK_MYCOMPUTER,
|
||||
KEY_N = DIK_N,
|
||||
KEY_NEXT = DIK_NEXT,
|
||||
KEY_NEXTTRACK = DIK_NEXTTRACK,
|
||||
KEY_NOCONVERT = DIK_NOCONVERT,
|
||||
KEY_NUMLOCK = DIK_NUMLOCK,
|
||||
KEY_NUMPAD0 = DIK_NUMPAD0,
|
||||
KEY_NUMPAD1 = DIK_NUMPAD1,
|
||||
KEY_NUMPAD2 = DIK_NUMPAD2,
|
||||
KEY_NUMPAD3 = DIK_NUMPAD3,
|
||||
KEY_NUMPAD4 = DIK_NUMPAD4,
|
||||
KEY_NUMPAD5 = DIK_NUMPAD5,
|
||||
KEY_NUMPAD6 = DIK_NUMPAD6,
|
||||
KEY_NUMPAD7 = DIK_NUMPAD7,
|
||||
KEY_NUMPAD8 = DIK_NUMPAD8,
|
||||
KEY_NUMPAD9 = DIK_NUMPAD9,
|
||||
KEY_NUMPADCOMMA = DIK_NUMPADCOMMA,
|
||||
KEY_NUMPADENTER = DIK_NUMPADENTER,
|
||||
KEY_NUMPADEQUALS = DIK_NUMPADEQUALS,
|
||||
KEY_O = DIK_O,
|
||||
KEY_OEM_102 = DIK_OEM_102,
|
||||
KEY_P = DIK_P,
|
||||
KEY_PAUSE = DIK_PAUSE,
|
||||
KEY_PERIOD = DIK_PERIOD,
|
||||
KEY_PLAYPAUSE = DIK_PLAYPAUSE,
|
||||
KEY_POWER = DIK_POWER,
|
||||
KEY_PREVTRACK = DIK_PREVTRACK,
|
||||
KEY_PRIOR = DIK_PRIOR,
|
||||
KEY_Q = DIK_Q,
|
||||
KEY_R = DIK_R,
|
||||
KEY_RBRACKET = DIK_RBRACKET,
|
||||
KEY_RCONTROL = DIK_RCONTROL,
|
||||
KEY_RETURN = DIK_RETURN,
|
||||
KEY_RIGHT = DIK_RIGHT,
|
||||
KEY_RMENU = DIK_RMENU,
|
||||
KEY_RSHIFT = DIK_RSHIFT,
|
||||
KEY_RMETA = DIK_RWIN,
|
||||
KEY_S = DIK_S,
|
||||
KEY_SCROLL = DIK_SCROLL,
|
||||
KEY_SEMICOLON = DIK_SEMICOLON,
|
||||
KEY_SLASH = DIK_SLASH,
|
||||
KEY_SLEEP = DIK_SLEEP,
|
||||
KEY_SPACE = DIK_SPACE,
|
||||
KEY_STOP = DIK_STOP,
|
||||
KEY_SUBTRACT = DIK_SUBTRACT,
|
||||
KEY_SYSRQ = DIK_SYSRQ,
|
||||
KEY_T = DIK_T,
|
||||
KEY_TAB = DIK_TAB,
|
||||
KEY_U = DIK_U,
|
||||
KEY_UNDERLINE = DIK_UNDERLINE,
|
||||
KEY_UNLABELED = DIK_UNLABELED,
|
||||
KEY_UP = DIK_UP,
|
||||
KEY_V = DIK_V,
|
||||
KEY_VOLUMEDOWN = DIK_VOLUMEDOWN,
|
||||
KEY_VOLUMEUP = DIK_VOLUMEUP,
|
||||
KEY_W = DIK_W,
|
||||
KEY_WAKE = DIK_WAKE,
|
||||
KEY_WEBBACK = DIK_WEBBACK,
|
||||
KEY_WEBFAVORITES = DIK_WEBFAVORITES,
|
||||
KEY_WEBFORWARD = DIK_WEBFORWARD,
|
||||
KEY_WEBHOME = DIK_WEBHOME,
|
||||
KEY_WEBREFRESH = DIK_WEBREFRESH,
|
||||
KEY_WEBSEARCH = DIK_WEBSEARCH,
|
||||
KEY_WEBSTOP = DIK_WEBSTOP,
|
||||
KEY_X = DIK_X,
|
||||
KEY_Y = DIK_Y,
|
||||
KEY_YEN = DIK_YEN,
|
||||
KEY_Z = DIK_Z,
|
||||
KEY_ANYKEY = 4059,
|
||||
KEY_MAXARRAY = 256
|
||||
};
|
||||
#elif defined(BBGE_BUILD_SDL)
|
||||
enum GameKeys
|
||||
{
|
||||
// replace with GLFW equivalent
|
||||
/*
|
||||
KEY_DOWNARROW = GLFW_KEY_DOWN,
|
||||
KEY_RIGHTARROW = GLFW_KEY_RIGHT,
|
||||
KEY_UPARROW = GLFW_KEY_UP,
|
||||
KEY_LEFTARROW = GLFW_KEY_LEFT,
|
||||
*/
|
||||
|
||||
|
||||
|
||||
KEY_LSUPER,
|
||||
KEY_RSUPER,
|
||||
|
@ -287,8 +110,8 @@ enum GameKeys
|
|||
KEY_BACKSPACE,
|
||||
KEY_PRINTSCREEN,
|
||||
|
||||
//KEY_CAPSLOCK,
|
||||
//KEY_CIRCUMFLEX,
|
||||
|
||||
|
||||
KEY_LALT,
|
||||
KEY_RALT,
|
||||
KEY_LSHIFT,
|
||||
|
@ -307,7 +130,7 @@ enum GameKeys
|
|||
KEY_SEMICOLON,
|
||||
KEY_LBRACKET,
|
||||
KEY_RBRACKET,
|
||||
//KEY_RALT,
|
||||
|
||||
KEY_TILDE,
|
||||
KEY_0,
|
||||
KEY_1,
|
||||
|
@ -390,353 +213,6 @@ enum GameKeys
|
|||
KEY_ANYKEY,
|
||||
KEY_MAXARRAY
|
||||
};
|
||||
#elif defined(BBGE_BUILD_XINPUT)
|
||||
enum GameKeys
|
||||
{
|
||||
KEY_LSUPER = 0,
|
||||
KEY_RSUPER = 0,
|
||||
KEY_LMETA = 0,
|
||||
KEY_RMETA = 0,
|
||||
KEY_BACKSPACE = 0,
|
||||
KEY_PRINTSCREEN = 0,
|
||||
KEY_LALT = 0,
|
||||
KEY_RALT = 0,
|
||||
KEY_LSHIFT = 0,
|
||||
KEY_RSHIFT = 0,
|
||||
KEY_LCONTROL = 0,
|
||||
KEY_RCONTROL = 0,
|
||||
KEY_NUMPADMINUS = 0,
|
||||
KEY_NUMPADPERIOD = 0,
|
||||
KEY_NUMPADPLUS = 0,
|
||||
KEY_NUMPADSLASH = 0,
|
||||
KEY_NUMPADSTAR = 0,
|
||||
KEY_PGDN = 0,
|
||||
KEY_PGUP = 0,
|
||||
KEY_TILDE = 0,
|
||||
KEY_0 = 0,
|
||||
KEY_1 = 0,
|
||||
KEY_2 = 0,
|
||||
KEY_3 = 0,
|
||||
KEY_4 = 0,
|
||||
KEY_5 = 0,
|
||||
KEY_6 = 0,
|
||||
KEY_7 = 0,
|
||||
KEY_8 = 0,
|
||||
KEY_9 = 0,
|
||||
KEY_A = 0,
|
||||
KEY_B = 0,
|
||||
KEY_C = 0,
|
||||
KEY_D = 0,
|
||||
KEY_E = 0,
|
||||
KEY_F = 0,
|
||||
KEY_G = 0,
|
||||
KEY_H = 0,
|
||||
KEY_I = 0,
|
||||
KEY_J = 0,
|
||||
KEY_K = 0,
|
||||
KEY_L = 0,
|
||||
KEY_M = 0,
|
||||
KEY_N = 0,
|
||||
KEY_O = 0,
|
||||
KEY_P = 0,
|
||||
KEY_Q = 0,
|
||||
KEY_R = 0,
|
||||
KEY_S = 0,
|
||||
KEY_T = 0,
|
||||
KEY_U = 0,
|
||||
KEY_V = 0,
|
||||
KEY_W = 0,
|
||||
KEY_X = 0,
|
||||
KEY_Y = 0,
|
||||
KEY_Z = 0,
|
||||
|
||||
KEY_LEFT = 0,
|
||||
KEY_RIGHT = 0,
|
||||
KEY_UP = 0,
|
||||
KEY_DOWN = 0,
|
||||
|
||||
KEY_NUMPAD1 = 0,
|
||||
KEY_NUMPAD2 = 0,
|
||||
KEY_NUMPAD3 = 0,
|
||||
KEY_NUMPAD4 = 0,
|
||||
KEY_NUMPAD5 = 0,
|
||||
KEY_NUMPAD6 = 0,
|
||||
KEY_NUMPAD7 = 0,
|
||||
KEY_NUMPAD8 = 0,
|
||||
KEY_NUMPAD9 = 0,
|
||||
KEY_NUMPAD0 = 0,
|
||||
|
||||
KEY_DELETE = 0,
|
||||
KEY_SPACE = 0,
|
||||
KEY_RETURN = 0,
|
||||
KEY_PERIOD = 0,
|
||||
KEY_MINUS = 0,
|
||||
KEY_CAPSLOCK = 0,
|
||||
KEY_SYSRQ = 0,
|
||||
KEY_TAB = 0,
|
||||
KEY_HOME = 0,
|
||||
KEY_END = 0,
|
||||
KEY_COMMA = 0,
|
||||
KEY_SLASH = 0,
|
||||
|
||||
KEY_F1 = 0,
|
||||
KEY_F2 = 0,
|
||||
KEY_F3 = 0,
|
||||
KEY_F4 = 0,
|
||||
KEY_F5 = 0,
|
||||
KEY_F6 = 0,
|
||||
KEY_F7 = 0,
|
||||
KEY_F8 = 0,
|
||||
KEY_F9 = 0,
|
||||
KEY_F10 = 0,
|
||||
KEY_F11 = 0,
|
||||
KEY_F12 = 0,
|
||||
KEY_F13 = 0,
|
||||
KEY_F14 = 0,
|
||||
KEY_F15 = 0,
|
||||
|
||||
KEY_ESCAPE = 0,
|
||||
KEY_ANYKEY = 4059,
|
||||
KEY_MAXARRAY = 256
|
||||
};
|
||||
#elif defined(BBGE_BUILD_GLFW)
|
||||
enum GameKeys
|
||||
{
|
||||
// replace with GLFW equivalent
|
||||
/*
|
||||
KEY_DOWNARROW = GLFW_KEY_DOWN,
|
||||
KEY_RIGHTARROW = GLFW_KEY_RIGHT,
|
||||
KEY_UPARROW = GLFW_KEY_UP,
|
||||
KEY_LEFTARROW = GLFW_KEY_LEFT,
|
||||
*/
|
||||
|
||||
|
||||
KEY_BACKSPACE = GLFW_KEY_BACKSPACE,
|
||||
//KEY_CAPSLOCK = DIK_CAPSLOCK,
|
||||
//KEY_CIRCUMFLEX = DIK_CIRCUMFLEX,
|
||||
KEY_LALT = GLFW_KEY_LALT,
|
||||
KEY_RALT = GLFW_KEY_RALT,
|
||||
KEY_LSHIFT = GLFW_KEY_LSHIFT,
|
||||
KEY_RSHIFT = GLFW_KEY_RSHIFT,
|
||||
KEY_LCONTROL = GLFW_KEY_LCTRL,
|
||||
KEY_RCONTROL = GLFW_KEY_RCTRL,
|
||||
KEY_NUMPADMINUS = GLFW_KEY_KP_SUBTRACT,
|
||||
KEY_NUMPADPERIOD = GLFW_KEY_KP_DECIMAL,
|
||||
KEY_NUMPADPLUS = GLFW_KEY_KP_ADD,
|
||||
KEY_NUMPADSLASH = GLFW_KEY_KP_DIVIDE,
|
||||
KEY_NUMPADSTAR = GLFW_KEY_KP_MULTIPLY,
|
||||
KEY_PGDN = GLFW_KEY_PAGEDOWN,
|
||||
KEY_PGUP = GLFW_KEY_PAGEUP,
|
||||
//KEY_RALT = GLFW_KEY_RALT,
|
||||
KEY_TILDE = '`',
|
||||
KEY_0 = '0',
|
||||
KEY_1 = '1',
|
||||
KEY_2 = '2',
|
||||
KEY_3 = '3',
|
||||
KEY_4 = '4',
|
||||
KEY_5 = '5',
|
||||
KEY_6 = '6',
|
||||
KEY_7 = '7',
|
||||
KEY_8 = '8',
|
||||
KEY_9 = '9',
|
||||
KEY_A = 'A',
|
||||
KEY_B = 'B',
|
||||
KEY_C = 'C',
|
||||
KEY_D = 'D',
|
||||
KEY_E = 'E',
|
||||
KEY_F = 'F',
|
||||
KEY_G = 'G',
|
||||
KEY_H = 'H',
|
||||
KEY_I = 'I',
|
||||
KEY_J = 'J',
|
||||
KEY_K = 'K',
|
||||
KEY_L = 'L',
|
||||
KEY_M = 'M',
|
||||
KEY_N = 'N',
|
||||
KEY_O = 'O',
|
||||
KEY_P = 'P',
|
||||
KEY_Q = 'Q',
|
||||
KEY_R = 'R',
|
||||
KEY_S = 'S',
|
||||
KEY_T = 'T',
|
||||
KEY_U = 'U',
|
||||
KEY_V = 'V',
|
||||
KEY_W = 'W',
|
||||
KEY_X = 'X',
|
||||
KEY_Y = 'Y',
|
||||
KEY_Z = 'Z',
|
||||
|
||||
KEY_LEFT = GLFW_KEY_LEFT,
|
||||
KEY_RIGHT = GLFW_KEY_RIGHT,
|
||||
KEY_UP = GLFW_KEY_UP,
|
||||
KEY_DOWN = GLFW_KEY_DOWN,
|
||||
|
||||
KEY_NUMPAD1 = GLFW_KEY_KP_1,
|
||||
KEY_NUMPAD2 = GLFW_KEY_KP_2,
|
||||
KEY_NUMPAD3 = GLFW_KEY_KP_3,
|
||||
KEY_NUMPAD4 = GLFW_KEY_KP_4,
|
||||
KEY_NUMPAD5 = GLFW_KEY_KP_5,
|
||||
KEY_NUMPAD6 = GLFW_KEY_KP_6,
|
||||
KEY_NUMPAD7 = GLFW_KEY_KP_7,
|
||||
KEY_NUMPAD8 = GLFW_KEY_KP_8,
|
||||
KEY_NUMPAD9 = GLFW_KEY_KP_9,
|
||||
KEY_NUMPAD0 = GLFW_KEY_KP_0,
|
||||
|
||||
KEY_DELETE = GLFW_KEY_DEL,
|
||||
KEY_SPACE = GLFW_KEY_SPACE,
|
||||
// mac os x
|
||||
KEY_RETURN = 13,
|
||||
KEY_PERIOD = '.',
|
||||
KEY_MINUS = '-',
|
||||
KEY_CAPSLOCK = -1,
|
||||
KEY_SYSRQ = '`',
|
||||
KEY_TAB = GLFW_KEY_TAB,
|
||||
KEY_HOME = GLFW_KEY_HOME,
|
||||
KEY_END = GLFW_KEY_END,
|
||||
KEY_COMMA = ',',
|
||||
KEY_SLASH = '/',
|
||||
//KEY_ABNT_C1 = DIK_ABNT_C1,
|
||||
//KEY_ABNT_C2 = DIK_ABNT_C2,
|
||||
/*
|
||||
KEY_ADD = DIK_ADD,
|
||||
KEY_APOSTROPHE = DIK_APOSTROPHE,
|
||||
KEY_APPS = DIK_APPS,
|
||||
KEY_AT = DIK_AT,
|
||||
KEY_AX = DIK_AX,
|
||||
*/
|
||||
/*
|
||||
KEY_B = 'B',
|
||||
KEY_BACK = DIK_BACK,
|
||||
KEY_BACKSLASH = DIK_BACKSLASH,
|
||||
KEY_C = DIK_C,
|
||||
KEY_CALCULATOR = DIK_CALCULATOR,
|
||||
KEY_CAPITAL = DIK_CAPITAL,
|
||||
KEY_COLON = DIK_COLON,
|
||||
KEY_COMMA = DIK_COMMA,
|
||||
KEY_CONVERT = DIK_CONVERT,
|
||||
KEY_D = DIK_D,
|
||||
KEY_DECIMAL = DIK_DECIMAL,
|
||||
KEY_DELETE = DIK_DELETE,
|
||||
KEY_DIVIDE = DIK_DIVIDE,
|
||||
KEY_DOWN = DIK_DOWN,
|
||||
KEY_E = DIK_E,
|
||||
KEY_END = DIK_END,
|
||||
KEY_EQUALS = DIK_EQUALS,
|
||||
KEY_ESCAPE = DIK_ESCAPE,
|
||||
KEY_F = DIK_F,
|
||||
*/
|
||||
KEY_F1 = GLFW_KEY_F1,
|
||||
KEY_F2 = GLFW_KEY_F2,
|
||||
KEY_F3 = GLFW_KEY_F3,
|
||||
KEY_F4 = GLFW_KEY_F4,
|
||||
KEY_F5 = GLFW_KEY_F5,
|
||||
KEY_F6 = GLFW_KEY_F6,
|
||||
KEY_F7 = GLFW_KEY_F7,
|
||||
KEY_F8 = GLFW_KEY_F8,
|
||||
KEY_F9 = GLFW_KEY_F9,
|
||||
KEY_F10 = GLFW_KEY_F10,
|
||||
KEY_F11 = GLFW_KEY_F11,
|
||||
KEY_F12 = GLFW_KEY_F12,
|
||||
KEY_F13 = GLFW_KEY_F13,
|
||||
KEY_F14 = GLFW_KEY_F14,
|
||||
KEY_F15 = GLFW_KEY_F15,
|
||||
/*
|
||||
KEY_G = DIK_G,
|
||||
KEY_GRAVE = DIK_GRAVE,
|
||||
KEY_H = DIK_H,
|
||||
KEY_HOME = DIK_HOME,
|
||||
KEY_I = DIK_I,
|
||||
KEY_INSERT = DIK_INSERT,
|
||||
KEY_J = DIK_J,
|
||||
KEY_K = DIK_K,
|
||||
KEY_KANA = DIK_KANA,
|
||||
KEY_KANJI = DIK_KANJI,
|
||||
KEY_L = DIK_L,
|
||||
KEY_LBRACKET = DIK_LBRACKET,
|
||||
KEY_LCONTROL = DIK_LCONTROL,
|
||||
KEY_LEFT = DIK_LEFT,
|
||||
KEY_LMENU = DIK_LMENU,
|
||||
KEY_LWIN = DIK_LWIN,
|
||||
KEY_M = DIK_M,
|
||||
KEY_MAIL = DIK_MAIL,
|
||||
KEY_MEDIASELECT = DIK_MEDIASELECT,
|
||||
KEY_MEDIASTOP = DIK_MEDIASTOP,
|
||||
KEY_MINUS = DIK_MINUS,
|
||||
KEY_MULTIPLY = DIK_MULTIPLY,
|
||||
KEY_MUTE = DIK_MUTE,
|
||||
KEY_MYCOMPUTER = DIK_MYCOMPUTER,
|
||||
KEY_N = DIK_N,
|
||||
KEY_NEXT = DIK_NEXT,
|
||||
KEY_NEXTTRACK = DIK_NEXTTRACK,
|
||||
KEY_NOCONVERT = DIK_NOCONVERT,
|
||||
KEY_NUMLOCK = DIK_NUMLOCK,
|
||||
KEY_NUMPAD0 = DIK_NUMPAD0,
|
||||
KEY_NUMPAD1 = DIK_NUMPAD1,
|
||||
KEY_NUMPAD2 = DIK_NUMPAD2,
|
||||
KEY_NUMPAD3 = DIK_NUMPAD3,
|
||||
KEY_NUMPAD4 = DIK_NUMPAD4,
|
||||
KEY_NUMPAD5 = DIK_NUMPAD5,
|
||||
KEY_NUMPAD6 = DIK_NUMPAD6,
|
||||
KEY_NUMPAD7 = DIK_NUMPAD7,
|
||||
KEY_NUMPAD8 = DIK_NUMPAD8,
|
||||
KEY_NUMPAD9 = DIK_NUMPAD9,
|
||||
KEY_NUMPADCOMMA = DIK_NUMPADCOMMA,
|
||||
KEY_NUMPADENTER = DIK_NUMPADENTER,
|
||||
KEY_NUMPADEQUALS = DIK_NUMPADEQUALS,
|
||||
KEY_O = DIK_O,
|
||||
KEY_OEM_102 = DIK_OEM_102,
|
||||
KEY_P = DIK_P,
|
||||
KEY_PAUSE = DIK_PAUSE,
|
||||
KEY_PERIOD = DIK_PERIOD,
|
||||
KEY_PLAYPAUSE = DIK_PLAYPAUSE,
|
||||
KEY_POWER = DIK_POWER,
|
||||
KEY_PREVTRACK = DIK_PREVTRACK,
|
||||
KEY_PRIOR = DIK_PRIOR,
|
||||
KEY_Q = DIK_Q,
|
||||
KEY_R = DIK_R,
|
||||
KEY_RBRACKET = DIK_RBRACKET,
|
||||
KEY_RCONTROL = DIK_RCONTROL,
|
||||
KEY_RETURN = DIK_RETURN,
|
||||
KEY_RIGHT = DIK_RIGHT,
|
||||
KEY_RMENU = DIK_RMENU,
|
||||
|
||||
KEY_RWIN = DIK_RWIN,
|
||||
KEY_S = DIK_S,
|
||||
KEY_SCROLL = DIK_SCROLL,
|
||||
KEY_SEMICOLON = DIK_SEMICOLON,
|
||||
KEY_SLASH = DIK_SLASH,
|
||||
KEY_SLEEP = DIK_SLEEP,
|
||||
KEY_SPACE = DIK_SPACE,
|
||||
KEY_STOP = DIK_STOP,
|
||||
KEY_SUBTRACT = DIK_SUBTRACT,
|
||||
KEY_SYSRQ = DIK_SYSRQ,
|
||||
KEY_T = DIK_T,
|
||||
KEY_TAB = DIK_TAB,
|
||||
KEY_U = DIK_U,
|
||||
KEY_UNDERLINE = DIK_UNDERLINE,
|
||||
KEY_UNLABELED = DIK_UNLABELED,
|
||||
KEY_UP = DIK_UP,
|
||||
KEY_V = DIK_V,
|
||||
KEY_VOLUMEDOWN = DIK_VOLUMEDOWN,
|
||||
KEY_VOLUMEUP = DIK_VOLUMEUP,
|
||||
KEY_W = DIK_W,
|
||||
KEY_WAKE = DIK_WAKE,
|
||||
KEY_WEBBACK = DIK_WEBBACK,
|
||||
KEY_WEBFAVORITES = DIK_WEBFAVORITES,
|
||||
KEY_WEBFORWARD = DIK_WEBFORWARD,
|
||||
KEY_WEBHOME = DIK_WEBHOME,
|
||||
KEY_WEBREFRESH = DIK_WEBREFRESH,
|
||||
KEY_WEBSEARCH = DIK_WEBSEARCH,
|
||||
KEY_WEBSTOP = DIK_WEBSTOP,
|
||||
KEY_X = DIK_X,
|
||||
KEY_Y = DIK_Y,
|
||||
KEY_YEN = DIK_YEN,
|
||||
KEY_Z = DIK_Z,
|
||||
*/
|
||||
KEY_ESCAPE = GLFW_KEY_ESC,
|
||||
KEY_ANYKEY = 4059
|
||||
};
|
||||
#endif
|
||||
|
||||
|
||||
enum ButtonState { UP = 0, DOWN };
|
||||
|
@ -749,7 +225,7 @@ struct MouseButtons
|
|||
right = UP;
|
||||
middle = UP;
|
||||
}
|
||||
|
||||
|
||||
ButtonState left, right, middle;
|
||||
};
|
||||
|
||||
|
@ -797,13 +273,11 @@ public:
|
|||
Vector rightStick;
|
||||
bool inited, xinited;
|
||||
bool anyButton();
|
||||
#ifdef BBGE_BUILD_SDL
|
||||
# ifdef BBGE_BUILD_SDL2
|
||||
SDL_GameController *sdl_controller;
|
||||
SDL_Haptic *sdl_haptic;
|
||||
# endif
|
||||
SDL_Joystick *sdl_joy;
|
||||
#endif
|
||||
#if defined(__LINUX__) && !defined(BBGE_BUILD_SDL2)
|
||||
int eventfd;
|
||||
int16_t effectid;
|
||||
|
@ -820,10 +294,10 @@ enum FollowCameraLock
|
|||
FCL_VERT = 2
|
||||
};
|
||||
|
||||
//RenderObject Layer Type (enable only one)
|
||||
//#define RLT_DYNAMIC // Dynamic list
|
||||
#define RLT_FIXED // Static array
|
||||
//#define RLT_MAP // Mapping
|
||||
|
||||
|
||||
#define RLT_FIXED
|
||||
|
||||
|
||||
typedef std::vector <RenderObject*> RenderObjects;
|
||||
typedef std::list <RenderObject*> RenderObjectList;
|
||||
|
@ -846,48 +320,17 @@ public:
|
|||
|
||||
inline bool empty()
|
||||
{
|
||||
#ifdef RLT_FIXED
|
||||
return objectCount == 0;
|
||||
#endif
|
||||
#ifdef RLT_DYNAMIC
|
||||
return renderObjectList.empty();
|
||||
#endif
|
||||
return false;
|
||||
}
|
||||
|
||||
inline RenderObject *getFirst()
|
||||
{
|
||||
#ifdef RLT_DYNAMIC
|
||||
if (renderObjectList.empty()) return 0;
|
||||
iter = renderObjectList.begin();
|
||||
return *iter;
|
||||
#endif
|
||||
#ifdef RLT_MAP
|
||||
if (renderObjectMap.empty()) return 0;
|
||||
iter = renderObjectMap.begin();
|
||||
return (*iter).second;
|
||||
#endif
|
||||
#ifdef RLT_FIXED
|
||||
iter = 0;
|
||||
return getNext();
|
||||
#endif
|
||||
}
|
||||
|
||||
RenderObject *getNext()
|
||||
{
|
||||
#ifdef RLT_DYNAMIC
|
||||
if (iter == renderObjectList.end()) return 0;
|
||||
iter++;
|
||||
if (iter == renderObjectList.end()) return 0;
|
||||
return *iter;
|
||||
#endif
|
||||
#ifdef RLT_MAP
|
||||
if (iter == renderObjectMap.end()) return 0;
|
||||
iter++;
|
||||
if (iter == renderObjectMap.end()) return 0;
|
||||
return (*iter).second;
|
||||
#endif
|
||||
#ifdef RLT_FIXED
|
||||
const int size = renderObjects.size();
|
||||
int i;
|
||||
for (i = iter; i < size; i++)
|
||||
|
@ -905,7 +348,6 @@ public:
|
|||
iter = i;
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -941,20 +383,10 @@ protected:
|
|||
};
|
||||
std::vector<DisplayListElement> displayList;
|
||||
|
||||
#ifdef RLT_DYNAMIC
|
||||
RenderObjectList renderObjectList;
|
||||
RenderObjectList::iterator iter;
|
||||
#endif
|
||||
#ifdef RLT_MAP
|
||||
RenderObjectMap renderObjectMap;
|
||||
RenderObjectMap::iterator iter;
|
||||
#endif
|
||||
#ifdef RLT_FIXED
|
||||
RenderObjects renderObjects;
|
||||
int objectCount;
|
||||
int firstFreeIdx;
|
||||
int iter;
|
||||
#endif
|
||||
};
|
||||
|
||||
class Core : public ActionMapper, public StateManager
|
||||
|
@ -971,10 +403,10 @@ public:
|
|||
void initRenderObjectLayers(int num);
|
||||
|
||||
void applyState(const std::string &state);
|
||||
//bool createGlWindow(char* title, int width, int height, int bits, bool fullscreenflag);
|
||||
|
||||
bool createWindow(int width, int height, int bits, bool fullscreen, std::string windowTitle="");
|
||||
//void setWindowTitle(const std::string &title); // func not yet written
|
||||
void clearBuffers();
|
||||
|
||||
void clearBuffers();
|
||||
void render(int startLayer=-1, int endLayer=-1, bool useFrameBufferIfAvail=true);
|
||||
void showBuffer();
|
||||
void quit();
|
||||
|
@ -989,7 +421,7 @@ public:
|
|||
|
||||
void reloadResources();
|
||||
void unloadResources();
|
||||
|
||||
|
||||
std::string getPreferencesFolder();
|
||||
std::string getUserDataFolder();
|
||||
|
||||
|
@ -1000,9 +432,9 @@ public:
|
|||
|
||||
virtual void shutdown();
|
||||
|
||||
void main(float runTime = -1); // can use main
|
||||
void main(float runTime = -1); // can use main
|
||||
|
||||
|
||||
//void adjustWindowPosition(int x, int y);
|
||||
|
||||
// state functions
|
||||
|
||||
|
@ -1029,9 +461,9 @@ public:
|
|||
|
||||
void setMouseConstraint(bool on);
|
||||
void setMouseConstraintCircle(const Vector& pos, float mouseCircle);
|
||||
|
||||
|
||||
void setReentryInputGrab(int on);
|
||||
|
||||
|
||||
void action(int id, int state){}
|
||||
|
||||
bool exists(const std::string &file);
|
||||
|
@ -1059,15 +491,7 @@ public:
|
|||
|
||||
void resetGraphics(int w, int h, int fullscreen=-1, int vsync=-1, int bpp=-1);
|
||||
|
||||
/*
|
||||
#ifdef BBGE_BUILD_OPENGL
|
||||
void getWindowHeight(int *height)
|
||||
{glfwGetWindowSize(0, height);}
|
||||
|
||||
void getWindowWidth(int *width)
|
||||
{glfwGetWindowSize(width, 0);}
|
||||
#endif
|
||||
*/
|
||||
|
||||
void setDockIcon(const std::string &ident);
|
||||
|
||||
|
@ -1097,7 +521,7 @@ public:
|
|||
|
||||
RenderObjectLayer *getRenderObjectLayer(int i);
|
||||
std::vector <int> renderObjectLayerOrder;
|
||||
//typedef std::list<RenderObject*> RenderObjects;
|
||||
|
||||
typedef std::vector<RenderObjectLayer> RenderObjectLayers;
|
||||
RenderObjectLayers renderObjectLayers;
|
||||
|
||||
|
@ -1130,7 +554,6 @@ public:
|
|||
|
||||
ParticleManager *particleManager;
|
||||
|
||||
//Scripting::Script script;
|
||||
|
||||
|
||||
void setBaseTextureDirectory(const std::string &baseTextureDirectory)
|
||||
|
@ -1177,29 +600,18 @@ public:
|
|||
|
||||
void applyMatrixStackToWorld();
|
||||
void translateMatrixStack(float x, float y, float z=0);
|
||||
//void translateMatrixStackRelative(float x, float y, float z=0);
|
||||
|
||||
void rotateMatrixStack(float x, float y, float z);
|
||||
void scaleMatrixStack(float x, float y, float z=1);
|
||||
void rotateMatrixStack(float z);
|
||||
void setColor(float r, float g, float b, float a);
|
||||
|
||||
void bindTexture(int stage, unsigned int handle);
|
||||
|
||||
#ifdef BBGE_BUILD_DIRECTX
|
||||
|
||||
void blitD3DVerts(IDirect3DTexture9 *texture, float v1x, float v1y, float v2x, float v2y, float v3x, float v3y, float v4x, float v4y);
|
||||
void blitD3D (IDirect3DTexture9 *texture, int width, int height);
|
||||
void blitD3DPreTrans (IDirect3DTexture9 *texture, float x, float y, int absWidth, int absHeight);
|
||||
void blitD3DEx (IDirect3DTexture9 *texture, int width, int height, float u1=0, float v1=0, float u2=1, float v2=1);
|
||||
void blitD3DGradient(D3DCOLOR ulc0, D3DCOLOR ulc1, D3DCOLOR ulc2, D3DCOLOR ulc3);
|
||||
LPDIRECT3DDEVICE9 getD3DDevice();
|
||||
LPD3DXSPRITE getD3DSprite();
|
||||
LPD3DXMATRIXSTACK getD3DMatrixStack();
|
||||
#endif
|
||||
|
||||
|
||||
bool getKeyState(int k);
|
||||
bool getMouseButtonState(int m);
|
||||
|
||||
|
||||
int currentLayerPass;
|
||||
int keys[KEY_MAXARRAY];
|
||||
virtual void debugLog(const std::string &s);
|
||||
|
@ -1219,20 +631,16 @@ public:
|
|||
void setupRenderPositionAndScale();
|
||||
void setupGlobalResolutionScale();
|
||||
|
||||
|
||||
|
||||
int particlesPaused;
|
||||
|
||||
//JoystickData joystickData[4];
|
||||
|
||||
bool joystickEnabled;
|
||||
bool joystickOverrideMouse;
|
||||
/*
|
||||
int numJoysticks;
|
||||
DIJOYSTATE2 joystate;
|
||||
Joystick* joysticks[4];
|
||||
*/
|
||||
|
||||
|
||||
bool debugLogTextures;
|
||||
|
||||
|
||||
|
||||
Joystick joystick;
|
||||
void setClearColor(const Vector &c);
|
||||
|
@ -1248,7 +656,7 @@ public:
|
|||
bool frameOutputMode;
|
||||
|
||||
int overrideStartLayer, overrideEndLayer;
|
||||
|
||||
|
||||
void setWindowCaption(const std::string &caption, const std::string &icon);
|
||||
|
||||
ParticleEffect* createParticleEffect(const std::string &name, const Vector &position, int layer, float rotz=0);
|
||||
|
@ -1281,7 +689,7 @@ public:
|
|||
Vector center;
|
||||
|
||||
void enable2DWide(int rx, int ry);
|
||||
|
||||
|
||||
void enumerateScreenModes();
|
||||
|
||||
std::vector<ScreenMode> screenModes;
|
||||
|
@ -1319,13 +727,13 @@ protected:
|
|||
|
||||
float old_dt;
|
||||
float current_dt;
|
||||
|
||||
|
||||
std::string debugLogPath;
|
||||
|
||||
virtual void onReloadResources();
|
||||
|
||||
CountedPtr<Texture> doTextureAdd(const std::string &texture, const std::string &name, std::string internalTextureName);
|
||||
|
||||
|
||||
void deleteRenderObjectMemory(RenderObject *r);
|
||||
bool _hasFocus;
|
||||
bool lib_graphics, lib_sound, lib_input;
|
||||
|
@ -1338,9 +746,9 @@ protected:
|
|||
bool mouseConstraint;
|
||||
float mouseCircle;
|
||||
Vector mouseConstraintCenter;
|
||||
|
||||
|
||||
bool doMouseConstraint();
|
||||
|
||||
|
||||
virtual void onMouseInput(){}
|
||||
bool doScreenshot;
|
||||
float baseCullRadius;
|
||||
|
@ -1361,10 +769,10 @@ protected:
|
|||
bool sortFlag;
|
||||
virtual void modifyDt(float &dt){}
|
||||
void setPixelScale(int pixelScaleX, int pixelScaleY);
|
||||
|
||||
|
||||
|
||||
int virtualHeight, virtualWidth;
|
||||
|
||||
|
||||
bool shuttingDown;
|
||||
bool quitNestedMainFlag;
|
||||
bool clearedGarbageFlag;
|
||||
|
@ -1376,10 +784,8 @@ protected:
|
|||
|
||||
std::ofstream _logOut;
|
||||
|
||||
#ifdef BBGE_BUILD_SDL
|
||||
int nowTicks, thenTicks;
|
||||
#endif
|
||||
|
||||
|
||||
int _vsync, _bpp;
|
||||
bool _fullscreen;
|
||||
|
||||
|
@ -1387,9 +793,8 @@ protected:
|
|||
|
||||
CountedPtr<Texture> texError;
|
||||
|
||||
//unsigned int windowWidth, windowHeight;
|
||||
|
||||
|
||||
|
||||
int tgaSaveSeries(char *filename, short int width, short int height, unsigned char pixelDepth, unsigned char *imageData);
|
||||
virtual void onUpdate(float dt);
|
||||
virtual void onRender(){}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue