#include "OPC_IceHook.h"#include "OPC_Settings.h"#include "OPC_Common.h"#include "OPC_MeshInterface.h"#include "OPC_TreeBuilders.h"#include "OPC_AABBTree.h"#include "OPC_OptimizedTree.h"#include "OPC_BaseModel.h"#include "OPC_Model.h"#include "OPC_HybridModel.h"#include "OPC_Collider.h"#include "OPC_VolumeCollider.h"#include "OPC_TreeCollider.h"#include "OPC_RayCollider.h"#include "OPC_SphereCollider.h"#include "OPC_PlanesCollider.h"#include "OPC_Picking.h"

Go to the source code of this file.
Namespaces | |
| hrp | |
| Opcode | |
Macros | |
| #define | __int64 long long int |
| #define | __stdcall /* */ |
| #define | OPCODE_API |
Typedefs | |
| typedef void(* | Opcode::CullingCallback) (udword nb_primitives, udword *node_primitives, BOOL need_clipping, void *user_data) |
| typedef CullMode(* | Opcode::CullModeCallback) (udword triangle_index, void *user_data) |
| typedef bool(* | Opcode::GenericWalkingCallback) (const void *current, void *user_data) |
| typedef void(* | Opcode::HitCallback) (const CollisionFace &hit, void *user_data) |
| typedef bool(* | Opcode::WalkingCallback) (const AABBTreeNode *current, udword depth, void *user_data) |
Enumerations | |
| enum | Opcode::CollisionFlag { Opcode::OPC_FIRST_CONTACT = (1<<0), Opcode::OPC_TEMPORAL_COHERENCE = (1<<1), Opcode::OPC_CONTACT = (1<<2), Opcode::OPC_TEMPORAL_HIT = (1<<3), Opcode::OPC_NO_PRIMITIVE_TESTS = (1<<4), Opcode::OPC_CONTACT_FOUND = OPC_FIRST_CONTACT | OPC_CONTACT, Opcode::OPC_TEMPORAL_CONTACT = OPC_TEMPORAL_HIT | OPC_CONTACT, Opcode::OPC_FORCE_DWORD = 0x7fffffff } |
| enum | Opcode::CullMode { Opcode::CULLMODE_NONE = 0, Opcode::CULLMODE_CW = 1, Opcode::CULLMODE_CCW = 2 } |
| enum | Opcode::ModelFlag { Opcode::OPC_QUANTIZED = (1<<0), Opcode::OPC_NO_LEAF = (1<<1), Opcode::OPC_SINGLE_NODE = (1<<2) } |
| enum | Opcode::SplittingRules { Opcode::SPLIT_LARGEST_AXIS = (1<<0), Opcode::SPLIT_SPLATTER_POINTS = (1<<1), Opcode::SPLIT_BEST_AXIS = (1<<2), Opcode::SPLIT_BALANCED = (1<<3), Opcode::SPLIT_FIFTY = (1<<4), Opcode::SPLIT_GEOM_CENTER = (1<<5), Opcode::SPLIT_FORCE_DWORD = 0x7fffffff } |
| Tree splitting rules. More... | |
Functions | |
| FUNCTION OPCODE_API bool | Opcode::CloseOpcode () |
| FUNCTION OPCODE_API bool | Opcode::InitOpcode () |
| OPCODE_API bool | Opcode::Picking (CollisionFace &picked_face, const Ray &world_ray, const Model &model, const Matrix4x4 *world, float min_dist, float max_dist, const Point &view_point, CullModeCallback callback, void *user_data) |
| OPCODE_API bool | Opcode::SetupAllHits (RayCollider &collider, CollisionFaces &contacts) |
| OPCODE_API bool | Opcode::SetupClosestHit (RayCollider &collider, CollisionFace &closest_contact) |
| OPCODE_API bool | Opcode::SetupInOutTest (RayCollider &collider) |
| OPCODE_API bool | Opcode::SetupShadowFeeler (RayCollider &collider) |
| inline_ void | Opcode::TransformPoint (Point &dest, const Point &source, const Matrix3x3 &rot, const Point &trans) |
| Quickly rotates & translates a vector. More... | |