MCPcopy Create free account
hub / github.com/OGSR/OGSR-Engine / Instance_Create

Method Instance_Create

ogsr_engine/Layers/xrRender/ModelPool.cpp:25–78  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

23}
24
25dxRender_Visual* CModelPool::Instance_Create(u32 type)
26{
27 dxRender_Visual* V = nullptr;
28
29 // Check types
30 switch (type)
31 {
32 case MT_NORMAL: // our base visual
33 V = xr_new<Fvisual>();
34 break;
35 case MT_HIERRARHY:
36 V = xr_new<FHierrarhyVisual>();
37 break;
38 case MT_PROGRESSIVE: // dynamic-resolution visual
39 V = xr_new<FProgressive>();
40 break;
41 case MT_SKELETON_ANIM:
42 V = xr_new<CKinematicsAnimated>();
43 break;
44 case MT_SKELETON_RIGID:
45 V = xr_new<CKinematics>();
46 break;
47 case MT_SKELETON_GEOMDEF_PM:
48 V = xr_new<CSkeletonX_PM>();
49 break;
50 case MT_SKELETON_GEOMDEF_ST:
51 V = xr_new<CSkeletonX_ST>();
52 break;
53 case MT_TREE_ST:
54 V = xr_new<FTreeVisual_ST>();
55 break;
56 case MT_TREE_PM:
57 V = xr_new<FTreeVisual_PM>();
58 break;
59 case MT_PARTICLE_EFFECT:
60 V = xr_new<PS::CParticleEffect>();
61 break;
62 case MT_PARTICLE_GROUP:
63 V = xr_new<PS::CParticleGroup>();
64 break;
65 case MT_LOD:
66 V = xr_new<FLOD>();
67 break;
68
69 default:
70 FATAL("Unknown visual type");
71 break;
72 }
73
74 R_ASSERT(V);
75 V->Type = type;
76
77 return V;
78}
79
80dxRender_Visual* CModelPool::Instance_Duplicate(dxRender_Visual* V)
81{

Callers 1

LoadVisualsMethod · 0.80

Calls

no outgoing calls

Tested by

no test coverage detected