arsa  2.7
Classes | Typedefs | Enumerations | Functions | Variables
Effekseer Namespace Reference

Classes

class  Client
 
struct  Color
 More...
 
struct  CustomAlignedAllocator
 
struct  CustomAllocator
 
class  DefaultFileInterface
 
class  DefaultFileReader
 標準のファイル読み込みクラス More...
 
class  DefaultFileWriter
 
class  Effect
 Effect parameters. More...
 
struct  EffectBasicRenderParameter
 共通描画パラメーター More...
 
class  EffectFactory
 A class to edit an instance of EffectParameter for supporting original format when a binary is loaded. More...
 
struct  EffectInstanceTerm
 Terms where instances exists. More...
 
class  EffectLoader
 エフェクトファイル読み込み破棄関数指定クラス More...
 
struct  EffectModelParameter
 Model parameter It may change greatly. More...
 
class  EffectNode
 ノードインスタンス生成クラス More...
 
struct  EffectTerm
 Terms where an effect exists. More...
 
class  FileInterface
 factory class for io More...
 
class  FileReader
 ファイル読み込みクラス More...
 
class  FileWriter
 ファイル書き込みクラス More...
 
class  IRandObject
 This object generates random values. More...
 
class  IReference
 参照カウンタのインターフェース More...
 
class  Manager
 エフェクト管理クラス More...
 
class  MaterialData
 Material data. More...
 
class  MaterialLoader
 Material loader. More...
 
struct  MaterialParameter
 Material parameter for shaders. More...
 
struct  MaterialTextureParameter
 Textures used by material. More...
 
struct  Matrix43
 4x3行列 More...
 
struct  Matrix44
 行列 More...
 
class  Model
 Model class. More...
 
class  ModelLoader
 モデル読み込み破棄関数指定クラス More...
 
struct  NodeRendererBasicParameter
 Common parameters which is passed into a renderer. More...
 
struct  NodeRendererDepthParameter
 Parameters about a depth which is passed into a renderer. More...
 
struct  RectF
 四角形 More...
 
struct  ReferenceDeleter
 a deleter for IReference More...
 
class  ReferenceObject
 参照カウンタオブジェクト More...
 
class  Server
 A server to edit effect from client such an editor. More...
 
class  Setting
 設定クラス More...
 
class  SoundLoader
 サウンド読み込み破棄関数指定クラス More...
 
class  SoundPlayer
 
struct  TextureData
 Texture data. More...
 
class  TextureLoader
 テクスチャ読み込み破棄関数指定クラス More...
 
struct  Vector2D
 3次元ベクトル More...
 
struct  Vector3D
 3次元ベクトル More...
 

Typedefs

typedef int Handle
 
typedef void *(EFK_STDCALLMallocFunc) (unsigned int size)
 Memory Allocation function. More...
 
typedef void(EFK_STDCALLFreeFunc) (void *p, unsigned int size)
 Memory Free function. More...
 
typedef void *(EFK_STDCALLAlignedMallocFunc) (unsigned int size, unsigned int alignment)
 AlignedMemory Allocation function. More...
 
typedef void(EFK_STDCALLAlignedFreeFunc) (void *p, unsigned int size)
 AlignedMemory Free function. More...
 
typedef int(EFK_STDCALLRandFunc) (void)
 Random Function. More...
 
typedef Handle handle
 
typedef Handle bool isRemovingManager
 
template<class T >
using CustomVector = std::vector< T, CustomAllocator< T > >
 
template<class T >
using CustomAlignedVector = std::vector< T, CustomAlignedAllocator< T > >
 
template<class T >
using CustomList = std::list< T, CustomAllocator< T > >
 
template<class T >
using CustomSet = std::set< T, std::less< T >, CustomAllocator< T > >
 
template<class T , class U >
using CustomMap = std::map< T, U, std::less< T >, CustomAllocator< std::pair< const T, U > >>
 
typedef voidSoundHandle
 
typedef voidSoundTag
 

Enumerations

enum  AlphaBlendType : int32_t {
  AlphaBlendType::Opacity = 0, AlphaBlendType::Blend = 1, AlphaBlendType::Add = 2, AlphaBlendType::Sub = 3,
  AlphaBlendType::Mul = 4
}
 アルファブレンド More...
 
enum  TextureFilterType : int32_t { TextureFilterType::Nearest = 0, TextureFilterType::Linear = 1 }
 
