KisaragiLibrary
 
読み取り中…
検索中…
一致する文字列を見つけられません
Kisaragi_Lib 名前空間

名前空間

namespace  anonymous_namespace{BoxCollisionFacade.cpp}
 
namespace  anonymous_namespace{Collision_tag.cpp}
 
namespace  anonymous_namespace{ComponentBase.hpp}
 
namespace  anonymous_namespace{MouseInput.cpp}
 
namespace  anonymous_namespace{Singleton.cpp}
 
namespace  GameObj
 
namespace  ID
 
namespace  ImgComponent
 
namespace  Resource
 

クラス

struct  AABB
 軸平行境界ボックス [詳解]
 
class  AABBCollision2D
 
class  AABBView
 
class  Accessor
 public空間に置くことで,T*のAccessorを提供します [詳解]
 
class  ANGLE_DEGREE_EPSILON
 精度レベル(度数法) [詳解]
 
class  ANGLE_RADIAN_EPSILON
 精度レベル(ラジアン) [詳解]
 
class  BoxCollision
 
class  BoxCollisionFacade
 
class  BoxCollisionProcessor
 
class  CameraComponent
 
class  CameraQueue
 
struct  Capsule2D
 楕円形を表すプリミティブ型 [詳解]
 
struct  Circle2D
 円を表すプリミティブ型 [詳解]
 
struct  ClampOnOutOfRange
 範囲外が与えられたら近い範囲内に自動修正 [詳解]
 
class  Collision2DBase
 
class  Collision2DFacade
 
struct  Collision2DQueue
 
class  CollisionDataImpl
 
struct  CollisionTable
 衝突判定の構造体 [詳解]
 
class  ComponentBase
 
class  ComponentFacade
 
class  ComponentList
 
class  CustomAccessor
 public空間に置くことで,T*のAccessorを提供します, 自らがSetterを定義します [詳解]
 
class  CustomWriteOnly
 public空間に置くことで,自らが定義したT*のSetterを提供します [詳解]
 
class  Debug
 Debug用コンソール操作クラス [詳解]
 
class  Degree
 度数法の値型 [詳解]
 
class  DeleteWaitSoundClips
 音声クリップ削除待ち配列 [詳解]
 
class  DeleteWaitSoundClipsController
 
class  Font
 
class  FontFacade
 
class  FPS
 使用者側が扱うFPS [詳解]
 
class  FpsControl
 FPSの操作を行う [詳解]
 
class  FPSCore
 ライブラリで扱うFPS管理用クラス [詳解]
 
class  IBoxCollision
 
class  IDGenerator
 
struct  IgnoreOutOfRange
 範囲外が与えられたら警告のみ出力 [詳解]
 
struct  IOutOfRange
 範囲外の入力された値をどのように扱うかを決定するPolicyのベース型 [詳解]
 
struct  is_container
 
struct  is_container< T, std::void_t< decltype(std::declval< T >().begin()), decltype(std::declval< T >().end()) > >
 
class  Json
 Jsonデータを取り扱うクラス [詳解]
 
class  JsonParser
 Json読み込みクラス [詳解]
 
class  KeyInput
 
struct  Line2D
 始点と方向ベクトルで示される無限の直線を表すプリミティブ型 [詳解]
 
struct  LoopOutOfRange
 範囲外が与えられたらループした値に戻す [詳解]
 
class  Math
 汎用計算クラス [詳解]
 
class  Matrix2D
 
class  MouseInput
 
class  OrderedMap
 順番を持つ連想配列 [詳解]
 
struct  Point2D
 点を表すプリミティブ型 [詳解]
 
class  Polygon2D
 
class  Radian
 弧度法 [詳解]
 
class  RangeNum
 特定範囲の値を管理するための数値型 [詳解]
 
class  ReadOnly
 public空間に置くことで,T*のSetterを提供します [詳解]
 
class  RenderSystem
 描画処理を行うシステム [詳解]
 
struct  RGB255
 RGBカラーを扱う型 それぞれの値を0~255の範囲で管理します。 また自身が保持する色をDxLibのカラーに変更可能です [詳解]
 
struct  RGBA255
 RGB255型にalpha値を追加しただけのやつ [詳解]
 
class  RigidBody2D
 物理挙動を行うコンポーネントです。 現在は移動量のベクトルと減衰率を所有し、 それに応じた移動を行うのみ機能となっています。 [詳解]
 
class  RigidBody2DSystem
 RigidBody2Dの管理を行うクラスです。 エンジン側で操作を行うのでユーザ側で触る必要はございません [詳解]
 
struct  Segment2D
 始点と方向ベクトルで示される有限の直線を表すプリミティブ型 [詳解]
 
class  SerializableObject
 自身の監視対象データをJson形式にシリアライズしたり、 Json形式からデシリアライズできる基底データクラス [詳解]
 
struct  SerializableStruct
 SerializableObject内に格納されるインナークラス。 使用者側で直接いじることはないと思いますので、 興味がある場合は見るくらいでいいと思います。 [詳解]
 
class  Singleton
 
