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
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
|
<html>
<head>
<title>NVIDIA(R) Blast(R) SDK 1.1 Source Reference: NvBlastExtProgramParams Struct Reference</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<LINK HREF="NVIDIA.css" REL="stylesheet" TYPE="text/css">
</head>
<body bgcolor="#FFFFFF">
<div id="header">
<hr class="first">
<img alt="" src="blast_logo.png">
<br>
<center>
<a class="qindex" href="main.html">Main Page</a>
<!-- <a class="qindex" href="hierarchy.html">Class Hierarchy</a> //-->
<a class="qindex" href="annotated.html">Class List</a>
<a class="qindex" href="functions.html">Class Members</a>
</center>
<hr class="second">
</div>
<!-- Generated by Doxygen 1.5.8 -->
<div class="navigation" id="top">
<div class="tabs">
<ul>
<li><a href="main.html"><span>Main Page</span></a></li>
<li><a href="pages.html"><span>User's Guide</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div class="tabs">
<ul>
<li><a href="annotated.html"><span>Class List</span></a></li>
<li><a href="classes.html"><span>Class Index</span></a></li>
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class Members</span></a></li>
</ul>
</div>
</div>
<div class="contents">
<h1>NvBlastExtProgramParams Struct Reference</h1><!-- doxytag: class="NvBlastExtProgramParams" --><code>#include <<a class="el" href="_nv_blast_ext_damage_shaders_8h-source.html">NvBlastExtDamageShaders.h</a>></code>
<p>
<p>
<a href="struct_nv_blast_ext_program_params-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_nv_blast_ext_program_params.html#a445f80ac32f117dc11c1271e538c92c">NvBlastExtProgramParams</a> (const void *desc, const void *material_=nullptr, <a class="el" href="class_nv_blast_ext_damage_accelerator.html">NvBlastExtDamageAccelerator</a> *accelerator_=nullptr)</td></tr>
<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="class_nv_blast_ext_damage_accelerator.html">NvBlastExtDamageAccelerator</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_nv_blast_ext_program_params.html#428b6b1ea36416bd76310b42a67192c5">accelerator</a></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const void * </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_nv_blast_ext_program_params.html#3efc46ea5212a5c4416bd028e3f907bc">damageDesc</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">array of damage descriptions <a href="#3efc46ea5212a5c4416bd028e3f907bc"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const void * </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_nv_blast_ext_program_params.html#6cc35cdab120293adfdc07f51dbf2b12">material</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">pointer to material <a href="#6cc35cdab120293adfdc07f51dbf2b12"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Damage program params.<p>
Custom user params to be passed in shader functions. This structure hints recommended parameters layout, but it doesn't required to be this way.<p>
The idea of this 'hint' is that damage parameters are basically 2 entities: material + damage description. 1. Material is something that describes an actor properties (e.g. mass, stiffness, fragility) which are not expected to be changed often. 2. Damage description is something that describes particular damage event (e.g. position, radius and force of explosion).<p>
Also this damage program hints that there could be more than one damage event happening and processed per one shader call (for efficiency reasons). So different damage descriptions can be stacked and passed in one shader call (while material is kept the same obviously). <hr><h2>Constructor & Destructor Documentation</h2>
<a class="anchor" name="a445f80ac32f117dc11c1271e538c92c"></a><!-- doxytag: member="NvBlastExtProgramParams::NvBlastExtProgramParams" ref="a445f80ac32f117dc11c1271e538c92c" args="(const void *desc, const void *material_=nullptr, NvBlastExtDamageAccelerator *accelerator_=nullptr)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">NvBlastExtProgramParams::NvBlastExtProgramParams </td>
<td>(</td>
<td class="paramtype">const void * </td>
<td class="paramname"> <em>desc</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const void * </td>
<td class="paramname"> <em>material_</em> = <code>nullptr</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="class_nv_blast_ext_damage_accelerator.html">NvBlastExtDamageAccelerator</a> * </td>
<td class="paramname"> <em>accelerator_</em> = <code>nullptr</code></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td><code> [inline]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="428b6b1ea36416bd76310b42a67192c5"></a><!-- doxytag: member="NvBlastExtProgramParams::accelerator" ref="428b6b1ea36416bd76310b42a67192c5" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="class_nv_blast_ext_damage_accelerator.html">NvBlastExtDamageAccelerator</a>* <a class="el" href="struct_nv_blast_ext_program_params.html#428b6b1ea36416bd76310b42a67192c5">NvBlastExtProgramParams::accelerator</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="3efc46ea5212a5c4416bd028e3f907bc"></a><!-- doxytag: member="NvBlastExtProgramParams::damageDesc" ref="3efc46ea5212a5c4416bd028e3f907bc" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const void* <a class="el" href="struct_nv_blast_ext_program_params.html#3efc46ea5212a5c4416bd028e3f907bc">NvBlastExtProgramParams::damageDesc</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
array of damage descriptions
<p>
</div>
</div><p>
<a class="anchor" name="6cc35cdab120293adfdc07f51dbf2b12"></a><!-- doxytag: member="NvBlastExtProgramParams::material" ref="6cc35cdab120293adfdc07f51dbf2b12" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const void* <a class="el" href="struct_nv_blast_ext_program_params.html#6cc35cdab120293adfdc07f51dbf2b12">NvBlastExtProgramParams::material</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
pointer to material
<p>
</div>
</div><p>
<hr>The documentation for this struct was generated from the following file:<ul>
<li>sdk/extensions/shaders/include/<a class="el" href="_nv_blast_ext_damage_shaders_8h-source.html">NvBlastExtDamageShaders.h</a></ul>
</div>
<!-- start footer part -->
<div class="footer">
Copyright © 2015-2017 NVIDIA Corporation, 2701 San Tomas Expressway, Santa Clara, CA 95050 U.S.A. All rights reserved. <a href="http://www.nvidia.com ">www.nvidia.com</a>
</div>
</body>
</html>
|