enum  TextureWrapType : int32_t { TextureWrapType::Repeat = 0, TextureWrapType::Clamp = 1 }
 
enum  CullingType : int32_t { CullingType::Front = 0, CullingType::Back = 1, CullingType::Double = 2 }
 
enum  BillboardType : int32_t { BillboardType::Billboard = 0, BillboardType::YAxisFixed = 1, BillboardType::Fixed = 2, BillboardType::RotatedBillboard = 3 }
 
enum  CoordinateSystem : int32_t { CoordinateSystem::LH, CoordinateSystem::RH }
 
enum  CullingShape : int32_t { CullingShape::NoneShape = 0, CullingShape::Sphere = 1 }
 
enum  TextureType : int32_t { TextureType::Color, TextureType::Normal, TextureType::Distortion }
 
enum  MaterialFileType : int32_t { MaterialFileType::Code, MaterialFileType::Compiled }
 
enum  TextureFormatType : int32_t { TextureFormatType::ABGR8, TextureFormatType::BC1, TextureFormatType::BC2, TextureFormatType::BC3 }
 
enum  ZSortType : int32_t { ZSortType::None, ZSortType::NormalOrder, ZSortType::ReverseOrder }
 
enum  RenderMode : int32_t { RenderMode::Normal, RenderMode::Wireframe }
 
enum  ReloadingThreadType { ReloadingThreadType::Main, ReloadingThreadType::Render }
 A thread where reload function is called. More...
 
enum  ColorSpaceType : int32_t { ColorSpaceType::Gamma, ColorSpaceType::Linear }
 
enum  ShadingModelType : int32_t { ShadingModelType::Lit, ShadingModelType::Unlit }
 
enum  RendererMaterialType : int32_t { RendererMaterialType::Default = 0, RendererMaterialType::BackDistortion = 6, RendererMaterialType::Lighting = 7, RendererMaterialType::File = 128 }
 material type More...
 
enum  ColorMode { COLOR_MODE_RGBA, COLOR_MODE_HSVA, COLOR_MODE_DWORD = 0x7FFFFFFF }
 

Functions

