-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathaccelerationstructure_8h_source.html
272 lines (270 loc) · 52.4 KB
/
accelerationstructure_8h_source.html
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
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.13.2"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Nebula: /github/workspace/code/render/coregraphics/accelerationstructure.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="custom.css" rel="stylesheet" type="text/css"/>
<link href="custom_dark_theme.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Nebula
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.13.2 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() { codefold.init(0); });
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(function(){initNavTree('accelerationstructure_8h_source.html',''); initResizable(true); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">accelerationstructure.h</div></div>
</div><!--header-->
<div class="contents">
<a href="accelerationstructure_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span> </div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment">//------------------------------------------------------------------------------</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="comment">//------------------------------------------------------------------------------</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><span class="preprocessor">#include "<a class="code" href="mesh_8h.html">mesh.h</a>"</span></div>
<div class="foldopen" id="foldopen00023" data-start="{" data-end="}">
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"><a class="line" href="namespace_core_graphics.html"> 23</a></span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespace_core_graphics.html">CoreGraphics</a></div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span>{</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> </div>
<div class="foldopen" id="foldopen00026" data-start="{" data-end="};">
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"><a class="line" href="namespace_core_graphics.html#a4920dd5432b0cec56a873e184e72ac8c"> 26</a></span><span class="keyword">enum class</span> <a class="code hl_enumeration" href="namespace_core_graphics.html#a4920dd5432b0cec56a873e184e72ac8c">AccelerationStructureBuildFlags</a></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span>{</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"><a class="line" href="namespace_core_graphics.html#a4920dd5432b0cec56a873e184e72ac8ca620596dd518ae6643c0c70331c285b31"> 28</a></span> <a class="code hl_enumvalue" href="namespace_core_graphics.html#a4920dd5432b0cec56a873e184e72ac8ca620596dd518ae6643c0c70331c285b31">FastBuild</a> = 0x1, <span class="comment">// Create and recreate structure swiftly but suffer worse trace performance</span></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"><a class="line" href="namespace_core_graphics.html#a4920dd5432b0cec56a873e184e72ac8caf2c3f9d191509c43c051a1412ad66f1b"> 29</a></span> <a class="code hl_enumvalue" href="namespace_core_graphics.html#a4920dd5432b0cec56a873e184e72ac8caf2c3f9d191509c43c051a1412ad66f1b">FastTrace</a> = 0x2, <span class="comment">// Vice versa of FastBuild, and is exclusive of it</span></div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"><a class="line" href="namespace_core_graphics.html#a4920dd5432b0cec56a873e184e72ac8ca971fd8cc345d8bd9f92e9f7d88fdf20c"> 30</a></span> <a class="code hl_enumvalue" href="namespace_core_graphics.html#a4920dd5432b0cec56a873e184e72ac8ca971fd8cc345d8bd9f92e9f7d88fdf20c">Dynamic</a> = 0x4, <span class="comment">// Allow updates</span></div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"><a class="line" href="namespace_core_graphics.html#a4920dd5432b0cec56a873e184e72ac8cab1fe2c2a59e883740e7ea87667e44a24"> 31</a></span> <a class="code hl_enumvalue" href="namespace_core_graphics.html#a4920dd5432b0cec56a873e184e72ac8cab1fe2c2a59e883740e7ea87667e44a24">Compact</a> = 0x8, <span class="comment">// Hint to make the structure compact, which can make copys faster</span></div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"><a class="line" href="namespace_core_graphics.html#a4920dd5432b0cec56a873e184e72ac8ca2660064e68655415da2628c2ae2f7592"> 32</a></span> <a class="code hl_enumvalue" href="namespace_core_graphics.html#a4920dd5432b0cec56a873e184e72ac8ca2660064e68655415da2628c2ae2f7592">Small</a> = 0x10, <span class="comment">// Hint to minimize memory spent</span></div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span>};</div>
</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"><a class="line" href="namespace_core_graphics.html#a74c5a2c923a453d3f4e2ef454e06356d"> 34</a></span><a class="code hl_define" href="rtti_8h.html#a758582520416f2c7aff10f0d405854f4">__ImplementEnumBitOperators</a>(<a class="code hl_enumeration" href="namespace_core_graphics.html#a4920dd5432b0cec56a873e184e72ac8c">AccelerationStructureBuildFlags</a>);</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"><a class="line" href="namespace_core_graphics.html#a1912d327ee3f85c58e4352ce68052ab9"> 35</a></span><a class="code hl_define" href="rtti_8h.html#a529fb97e2e1b53fbcedb2da03b166bbe">__ImplementEnumComparisonOperators</a>(<a class="code hl_enumeration" href="namespace_core_graphics.html#a4920dd5432b0cec56a873e184e72ac8c">AccelerationStructureBuildFlags</a>);</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> </div>
<div class="foldopen" id="foldopen00037" data-start="{" data-end="};">
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"><a class="line" href="struct_core_graphics_1_1_blas_create_info.html"> 37</a></span><span class="keyword">struct </span><a class="code hl_struct" href="struct_core_graphics_1_1_blas_create_info.html">BlasCreateInfo</a></div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span>{</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"><a class="line" href="struct_core_graphics_1_1_blas_create_info.html#a117c7a0df89c6de40f8207a2b9c2baf2"> 39</a></span> <a class="code hl_struct" href="struct_core_graphics_1_1_buffer_id.html">CoreGraphics::BufferId</a> <a class="code hl_variable" href="struct_core_graphics_1_1_blas_create_info.html#ab4001ce268d6373e4877b976c1acb646">vbo</a>, <a class="code hl_variable" href="struct_core_graphics_1_1_blas_create_info.html#a117c7a0df89c6de40f8207a2b9c2baf2">ibo</a>;</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"><a class="line" href="struct_core_graphics_1_1_blas_create_info.html#a703eedea49978f0acee749adeb167a90"> 40</a></span> <a class="code hl_enumeration" href="class_core_graphics_1_1_index_type.html#afb3e5ed2f6d4fc5e776edc0efcc0da51">CoreGraphics::IndexType::Code</a> <a class="code hl_variable" href="struct_core_graphics_1_1_blas_create_info.html#a703eedea49978f0acee749adeb167a90">indexType</a>;</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"><a class="line" href="struct_core_graphics_1_1_blas_create_info.html#a958459b54be6dff870852adb3470d280"> 41</a></span> <a class="code hl_enumeration" href="class_core_graphics_1_1_vertex_component.html#a03e2476cc323a97a99cd9201404bd1b0">CoreGraphics::VertexComponent::Format</a> <a class="code hl_variable" href="struct_core_graphics_1_1_blas_create_info.html#a958459b54be6dff870852adb3470d280">positionsFormat</a>;</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"><a class="line" href="struct_core_graphics_1_1_blas_create_info.html#a849ceb4d6b000f781c001015c7b9cfaf"> 42</a></span> <a class="code hl_typedef" href="types_8h.html#abc0f5bc07737e498f287334775dff2b6">uint64</a> <a class="code hl_variable" href="struct_core_graphics_1_1_blas_create_info.html#a849ceb4d6b000f781c001015c7b9cfaf">stride</a>;</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"><a class="line" href="struct_core_graphics_1_1_blas_create_info.html#a6d91c83414a25003b3dd7f55aeecc728"> 43</a></span> <a class="code hl_typedef" href="types_8h.html#abc0f5bc07737e498f287334775dff2b6">uint64</a> <a class="code hl_variable" href="struct_core_graphics_1_1_blas_create_info.html#a4007f8614d65b5d98a524f1e803e627a">vertexOffset</a>, <a class="code hl_variable" href="struct_core_graphics_1_1_blas_create_info.html#a6d91c83414a25003b3dd7f55aeecc728">indexOffset</a>;</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"><a class="line" href="struct_core_graphics_1_1_blas_create_info.html#aa5988029dbd489c366a7d969e4304c57"> 44</a></span> <a class="code hl_class" href="class_core_graphics_1_1_primitive_group.html">CoreGraphics::PrimitiveGroup</a> <a class="code hl_variable" href="struct_core_graphics_1_1_blas_create_info.html#aa5988029dbd489c366a7d969e4304c57">primGroup</a>;</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"><a class="line" href="struct_core_graphics_1_1_blas_create_info.html#ab03e5ee50583a63acd5fde6056f81e98"> 45</a></span> <a class="code hl_enumeration" href="namespace_core_graphics.html#a4920dd5432b0cec56a873e184e72ac8c">AccelerationStructureBuildFlags</a> <a class="code hl_variable" href="struct_core_graphics_1_1_blas_create_info.html#ab03e5ee50583a63acd5fde6056f81e98">flags</a>;</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span>};</div>
</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> </div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"><a class="line" href="struct_core_graphics_1_1_blas_id.html"> 48</a></span><a class="code hl_define" href="ids_2id_8h.html#a49318f0a0216b0fa604408196df3722a">ID_24_8_TYPE</a>(<a class="code hl_struct" href="struct_core_graphics_1_1_blas_id.html">BlasId</a>);</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"><a class="line" href="namespace_core_graphics.html#a061358eeb4bea66046d619b16edf4e76"> 49</a></span><a class="code hl_define" href="idallocator_8h.html#a3eede833d4c3ddeb47fdb5241b108730">_DECL_ACQUIRE_RELEASE</a>(<a class="code hl_struct" href="struct_core_graphics_1_1_blas_id.html">BlasId</a>);</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span></div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span><a class="code hl_struct" href="struct_core_graphics_1_1_blas_id.html">BlasId</a> <a class="code hl_function" href="namespace_core_graphics.html#a95af5407e0297628183f77307459bbd4">CreateBlas</a>(<span class="keyword">const</span> <a class="code hl_struct" href="struct_core_graphics_1_1_blas_create_info.html">BlasCreateInfo</a>& info);</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span><span class="keywordtype">void</span> <a class="code hl_function" href="namespace_core_graphics.html#aaa837496fdb0025c96105b6e6241552a">DestroyBlas</a>(<span class="keyword">const</span> <a class="code hl_struct" href="struct_core_graphics_1_1_blas_id.html">BlasId</a> blac);</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> </div>
<div class="foldopen" id="foldopen00056" data-start="{" data-end="};">
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"><a class="line" href="namespace_core_graphics.html#a6f663d98245e5d119e17eb0a133b658f"> 56</a></span><span class="keyword">enum</span> <a class="code hl_enumeration" href="namespace_core_graphics.html#a6f663d98245e5d119e17eb0a133b658f">BlasInstanceFlags</a></div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span>{</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"><a class="line" href="namespace_core_graphics.html#a6f663d98245e5d119e17eb0a133b658fa6ec7d1a40991490f8abe0df7394bf3a2"> 58</a></span> <a class="code hl_enumvalue" href="namespace_core_graphics.html#a6f663d98245e5d119e17eb0a133b658fa6ec7d1a40991490f8abe0df7394bf3a2">NoFlags</a> = 0x0,</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"><a class="line" href="namespace_core_graphics.html#a6f663d98245e5d119e17eb0a133b658fa86a38bdbde5bbc5b0eb4f378e9d09483"> 59</a></span> <a class="code hl_enumvalue" href="namespace_core_graphics.html#a6f663d98245e5d119e17eb0a133b658fa86a38bdbde5bbc5b0eb4f378e9d09483">FaceCullingDisabled</a> = 0x1,</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"><a class="line" href="namespace_core_graphics.html#a6f663d98245e5d119e17eb0a133b658fa67f2887bbae11e62d681887a84917d1a"> 60</a></span> <a class="code hl_enumvalue" href="namespace_core_graphics.html#a6f663d98245e5d119e17eb0a133b658fa67f2887bbae11e62d681887a84917d1a">InvertFace</a> = 0x2,</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"><a class="line" href="namespace_core_graphics.html#a6f663d98245e5d119e17eb0a133b658fa03c1625fda9ed9b12fe34f7199738eb8"> 61</a></span> <a class="code hl_enumvalue" href="namespace_core_graphics.html#a6f663d98245e5d119e17eb0a133b658fa03c1625fda9ed9b12fe34f7199738eb8">ForceOpaque</a> = 0x4,</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"><a class="line" href="namespace_core_graphics.html#a6f663d98245e5d119e17eb0a133b658fa2d2c3c4fc40065e494a835ed5e38d2c3"> 62</a></span> <a class="code hl_enumvalue" href="namespace_core_graphics.html#a6f663d98245e5d119e17eb0a133b658fa2d2c3c4fc40065e494a835ed5e38d2c3">NoOpaque</a> = 0x8</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span>};</div>
</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"><a class="line" href="namespace_core_graphics.html#a2003ec6c592c3ae6738c6a57d98057dc"> 64</a></span><a class="code hl_define" href="rtti_8h.html#a758582520416f2c7aff10f0d405854f4">__ImplementEnumBitOperators</a>(<a class="code hl_enumeration" href="namespace_core_graphics.html#a6f663d98245e5d119e17eb0a133b658f">BlasInstanceFlags</a>);</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> </div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"><a class="line" href="struct_core_graphics_1_1_blas_instance_id.html"> 66</a></span><a class="code hl_define" href="ids_2id_8h.html#a49318f0a0216b0fa604408196df3722a">ID_24_8_TYPE</a>(<a class="code hl_struct" href="struct_core_graphics_1_1_blas_instance_id.html">BlasInstanceId</a>);</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"><a class="line" href="namespace_core_graphics.html#a53c0af86e701ada532201f53e5b2db05"> 67</a></span><a class="code hl_define" href="idallocator_8h.html#a3eede833d4c3ddeb47fdb5241b108730">_DECL_ACQUIRE_RELEASE</a>(<a class="code hl_struct" href="struct_core_graphics_1_1_blas_instance_id.html">BlasInstanceId</a>);</div>
<div class="foldopen" id="foldopen00068" data-start="{" data-end="};">
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"><a class="line" href="struct_core_graphics_1_1_blas_instance_create_info.html"> 68</a></span><span class="keyword">struct </span><a class="code hl_struct" href="struct_core_graphics_1_1_blas_instance_create_info.html">BlasInstanceCreateInfo</a></div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span>{</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"><a class="line" href="struct_core_graphics_1_1_blas_instance_create_info.html#ae4ebf8627928d1919ac7d2f60079bf7b"> 70</a></span> <a class="code hl_struct" href="struct_core_graphics_1_1_blas_id.html">CoreGraphics::BlasId</a> <a class="code hl_variable" href="struct_core_graphics_1_1_blas_instance_create_info.html#ae4ebf8627928d1919ac7d2f60079bf7b">blas</a>;</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"><a class="line" href="struct_core_graphics_1_1_blas_instance_create_info.html#ae36f5cb9285376c91ca44b7d987ebcff"> 71</a></span> <a class="code hl_struct" href="struct_math_1_1mat4.html">Math::mat4</a> <a class="code hl_variable" href="struct_core_graphics_1_1_blas_instance_create_info.html#ae36f5cb9285376c91ca44b7d987ebcff">transform</a>;</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"><a class="line" href="struct_core_graphics_1_1_blas_instance_create_info.html#a7694d066b6cd9ba521a938e37d9ed069"> 72</a></span> <a class="code hl_typedef" href="types_8h.html#a91ad9478d81a7aaf2593e8d9c3d06a14">uint</a> <a class="code hl_variable" href="struct_core_graphics_1_1_blas_instance_create_info.html#a7694d066b6cd9ba521a938e37d9ed069">instanceIndex</a>; <span class="comment">// Readable in the shader as gl_InstanceCustomIndexKHR</span></div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"><a class="line" href="struct_core_graphics_1_1_blas_instance_create_info.html#a561f48a0ce7d220097833ad4116564ba"> 73</a></span> <a class="code hl_typedef" href="types_8h.html#a65f85814a8290f9797005d3b28e7e5fc">uchar</a> <a class="code hl_variable" href="struct_core_graphics_1_1_blas_instance_create_info.html#a561f48a0ce7d220097833ad4116564ba">mask</a>; <span class="comment">// 8 bit visibility mask</span></div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"><a class="line" href="struct_core_graphics_1_1_blas_instance_create_info.html#a67bd951e63b7b4c46cbae345962befd1"> 74</a></span> <a class="code hl_typedef" href="types_8h.html#a91ad9478d81a7aaf2593e8d9c3d06a14">uint</a> <a class="code hl_variable" href="struct_core_graphics_1_1_blas_instance_create_info.html#a67bd951e63b7b4c46cbae345962befd1">shaderOffset</a>; <span class="comment">// Offset into the shader binding table</span></div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"><a class="line" href="struct_core_graphics_1_1_blas_instance_create_info.html#acb82cf2dcdd1263639749a1c692e1a72"> 75</a></span> <a class="code hl_enumeration" href="namespace_core_graphics.html#a6f663d98245e5d119e17eb0a133b658f">BlasInstanceFlags</a> <a class="code hl_variable" href="struct_core_graphics_1_1_blas_instance_create_info.html#acb82cf2dcdd1263639749a1c692e1a72">flags</a>;</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span>};</div>
</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span></div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span><a class="code hl_struct" href="struct_core_graphics_1_1_blas_instance_id.html">BlasInstanceId</a> <a class="code hl_function" href="namespace_core_graphics.html#a1ce102b69564e06fc93d9f43439c6f22">CreateBlasInstance</a>(<span class="keyword">const</span> <a class="code hl_struct" href="struct_core_graphics_1_1_blas_instance_create_info.html">BlasInstanceCreateInfo</a>& info);</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span><span class="keywordtype">void</span> <a class="code hl_function" href="namespace_core_graphics.html#a4979d59d9dd84483b11dff5f23cef3de">DestroyBlasInstance</a>(<span class="keyword">const</span> <a class="code hl_struct" href="struct_core_graphics_1_1_blas_instance_id.html">BlasInstanceId</a> <span class="keywordtype">id</span>);</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span><span class="keywordtype">void</span> <a class="code hl_function" href="namespace_core_graphics.html#a6120468249fbfa447d822e7d9adec37e">BlasInstanceUpdate</a>(<span class="keyword">const</span> <a class="code hl_struct" href="struct_core_graphics_1_1_blas_instance_id.html">BlasInstanceId</a> <span class="keywordtype">id</span>, <span class="keyword">const</span> <a class="code hl_struct" href="struct_math_1_1mat4.html">Math::mat4</a>& <a class="code hl_class" href="class_math_1_1transform.html">transform</a>, <a class="code hl_struct" href="struct_core_graphics_1_1_buffer_id.html">CoreGraphics::BufferId</a> buf, <a class="code hl_typedef" href="types_8h.html#a91ad9478d81a7aaf2593e8d9c3d06a14">uint</a> offset);</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span><span class="keywordtype">void</span> <a class="code hl_function" href="namespace_core_graphics.html#a6120468249fbfa447d822e7d9adec37e">BlasInstanceUpdate</a>(<span class="keyword">const</span> <a class="code hl_struct" href="struct_core_graphics_1_1_blas_instance_id.html">BlasInstanceId</a> <span class="keywordtype">id</span>, <a class="code hl_struct" href="struct_core_graphics_1_1_buffer_id.html">CoreGraphics::BufferId</a> buf, <a class="code hl_typedef" href="types_8h.html#a91ad9478d81a7aaf2593e8d9c3d06a14">uint</a> offset);</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span><span class="keywordtype">void</span> <a class="code hl_function" href="namespace_core_graphics.html#ada4996b66a351eae07c066cd4665a6d0">BlasInstanceSetMask</a>(<span class="keyword">const</span> <a class="code hl_struct" href="struct_core_graphics_1_1_blas_instance_id.html">BlasInstanceId</a> <span class="keywordtype">id</span>, <a class="code hl_typedef" href="types_8h.html#a91ad9478d81a7aaf2593e8d9c3d06a14">uint</a> mask);</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span><span class="keyword">const</span> <a class="code hl_typedef" href="types_8h.html#a869418dc7a0404b6441ebc39c5b4bb37">SizeT</a> <a class="code hl_function" href="namespace_core_graphics.html#a15810c71bf587d9022b51494d948bace">BlasInstanceGetSize</a>();</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> </div>
<div class="foldopen" id="foldopen00091" data-start="{" data-end="};">
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"><a class="line" href="struct_core_graphics_1_1_tlas_create_info.html"> 91</a></span><span class="keyword">struct </span><a class="code hl_struct" href="struct_core_graphics_1_1_tlas_create_info.html">TlasCreateInfo</a></div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span>{</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"><a class="line" href="struct_core_graphics_1_1_tlas_create_info.html#aa0f49e3d755f6b4efd5e0cd85ed6e5f6"> 93</a></span> <a class="code hl_typedef" href="types_8h.html#a869418dc7a0404b6441ebc39c5b4bb37">SizeT</a> <a class="code hl_variable" href="struct_core_graphics_1_1_tlas_create_info.html#aa0f49e3d755f6b4efd5e0cd85ed6e5f6">numInstances</a>;</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"><a class="line" href="struct_core_graphics_1_1_tlas_create_info.html#a718eafd3b52ca83d6d402b98f5c5818a"> 94</a></span> <a class="code hl_struct" href="struct_core_graphics_1_1_buffer_id.html">CoreGraphics::BufferId</a> <a class="code hl_variable" href="struct_core_graphics_1_1_tlas_create_info.html#a718eafd3b52ca83d6d402b98f5c5818a">instanceBuffer</a>;</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"><a class="line" href="struct_core_graphics_1_1_tlas_create_info.html#abd10e01c79b8f7732d34c15b330bb795"> 95</a></span> <a class="code hl_enumeration" href="namespace_core_graphics.html#a4920dd5432b0cec56a873e184e72ac8c">AccelerationStructureBuildFlags</a> <a class="code hl_variable" href="struct_core_graphics_1_1_tlas_create_info.html#abd10e01c79b8f7732d34c15b330bb795">flags</a>;</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span>};</div>
</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> </div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"><a class="line" href="struct_core_graphics_1_1_tlas_id.html"> 98</a></span><a class="code hl_define" href="ids_2id_8h.html#a49318f0a0216b0fa604408196df3722a">ID_24_8_TYPE</a>(<a class="code hl_struct" href="struct_core_graphics_1_1_tlas_id.html">TlasId</a>);</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span></div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span><a class="code hl_struct" href="struct_core_graphics_1_1_tlas_id.html">TlasId</a> <a class="code hl_function" href="namespace_core_graphics.html#a2ba3e383c295b160af9efde6aa63bbe3">CreateTlas</a>(<span class="keyword">const</span> <a class="code hl_struct" href="struct_core_graphics_1_1_tlas_create_info.html">TlasCreateInfo</a>& info);</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span><span class="keywordtype">void</span> <a class="code hl_function" href="namespace_core_graphics.html#acc9a35e12c0a68b2e3133f76c7d09d90">DestroyTlas</a>(<span class="keyword">const</span> <a class="code hl_struct" href="struct_core_graphics_1_1_tlas_id.html">TlasId</a> tlas);</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span></div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span><span class="keywordtype">void</span> <a class="code hl_function" href="namespace_core_graphics.html#aecfb8c52b8a1331bef3bf05fa3777881">TlasInitBuild</a>(<span class="keyword">const</span> <a class="code hl_struct" href="struct_core_graphics_1_1_tlas_id.html">TlasId</a> tlas);</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span><span class="keywordtype">void</span> <a class="code hl_function" href="namespace_core_graphics.html#a7cfc49c951fcffe9c72a809cd2bf378b">TlasInitUpdate</a>(<span class="keyword">const</span> <a class="code hl_struct" href="struct_core_graphics_1_1_tlas_id.html">TlasId</a> tlas);</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> </div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span>} <span class="comment">// namespace CoreGraphics</span></div>
</div>
<div class="ttc" id="aclass_core_graphics_1_1_index_type_html_afb3e5ed2f6d4fc5e776edc0efcc0da51"><div class="ttname"><a href="class_core_graphics_1_1_index_type.html#afb3e5ed2f6d4fc5e776edc0efcc0da51">CoreGraphics::IndexType::Code</a></div><div class="ttdeci">Code</div><div class="ttdoc">index types enum</div><div class="ttdef"><b>Definition</b> indextype.h:22</div></div>
<div class="ttc" id="aclass_core_graphics_1_1_primitive_group_html"><div class="ttname"><a href="class_core_graphics_1_1_primitive_group.html">CoreGraphics::PrimitiveGroup</a></div><div class="ttdoc">Defines a group of primitives as a subset of a vertex buffer and index buffer plus the primitive topo...</div><div class="ttdef"><b>Definition</b> primitivegroup.h:20</div></div>
<div class="ttc" id="aclass_core_graphics_1_1_vertex_component_html_a03e2476cc323a97a99cd9201404bd1b0"><div class="ttname"><a href="class_core_graphics_1_1_vertex_component.html#a03e2476cc323a97a99cd9201404bd1b0">CoreGraphics::VertexComponent::Format</a></div><div class="ttdeci">Format</div><div class="ttdoc">component format</div><div class="ttdef"><b>Definition</b> vertexcomponent.h:25</div></div>
<div class="ttc" id="aclass_math_1_1transform_html"><div class="ttname"><a href="class_math_1_1transform.html">Math::transform</a></div><div class="ttdoc">Simple transform using position, quaternion, and scale.</div><div class="ttdef"><b>Definition</b> transform.h:18</div></div>
<div class="ttc" id="aidallocator_8h_html_a3eede833d4c3ddeb47fdb5241b108730"><div class="ttname"><a href="idallocator_8h.html#a3eede833d4c3ddeb47fdb5241b108730">_DECL_ACQUIRE_RELEASE</a></div><div class="ttdeci">#define _DECL_ACQUIRE_RELEASE(ty)</div><div class="ttdef"><b>Definition</b> idallocator.h:88</div></div>
<div class="ttc" id="aids_2id_8h_html_a49318f0a0216b0fa604408196df3722a"><div class="ttname"><a href="ids_2id_8h.html#a49318f0a0216b0fa604408196df3722a">ID_24_8_TYPE</a></div><div class="ttdeci">#define ID_24_8_TYPE(x)</div><div class="ttdef"><b>Definition</b> id.h:132</div></div>
<div class="ttc" id="amesh_8h_html"><div class="ttname"><a href="mesh_8h.html">mesh.h</a></div></div>
<div class="ttc" id="anamespace_core_graphics_html"><div class="ttname"><a href="namespace_core_graphics.html">CoreGraphics</a></div><div class="ttdoc">Acceleration structures are used to enable ray tracing on the GPU by dividing the scene into a BVH.</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:24</div></div>
<div class="ttc" id="anamespace_core_graphics_html_a15810c71bf587d9022b51494d948bace"><div class="ttname"><a href="namespace_core_graphics.html#a15810c71bf587d9022b51494d948bace">CoreGraphics::BlasInstanceGetSize</a></div><div class="ttdeci">const SizeT BlasInstanceGetSize()</div><div class="ttdoc">Get instance size (platform dependent)</div><div class="ttdef"><b>Definition</b> vkaccelerationstructure.cc:361</div></div>
<div class="ttc" id="anamespace_core_graphics_html_a1ce102b69564e06fc93d9f43439c6f22"><div class="ttname"><a href="namespace_core_graphics.html#a1ce102b69564e06fc93d9f43439c6f22">CoreGraphics::CreateBlasInstance</a></div><div class="ttdeci">BlasInstanceId CreateBlasInstance(const BlasInstanceCreateInfo &info)</div><div class="ttdoc">Create an instance to a bottom level acceleration structure.</div><div class="ttdef"><b>Definition</b> vkaccelerationstructure.cc:269</div></div>
<div class="ttc" id="anamespace_core_graphics_html_a2ba3e383c295b160af9efde6aa63bbe3"><div class="ttname"><a href="namespace_core_graphics.html#a2ba3e383c295b160af9efde6aa63bbe3">CoreGraphics::CreateTlas</a></div><div class="ttdeci">TlasId CreateTlas(const TlasCreateInfo &info)</div><div class="ttdoc">Create top level acceleration structure.</div><div class="ttdef"><b>Definition</b> vkaccelerationstructure.cc:370</div></div>
<div class="ttc" id="anamespace_core_graphics_html_a4920dd5432b0cec56a873e184e72ac8c"><div class="ttname"><a href="namespace_core_graphics.html#a4920dd5432b0cec56a873e184e72ac8c">CoreGraphics::AccelerationStructureBuildFlags</a></div><div class="ttdeci">AccelerationStructureBuildFlags</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:27</div></div>
<div class="ttc" id="anamespace_core_graphics_html_a4920dd5432b0cec56a873e184e72ac8ca2660064e68655415da2628c2ae2f7592"><div class="ttname"><a href="namespace_core_graphics.html#a4920dd5432b0cec56a873e184e72ac8ca2660064e68655415da2628c2ae2f7592">CoreGraphics::AccelerationStructureBuildFlags::Small</a></div><div class="ttdeci">@ Small</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:32</div></div>
<div class="ttc" id="anamespace_core_graphics_html_a4920dd5432b0cec56a873e184e72ac8ca620596dd518ae6643c0c70331c285b31"><div class="ttname"><a href="namespace_core_graphics.html#a4920dd5432b0cec56a873e184e72ac8ca620596dd518ae6643c0c70331c285b31">CoreGraphics::AccelerationStructureBuildFlags::FastBuild</a></div><div class="ttdeci">@ FastBuild</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:28</div></div>
<div class="ttc" id="anamespace_core_graphics_html_a4920dd5432b0cec56a873e184e72ac8ca971fd8cc345d8bd9f92e9f7d88fdf20c"><div class="ttname"><a href="namespace_core_graphics.html#a4920dd5432b0cec56a873e184e72ac8ca971fd8cc345d8bd9f92e9f7d88fdf20c">CoreGraphics::AccelerationStructureBuildFlags::Dynamic</a></div><div class="ttdeci">@ Dynamic</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:30</div></div>
<div class="ttc" id="anamespace_core_graphics_html_a4920dd5432b0cec56a873e184e72ac8cab1fe2c2a59e883740e7ea87667e44a24"><div class="ttname"><a href="namespace_core_graphics.html#a4920dd5432b0cec56a873e184e72ac8cab1fe2c2a59e883740e7ea87667e44a24">CoreGraphics::AccelerationStructureBuildFlags::Compact</a></div><div class="ttdeci">@ Compact</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:31</div></div>
<div class="ttc" id="anamespace_core_graphics_html_a4920dd5432b0cec56a873e184e72ac8caf2c3f9d191509c43c051a1412ad66f1b"><div class="ttname"><a href="namespace_core_graphics.html#a4920dd5432b0cec56a873e184e72ac8caf2c3f9d191509c43c051a1412ad66f1b">CoreGraphics::AccelerationStructureBuildFlags::FastTrace</a></div><div class="ttdeci">@ FastTrace</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:29</div></div>
<div class="ttc" id="anamespace_core_graphics_html_a4979d59d9dd84483b11dff5f23cef3de"><div class="ttname"><a href="namespace_core_graphics.html#a4979d59d9dd84483b11dff5f23cef3de">CoreGraphics::DestroyBlasInstance</a></div><div class="ttdeci">void DestroyBlasInstance(const BlasInstanceId id)</div><div class="ttdoc">Destroy blas instance.</div><div class="ttdef"><b>Definition</b> vkaccelerationstructure.cc:315</div></div>
<div class="ttc" id="anamespace_core_graphics_html_a6120468249fbfa447d822e7d9adec37e"><div class="ttname"><a href="namespace_core_graphics.html#a6120468249fbfa447d822e7d9adec37e">CoreGraphics::BlasInstanceUpdate</a></div><div class="ttdeci">void BlasInstanceUpdate(const BlasInstanceId id, const Math::mat4 &transform, CoreGraphics::BufferId buf, uint offset)</div><div class="ttdoc">Update blas instance and write to buffer.</div><div class="ttdef"><b>Definition</b> vkaccelerationstructure.cc:326</div></div>
<div class="ttc" id="anamespace_core_graphics_html_a6f663d98245e5d119e17eb0a133b658f"><div class="ttname"><a href="namespace_core_graphics.html#a6f663d98245e5d119e17eb0a133b658f">CoreGraphics::BlasInstanceFlags</a></div><div class="ttdeci">BlasInstanceFlags</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:57</div></div>
<div class="ttc" id="anamespace_core_graphics_html_a6f663d98245e5d119e17eb0a133b658fa03c1625fda9ed9b12fe34f7199738eb8"><div class="ttname"><a href="namespace_core_graphics.html#a6f663d98245e5d119e17eb0a133b658fa03c1625fda9ed9b12fe34f7199738eb8">CoreGraphics::ForceOpaque</a></div><div class="ttdeci">@ ForceOpaque</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:61</div></div>
<div class="ttc" id="anamespace_core_graphics_html_a6f663d98245e5d119e17eb0a133b658fa2d2c3c4fc40065e494a835ed5e38d2c3"><div class="ttname"><a href="namespace_core_graphics.html#a6f663d98245e5d119e17eb0a133b658fa2d2c3c4fc40065e494a835ed5e38d2c3">CoreGraphics::NoOpaque</a></div><div class="ttdeci">@ NoOpaque</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:62</div></div>
<div class="ttc" id="anamespace_core_graphics_html_a6f663d98245e5d119e17eb0a133b658fa67f2887bbae11e62d681887a84917d1a"><div class="ttname"><a href="namespace_core_graphics.html#a6f663d98245e5d119e17eb0a133b658fa67f2887bbae11e62d681887a84917d1a">CoreGraphics::InvertFace</a></div><div class="ttdeci">@ InvertFace</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:60</div></div>
<div class="ttc" id="anamespace_core_graphics_html_a6f663d98245e5d119e17eb0a133b658fa6ec7d1a40991490f8abe0df7394bf3a2"><div class="ttname"><a href="namespace_core_graphics.html#a6f663d98245e5d119e17eb0a133b658fa6ec7d1a40991490f8abe0df7394bf3a2">CoreGraphics::NoFlags</a></div><div class="ttdeci">@ NoFlags</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:58</div></div>
<div class="ttc" id="anamespace_core_graphics_html_a6f663d98245e5d119e17eb0a133b658fa86a38bdbde5bbc5b0eb4f378e9d09483"><div class="ttname"><a href="namespace_core_graphics.html#a6f663d98245e5d119e17eb0a133b658fa86a38bdbde5bbc5b0eb4f378e9d09483">CoreGraphics::FaceCullingDisabled</a></div><div class="ttdeci">@ FaceCullingDisabled</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:59</div></div>
<div class="ttc" id="anamespace_core_graphics_html_a7cfc49c951fcffe9c72a809cd2bf378b"><div class="ttname"><a href="namespace_core_graphics.html#a7cfc49c951fcffe9c72a809cd2bf378b">CoreGraphics::TlasInitUpdate</a></div><div class="ttdeci">void TlasInitUpdate(const TlasId tlas)</div><div class="ttdoc">Initiate Tlas for update.</div><div class="ttdef"><b>Definition</b> vkaccelerationstructure.cc:542</div></div>
<div class="ttc" id="anamespace_core_graphics_html_a95af5407e0297628183f77307459bbd4"><div class="ttname"><a href="namespace_core_graphics.html#a95af5407e0297628183f77307459bbd4">CoreGraphics::CreateBlas</a></div><div class="ttdeci">BlasId CreateBlas(const BlasCreateInfo &info)</div><div class="ttdoc">Create bottom level acceleration structure.</div><div class="ttdef"><b>Definition</b> vkaccelerationstructure.cc:124</div></div>
<div class="ttc" id="anamespace_core_graphics_html_aaa837496fdb0025c96105b6e6241552a"><div class="ttname"><a href="namespace_core_graphics.html#aaa837496fdb0025c96105b6e6241552a">CoreGraphics::DestroyBlas</a></div><div class="ttdeci">void DestroyBlas(const BlasId blac)</div><div class="ttdoc">Destroy bottom level acceleration structure.</div><div class="ttdef"><b>Definition</b> vkaccelerationstructure.cc:257</div></div>
<div class="ttc" id="anamespace_core_graphics_html_acc9a35e12c0a68b2e3133f76c7d09d90"><div class="ttname"><a href="namespace_core_graphics.html#acc9a35e12c0a68b2e3133f76c7d09d90">CoreGraphics::DestroyTlas</a></div><div class="ttdeci">void DestroyTlas(const TlasId tlas)</div><div class="ttdoc">Destroy top level acceleration structure.</div><div class="ttdef"><b>Definition</b> vkaccelerationstructure.cc:518</div></div>
<div class="ttc" id="anamespace_core_graphics_html_ada4996b66a351eae07c066cd4665a6d0"><div class="ttname"><a href="namespace_core_graphics.html#ada4996b66a351eae07c066cd4665a6d0">CoreGraphics::BlasInstanceSetMask</a></div><div class="ttdeci">void BlasInstanceSetMask(const BlasInstanceId id, uint mask)</div><div class="ttdoc">Set blas instance mask, setting it to 0x0 will disable it.</div><div class="ttdef"><b>Definition</b> vkaccelerationstructure.cc:351</div></div>
<div class="ttc" id="anamespace_core_graphics_html_aecfb8c52b8a1331bef3bf05fa3777881"><div class="ttname"><a href="namespace_core_graphics.html#aecfb8c52b8a1331bef3bf05fa3777881">CoreGraphics::TlasInitBuild</a></div><div class="ttdeci">void TlasInitBuild(const TlasId tlas)</div><div class="ttdoc">Initiate Tlas for build.</div><div class="ttdef"><b>Definition</b> vkaccelerationstructure.cc:531</div></div>
<div class="ttc" id="artti_8h_html_a529fb97e2e1b53fbcedb2da03b166bbe"><div class="ttname"><a href="rtti_8h.html#a529fb97e2e1b53fbcedb2da03b166bbe">__ImplementEnumComparisonOperators</a></div><div class="ttdeci">#define __ImplementEnumComparisonOperators(type)</div></div>
<div class="ttc" id="artti_8h_html_a758582520416f2c7aff10f0d405854f4"><div class="ttname"><a href="rtti_8h.html#a758582520416f2c7aff10f0d405854f4">__ImplementEnumBitOperators</a></div><div class="ttdeci">#define __ImplementEnumBitOperators(type)</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_blas_create_info_html"><div class="ttname"><a href="struct_core_graphics_1_1_blas_create_info.html">CoreGraphics::BlasCreateInfo</a></div><div class="ttdef"><b>Definition</b> accelerationstructure.h:38</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_blas_create_info_html_a117c7a0df89c6de40f8207a2b9c2baf2"><div class="ttname"><a href="struct_core_graphics_1_1_blas_create_info.html#a117c7a0df89c6de40f8207a2b9c2baf2">CoreGraphics::BlasCreateInfo::ibo</a></div><div class="ttdeci">CoreGraphics::BufferId ibo</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:39</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_blas_create_info_html_a4007f8614d65b5d98a524f1e803e627a"><div class="ttname"><a href="struct_core_graphics_1_1_blas_create_info.html#a4007f8614d65b5d98a524f1e803e627a">CoreGraphics::BlasCreateInfo::vertexOffset</a></div><div class="ttdeci">uint64 vertexOffset</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:43</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_blas_create_info_html_a6d91c83414a25003b3dd7f55aeecc728"><div class="ttname"><a href="struct_core_graphics_1_1_blas_create_info.html#a6d91c83414a25003b3dd7f55aeecc728">CoreGraphics::BlasCreateInfo::indexOffset</a></div><div class="ttdeci">uint64 indexOffset</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:43</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_blas_create_info_html_a703eedea49978f0acee749adeb167a90"><div class="ttname"><a href="struct_core_graphics_1_1_blas_create_info.html#a703eedea49978f0acee749adeb167a90">CoreGraphics::BlasCreateInfo::indexType</a></div><div class="ttdeci">CoreGraphics::IndexType::Code indexType</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:40</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_blas_create_info_html_a849ceb4d6b000f781c001015c7b9cfaf"><div class="ttname"><a href="struct_core_graphics_1_1_blas_create_info.html#a849ceb4d6b000f781c001015c7b9cfaf">CoreGraphics::BlasCreateInfo::stride</a></div><div class="ttdeci">uint64 stride</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:42</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_blas_create_info_html_a958459b54be6dff870852adb3470d280"><div class="ttname"><a href="struct_core_graphics_1_1_blas_create_info.html#a958459b54be6dff870852adb3470d280">CoreGraphics::BlasCreateInfo::positionsFormat</a></div><div class="ttdeci">CoreGraphics::VertexComponent::Format positionsFormat</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:41</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_blas_create_info_html_aa5988029dbd489c366a7d969e4304c57"><div class="ttname"><a href="struct_core_graphics_1_1_blas_create_info.html#aa5988029dbd489c366a7d969e4304c57">CoreGraphics::BlasCreateInfo::primGroup</a></div><div class="ttdeci">CoreGraphics::PrimitiveGroup primGroup</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:44</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_blas_create_info_html_ab03e5ee50583a63acd5fde6056f81e98"><div class="ttname"><a href="struct_core_graphics_1_1_blas_create_info.html#ab03e5ee50583a63acd5fde6056f81e98">CoreGraphics::BlasCreateInfo::flags</a></div><div class="ttdeci">AccelerationStructureBuildFlags flags</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:45</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_blas_create_info_html_ab4001ce268d6373e4877b976c1acb646"><div class="ttname"><a href="struct_core_graphics_1_1_blas_create_info.html#ab4001ce268d6373e4877b976c1acb646">CoreGraphics::BlasCreateInfo::vbo</a></div><div class="ttdeci">CoreGraphics::BufferId vbo</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:39</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_blas_id_html"><div class="ttname"><a href="struct_core_graphics_1_1_blas_id.html">CoreGraphics::BlasId</a></div><div class="ttdef"><b>Definition</b> accelerationstructure.h:48</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_blas_instance_create_info_html"><div class="ttname"><a href="struct_core_graphics_1_1_blas_instance_create_info.html">CoreGraphics::BlasInstanceCreateInfo</a></div><div class="ttdef"><b>Definition</b> accelerationstructure.h:69</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_blas_instance_create_info_html_a561f48a0ce7d220097833ad4116564ba"><div class="ttname"><a href="struct_core_graphics_1_1_blas_instance_create_info.html#a561f48a0ce7d220097833ad4116564ba">CoreGraphics::BlasInstanceCreateInfo::mask</a></div><div class="ttdeci">uchar mask</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:73</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_blas_instance_create_info_html_a67bd951e63b7b4c46cbae345962befd1"><div class="ttname"><a href="struct_core_graphics_1_1_blas_instance_create_info.html#a67bd951e63b7b4c46cbae345962befd1">CoreGraphics::BlasInstanceCreateInfo::shaderOffset</a></div><div class="ttdeci">uint shaderOffset</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:74</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_blas_instance_create_info_html_a7694d066b6cd9ba521a938e37d9ed069"><div class="ttname"><a href="struct_core_graphics_1_1_blas_instance_create_info.html#a7694d066b6cd9ba521a938e37d9ed069">CoreGraphics::BlasInstanceCreateInfo::instanceIndex</a></div><div class="ttdeci">uint instanceIndex</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:72</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_blas_instance_create_info_html_acb82cf2dcdd1263639749a1c692e1a72"><div class="ttname"><a href="struct_core_graphics_1_1_blas_instance_create_info.html#acb82cf2dcdd1263639749a1c692e1a72">CoreGraphics::BlasInstanceCreateInfo::flags</a></div><div class="ttdeci">BlasInstanceFlags flags</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:75</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_blas_instance_create_info_html_ae36f5cb9285376c91ca44b7d987ebcff"><div class="ttname"><a href="struct_core_graphics_1_1_blas_instance_create_info.html#ae36f5cb9285376c91ca44b7d987ebcff">CoreGraphics::BlasInstanceCreateInfo::transform</a></div><div class="ttdeci">Math::mat4 transform</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:71</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_blas_instance_create_info_html_ae4ebf8627928d1919ac7d2f60079bf7b"><div class="ttname"><a href="struct_core_graphics_1_1_blas_instance_create_info.html#ae4ebf8627928d1919ac7d2f60079bf7b">CoreGraphics::BlasInstanceCreateInfo::blas</a></div><div class="ttdeci">CoreGraphics::BlasId blas</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:70</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_blas_instance_id_html"><div class="ttname"><a href="struct_core_graphics_1_1_blas_instance_id.html">CoreGraphics::BlasInstanceId</a></div><div class="ttdef"><b>Definition</b> accelerationstructure.h:66</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_buffer_id_html"><div class="ttname"><a href="struct_core_graphics_1_1_buffer_id.html">CoreGraphics::BufferId</a></div><div class="ttdef"><b>Definition</b> buffer.h:23</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_tlas_create_info_html"><div class="ttname"><a href="struct_core_graphics_1_1_tlas_create_info.html">CoreGraphics::TlasCreateInfo</a></div><div class="ttdef"><b>Definition</b> accelerationstructure.h:92</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_tlas_create_info_html_a718eafd3b52ca83d6d402b98f5c5818a"><div class="ttname"><a href="struct_core_graphics_1_1_tlas_create_info.html#a718eafd3b52ca83d6d402b98f5c5818a">CoreGraphics::TlasCreateInfo::instanceBuffer</a></div><div class="ttdeci">CoreGraphics::BufferId instanceBuffer</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:94</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_tlas_create_info_html_aa0f49e3d755f6b4efd5e0cd85ed6e5f6"><div class="ttname"><a href="struct_core_graphics_1_1_tlas_create_info.html#aa0f49e3d755f6b4efd5e0cd85ed6e5f6">CoreGraphics::TlasCreateInfo::numInstances</a></div><div class="ttdeci">SizeT numInstances</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:93</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_tlas_create_info_html_abd10e01c79b8f7732d34c15b330bb795"><div class="ttname"><a href="struct_core_graphics_1_1_tlas_create_info.html#abd10e01c79b8f7732d34c15b330bb795">CoreGraphics::TlasCreateInfo::flags</a></div><div class="ttdeci">AccelerationStructureBuildFlags flags</div><div class="ttdef"><b>Definition</b> accelerationstructure.h:95</div></div>
<div class="ttc" id="astruct_core_graphics_1_1_tlas_id_html"><div class="ttname"><a href="struct_core_graphics_1_1_tlas_id.html">CoreGraphics::TlasId</a></div><div class="ttdef"><b>Definition</b> accelerationstructure.h:98</div></div>
<div class="ttc" id="astruct_math_1_1mat4_html"><div class="ttname"><a href="struct_math_1_1mat4.html">Math::mat4</a></div><div class="ttdoc">A 4x4 single point precision float matrix.</div><div class="ttdef"><b>Definition</b> mat4.h:49</div></div>
<div class="ttc" id="atypes_8h_html_a65f85814a8290f9797005d3b28e7e5fc"><div class="ttname"><a href="types_8h.html#a65f85814a8290f9797005d3b28e7e5fc">uchar</a></div><div class="ttdeci">unsigned char uchar</div><div class="ttdef"><b>Definition</b> types.h:33</div></div>
<div class="ttc" id="atypes_8h_html_a869418dc7a0404b6441ebc39c5b4bb37"><div class="ttname"><a href="types_8h.html#a869418dc7a0404b6441ebc39c5b4bb37">SizeT</a></div><div class="ttdeci">int SizeT</div><div class="ttdef"><b>Definition</b> types.h:49</div></div>
<div class="ttc" id="atypes_8h_html_a91ad9478d81a7aaf2593e8d9c3d06a14"><div class="ttname"><a href="types_8h.html#a91ad9478d81a7aaf2593e8d9c3d06a14">uint</a></div><div class="ttdeci">unsigned int uint</div><div class="ttdef"><b>Definition</b> types.h:31</div></div>
<div class="ttc" id="atypes_8h_html_abc0f5bc07737e498f287334775dff2b6"><div class="ttname"><a href="types_8h.html#abc0f5bc07737e498f287334775dff2b6">uint64</a></div><div class="ttdeci">uint64_t uint64</div><div class="ttdef"><b>Definition</b> types.h:36</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_050edd66366d13764f98250ef6db77f6.html">code</a></li><li class="navelem"><a class="el" href="dir_933e88acd4f6f83648c4ee8940d06fa2.html">render</a></li><li class="navelem"><a class="el" href="dir_37551f33e300d96c62573a393f7afa02.html">coregraphics</a></li><li class="navelem"><a class="el" href="accelerationstructure_8h.html">accelerationstructure.h</a></li>
<li class="footer">
Generated on Tue Jan 28 2025 22:43:05 for Nebula. Dark theme by <a href="http://majerle.eu" target="_new">Tilen Majerle</a>. All rights reserved.
</li>
</ul>
</div>
<script src="custom.js"></script>
</body>
</html>