summaryrefslogtreecommitdiff
path: root/Runtime/Dynamics/PhysicsModule.jam
blob: 15b2147b66f01bdcc56f1156e85355fd37dd0a6d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
rule PhysicsModule_ReportCpp
{
	local files = 
		PhysicsModule.jam
		BoxCollider.cpp
		BoxCollider.h
		CapsuleCollider.cpp
		CapsuleCollider.h
		CharacterController.cpp
		CharacterController.h
		CharacterJoint.cpp
		CharacterJoint.h
		Cloth.cpp
		Cloth.h
		Collider.cpp
		Collider.h
		ConfigurableJoint.cpp
		ConfigurableJoint.h
		ConstantForce.cpp
		ConstantForce.h
		DeformableMesh.cpp
		DeformableMesh.h
		FixedJoint.cpp
		FixedJoint.h
		HingeJoint.cpp
		HingeJoint.h
		Joint.cpp
		Joint.h
		JointDescriptions.h
		Joints.h
		MeshCollider.cpp
		MeshCollider.h
		PhysicMaterial.cpp
		PhysicMaterial.h
		PhysicsManager.cpp
		PhysicsManager.h
		PrimitiveCollider.h
		RaycastCollider.cpp
		RaycastCollider.h
		RaycastHit.cpp
		RaycastHit.h
		Rigidbody.cpp
		Rigidbody.h
		SkinnedCloth.cpp
		SkinnedCloth.h
		SphereCollider.cpp
		SphereCollider.h
		SpringJoint.cpp
		SpringJoint.h
		WheelCollider.cpp
		WheelCollider.h
		PhysXRaycast.cpp
		PhysXRaycast.h
		TerrainCollider.cpp
		TerrainCollider.h
		ClothRenderer.cpp
		ClothRenderer.h
		PhysicsModuleRegistration.cpp
		PhysicsModule.cpp
		NxMeshCreation.cpp
		NxMeshCreation.h
		ExtractDataFromMesh.cpp
		ExtractDataFromMesh.h
		nxmemorystream.cpp
		nxmemorystream.h
	;

	return Runtime/Dynamics/$(files) ;
}

rule PhysicsModule_ReportTxt
{
	return Runtime/Dynamics/ScriptBindings/NewDynamics.txt ;
}

rule PhysicsModule_ReportIncludes
{
	return
		Runtime/Dynamics
		External/PhysX/builds/SDKs/Foundation/include
		External/PhysX/builds/SDKs/Physics/include
		External/PhysX/builds/SDKs/PhysXLoader/include
	;
}

rule PhysicsModule_ReportLibraries
{
	local libs = ;
	if $(target) in MacEditor MacStandalonePlayer
	{
		libs +=
			$(TOP)/External/PhysX/builds/SDKs/lib/osxstatic/novodex_cooking.a 
			$(TOP)/External/PhysX/builds/SDKs/lib/osxstatic/novodex_release.a 
		;
	}
	return $(libs) ;
}

rule PhysicsModule_Init
{
	OverrideModule Physics : GetModule_Cpp : byOverridingWithMethod : PhysicsModule_ReportCpp ;
	OverrideModule Physics : GetModule_Txt : byOverridingWithMethod : PhysicsModule_ReportTxt ;
	OverrideModule Physics : GetModule_Inc : byOverridingWithMethod : PhysicsModule_ReportIncludes ;
	OverrideModule Physics : GetModule_Lib : byChainingWithMethod : PhysicsModule_ReportLibraries ;
}


#RegisterModule Physics ;