Logo
公開型 | 公開メンバ関数 | 静的公開メンバ関数 | 公開変数類 | 全メンバ一覧
Yukar.Common.Resource.CollisionInfo クラス

コリジョンを管理するクラス [詳解]

Yukar.Common.Resource.CollisionInfo の継承関係図
Yukar.Common.Rom.IChunk

公開型

enum Shape {
Box , Sphere , Capsule , Mesh ,
Vehicle
}
enum CollisionType {
MAP = 0x1 , MAP_SLOPE = 0x2 , MAP_OBJECT = 0x4 , MAP_WATER = 0x8 ,
MAP_ALL = 0xF , HERO = 0x10 , MONSTER = 0x20 , EVENT = 0x40 ,
EVENT_ALL = 0xF0 , HERO_BULLET = 0x100 , MONSTER_BULLET = 0x200 , BULLET_ALL = 0x300 ,
HERO_SUB = 0x1000 , MONSTER_SUB = 0x2000 , EVENT_SUB = 0x4000 , DYNAMICBODY = 0x8000
}
enum Type {
Collision , RigidBody , Kinematic , Trigger ,
Control
}
enum CapsuleAxis { X , Y , Z }

公開メンバ関数

ushort getMaskFromName (ushort defaultMask=0)
bool IsError (bool inCheckDispOnly)
void save (BinaryWriter writer)
void load (BinaryReader reader)
SharpKmyMath.Matrix4 getOffsetMatrix (SharpKmyMath.Vector3 positionScale)
SharpKmyPhysics.Collider createCollider (SharpKmyPhysics.PhysicsBase physics, SharpKmyMath.Matrix4 mtx, SharpKmyMath.Vector3 scale, ushort group, ushort mask)
void createSixDofConstraint (SharpKmyPhysics.PhysicsObject obj, SharpKmyMath.Vector3 scl)
SharpKmyPhysics.RigidBody createRigidBody (SharpKmyPhysics.PhysicsBase physics, SharpKmyMath.Matrix4 mtx, SharpKmyMath.Vector3 scale, float mass, bool kinematic, ushort group, ushort mask)
void save (BinaryWriter writer)
void load (BinaryReader reader)

静的公開メンバ関数

static SharpKmyPhysics.Collider createCollider (SharpKmyPhysics.PhysicsBase physics, SharpKmyMath.Matrix4 mtx, SharpKmyMath.Vector3 scale, ushort group, ushort mask, CollisionInfo.Shape shape, Vector3 size, ResourceHolder mesh, CollisionInfo.CapsuleAxis axis)
static SharpKmyPhysics.RigidBody createRigidBody (SharpKmyPhysics.PhysicsBase physics, SharpKmyMath.Matrix4 mtx, SharpKmyMath.Vector3 scale, float mass, bool kinematic, ushort group, ushort mask, CollisionInfo.Shape shape, Vector3 size, ResourceHolder mesh, CollisionInfo.CapsuleAxis axis)

公開変数類

string name = "collision"
string attachnode = "_root"
Type type
Shape shape = Shape.Box
CapsuleAxis axis = CapsuleAxis.Y
ResourceHolder mesh = new ResourceHolder()
Vector3 position = Vector3.Zero
Vector3 rotate = Vector3.Zero
Vector3 size = Vector3.One
bool accessory = false
bool gravity = true
float mass = 1
float friction = 1
float restitution = 1
float linearDamping = 0.2f
float angularDamping = 0.2f
bool[] positionFreeze = new bool[3] { false, false, false }
bool[] angleFreeze = new bool[3] { false, false, false }
float positionDrag = 1
float angleDrag = 1
bool useSixDof = false
string parentname = ""
Vector3 upperSlideLimit = Vector3.Zero
Vector3 lowerSlideLimit = Vector3.Zero
Vector3 lowerAngularLimit = new Vector3(-180)
Vector3 upperAngularLimit = new Vector3(+180)
bool[] spring = new bool[6] { false, false, false, false, false, false }
float[] stiffness = new float[6] { 0, 0, 0, 0, 0, 0 }
float[] damping = new float[6] { 0.5f, 0.5f, 0.5f, 0.5f, 0.5f, 0.5f }
Vector3 pivot = Vector3.Zero

詳解

コリジョンを管理するクラス

メソッド詳解

load()

void Yukar.Common.Resource.CollisionInfo.load ( BinaryReader reader )

Yukar.Common.Rom.IChunkを実装しています。

save()

void Yukar.Common.Resource.CollisionInfo.save ( BinaryWriter writer )

Yukar.Common.Rom.IChunkを実装しています。


このクラス詳解は次のファイルから抽出されました: