arsa  2.7
Classes | Namespaces | Macros | Typedefs | Enumerations | Functions | Variables
Effekseer.h File Reference
#include <stdio.h>
#include <string.h>
#include <atomic>
#include <stdint.h>
#include <climits>
#include <vector>
#include <cfloat>
#include <array>
#include <memory>
#include <unistd.h>
#include <pthread.h>
#include <sys/time.h>
#include <list>
#include <map>
#include <new>
#include <set>

Go to the source code of this file.

Classes

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

Namespaces

 Effekseer
 

Macros

#define EFK_STDCALL
 
#define ES_SAFE_ADDREF(val)   if ( (val) != NULL ) { (val)->AddRef(); }
 
#define ES_SAFE_RELEASE(val)   if ( (val) != NULL ) { (val)->Release(); (val) = NULL; }
 
#define ES_SAFE_DELETE(val)   if ( (val) != NULL ) { delete (val); (val) = NULL; }
 
#define ES_SAFE_DELETE_ARRAY(val)   if ( (val) != NULL ) { delete [] (val); (val) = NULL; }
 
#define EFK_ASSERT(x)   assert(x)
 
#define __EFFEKSEER_CUSTOM_ALLOCATOR_H__
 
#define __EFFEKSEER_VECTOR2D_H__
 
#define __EFFEKSEER_VECTOR3D_H__
 
#define __EFFEKSEER_COLOR_H__
 
#define __EFFEKSEER_RECTF_H__
 
#define __EFFEKSEER_MATRIX43_H__
 
#define __EFFEKSEER_MATRIX44_H__
 
#define __EFFEKSEER_FILE_H__
 
#define __EFFEKSEER_DEFAULT_FILE_H__
 
#define __EFFEKSEER_EFFECT_H__
 
#define __EFFEKSEER_MANAGER_H__
 
#define __EFFEKSEER_EFFECTLOADER_H__
 
#define __EFFEKSEER_TEXTURELOADER_H__
 
#define __EFFEKSEER_MODELLOADER_H__
 
#define __EFFEKSEER_MATERIALLOADER_H__
 
#define __EFFEKSEER_MODEL_H__
 
#define __EFFEKSEER_SOUND_PLAYER_H__
 
#define __EFFEKSEER_SOUNDLOADER_H__
 
#define __EFFEKSEER_LOADER_H__
 
#define __EFFEKSEER_SERVER_H__
 
#define __EFFEKSEER_CLIENT_H__
 

Typedefs

typedef char16_t EFK_CHAR
 
typedef int Effekseer::Handle
 
typedef void *(EFK_STDCALLEffekseer::MallocFunc) (unsigned int size)
 Memory Allocation function. More...
 
typedef void(EFK_STDCALLEffekseer::FreeFunc) (void *p, unsigned int size)
 Memory Free function. More...
 
typedef void *(EFK_STDCALLEffekseer::AlignedMallocFunc) (unsigned int size, unsigned int alignment)
 AlignedMemory Allocation function. More...
 
typedef void(EFK_STDCALLEffekseer::AlignedFreeFunc) (void *p, unsigned int size)
 AlignedMemory Free function. More...
 
typedef int(EFK_STDCALLEffekseer::RandFunc) (void)
 Random Function. More...
 
typedef Handle Effekseer::handle
 
typedef Handle bool Effekseer::isRemovingManager
 
template<class T >
using Effekseer::CustomVector = std::vector< T, CustomAllocator< T > >
 
template<class T >
using Effekseer::CustomAlignedVector = std::vector< T, CustomAlignedAllocator< T > >
 
template<class T >
using Effekseer::CustomList = std::list< T, CustomAllocator< T > >
 
template<class T >
using Effekseer::CustomSet = std::set< T, std::less< T >, CustomAllocator< T > >
 
template<class T , class U >
using Effekseer::CustomMap = std::map< T, U, std::less< T >, CustomAllocator< std::pair< const T, U > >>
 
typedef voidEffekseer::SoundHandle
 
typedef voidEffekseer::SoundTag
 

Enumerations

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

Functions

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

Variables

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

Macro Definition Documentation

◆ __EFFEKSEER_CLIENT_H__

#define __EFFEKSEER_CLIENT_H__

Definition at line 4006 of file Effekseer.h.

◆ __EFFEKSEER_COLOR_H__

#define __EFFEKSEER_COLOR_H__

Definition at line 977 of file Effekseer.h.