typedef void (EFK_STDCALL *EffectInstanceRemovingCallback)(Manager *manager
 エフェクトのインスタンス破棄時のコールバックイベント More...
 
template<typename T , typename U >
Max (T t, U u)
 最大値取得 More...
 
template<typename T , typename U >
Min (T t, U u)
 最小値取得 More...
 
template<typename T , typename U , typename V >
Clamp (T t, U max_, V min_)
 範囲内値取得 More...
 
int32_t ConvertUtf16ToUtf8 (int8_t *dst, int32_t dst_size, const int16_t *src)
 文字コードを変換する。(UTF16 -> UTF8) More...
 
int32_t ConvertUtf8ToUtf16 (int16_t *dst, int32_t dst_size, const int8_t *src)
 文字コードを変換する。(UTF8 -> UTF16) More...
 
template<typename T >
std::unique_ptr< T, ReferenceDeleter< T > > CreateUniqueReference (T *ptr, bool addRef=false)
 
MallocFunc GetMallocFunc ()
 get an allocator More...
 
void SetMallocFunc (MallocFunc func)
 
FreeFunc GetFreeFunc ()
 get a deallocator More...
 
void SetFreeFunc (FreeFunc func)
 
AlignedMallocFunc GetAlignedMallocFunc ()
 get an allocator More...
 
void SetAlignedMallocFunc (AlignedMallocFunc func)
 
AlignedFreeFunc GetAlignedFreeFunc ()
 get a deallocator More...
 
void SetAlignedFreeFunc (AlignedFreeFunc func)
 
template<class T , class U >
bool operator== (const CustomAllocator< T > &, const CustomAllocator< U > &)
 
template<class T , class U >
bool operator!= (const CustomAllocator< T > &, const CustomAllocator< U > &)
 

Variables

const int32_t UserTextureSlotMax = 6
 the maximum number of texture slot which can be specified by an user More...
 
const int32_t TextureSlotMax = 8
 the maximum number of texture slot including textures system specified More...
 
const int32_t LocalFieldSlotMax = 4
 

Typedef Documentation

◆ AlignedFreeFunc

typedef void(EFK_STDCALL* Effekseer::AlignedFreeFunc) (void *p, unsigned int size)

AlignedMemory Free function.

Definition at line 109 of file Effekseer.h.

◆ AlignedMallocFunc

typedef void*(EFK_STDCALL* Effekseer::AlignedMallocFunc) (unsigned int size, unsigned int alignment)

AlignedMemory Allocation function.

Definition at line 104 of file Effekseer.h.

◆ CustomAlignedVector

template<class T >
using Effekseer::CustomAlignedVector = typedef std::vector<T, CustomAlignedAllocator<T> >

Definition at line 793 of file Effekseer.h.

◆ CustomList

template<class T >
using Effekseer::CustomList = typedef std::list<T, CustomAllocator<T> >

Definition at line 794 of file Effekseer.h.

◆ CustomMap

template<class T , class U >
using Effekseer::CustomMap = typedef std::map<T, U, std::less<T>, CustomAllocator<std::pair<const T, U> >>

Definition at line 796 of file Effekseer.h.

◆ CustomSet

template<class T >
using Effekseer::CustomSet = typedef std::set<T, std::less<T>, CustomAllocator<T> >

Definition at line 795 of file Effekseer.h.

◆ CustomVector

template<class T >
using Effekseer::CustomVector = typedef std::vector<T, CustomAllocator<T> >

Definition at line 792 of file Effekseer.h.

◆ FreeFunc

typedef void(EFK_STDCALL* Effekseer::FreeFunc) (void *p, unsigned int size)

Memory Free function.

Definition at line 99 of file Effekseer.h.

◆ Handle

typedef int Effekseer::Handle

Definition at line 87 of file Effekseer.h.

◆ handle

Definition at line 122 of file Effekseer.h.

◆ isRemovingManager

Definition at line 122 of file Effekseer.h.

◆ MallocFunc

typedef void*(EFK_STDCALL* Effekseer::MallocFunc) (unsigned int size)

Memory Allocation function.

Definition at line 94 of file Effekseer.h.

◆ RandFunc

typedef int(EFK_STDCALL* Effekseer::RandFunc) (void)

Random Function.

Definition at line 114 of file Effekseer.h.

◆ SoundHandle

Definition at line 3586 of file Effekseer.h.

◆ SoundTag

Definition at line 3587 of file Effekseer.h.

Enumeration Type Documentation

◆ AlphaBlendType

アルファブレンド

Enumerator
Opacity 

不透明

Blend 

透明

Add 

加算

Sub 

減算

Mul 

乗算

Definition at line 145 of file Effekseer.h.

145  : int32_t
146 {
150  Opacity = 0,
154  Blend = 1,
158  Add = 2,
162  Sub = 3,
166  Mul = 4,
167 };
signed int int32_t

◆ BillboardType

Enumerator
Billboard 
YAxisFixed 
Fixed 
RotatedBillboard 

Definition at line 191 of file Effekseer.h.

◆ ColorMode

Enumerator
COLOR_MODE_RGBA 
COLOR_MODE_HSVA 
COLOR_MODE_DWORD 

Definition at line 991 of file Effekseer.h.

◆ ColorSpaceType

Enumerator
Gamma 
Linear 

Definition at line 531 of file Effekseer.h.

◆ CoordinateSystem

Enumerator
LH 
RH 

Definition at line 199 of file Effekseer.h.

199  : int32_t
200 {
201  LH,
202  RH,
203 };
signed int int32_t

◆ CullingShape

Enumerator
NoneShape 
Sphere 

Definition at line 205 of file Effekseer.h.

205  : int32_t
206 {
207  NoneShape = 0,
208  Sphere = 1,
209 };
signed int int32_t

◆ CullingType

Enumerator
Front 
Back 
Double 

Definition at line 181 of file Effekseer.h.

181  : int32_t
182 {
183  Front = 0,
184  Back = 1,
185  Double = 2,
186 };
signed int int32_t

◆ MaterialFileType

Enumerator
Code 
Compiled 

Definition at line 218 of file Effekseer.h.

◆ ReloadingThreadType

A thread where reload function is called.

Enumerator
Main 
Render 

Definition at line 253 of file Effekseer.h.

◆ RendererMaterialType

material type

Enumerator
Default 
BackDistortion 
Lighting 
File 

Definition at line 562 of file Effekseer.h.

◆ RenderMode

Enumerator
Normal 
Wireframe 

Definition at line 242 of file Effekseer.h.

242  : int32_t
243 {
244  Normal, // 通常描画
245  Wireframe, // ワイヤーフレーム描画
246 };
signed int int32_t

◆ ShadingModelType

Enumerator
Lit 
Unlit 

Definition at line 553 of file Effekseer.h.

◆ TextureFilterType

Enumerator
Nearest 
Linear 

Definition at line 169 of file Effekseer.h.

◆ TextureFormatType

Enumerator
ABGR8 
BC1 
BC2 
BC3 

Definition at line 224 of file Effekseer.h.

◆ TextureType

Enumerator
Color 
Normal 
Distortion 

Definition at line 211 of file Effekseer.h.

◆ TextureWrapType

Enumerator
Repeat 
Clamp 

Definition at line 175 of file Effekseer.h.

175  : int32_t
176 {
177  Repeat = 0,
178  Clamp = 1,
179 };
signed int int32_t
T Clamp(T t, U max_, V min_)
範囲内値取得
Definition: Effekseer.h:292

◆ ZSortType

Enumerator
None 
NormalOrder 
ReverseOrder 

Definition at line 232 of file Effekseer.h.

Function Documentation

◆ Clamp()

template<typename T , typename U , typename V >
T Effekseer::Clamp ( t,
max_,
min_ 
)

範囲内値取得

Definition at line 292 of file Effekseer.h.

293 {
294  if( t > (T)max_ )
295  {
296  t = (T)max_;
297  }
298 
299  if( t < (T)min_ )
300  {
301  t = (T)min_;
302  }
303 
304  return t;
305 }
GLdouble GLdouble t
Definition: SDL_opengl.h:2071
const T & min_(const T &a, const T &b)
returns minimum of two values. Own implementation to get rid of the STL (VS6 problems)
Definition: irrMath.h:124
const T & max_(const T &a, const T &b)
returns maximum of two values. Own implementation to get rid of the STL (VS6 problems)
Definition: irrMath.h:138

◆ ConvertUtf16ToUtf8()

int32_t Effekseer::ConvertUtf16ToUtf8 ( int8_t dst,
int32_t  dst_size,
const int16_t src 
)
inline

文字コードを変換する。(UTF16 -> UTF8)

Parameters
dst[out] 出力配列の先頭ポインタ
dst_size[in] 出力配列の長さ
src[in] 入力配列の先頭ポインタ
Returns
文字数

Definition at line 317 of file Effekseer.h.

318 {
319  int32_t cnt = 0;
320  const int16_t* wp = src;
321  int8_t* cp = dst;
322 
323  if (dst_size == 0) return 0;
324 
325  dst_size -= 3;
326 
327  for (cnt = 0; cnt < dst_size; )
328  {
329  int16_t wc = *wp++;
330  if (wc == 0)
331  {
332  break;
333  }
334  if ((wc & ~0x7f) == 0)
335  {
336  *cp++ = wc & 0x7f;
337  cnt += 1;
338  } else if ((wc & ~0x7ff) == 0)
339  {
340  *cp++ = ((wc >> 6) & 0x1f) | 0xc0;
341  *cp++ = ((wc) & 0x3f) | 0x80;
342  cnt += 2;
343  } else {
344  *cp++ = ((wc >> 12) & 0xf) | 0xe0;
345  *cp++ = ((wc >> 6) & 0x3f) | 0x80;
346  *cp++ = ((wc) & 0x3f) | 0x80;
347  cnt += 3;
348  }
349  }
350  *cp = '\0';
351  return cnt;
352 }
GLenum GLenum dst
signed int int32_t
signed short int16_t
signed char int8_t
GLenum src

◆ ConvertUtf8ToUtf16()

int32_t Effekseer::ConvertUtf8ToUtf16 ( int16_t dst,
int32_t  dst_size,
const int8_t src 
)
inline

文字コードを変換する。(UTF8 -> UTF16)

Parameters
dst[out] 出力配列の先頭ポインタ
dst_size[in] 出力配列の長さ
src[in] 入力配列の先頭ポインタ
Returns
文字数

Definition at line 361 of file Effekseer.h.

362 {
363  int32_t i, code;
364  int8_t c0, c1, c2;
365 
366  if (dst_size == 0) return 0;
367 
368  dst_size -= 1;
369 
370  for (i = 0; i < dst_size; i++)
371  {
372  int16_t wc;
373 
374  c0 = *src++;
375  if (c0 == '\0')
376  {
377  break;
378  }
379  // UTF8からUTF16に変換
380  code = (uint8_t)c0 >> 4;
381  if (code <= 7)
382  {
383  // 8bit文字
384  wc = c0;
385  }
386  else if (code >= 12 && code <= 13)
387  {
388  // 16bit文字
389  c1 = *src++;
390  wc = ((c0 & 0x1F) << 6) | (c1 & 0x3F);
391  }
392  else if (code == 14)
393  {
394  // 24bit文字
395  c1 = *src++;
396  c2 = *src++;
397  wc = ((c0 & 0x0F) << 12) | ((c1 & 0x3F) << 6) | (c2 & 0x3F);
398  }
399  else
400  {
401  continue;
402  }
403  dst[i] = wc;
404  }
405  dst[i] = 0;
406  return i;
407 }
GLenum GLenum dst
signed int int32_t
signed short int16_t
unsigned char uint8_t
signed char int8_t
GLenum src

◆ CreateUniqueReference()

template<typename T >
std::unique_ptr<T, ReferenceDeleter<T> > Effekseer::CreateUniqueReference ( T *  ptr,
bool  addRef = false 
)
inline

Definition at line 454 of file Effekseer.h.

455 {
456  if (ptr == nullptr)
457  return std::unique_ptr<T, ReferenceDeleter<T>>(nullptr);
458 
459  if (addRef)
460  {
461  ptr->AddRef();
462  }
463 
464  return std::unique_ptr<T, ReferenceDeleter<T>>(ptr);
465 }

◆ GetAlignedFreeFunc()

AlignedFreeFunc Effekseer::GetAlignedFreeFunc ( )

get a deallocator

◆ GetAlignedMallocFunc()

AlignedMallocFunc Effekseer::GetAlignedMallocFunc ( )

get an allocator

◆ GetFreeFunc()

FreeFunc Effekseer::GetFreeFunc ( )

get a deallocator

◆ GetMallocFunc()

MallocFunc Effekseer::GetMallocFunc ( )

get an allocator

◆ Max()

template<typename T , typename U >
T Effekseer::Max ( t,
u 
)

最大値取得

Definition at line 266 of file Effekseer.h.

267 {
268  if( t > (T)u )
269  {
270  return t;
271  }
272  return u;
273 }
GLdouble GLdouble t
Definition: SDL_opengl.h:2071

◆ Min()

template<typename T , typename U >
T Effekseer::Min ( t,
u 
)

最小値取得

Definition at line 279 of file Effekseer.h.

280 {
281  if( t < (T)u )
282  {
283  return t;
284  }
285  return u;
286 }
GLdouble GLdouble t
Definition: SDL_opengl.h:2071

◆ operator!=()

template<class T , class U >
bool Effekseer::operator!= ( const CustomAllocator< T > &  ,
const CustomAllocator< U > &   
)

Definition at line 790 of file Effekseer.h.

790 { return false; }

◆ operator==()

template<class T , class U >
bool Effekseer::operator== ( const CustomAllocator< T > &  ,
const CustomAllocator< U > &   
)

Definition at line 788 of file Effekseer.h.

788 { return true; }

◆ SetAlignedFreeFunc()

void Effekseer::SetAlignedFreeFunc ( AlignedFreeFunc  func)

specify a deallocator

◆ SetAlignedMallocFunc()

void Effekseer::SetAlignedMallocFunc ( AlignedMallocFunc  func)

specify an allocator

◆ SetFreeFunc()

void Effekseer::SetFreeFunc ( FreeFunc  func)

specify a deallocator

◆ SetMallocFunc()

void Effekseer::SetMallocFunc ( MallocFunc  func)

specify an allocator

◆ void()

typedef Effekseer::void ( EFK_STDCALL EffectInstanceRemovingCallback)

エフェクトのインスタンス破棄時のコールバックイベント

Parameters
manager[in] 所属しているマネージャー
handle[in] エフェクトのインスタンスのハンドル
isRemovingManager[in] マネージャーを破棄したときにエフェクトのインスタンスを破棄しているか

Variable Documentation

◆ LocalFieldSlotMax

const int32_t Effekseer::LocalFieldSlotMax = 4

Definition at line 137 of file Effekseer.h.

◆ TextureSlotMax

const int32_t Effekseer::TextureSlotMax = 8

the maximum number of texture slot including textures system specified

Definition at line 135 of file Effekseer.h.

◆ UserTextureSlotMax

const int32_t Effekseer::UserTextureSlotMax = 6

the maximum number of texture slot which can be specified by an user

Definition at line 132 of file Effekseer.h.