class  SingletonFinalizer
 mozc Singletonp^[ [詳解]
 
class  SoundClip
 
class  SoundHandle
 
class  SoundPlayerComponent
 Facadeクラスのcontainerに対するインターフェースとなるクラス [詳解]
 
class  SoundResourceFacade
 
class  SparseSet
 
struct  ThrowOnOutOfRange
 範囲外が与えられたら即座に終了 [詳解]
 
class  Transform2D
 matrix3x3座標系のラッパークラス [詳解]
 
struct  Vector2D
 ベクトルを表すプリミティブ型 [詳解]
 
class  ViewComponentBase
 
class  WriteOnly
 public空間に置くことで,T*のGetterを提供します [詳解]
 

型定義

using CollisionList = std::bitset<COLLISION_TAG_CNT>
 衝突判定List
 
using FontThick = Kisaragi_Lib::RangeNum<int, ClampOnOutOfRange>
 
using FontSize = Kisaragi_Lib::RangeNum<int, ClampOnOutOfRange>
 
template<typename T>
using Scale2D = Point2D<T>
 サイズを表すプリミティブ型 実体はPoint2D<T>と変わりありません
 

列挙型

enum  CollisionTag {
  Default = 0b00000001 , MyTag01 = 0b00000001 << 1 , MyTag02 = 0b00000001 << 2 , MyTag03 = 0b00000001 << 3 ,
  MyTag04 = 0b00000001 << 4 , MyTag05 = 0b00000001 << 5 , MyTag06 = 0b00000001 << 6 , MyTag07 = 0b00000001 << 7
}
 
enum  FontType {
  NORMAL = DX_FONTTYPE_NORMAL , EDGE = DX_FONTTYPE_EDGE , ANTIALIASING = DX_FONTTYPE_ANTIALIASING , ANTIALIASING_4X4 = DX_FONTTYPE_ANTIALIASING_4X4 ,
  ANTIALIASING_8X8 = DX_FONTTYPE_ANTIALIASING_8X8 , ANTIALIASING_16X16 = DX_FONTTYPE_ANTIALIASING_16X16 , ANTIALIASING_EDGE = DX_FONTTYPE_ANTIALIASING_EDGE , ANTIALIASING_EDGE_4X4 = DX_FONTTYPE_ANTIALIASING_EDGE_4X4 ,
  ANTIALIASING_EDGE_8X8 = DX_FONTTYPE_ANTIALIASING_EDGE_8X8 , ANTIALIASING_EDGE_16X16 = DX_FONTTYPE_ANTIALIASING_EDGE_16X16
}
 
enum class  KeyCode {
  KEY_0 = 0x0B , KEY_1 = 0x02 , KEY_2 = 0x03 , KEY_3 = 0x04 ,
  KEY_4 = 0x05 , KEY_5 = 0x06 , KEY_6 = 0x07 , KEY_7 = 0x08 ,
  KEY_8 = 0x09 , KEY_9 = 0x0A , KEY_A = 0x1E , KEY_B = 0x30 ,
  KEY_C = 0x2E , KEY_D = 0x20 , KEY_E = 0x12 , KEY_F = 0x21 ,
  KEY_G = 0x22 , KEY_H = 0x23 , KEY_I = 0x17 , KEY_J = 0x24 ,
  KEY_K = 0x25 , KEY_L = 0x26 , KEY_M = 0x32 , KEY_N = 0x31 ,
  KEY_O = 0x18 , KEY_P = 0x19 , KEY_Q = 0x10 , KEY_R = 0x13 ,
  KEY_S = 0x1F , KEY_T = 0x14 , KEY_U = 0x16 , KEY_V = 0x2F ,
  KEY_W = 0x11 , KEY_X = 0x2D , KEY_Y = 0x15 , KEY_Z = 0x2C ,
  KEY_NUMPAD0 = 0x52 , KEY_NUMPAD1 = 0x4F , KEY_NUMPAD2 = 0x50 , KEY_NUMPAD3 = 0x51 ,
  KEY_NUMPAD4 = 0x4B , KEY_NUMPAD5 = 0x4C , KEY_NUMPAD6 = 0x4D , KEY_NUMPAD7 = 0x47 ,
  KEY_NUMPAD8 = 0x48 , KEY_NUMPAD9 = 0x49 , KEY_NUMPADCOMMA = 0xB3 , KEY_NUMPADEQUALS = 0x8D ,
  KEY_NUMPADENTER = 0x9C , KEY_ADD = 0x4E , KEY_SUBTRACT = 0x4A , KEY_MULTIPLY = 0x37 ,
  KEY_DIVIDE = 0xB5 , KEY_DECIMAL = 0x53 , KEY_UP = 0xC8 , KEY_DOWN = 0xD0 ,
  KEY_LEFT = 0xCB , KEY_RIGHT = 0xCD , KEY_F1 = 0x3B , KEY_F2 = 0x3C ,
  KEY_F3 = 0x3D , KEY_F4 = 0x3E , KEY_F5 = 0x3F , KEY_F6 = 0x40 ,
  KEY_F7 = 0x41 , KEY_F8 = 0x42 , KEY_F9 = 0x43 , KEY_F10 = 0x44 ,
  KEY_F11 = 0x57 , KEY_F12 = 0x58 , KEY_F13 = 0x64 , KEY_F14 = 0x65 ,
  KEY_F15 = 0x66 , KEY_LSHIFT = 0x2A , KEY_RSHIFT = 0x36 , KEY_LCONTROL = 0x1D ,
  KEY_RCONTROL = 0x9D , KEY_LMENU = 0x38 , KEY_RMENU = 0xB8 , KEY_LWIN = 0xDB ,
  KEY_RWIN = 0xDC , KEY_ESCAPE = 0x01 , KEY_TAB = 0x0F , KEY_BACK = 0x0E ,
  KEY_RETURN = 0x1C , KEY_SPACE = 0x39 , KEY_CAPITAL = 0x3A , KEY_NUMLOCK = 0x45 ,
  KEY_SCROLL = 0x46 , KEY_PAUSE = 0xC5 , KEY_SYSRQ = 0xB7 , KEY_INSERT = 0xD2 ,
  KEY_DELETE = 0xD3 , KEY_HOME = 0xC7 , KEY_END = 0xCF , KEY_PRIOR = 0xC9 ,
  KEY_NEXT = 0xD1 , KEY_APPS = 0xDD , KEY_MINUS = 0x0C , KEY_EQUALS = 0x0D ,
  KEY_LBRACKET = 0x1A , KEY_RBRACKET = 0x1B , KEY_BACKSLASH = 0x2B , KEY_SEMICOLON = 0x27 ,
  KEY_APOSTROPHE = 0x28 , KEY_GRAVE = 0x29 , KEY_COMMA = 0x33 , KEY_PERIOD = 0x34 ,
  KEY_SLASH = 0x35 , KEY_KANA = 0x70 , KEY_CONVERT = 0x79 , KEY_NOCONVERT = 0x7B ,
  KEY_YEN = 0x7D , KEY_KANJI = 0x94 , KEY_MUTE = 0xA0 , KEY_CALCULATOR = 0xA1 ,
  KEY_PLAYPAUSE = 0xA2 , KEY_MEDIASTOP = 0xA4 , KEY_VOLUMEDOWN = 0xAE , KEY_VOLUMEUP = 0xB0 ,
  KEY_WEBHOME = 0xB2 , KEY_POWER = 0xDE , KEY_SLEEP = 0xDF , KEY_WAKE = 0xE3 ,
  KEY_WEBSEARCH = 0xE5 , KEY_WEBFAVORITES = 0xE6 , KEY_WEBREFRESH = 0xE7 , KEY_WEBSTOP = 0xE8 ,
  KEY_WEBFORWARD = 0xE9 , KEY_WEBBACK = 0xEA , KEY_MYCOMPUTER = 0xEB , KEY_MAIL = 0xEC ,
  KEY_MEDIASELECT = 0xED , KEY_PREVTRACK = 0x90 , KEY_NEXTTRACK = 0x99 , KEY_STOP = 0x95 ,
  KEY_AT = 0x91 , KEY_COLON = 0x92 , KEY_UNDERLINE = 0x93 , KEY_AX = 0x96 ,
  KEY_UNLABELED = 0x97
}
 KeyCode列挙型 DirectInputのkeycodeです。 [詳解]
 
enum  MouseButton { LEFT_BUTTON , RIGHT_BUTTON , CENTER_BUTTON }
 
enum  Matrix2DType { ZERO_CLEAR , IDENTITY_MATRIX }
 
enum  SoundPlayType { ASYNC = DX_PLAYTYPE_BACK , LOOP = DX_PLAYTYPE_LOOP , SYNC = DX_PLAYTYPE_NORMAL }
 

関数

Collision2DFacadeGetCollision2DFacade ()
 
Collision2DQueueGetCollision2DQueue ()
 
ComponentFacadeGetComponentFacade ()
 
KeyInputGetKeyInput ()
 
std::ostream & operator<< (std::ostream &os, const SerializableStruct &ss)
 
template<typename T>
vector< Segment2D< T > > GetSeparationAxis (Polygon2D< T > _pol01, Polygon2D< T > _pol02)
 2つの多角形の分離軸を取得する
 
template<typename VectorType, typename Predicate>
static std::vector< VectorType >::iterator RemoveIfErase (std::vector< VectorType > &_vec, const Predicate &_predicate)
 std::vector<T>から特定の条件に一致する要素を削除する関数 RemoveIfした後にEraseするため、高速です
 
template<class T>
static bool EpsilonIf (T _val01, T _val02, T _epsilon)
 _valの差が_許容範囲内か調べる
 
template<class T>
static bool IsRange (T _val, T _rangeMin, T _rangeMax)
 valが範囲内か調べる
 

変数

static const CollisionList DEFAULT_COLLISION
 
template<typename T>
std::once_flag Singleton< T >::initFlag
 
template<typename T>
std::shared_ptr< T > Singleton< T >::instance
 
constexpr int SYSTEM_MIN_FPS = 60
 ライブラリの上下限のFPS
 
constexpr int SYSTEM_MAX_FPS = 500
 
template<typename T>
constexpr bool is_container_v = is_container<T>::value
 
static const unsigned int COLLISION_TAG_CNT = 8
 
static const double PI = 3.1415926535897932384626433832795
 
static const float PI_F = 3.1415926535897932384626433832795f
 
static const double TWO_PI = 3.1415926535897932384626433832795 * 2.0
 
static const float TWO_PI_F = 3.1415926535897932384626433832795f * 2.0f
 
static const double DEGREES_HALF = 180.0
 
static const double EPSILON = 0.000001
 
static OrderedMap< string, ViewComponentBase * > viewContainer
 

型定義詳解

◆ CollisionList

衝突判定List

◆ FontThick

◆ FontSize

◆ Scale2D

template<typename T>
using Kisaragi_Lib::Scale2D = Point2D<T>

サイズを表すプリミティブ型 実体はPoint2D<T>と変わりありません

テンプレート引数
Tサイズの型
から
ver1.0.0 コメント追加

列挙型詳解

◆ CollisionTag

列挙値
Default 
MyTag01 
MyTag02 
MyTag03 
MyTag04 
MyTag05 
MyTag06 
MyTag07 
11 {
12 Default = 0b00000001,
13 MyTag01 = 0b00000001 << 1,
14 MyTag02 = 0b00000001 << 2,
15 MyTag03 = 0b00000001 << 3,
16 MyTag04 = 0b00000001 << 4,
17 MyTag05 = 0b00000001 << 5,
18 MyTag06 = 0b00000001 << 6,
19 MyTag07 = 0b00000001 << 7,
20 };
@ Default
Definition Collision_tag.hpp:12
@ MyTag04
Definition Collision_tag.hpp:16
@ MyTag06
Definition Collision_tag.hpp:18
@ MyTag05
Definition Collision_tag.hpp:17
@ MyTag07
Definition Collision_tag.hpp:19
@ MyTag02
Definition Collision_tag.hpp:14
@ MyTag01
Definition Collision_tag.hpp:13
@ MyTag03
Definition Collision_tag.hpp:15

◆ FontType

列挙値
NORMAL 
EDGE 
ANTIALIASING 
ANTIALIASING_4X4 
ANTIALIASING_8X8 
ANTIALIASING_16X16 
ANTIALIASING_EDGE 
ANTIALIASING_EDGE_4X4 
ANTIALIASING_EDGE_8X8 
ANTIALIASING_EDGE_16X16 
14 {
15 NORMAL = DX_FONTTYPE_NORMAL, //ノーマルフォント(デフォルト)
16 EDGE = DX_FONTTYPE_EDGE, //エッジつきフォント
17 ANTIALIASING = DX_FONTTYPE_ANTIALIASING, //アンチエイリアスフォント
18 ANTIALIASING_4X4 = DX_FONTTYPE_ANTIALIASING_4X4, //アンチエイリアスフォント( 4x4サンプリング )
19 ANTIALIASING_8X8 = DX_FONTTYPE_ANTIALIASING_8X8, //アンチエイリアスフォント( 8x8サンプリング )
20 ANTIALIASING_16X16 = DX_FONTTYPE_ANTIALIASING_16X16, //アンチエイリアスフォント( 16x16サンプリング )
21 ANTIALIASING_EDGE = DX_FONTTYPE_ANTIALIASING_EDGE, //アンチエイリアス&エッジ付きフォント
22 ANTIALIASING_EDGE_4X4 = DX_FONTTYPE_ANTIALIASING_EDGE_4X4, //アンチエイリアス&エッジ付きフォント( 4x4サンプリング )
23 ANTIALIASING_EDGE_8X8 = DX_FONTTYPE_ANTIALIASING_EDGE_8X8, //アンチエイリアス&エッジ付きフォント( 8x8サンプリング ) )
24 ANTIALIASING_EDGE_16X16 = DX_FONTTYPE_ANTIALIASING_EDGE_16X16, //アンチエイリアス&エッジ付きフォント( 16x16サンプリング ) )
25 };
@ ANTIALIASING_EDGE_8X8
Definition FontFacade.hpp:23
@ ANTIALIASING_8X8
Definition FontFacade.hpp:19
@ NORMAL
Definition FontFacade.hpp:15
@ ANTIALIASING_16X16
Definition FontFacade.hpp:20
@ ANTIALIASING_EDGE_4X4
Definition FontFacade.hpp:22
@ ANTIALIASING_4X4
Definition FontFacade.hpp:18
@ EDGE
Definition FontFacade.hpp:16
@ ANTIALIASING_EDGE_16X16
Definition FontFacade.hpp:24
@ ANTIALIASING_EDGE
Definition FontFacade.hpp:21
@ ANTIALIASING
Definition FontFacade.hpp:17

◆ KeyCode

enum class Kisaragi_Lib::KeyCode
strong

KeyCode列挙型 DirectInputのkeycodeです。

列挙値
KEY_0 
KEY_1 
KEY_2 
KEY_3 
KEY_4 
KEY_5 
KEY_6 
KEY_7 
KEY_8 
KEY_9 
KEY_A 
KEY_B 
KEY_C 
KEY_D 
KEY_E 
KEY_F 
KEY_G 
KEY_H 
KEY_I 
KEY_J 
KEY_K 
KEY_L 
KEY_M 
KEY_N 
KEY_O 
KEY_P 
KEY_Q 
KEY_R 
KEY_S 
KEY_T 
KEY_U 
KEY_V 
KEY_W 
KEY_X 
KEY_Y 
KEY_Z 
KEY_NUMPAD0 
KEY_NUMPAD1 
KEY_NUMPAD2 
KEY_NUMPAD3 
KEY_NUMPAD4 
KEY_NUMPAD5 
KEY_NUMPAD6 
KEY_NUMPAD7 
KEY_NUMPAD8 
KEY_NUMPAD9 
KEY_NUMPADCOMMA 
KEY_NUMPADEQUALS 
KEY_NUMPADENTER 
KEY_ADD 
KEY_SUBTRACT 
KEY_MULTIPLY 
KEY_DIVIDE 
KEY_DECIMAL 
KEY_UP 
KEY_DOWN 
KEY_LEFT 
KEY_RIGHT 
KEY_F1 
KEY_F2 
KEY_F3 
KEY_F4 
KEY_F5 
KEY_F6 
KEY_F7 
KEY_F8 
KEY_F9 
KEY_F10 
KEY_F11 
KEY_F12 
KEY_F13 
KEY_F14 
KEY_F15 
KEY_LSHIFT 
KEY_RSHIFT 
KEY_LCONTROL 
KEY_RCONTROL 
KEY_LMENU 
KEY_RMENU 
KEY_LWIN 
KEY_RWIN 
KEY_ESCAPE 
KEY_TAB 
KEY_BACK 
KEY_RETURN 
KEY_SPACE 
KEY_CAPITAL 
KEY_NUMLOCK 
KEY_SCROLL 
KEY_PAUSE 
KEY_SYSRQ 
KEY_INSERT 
KEY_DELETE 
KEY_HOME 
KEY_END 
KEY_PRIOR 
KEY_NEXT 
KEY_APPS 
KEY_MINUS 
KEY_EQUALS 
KEY_LBRACKET 
KEY_RBRACKET 
KEY_BACKSLASH 
KEY_SEMICOLON 
KEY_APOSTROPHE 
KEY_GRAVE 
KEY_COMMA 
KEY_PERIOD 
KEY_SLASH 
KEY_KANA 
KEY_CONVERT 
KEY_NOCONVERT 
KEY_YEN 
KEY_KANJI 
KEY_MUTE 
KEY_CALCULATOR 
KEY_PLAYPAUSE 
KEY_MEDIASTOP 
KEY_VOLUMEDOWN 
KEY_VOLUMEUP 
KEY_WEBHOME 
KEY_POWER 
KEY_SLEEP 
KEY_WAKE 
KEY_WEBSEARCH 
KEY_WEBFAVORITES 
KEY_WEBREFRESH 
KEY_WEBSTOP 
KEY_WEBFORWARD 
KEY_WEBBACK 
KEY_MYCOMPUTER 
KEY_MAIL 
KEY_MEDIASELECT 
KEY_PREVTRACK 
KEY_NEXTTRACK 
KEY_STOP 
KEY_AT 
KEY_COLON 
KEY_UNDERLINE 
KEY_AX 
KEY_UNLABELED 
27 {
28 // 数値キー 0~9
29 KEY_0 = 0x0B,
30 KEY_1 = 0x02,
31 KEY_2 = 0x03,
32 KEY_3 = 0x04,
33 KEY_4 = 0x05,
34 KEY_5 = 0x06,
35 KEY_6 = 0x07,
36 KEY_7 = 0x08,
37 KEY_8 = 0x09,
38 KEY_9 = 0x0A,
39
40 // アルファベットキー A~Z
41 KEY_A = 0x1E,
42 KEY_B = 0x30,
43 KEY_C = 0x2E,
44 KEY_D = 0x20,
45 KEY_E = 0x12,
46 KEY_F = 0x21,
47 KEY_G = 0x22,
48 KEY_H = 0x23,
49 KEY_I = 0x17,
50 KEY_J = 0x24,
51 KEY_K = 0x25,
52 KEY_L = 0x26,
53 KEY_M = 0x32,
54 KEY_N = 0x31,
55 KEY_O = 0x18,
56 KEY_P = 0x19,
57 KEY_Q = 0x10,
58 KEY_R = 0x13,
59 KEY_S = 0x1F,
60 KEY_T = 0x14,
61 KEY_U = 0x16,
62 KEY_V = 0x2F,
63 KEY_W = 0x11,
64 KEY_X = 0x2D,
65 KEY_Y = 0x15,
66 KEY_Z = 0x2C,
67
68 // Numpadキー 0~9 + その他
69 KEY_NUMPAD0 = 0x52,
70 KEY_NUMPAD1 = 0x4F,
71 KEY_NUMPAD2 = 0x50,
72 KEY_NUMPAD3 = 0x51,
73 KEY_NUMPAD4 = 0x4B,
74 KEY_NUMPAD5 = 0x4C,
75 KEY_NUMPAD6 = 0x4D,
76 KEY_NUMPAD7 = 0x47,
77 KEY_NUMPAD8 = 0x48,
78 KEY_NUMPAD9 = 0x49,
79 KEY_NUMPADCOMMA = 0xB3, // , on numeric keypad
80 KEY_NUMPADEQUALS = 0x8D, // = on numeric keypad
81 KEY_NUMPADENTER = 0x9C, // Enter on numeric keypad
82 KEY_ADD = 0x4E, // + on numeric keypad
83 KEY_SUBTRACT = 0x4A, // - on numeric keypad
84 KEY_MULTIPLY = 0x37, // * on numeric keypad
85 KEY_DIVIDE = 0xB5, // / on numeric keypad
86 KEY_DECIMAL = 0x53, // . on numeric keypad
87
88 // 矢印キー
89 KEY_UP = 0xC8, // UpArrow on arrow keypad
90 KEY_DOWN = 0xD0, // DownArrow on arrow keypad
91 KEY_LEFT = 0xCB, // LeftArrow on arrow keypad
92 KEY_RIGHT = 0xCD, // RightArrow on arrow keypad
93
94 // 機能キー (F1 ~ F15)
95 KEY_F1 = 0x3B,
96 KEY_F2 = 0x3C,
97 KEY_F3 = 0x3D,
98 KEY_F4 = 0x3E,
99 KEY_F5 = 0x3F,
100 KEY_F6 = 0x40,
101 KEY_F7 = 0x41,
102 KEY_F8 = 0x42,
103 KEY_F9 = 0x43,
104 KEY_F10 = 0x44,
105 KEY_F11 = 0x57,
106 KEY_F12 = 0x58,
107 KEY_F13 = 0x64, // (NEC PC98)
108 KEY_F14 = 0x65, // (NEC PC98)
109 KEY_F15 = 0x66, // (NEC PC98)
110
111 // モディファイアキー
112 KEY_LSHIFT = 0x2A,
113 KEY_RSHIFT = 0x36,
114 KEY_LCONTROL = 0x1D,
115 KEY_RCONTROL = 0x9D,
116 KEY_LMENU = 0x38, // Left Alt
117 KEY_RMENU = 0xB8, // Right Alt
118 KEY_LWIN = 0xDB, // Left Windows key
119 KEY_RWIN = 0xDC, // Right Windows key
120
121 // 特殊キー
122 KEY_ESCAPE = 0x01,
123 KEY_TAB = 0x0F,
124 KEY_BACK = 0x0E, // Backspace
125 KEY_RETURN = 0x1C, // Enter on main keyboard
126 KEY_SPACE = 0x39,
127 KEY_CAPITAL = 0x3A, // Caps Lock
128 KEY_NUMLOCK = 0x45,
129 KEY_SCROLL = 0x46, // Scroll Lock
130 KEY_PAUSE = 0xC5, // Pause
131 KEY_SYSRQ = 0xB7, // Print Screen
132 KEY_INSERT = 0xD2, // Insert on arrow keypad
133 KEY_DELETE = 0xD3, // Delete on arrow keypad
134 KEY_HOME = 0xC7, // Home on arrow keypad
135 KEY_END = 0xCF, // End on arrow keypad
136 KEY_PRIOR = 0xC9, // Page Up on arrow keypad
137 KEY_NEXT = 0xD1, // Page Down on arrow keypad
138 KEY_APPS = 0xDD, // AppMenu key
139
140 // 記号・その他のキー
141 KEY_MINUS = 0x0C, // - on main keyboard
142 KEY_EQUALS = 0x0D,
143 KEY_LBRACKET = 0x1A,
144 KEY_RBRACKET = 0x1B,
145 KEY_BACKSLASH = 0x2B,
146 KEY_SEMICOLON = 0x27,
147 KEY_APOSTROPHE = 0x28,
148 KEY_GRAVE = 0x29, // Accent grave (`)
149 KEY_COMMA = 0x33,
150 KEY_PERIOD = 0x34, // . on main keyboard
151 KEY_SLASH = 0x35, // / on main keyboard
152
153 // 日本語キーボード
154 KEY_KANA = 0x70, // (Japanese keyboard)
155 KEY_CONVERT = 0x79, // (Japanese keyboard)
156 KEY_NOCONVERT = 0x7B, // (Japanese keyboard)
157 KEY_YEN = 0x7D, // (Japanese keyboard)
158 KEY_KANJI = 0x94, // (Japanese keyboard)
159
160 // その他 (メディアやシステム関連のキー)
161 KEY_MUTE = 0xA0, // Mute
162 KEY_CALCULATOR = 0xA1, // Calculator
163 KEY_PLAYPAUSE = 0xA2, // Play / Pause
164 KEY_MEDIASTOP = 0xA4, // Media Stop
165 KEY_VOLUMEDOWN = 0xAE, // Volume -
166 KEY_VOLUMEUP = 0xB0, // Volume +
167 KEY_WEBHOME = 0xB2, // Web home
168 KEY_POWER = 0xDE, // System Power
169 KEY_SLEEP = 0xDF, // System Sleep
170 KEY_WAKE = 0xE3, // System Wake
171 KEY_WEBSEARCH = 0xE5, // Web Search
172 KEY_WEBFAVORITES = 0xE6, // Web Favorites
173 KEY_WEBREFRESH = 0xE7, // Web Refresh
174 KEY_WEBSTOP = 0xE8, // Web Stop
175 KEY_WEBFORWARD = 0xE9, // Web Forward
176 KEY_WEBBACK = 0xEA, // Web Back
177 KEY_MYCOMPUTER = 0xEB, // My Computer
178 KEY_MAIL = 0xEC, // Mail
179 KEY_MEDIASELECT = 0xED, // Media Select
180 KEY_PREVTRACK = 0x90, // Previous Track
181 KEY_NEXTTRACK = 0x99, // Next Track
182 KEY_STOP = 0x95, // (NEC PC98)
183 KEY_AT = 0x91, // (NEC PC98)
184 KEY_COLON = 0x92, // (NEC PC98)
185 KEY_UNDERLINE = 0x93, // (NEC PC98)
186 KEY_AX = 0x96, // (Japan AX)
187 KEY_UNLABELED = 0x97, // (J3100)
188
189 };
@ KEY_R
Definition KeyInput.hpp:58
@ KEY_AT
Definition KeyInput.hpp:183
@ KEY_END
Definition KeyInput.hpp:135
@ KEY_F13
Definition KeyInput.hpp:107
@ KEY_Y
Definition KeyInput.hpp:65
@ KEY_F1
Definition KeyInput.hpp:95
@ KEY_WEBFAVORITES
Definition KeyInput.hpp:172
@ KEY_WEBSEARCH
Definition KeyInput.hpp:171
@ KEY_F8
Definition KeyInput.hpp:102
@ KEY_NUMPAD6
Definition KeyInput.hpp:75
@ KEY_LMENU
Definition KeyInput.hpp:116
@ KEY_F4
Definition KeyInput.hpp:98
@ KEY_STOP
Definition KeyInput.hpp:182
@ KEY_GRAVE
Definition KeyInput.hpp:148
@ KEY_LEFT
Definition KeyInput.hpp:91
@ KEY_MYCOMPUTER
Definition KeyInput.hpp:177
@ KEY_NUMLOCK
Definition KeyInput.hpp:128
@ KEY_2
Definition KeyInput.hpp:31
@ KEY_WEBHOME
Definition KeyInput.hpp:167
@ KEY_MUTE
Definition KeyInput.hpp:161
@ KEY_WEBFORWARD
Definition KeyInput.hpp:175
@ KEY_B
Definition KeyInput.hpp:42
@ KEY_WEBREFRESH
Definition KeyInput.hpp:173
@ KEY_RMENU
Definition KeyInput.hpp:117
@ KEY_EQUALS
Definition KeyInput.hpp:142
@ KEY_F3
Definition KeyInput.hpp:97
@ KEY_F2
Definition KeyInput.hpp:96
@ KEY_PRIOR
Definition KeyInput.hpp:136
@ KEY_6
Definition KeyInput.hpp:35
@ KEY_G
Definition KeyInput.hpp:47
@ KEY_NUMPADCOMMA
Definition KeyInput.hpp:79
@ KEY_CAPITAL
Definition KeyInput.hpp:127
@ KEY_F14
Definition KeyInput.hpp:108
@ KEY_PLAYPAUSE
Definition KeyInput.hpp:163
@ KEY_RBRACKET
Definition KeyInput.hpp:144
@ KEY_LWIN
Definition KeyInput.hpp:118
@ KEY_MAIL
Definition KeyInput.hpp:178
@ KEY_SUBTRACT
Definition KeyInput.hpp:83
@ KEY_LSHIFT
Definition KeyInput.hpp:112
@ KEY_RWIN
Definition KeyInput.hpp:119
@ KEY_Z
Definition KeyInput.hpp:66
@ KEY_SCROLL
Definition KeyInput.hpp:129
@ KEY_LBRACKET
Definition KeyInput.hpp:143
@ KEY_NUMPAD4
Definition KeyInput.hpp:73
@ KEY_MINUS
Definition KeyInput.hpp:141
@ KEY_1
Definition KeyInput.hpp:30
@ KEY_WEBSTOP
Definition KeyInput.hpp:174
@ KEY_5
Definition KeyInput.hpp:34
@ KEY_PERIOD
Definition KeyInput.hpp:150
@ KEY_V
Definition KeyInput.hpp:62
@ KEY_NUMPAD9
Definition KeyInput.hpp:78
@ KEY_7
Definition KeyInput.hpp:36
@ KEY_T
Definition KeyInput.hpp:60
@ KEY_MULTIPLY
Definition KeyInput.hpp:84
@ KEY_DIVIDE
Definition KeyInput.hpp:85
@ KEY_A
Definition KeyInput.hpp:41
@ KEY_U
Definition KeyInput.hpp:61
@ KEY_SYSRQ
Definition KeyInput.hpp:131
@ KEY_APPS
Definition KeyInput.hpp:138
@ KEY_YEN
Definition KeyInput.hpp:157
@ KEY_NUMPAD0
Definition KeyInput.hpp:69
@ KEY_NOCONVERT
Definition KeyInput.hpp:156
@ KEY_KANJI
Definition KeyInput.hpp:158
@ KEY_UNLABELED
Definition KeyInput.hpp:187
@ KEY_TAB
Definition KeyInput.hpp:123
@ KEY_RETURN
Definition KeyInput.hpp:125
@ KEY_H
Definition KeyInput.hpp:48
@ KEY_ADD
Definition KeyInput.hpp:82
@ KEY_K
Definition KeyInput.hpp:51
@ KEY_Q
Definition KeyInput.hpp:57
@ KEY_AX
Definition KeyInput.hpp:186
@ KEY_0
Definition KeyInput.hpp:29
@ KEY_APOSTROPHE
Definition KeyInput.hpp:147
@ KEY_COMMA
Definition KeyInput.hpp:149
@ KEY_8
Definition KeyInput.hpp:37
@ KEY_NUMPADEQUALS
Definition KeyInput.hpp:80
@ KEY_N
Definition KeyInput.hpp:54
@ KEY_J
Definition KeyInput.hpp:50
@ KEY_RSHIFT
Definition KeyInput.hpp:113
@ KEY_RIGHT
Definition KeyInput.hpp:92
@ KEY_P
Definition KeyInput.hpp:56
@ KEY_SEMICOLON
Definition KeyInput.hpp:146
@ KEY_4
Definition KeyInput.hpp:33
@ KEY_VOLUMEUP
Definition KeyInput.hpp:166
@ KEY_F11
Definition KeyInput.hpp:105
@ KEY_F9
Definition KeyInput.hpp:103
@ KEY_C
Definition KeyInput.hpp:43
@ KEY_VOLUMEDOWN
Definition KeyInput.hpp:165
@ KEY_BACK
Definition KeyInput.hpp:124
@ KEY_DECIMAL
Definition KeyInput.hpp:86
@ KEY_PREVTRACK
Definition KeyInput.hpp:180
@ KEY_BACKSLASH
Definition KeyInput.hpp:145
@ KEY_UNDERLINE
Definition KeyInput.hpp:185
@ KEY_F10
Definition KeyInput.hpp:104
@ KEY_NUMPADENTER
Definition KeyInput.hpp:81
@ KEY_SLASH
Definition KeyInput.hpp:151
@ KEY_INSERT
Definition KeyInput.hpp:132
@ KEY_9
Definition KeyInput.hpp:38
@ KEY_E
Definition KeyInput.hpp:45
@ KEY_COLON
Definition KeyInput.hpp:184
@ KEY_NUMPAD8
Definition KeyInput.hpp:77
@ KEY_KANA
Definition KeyInput.hpp:154
@ KEY_CONVERT
Definition KeyInput.hpp:155
@ KEY_W
Definition KeyInput.hpp:63
@ KEY_F15
Definition KeyInput.hpp:109
@ KEY_S
Definition KeyInput.hpp:59
@ KEY_PAUSE
Definition KeyInput.hpp:130
@ KEY_WAKE
Definition KeyInput.hpp:170
@ KEY_3
Definition KeyInput.hpp:32
@ KEY_F12
Definition KeyInput.hpp:106
@ KEY_POWER
Definition KeyInput.hpp:168
@ KEY_UP
Definition KeyInput.hpp:89
@ KEY_M
Definition KeyInput.hpp:53
@ KEY_WEBBACK
Definition KeyInput.hpp:176
@ KEY_F6
Definition KeyInput.hpp:100
@ KEY_MEDIASTOP
Definition KeyInput.hpp:164
@ KEY_O
Definition KeyInput.hpp:55
@ KEY_ESCAPE
Definition KeyInput.hpp:122
@ KEY_RCONTROL
Definition KeyInput.hpp:115
@ KEY_I
Definition KeyInput.hpp:49
@ KEY_HOME
Definition KeyInput.hpp:134
@ KEY_CALCULATOR
Definition KeyInput.hpp:162
@ KEY_MEDIASELECT
Definition KeyInput.hpp:179
@ KEY_X
Definition KeyInput.hpp:64
@ KEY_SLEEP
Definition KeyInput.hpp:169
@ KEY_DOWN
Definition KeyInput.hpp:90
@ KEY_NEXTTRACK
Definition KeyInput.hpp:181
@ KEY_LCONTROL
Definition KeyInput.hpp:114
@ KEY_DELETE
Definition KeyInput.hpp:133
@ KEY_F5
Definition KeyInput.hpp:99
@ KEY_NEXT
Definition KeyInput.hpp:137
@ KEY_F
Definition KeyInput.hpp:46
@ KEY_NUMPAD3
Definition KeyInput.hpp:72
@ KEY_L
Definition KeyInput.hpp:52
@ KEY_NUMPAD7
Definition KeyInput.hpp:76
@ KEY_NUMPAD5
Definition KeyInput.hpp:74
@ KEY_NUMPAD1
Definition KeyInput.hpp:70
@ KEY_NUMPAD2
Definition KeyInput.hpp:71
@ KEY_SPACE
Definition KeyInput.hpp:126
@ KEY_F7
Definition KeyInput.hpp:101
@ KEY_D
Definition KeyInput.hpp:44

◆ MouseButton

列挙値
LEFT_BUTTON 
RIGHT_BUTTON 
CENTER_BUTTON 
7 {
11 };
@ LEFT_BUTTON
Definition MouseInput.hpp:8
@ RIGHT_BUTTON
Definition MouseInput.hpp:9
@ CENTER_BUTTON
Definition MouseInput.hpp:10

◆ Matrix2DType

列挙値
ZERO_CLEAR 
IDENTITY_MATRIX 
17 {
20 };
@ IDENTITY_MATRIX
Definition Matrix2D.hpp:19
@ ZERO_CLEAR
Definition Matrix2D.hpp:18

◆ SoundPlayType

列挙値
ASYNC 
LOOP 
SYNC 
58 {
59 ASYNC = DX_PLAYTYPE_BACK , //: 非同期再生
60 LOOP = DX_PLAYTYPE_LOOP , //: ループ再生
61 SYNC = DX_PLAYTYPE_NORMAL, //: 同期再生
62 };
@ ASYNC
Definition Sound.hpp:59
@ LOOP
Definition Sound.hpp:60
@ SYNC
Definition Sound.hpp:61

関数詳解

◆ GetCollision2DFacade()

Collision2DFacade & Kisaragi_Lib::GetCollision2DFacade ( )
27 {
29 }
static T & GetInstance()
T^̃CX^X擾.
Definition Singleton.hpp:39

◆ GetCollision2DQueue()

Collision2DQueue & Kisaragi_Lib::GetCollision2DQueue ( )
36 {
37 return Singleton_old<Collision2DQueue>::GetInstance();
38 }

参照元 Kisaragi_Lib::Collision2DFacade::Collision2DFacade().

◆ GetComponentFacade()

◆ GetKeyInput()

KeyInput & Kisaragi_Lib::GetKeyInput ( )

◆ operator<<()

std::ostream & Kisaragi_Lib::operator<< ( std::ostream & os,
const SerializableStruct & ss )
82 {
83 ss.ToJson(os, 1); // インデントレベル1で開始
84 return os;
85 }
void ToJson(std::ostream &os, int indentLevel) const
Definition JsonUtility.cpp:60

◆ GetSeparationAxis()

template<typename T>
vector< Segment2D< T > > Kisaragi_Lib::GetSeparationAxis ( Polygon2D< T > _pol01,
Polygon2D< T > _pol02 )

2つの多角形の分離軸を取得する

戻り値
正規化された分離軸
90 {
91 //TODO ここの型を変えて重複禁止にしようず
92 //でも小数点型なんだよなぁ...
93 //しかもベクトル...
94 vector<Segment2D<T>> axis;
95
96 for (auto& edge : _pol01.GetEdge())
97 {
98 //線分のベクトルを法線ベクトルに変更
99 edge.direction = Vector2D<T>::GetNormalVector(edge.direction);
100 axis.push_back(edge);
101 }
102
103 for (auto& edge : _pol02.GetEdge())
104 {
105 //線分のベクトルを法線ベクトルに変更
106 edge.direction = Vector2D<T>::GetNormalVector(edge.direction);
107 axis.push_back(edge);
108 }
109
110 return axis;
111 }
vector< Edge > GetEdge()
Definition Polygon2D.hpp:35
static Vector2D< T > GetNormalVector(Vector2D< T > _vec, bool _clockwise=true)
ベクトルから法線ベクトルを求める
Definition Primitive.hpp:252

◆ RemoveIfErase()

template<typename VectorType, typename Predicate>
static std::vector< VectorType >::iterator Kisaragi_Lib::RemoveIfErase ( std::vector< VectorType > & _vec,
const Predicate & _predicate )
static

std::vector<T>から特定の条件に一致する要素を削除する関数 RemoveIfした後にEraseするため、高速です

テンプレート引数
VectorTypestd::vector<VectorType>
Predicate要素削除に使用する条件となる、boolを返す関数・ラムダ式など
引数
_vec操作するvector配列
_predicate要素削除の条件となる、boolを返す関数・ラムダ式など
戻り値
削除された要素の次の要素を指すイテレータ
から
1.0.0
28 {
29 auto it = std::remove_if(_vec.begin(), _vec.end(), _predicate);
30
31 return _vec.erase(it, _vec.end());
32 }

参照元 Kisaragi_Lib::DeleteWaitSoundClips::Delete().

◆ EpsilonIf()

template<class T>
static bool Kisaragi_Lib::EpsilonIf ( T _val01,
T _val02,
T _epsilon )
static

_valの差が_許容範囲内か調べる

テンプレート引数
T
引数
_val01比較したい値01
_val02比較したい値02
_epsilon許容値(含む)
戻り値
許容範囲か否か
から
ver1.0.0 Bool型(削除済み)からを追加
45 {
46 return ((abs(_val01 - _val02)) <= _epsilon);
47 }

参照元 Kisaragi_Lib::Degree< Num >::EpsilonIf(), Kisaragi_Lib::Degree< Num >::EpsilonIf(), Kisaragi_Lib::Degree< Num >::EpsilonIf(), Kisaragi_Lib::Radian< Num >::EpsilonIf(), Kisaragi_Lib::Radian< Num >::EpsilonIf(), Kisaragi_Lib::Radian< Num >::EpsilonIf(), Kisaragi_Lib::Point2D< T >::Normalize().

◆ IsRange()

template<class T>
static bool Kisaragi_Lib::IsRange ( T _val,
T _rangeMin,
T _rangeMax )
static

valが範囲内か調べる

テンプレート引数
T
引数
_val
_rangeMin範囲内の最小値
_rangeMax範囲内の最大値
戻り値
範囲内か否か
から
ver1.0.0 Bool型(削除済み)から追加
60 {
61 return ((_val >= _rangeMin) && (_val <= _rangeMax));
62 }

参照元 Kisaragi_Lib::Vector2D< T >::isParallel(), Kisaragi_Lib::Vector2D< T >::isVertical().

変数詳解

◆ DEFAULT_COLLISION

const CollisionList Kisaragi_Lib::DEFAULT_COLLISION
static

◆ Singleton< T >::initFlag

template<typename T>
std::once_flag Kisaragi_Lib::Singleton< T >::initFlag

◆ Singleton< T >::instance

◆ SYSTEM_MIN_FPS

int Kisaragi_Lib::SYSTEM_MIN_FPS = 60
constexpr

ライブラリの上下限のFPS

◆ SYSTEM_MAX_FPS

int Kisaragi_Lib::SYSTEM_MAX_FPS = 500
constexpr

◆ is_container_v

template<typename T>
bool Kisaragi_Lib::is_container_v = is_container<T>::value
inlineconstexpr

◆ COLLISION_TAG_CNT

const unsigned int Kisaragi_Lib::COLLISION_TAG_CNT = 8
static

◆ PI

◆ PI_F

const float Kisaragi_Lib::PI_F = 3.1415926535897932384626433832795f
static

◆ TWO_PI

const double Kisaragi_Lib::TWO_PI = 3.1415926535897932384626433832795 * 2.0
static

◆ TWO_PI_F

const float Kisaragi_Lib::TWO_PI_F = 3.1415926535897932384626433832795f * 2.0f
static

◆ DEGREES_HALF

◆ EPSILON

◆ viewContainer