◆ __EFFEKSEER_CUSTOM_ALLOCATOR_H__

#define __EFFEKSEER_CUSTOM_ALLOCATOR_H__

Definition at line 676 of file Effekseer.h.

◆ __EFFEKSEER_DEFAULT_FILE_H__

#define __EFFEKSEER_DEFAULT_FILE_H__

Definition at line 1511 of file Effekseer.h.

◆ __EFFEKSEER_EFFECT_H__

#define __EFFEKSEER_EFFECT_H__

Definition at line 1589 of file Effekseer.h.

◆ __EFFEKSEER_EFFECTLOADER_H__

#define __EFFEKSEER_EFFECTLOADER_H__

Definition at line 2934 of file Effekseer.h.

◆ __EFFEKSEER_FILE_H__

#define __EFFEKSEER_FILE_H__

Definition at line 1422 of file Effekseer.h.

◆ __EFFEKSEER_LOADER_H__

#define __EFFEKSEER_LOADER_H__

Definition at line 3710 of file Effekseer.h.

◆ __EFFEKSEER_MANAGER_H__

#define __EFFEKSEER_MANAGER_H__

Definition at line 2235 of file Effekseer.h.

◆ __EFFEKSEER_MATERIALLOADER_H__

#define __EFFEKSEER_MATERIALLOADER_H__

Definition at line 3150 of file Effekseer.h.

◆ __EFFEKSEER_MATRIX43_H__

#define __EFFEKSEER_MATRIX43_H__

Definition at line 1104 of file Effekseer.h.

◆ __EFFEKSEER_MATRIX44_H__

#define __EFFEKSEER_MATRIX44_H__

Definition at line 1273 of file Effekseer.h.

◆ __EFFEKSEER_MODEL_H__

#define __EFFEKSEER_MODEL_H__

Definition at line 3226 of file Effekseer.h.

◆ __EFFEKSEER_MODELLOADER_H__

#define __EFFEKSEER_MODELLOADER_H__

Definition at line 3075 of file Effekseer.h.

◆ __EFFEKSEER_RECTF_H__

#define __EFFEKSEER_RECTF_H__

Definition at line 1056 of file Effekseer.h.

◆ __EFFEKSEER_SERVER_H__

#define __EFFEKSEER_SERVER_H__

Definition at line 3886 of file Effekseer.h.

◆ __EFFEKSEER_SOUND_PLAYER_H__

#define __EFFEKSEER_SOUND_PLAYER_H__

Definition at line 3571 of file Effekseer.h.

◆ __EFFEKSEER_SOUNDLOADER_H__

#define __EFFEKSEER_SOUNDLOADER_H__

Definition at line 3635 of file Effekseer.h.

◆ __EFFEKSEER_TEXTURELOADER_H__

#define __EFFEKSEER_TEXTURELOADER_H__

Definition at line 2996 of file Effekseer.h.

◆ __EFFEKSEER_VECTOR2D_H__

#define __EFFEKSEER_VECTOR2D_H__

Definition at line 802 of file Effekseer.h.

◆ __EFFEKSEER_VECTOR3D_H__

#define __EFFEKSEER_VECTOR3D_H__

Definition at line 854 of file Effekseer.h.

◆ EFK_ASSERT

#define EFK_ASSERT (   x)    assert(x)

Definition at line 129 of file Effekseer.h.

◆ EFK_STDCALL

#define EFK_STDCALL

Definition at line 24 of file Effekseer.h.

◆ ES_SAFE_ADDREF

#define ES_SAFE_ADDREF (   val)    if ( (val) != NULL ) { (val)->AddRef(); }

Definition at line 124 of file Effekseer.h.

◆ ES_SAFE_DELETE

#define ES_SAFE_DELETE (   val)    if ( (val) != NULL ) { delete (val); (val) = NULL; }

Definition at line 126 of file Effekseer.h.

◆ ES_SAFE_DELETE_ARRAY

#define ES_SAFE_DELETE_ARRAY (   val)    if ( (val) != NULL ) { delete [] (val); (val) = NULL; }

Definition at line 127 of file Effekseer.h.

◆ ES_SAFE_RELEASE

#define ES_SAFE_RELEASE (   val)    if ( (val) != NULL ) { (val)->Release(); (val) = NULL; }

Definition at line 125 of file Effekseer.h.

Typedef Documentation

◆ EFK_CHAR

typedef char16_t EFK_CHAR

Definition at line 50 of file Effekseer.h.