Minor - Start the Doxygen doc - V12.8.0

This commit is contained in:
CatChow0 2025-07-28 15:26:10 +02:00
parent 2c005592f0
commit 9431552316
445 changed files with 100476 additions and 72 deletions

View File

@ -6,10 +6,18 @@
<component name="ChangeListManager">
<list default="true" id="e81d6e08-efc7-40a0-909d-ec4943d948e9" name="Changes" comment="">
<change beforePath="$PROJECT_DIR$/.idea/.idea.KhaoticEngineReborn/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/.idea.KhaoticEngineReborn/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/enginecustom/imgui.ini" beforeDir="false" afterPath="$PROJECT_DIR$/enginecustom/imgui.ini" afterDir="false" />
<change beforePath="$PROJECT_DIR$/enginecustom/src/inc/shader/alpha_map_shader_class.h" beforeDir="false" afterPath="$PROJECT_DIR$/enginecustom/src/inc/shader/alpha_map_shader_class.h" afterDir="false" />
<change beforePath="$PROJECT_DIR$/enginecustom/src/inc/system/application_class.h" beforeDir="false" afterPath="$PROJECT_DIR$/enginecustom/src/inc/system/application_class.h" afterDir="false" />
<change beforePath="$PROJECT_DIR$/enginecustom/src/inc/system/ecs/component.h" beforeDir="false" afterPath="$PROJECT_DIR$/enginecustom/src/inc/system/ecs/component.h" afterDir="false" />
<change beforePath="$PROJECT_DIR$/enginecustom/src/inc/system/ecs/components/identity_component.h" beforeDir="false" afterPath="$PROJECT_DIR$/enginecustom/src/inc/system/ecs/components/identity_component.h" afterDir="false" />
<change beforePath="$PROJECT_DIR$/enginecustom/src/src/system/scene_manager.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/enginecustom/src/src/system/scene_manager.cpp" afterDir="false" />
<change beforePath="$PROJECT_DIR$/enginecustom/src/inc/system/ecs/components/model_path_component.h" beforeDir="false" afterPath="$PROJECT_DIR$/enginecustom/src/inc/system/ecs/components/model_path_component.h" afterDir="false" />
<change beforePath="$PROJECT_DIR$/enginecustom/src/inc/system/ecs/components/physics_component.h" beforeDir="false" afterPath="$PROJECT_DIR$/enginecustom/src/inc/system/ecs/components/physics_component.h" afterDir="false" />
<change beforePath="$PROJECT_DIR$/enginecustom/src/inc/system/ecs/components/render_component.h" beforeDir="false" afterPath="$PROJECT_DIR$/enginecustom/src/inc/system/ecs/components/render_component.h" afterDir="false" />
<change beforePath="$PROJECT_DIR$/enginecustom/src/inc/system/ecs/components/shader_component.h" beforeDir="false" afterPath="$PROJECT_DIR$/enginecustom/src/inc/system/ecs/components/shader_component.h" afterDir="false" />
<change beforePath="$PROJECT_DIR$/enginecustom/src/inc/system/ecs/components/transform_component.h" beforeDir="false" afterPath="$PROJECT_DIR$/enginecustom/src/inc/system/ecs/components/transform_component.h" afterDir="false" />
<change beforePath="$PROJECT_DIR$/enginecustom/src/inc/system/ecs/entity.h" beforeDir="false" afterPath="$PROJECT_DIR$/enginecustom/src/inc/system/ecs/entity.h" afterDir="false" />
<change beforePath="$PROJECT_DIR$/enginecustom/src/inc/system/ecs/entity_manager.h" beforeDir="false" afterPath="$PROJECT_DIR$/enginecustom/src/inc/system/ecs/entity_manager.h" afterDir="false" />
<change beforePath="$PROJECT_DIR$/enginecustom/src/inc/system/ecs/systems/render_system.h" beforeDir="false" afterPath="$PROJECT_DIR$/enginecustom/src/inc/system/ecs/systems/render_system.h" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@ -233,6 +241,8 @@
<workItem from="1750770680795" duration="13425000" />
<workItem from="1750964683511" duration="27000" />
<workItem from="1750964770914" duration="2126000" />
<workItem from="1753700140931" duration="918000" />
<workItem from="1753701507863" duration="7153000" />
</task>
<task id="LOCAL-00001" summary="Minor update - viewport window tweak">
<option name="closed" value="true" />

2924
doxygen.txt Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,347 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: enginecustom/src/inc/system/Logger.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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('_logger_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">Logger.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#include &lt;fstream&gt;</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="preprocessor">#include &lt;string&gt;</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &lt;Windows.h&gt;</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#include &lt;chrono&gt;</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#include &lt;iomanip&gt;</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#include &lt;sstream&gt;</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include &lt;filesystem&gt;</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="preprocessor">#include &lt;deque&gt;</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#include &lt;unordered_set&gt;</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="preprocessor">#include &lt;imgui.h&gt;</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> </div>
<div class="foldopen" id="foldopen00013" data-start="{" data-end="};">
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"><a class="line" href="class_logger.html"> 13</a></span><span class="keyword">class </span><a class="code hl_class" href="class_logger.html">Logger</a></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span>{</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="keyword">public</span>:</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> </div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> <span class="keyword">static</span> <a class="code hl_class" href="class_logger.html">Logger</a>&amp; Get()</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> {</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> <span class="keyword">static</span> <a class="code hl_class" href="class_logger.html">Logger</a> instance;</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> <span class="keywordflow">return</span> instance;</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> }</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> <a class="code hl_class" href="class_logger.html">Logger</a>(<a class="code hl_class" href="class_logger.html">Logger</a> <span class="keyword">const</span>&amp;) = <span class="keyword">delete</span>;</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> <span class="keywordtype">void</span> operator=(<a class="code hl_class" href="class_logger.html">Logger</a> <span class="keyword">const</span>&amp;) = <span class="keyword">delete</span>;</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> </div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> <span class="keyword">enum class</span> LogLevel</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"> 28</span> Info,</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> Warning,</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> Error,</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> Shutdown,</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> Initialize,</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> Update,</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> Render,</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> Input,</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> Physics,</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> Audio,</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> Network,</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> Scripting,</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> AI,</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> Resource,</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> Memory,</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> Debug,</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> Count <span class="comment">// Do not use this, it&#39;s just to get the number of log levels it must at the end</span></div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> };</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> <span class="comment">// Return the size of the enum class LogLevel as a constant integer</span></div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <span class="keyword">static</span> <span class="keyword">constexpr</span> <span class="keywordtype">int</span> LogLevelCount = <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(LogLevel::Count);</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> </div>
<div class="foldopen" id="foldopen00050" data-start="{" data-end="};">
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"><a class="line" href="struct_logger_1_1_log_entry.html"> 50</a></span> <span class="keyword">struct </span><a class="code hl_struct" href="struct_logger_1_1_log_entry.html">LogEntry</a></div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> {</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> std::string message;</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> LogLevel level;</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> };</div>
</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="struct_logger_1_1_log_level_info.html"> 56</a></span> <span class="keyword">struct </span><a class="code hl_struct" href="struct_logger_1_1_log_level_info.html">LogLevelInfo</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"> 58</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* name;</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <span class="keywordtype">int</span> value;</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> ImVec4 color;</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> };</div>
</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> </div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> <span class="keyword">static</span> <span class="keyword">const</span> <a class="code hl_struct" href="struct_logger_1_1_log_level_info.html">LogLevelInfo</a> GetLogLevelInfo(LogLevel level)</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> {</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <span class="keywordflow">switch</span> (level)</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> {</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">case</span> LogLevel::Info: <span class="keywordflow">return</span> <a class="code hl_struct" href="struct_logger_1_1_log_level_info.html">LogLevelInfo</a>{ <span class="stringliteral">&quot;Info&quot;</span>, 0, ImVec4(0.0f, 1.0f, 0.0f, 1.0f) };</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> <span class="keywordflow">case</span> LogLevel::Warning: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Warning&quot;</span>, 1, ImVec4(1.0f, 1.0f, 0.0f, 1.0f) };</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> <span class="keywordflow">case</span> LogLevel::Error: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Error&quot;</span>, 2, ImVec4(1.0f, 0.0f, 0.0f, 1.0f) };</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> <span class="keywordflow">case</span> LogLevel::Shutdown: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;shutdown&quot;</span>, 3, ImVec4(0.5f, 0.0f, 0.0f, 1.0f) };</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">case</span> LogLevel::Initialize: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;initialize&quot;</span>, 4, ImVec4(0.0f, 1.0f, 1.0f, 1.0f) };</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <span class="keywordflow">case</span> LogLevel::Update: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Update&quot;</span>, 5, ImVec4(1.0f, 0.0f, 1.0f, 1.0f) };</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">case</span> LogLevel::Render: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;render&quot;</span>, 6, ImVec4(1.0f, 1.0f, 1.0f, 1.0f) };</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> <span class="keywordflow">case</span> LogLevel::Input: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Input&quot;</span>, 7, ImVec4(0.5f, 0.5f, 0.5f, 1.0f) };</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> <span class="keywordflow">case</span> LogLevel::Physics: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;physics&quot;</span>, 8, ImVec4(0.5f, 0.5f, 0.5f, 1.0f) };</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">case</span> LogLevel::Audio: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Audio&quot;</span>, 9, ImVec4(0.5f, 0.5f, 0.5f, 1.0f) };</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">case</span> LogLevel::Network: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Network&quot;</span>, 10, ImVec4(0.5f, 0.5f, 0.5f, 1.0f) };</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">case</span> LogLevel::Scripting: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Scripting&quot;</span>, 11, ImVec4(0.5f, 0.5f, 0.5f, 1.0f) };</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">case</span> LogLevel::AI: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;AI&quot;</span>, 12, ImVec4(0.5f, 0.5f, 0.5f, 1.0f) };</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="keywordflow">case</span> LogLevel::Resource: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Resource&quot;</span>, 13, ImVec4(0.5f, 0.5f, 0.5f, 1.0f) };</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> <span class="keywordflow">case</span> LogLevel::Memory: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Memory&quot;</span>, 14, ImVec4(0.5f, 0.5f, 0.5f, 1.0f) };</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> <span class="keywordflow">case</span> LogLevel::Debug: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Debug&quot;</span>, 15, ImVec4(0.5f, 0.5f, 0.5f, 1.0f) };</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> <span class="keywordflow">default</span>: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Unknown&quot;</span>, 16, ImVec4(1.0f, 1.0f, 1.0f, 1.0f) };</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> }</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> }</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> </div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <a class="code hl_class" href="class_logger.html">Logger</a>()</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> {</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> <span class="keywordtype">char</span>* appdata = <span class="keyword">nullptr</span>;</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> <span class="keywordtype">size_t</span> len;</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> _dupenv_s(&amp;appdata, &amp;len, <span class="stringliteral">&quot;APPDATA&quot;</span>);</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> <span class="keywordflow">if</span> (appdata == <span class="keyword">nullptr</span>)</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> {</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> m_appdataPath = <span class="stringliteral">&quot;log.log&quot;</span>;</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> }</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> <span class="keywordflow">else</span></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"> 98</span> m_appdataPath = appdata;</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> }</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> free(appdata);</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> std::string directoryPath = m_appdataPath + <span class="stringliteral">&quot;\\Khaotic Engine&quot;</span>;</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> CreateDirectoryA(directoryPath.c_str(), NULL);</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> </div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> ManageLogFiles(directoryPath);</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> </div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> m_logFilePath = directoryPath + <span class="stringliteral">&quot;\\&quot;</span> + m_logFileName;</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> </div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> <span class="comment">// Enable only the Error warning and shutdown log levels</span></div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; LogLevelCount; i++)</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> {</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> m_disabledLogLevels[i] = <span class="keyword">true</span>;</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> </div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> <span class="keywordflow">if</span> (i == <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(LogLevel::Error) || i == <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(LogLevel::Warning) || i == <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(LogLevel::Shutdown))</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> {</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> m_disabledLogLevels[i] = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> </div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> }</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> }</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> </div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> }</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> </div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> <span class="comment">// ecrit un message dans le fichier de log et le stocke dans le buffer</span></div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> <span class="keywordtype">void</span> Log(<span class="keyword">const</span> std::string&amp; message, <span class="keyword">const</span> std::string&amp; fileName, <span class="keywordtype">int</span> lineNumber, LogLevel level = LogLevel::Info)</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> {</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> </div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> <span class="keyword">auto</span> now = std::chrono::system_clock::now();</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> <span class="keyword">auto</span> in_time_t = std::chrono::system_clock::to_time_t(now);</div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> </div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> std::tm buf;</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> localtime_s(&amp;buf, &amp;in_time_t);</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> </div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> <span class="comment">// Obtenez les millisecondes à partir de maintenant</span></div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> <span class="keyword">auto</span> ms = std::chrono::duration_cast&lt;std::chrono::milliseconds&gt;(now.time_since_epoch()) % 1000;</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> </div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> <span class="comment">// Utilisez LogLevelToString pour obtenir la chaîne de caractères du niveau de log</span></div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> std::string levelStr = GetLogLevelInfo(level).name;</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> </div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> std::stringstream ss;</div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> ss &lt;&lt; <span class="stringliteral">&quot;[&quot;</span> &lt;&lt; std::put_time(&amp;buf, <span class="stringliteral">&quot;%Y-%m-%d&quot;</span>) &lt;&lt; <span class="stringliteral">&quot;] &quot;</span></div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> &lt;&lt; <span class="stringliteral">&quot;[&quot;</span> &lt;&lt; std::put_time(&amp;buf, <span class="stringliteral">&quot;%X&quot;</span>) &lt;&lt; <span class="stringliteral">&quot;.&quot;</span> &lt;&lt; std::setfill(<span class="charliteral">&#39;0&#39;</span>) &lt;&lt; std::setw(3) &lt;&lt; ms.count() &lt;&lt; <span class="stringliteral">&quot;] &quot;</span></div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> &lt;&lt; <span class="stringliteral">&quot;[&quot;</span> &lt;&lt; levelStr &lt;&lt; <span class="stringliteral">&quot;] &quot;</span></div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> &lt;&lt; <span class="stringliteral">&quot;[&quot;</span> &lt;&lt; fileName &lt;&lt; <span class="stringliteral">&quot;:&quot;</span> &lt;&lt; lineNumber &lt;&lt; <span class="stringliteral">&quot;] &quot;</span></div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> &lt;&lt; message;</div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> </div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> Log(ss.str(), level);</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> </div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> std::ofstream file(m_logFilePath, std::ios::app);</div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> <span class="keywordflow">if</span> (file.is_open())</div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> {</div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> file &lt;&lt; ss.str() &lt;&lt; std::endl;</div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> file.close();</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> }</div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> }</div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> </div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> <span class="comment">// ecrit un message dans la console</span></div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> <span class="keywordtype">void</span> Log(<span class="keyword">const</span> std::string&amp; message, LogLevel level)</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> {</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> </div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> <span class="comment">// Si le niveau de log est désactivé, ne faites rien</span></div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> <span class="keywordflow">if</span> (m_disabledLogLevels[GetLogLevelInfo(level).value])</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> {</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> }</div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> </div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> <span class="keywordflow">if</span> (logBuffer.size() &gt;= logBufferSize)</div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> {</div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> logBuffer.pop_front();</div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> }</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> logBuffer.push_back({ message, level });</div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> }</div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> </div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> <span class="keyword">const</span> std::deque&lt;LogEntry&gt;&amp; GetLogBuffer()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> logBuffer; }</div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> </div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> <span class="keywordtype">void</span> ManageLogFiles(<span class="keyword">const</span> std::string&amp; directoryPath)</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> {</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> std::vector&lt;std::filesystem::path&gt; logFiles;</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> </div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> <span class="comment">// Parcourez tous les fichiers dans le dossier</span></div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span>&amp; entry : std::filesystem::directory_iterator(directoryPath))</div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> {</div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> <span class="comment">// Si le fichier est un fichier de log, ajoutez-le à la liste</span></div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> <span class="keywordflow">if</span> (entry.path().extension() == <span class="stringliteral">&quot;.log&quot;</span>)</div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> {</div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> logFiles.push_back(entry.path());</div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> }</div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> }</div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> </div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> <span class="comment">// Si nous avons plus de trois fichiers de log, supprimez le plus ancien</span></div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> <span class="keywordflow">while</span> (logFiles.size() &gt;= 3)</div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> {</div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> <span class="comment">// Triez les fichiers par date de modification, le plus ancien en premier</span></div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> std::sort(logFiles.begin(), logFiles.end(), [](<span class="keyword">const</span> std::filesystem::path&amp; a, <span class="keyword">const</span> std::filesystem::path&amp; b)</div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> {</div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> return std::filesystem::last_write_time(a) &lt; std::filesystem::last_write_time(b);</div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> });</div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span> </div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span> <span class="comment">// Supprimez le fichier le plus ancien</span></div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> std::filesystem::remove(logFiles[0]);</div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span> </div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span> <span class="comment">// Supprimez-le de la liste</span></div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> logFiles.erase(logFiles.begin());</div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span> }</div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span> </div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span> <span class="comment">// Créez un nouveau fichier de log pour cette exécution</span></div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span> <span class="keyword">auto</span> now = std::chrono::system_clock::now();</div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span> <span class="keyword">auto</span> in_time_t = std::chrono::system_clock::to_time_t(now);</div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> std::tm buf;</div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span> localtime_s(&amp;buf, &amp;in_time_t);</div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span> </div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> std::stringstream ss;</div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span> ss &lt;&lt; <span class="stringliteral">&quot;Khaotic_log_&quot;</span> &lt;&lt; std::put_time(&amp;buf, <span class="stringliteral">&quot;%Y_%m_%d_%Hh%Mm%Ss&quot;</span>) &lt;&lt; <span class="stringliteral">&quot;.log&quot;</span>;</div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span> m_logFileName = ss.str();</div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span> }</div>
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno"> 214</span> </div>
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"> 215</span> <span class="keywordtype">bool</span> m_disabledLogLevels[LogLevelCount];</div>
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno"> 216</span> std::string m_logFilePath;</div>
<div class="line"><a id="l00217" name="l00217"></a><span class="lineno"> 217</span> </div>
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"> 218</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"> 219</span> std::string m_filename;</div>
<div class="line"><a id="l00220" name="l00220"></a><span class="lineno"> 220</span> std::string m_appdataPath;</div>
<div class="line"><a id="l00221" name="l00221"></a><span class="lineno"> 221</span> std::string m_logFileName;</div>
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno"> 222</span> </div>
<div class="line"><a id="l00223" name="l00223"></a><span class="lineno"> 223</span> std::deque&lt;LogEntry&gt; logBuffer;</div>
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"> 224</span> <span class="keyword">const</span> <span class="keywordtype">size_t</span> logBufferSize = 100;</div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span> </div>
<div class="line"><a id="l00226" name="l00226"></a><span class="lineno"> 226</span>};</div>
</div>
<div class="ttc" id="aclass_logger_html"><div class="ttname"><a href="class_logger.html">Logger</a></div><div class="ttdef"><b>Definition</b> <a href="#l00013">Logger.h:14</a></div></div>
<div class="ttc" id="astruct_logger_1_1_log_entry_html"><div class="ttname"><a href="struct_logger_1_1_log_entry.html">Logger::LogEntry</a></div><div class="ttdef"><b>Definition</b> <a href="#l00050">Logger.h:51</a></div></div>
<div class="ttc" id="astruct_logger_1_1_log_level_info_html"><div class="ttname"><a href="struct_logger_1_1_log_level_info.html">Logger::LogLevelInfo</a></div><div class="ttdef"><b>Definition</b> <a href="#l00056">Logger.h:57</a></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_f4a881938f04d9c04de7741e8b9c813b.html">enginecustom</a></li><li class="navelem"><a class="el" href="dir_4288ac3ffb2af5f572fd6fdc04a1176b.html">src</a></li><li class="navelem"><a class="el" href="dir_fa382d1760f3c58d964524ef7c4d69c1.html">inc</a></li><li class="navelem"><a class="el" href="dir_31afb4cde3071d47ca274e3f4ae3badb.html">system</a></li><li class="navelem"><b>Logger.h</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,150 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: enginecustom/src/src/system/Main.cpp 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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('_main_8cpp_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">Main.cpp</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#include &quot;system_class.h&quot;</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span> </div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="keywordtype">int</span> WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR pScmdline, <span class="keywordtype">int</span> iCmdshow)</div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span>{</div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span> <a class="code hl_class" href="classsystem__class.html">system_class</a>* System;</div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span> <span class="keywordtype">bool</span> result;</div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> </div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> <span class="keywordtype">wchar_t</span> path[MAX_PATH];</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> HMODULE hmodule = GetModuleHandle(NULL);</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> <span class="keywordflow">if</span> (hmodule != NULL)</div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> {</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> GetModuleFileName(hmodule, path, (<span class="keyword">sizeof</span>(path) / <span class="keyword">sizeof</span>(<span class="keywordtype">wchar_t</span>)));</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> }</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> std::filesystem::path exePath(path);</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> std::filesystem::path WFolder = exePath.parent_path();</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> </div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> <span class="comment">// Create the system object.</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> System = <span class="keyword">new</span> <a class="code hl_class" href="classsystem__class.html">system_class</a>;</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> </div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <span class="comment">// initialize and run the system object.</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> result = System-&gt;initialize();</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> <span class="keywordflow">if</span> (result)</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> {</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> Logger::Get().Log(<span class="stringliteral">&quot;System initialized&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> System-&gt;send_path(path,WFolder);</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> System-&gt;run();</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> }</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="comment">// shutdown and release the system object.</span></div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> System-&gt;shutdown();</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <span class="keyword">delete</span> System;</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> System = 0;</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> </div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span>}</div>
<div class="ttc" id="aclasssystem__class_html"><div class="ttname"><a href="classsystem__class.html">system_class</a></div><div class="ttdef"><b>Definition</b> <a href="system__class_8h_source.html#l00020">system_class.h:21</a></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_f4a881938f04d9c04de7741e8b9c813b.html">enginecustom</a></li><li class="navelem"><a class="el" href="dir_4288ac3ffb2af5f572fd6fdc04a1176b.html">src</a></li><li class="navelem"><a class="el" href="dir_9f969fb6181399983524402442d3614f.html">src</a></li><li class="navelem"><a class="el" href="dir_eca5a6ecd54f1e6167f92aa8e37ec00f.html">system</a></li><li class="navelem"><b>Main.cpp</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,182 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: enginecustom/src/src/system/Modellistclass.cpp 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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('_modellistclass_8cpp_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">Modellistclass.cpp</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#include &quot;modellistclass.h&quot;</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span> </div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span>ModelListClass::ModelListClass()</div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span>{</div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span> m_ModelInfoList = 0;</div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span>}</div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> </div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> </div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span>ModelListClass::ModelListClass(<span class="keyword">const</span> <a class="code hl_class" href="class_model_list_class.html">ModelListClass</a>&amp; other)</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span>{</div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span>}</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> </div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span>ModelListClass::~ModelListClass()</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span>{</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span>}</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> </div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> </div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="keywordtype">void</span> ModelListClass::Initialize(<span class="keywordtype">int</span> numModels)</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span>{</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> <span class="keywordtype">int</span> i;</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> <span class="comment">// Store the number of models.</span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> m_modelCount = numModels;</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"> 28</span> <span class="comment">// Create a list array of the model information.</span></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> m_ModelInfoList = <span class="keyword">new</span> ModelInfoType[m_modelCount];</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="comment">// Seed the random generator with the current time.</span></div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> srand((<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>)time(NULL));</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> </div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> <span class="comment">// Go through all the models and randomly generate the position.</span></div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <span class="keywordflow">for</span> (i = 0; i &lt; m_modelCount; i++)</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> {</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> <span class="comment">// Generate a random position in front of the viewer for the mode.</span></div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> m_ModelInfoList[i].positionX = (((float)rand() - (float)rand()) / RAND_MAX) * 10.0f;</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> m_ModelInfoList[i].positionY = (((float)rand() - (float)rand()) / RAND_MAX) * 10.0f;</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> m_ModelInfoList[i].positionZ = ((((float)rand() - (float)rand()) / RAND_MAX) * 10.0f) + 5.0f;</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> }</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> </div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span>}</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> </div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span><span class="keywordtype">void</span> ModelListClass::Shutdown()</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"> 48</span> <span class="comment">// Release the model information list.</span></div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <span class="keywordflow">if</span> (m_ModelInfoList)</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> {</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keyword">delete</span>[] m_ModelInfoList;</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> m_ModelInfoList = 0;</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> }</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> </div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span>}</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"> 58</span><span class="keywordtype">int</span> ModelListClass::GetModelCount()</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span>{</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keywordflow">return</span> m_modelCount;</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span>}</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> </div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span><span class="keywordtype">void</span> ModelListClass::GetData(<span class="keywordtype">int</span> index, <span class="keywordtype">float</span>&amp; positionX, <span class="keywordtype">float</span>&amp; positionY, <span class="keywordtype">float</span>&amp; positionZ)</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span>{</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> positionX = m_ModelInfoList[index].positionX;</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> positionY = m_ModelInfoList[index].positionY;</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> positionZ = m_ModelInfoList[index].positionZ;</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span>}</div>
<div class="ttc" id="aclass_model_list_class_html"><div class="ttname"><a href="class_model_list_class.html">ModelListClass</a></div><div class="ttdef"><b>Definition</b> <a href="_modellistclass_8h_source.html#l00015">Modellistclass.h:16</a></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_f4a881938f04d9c04de7741e8b9c813b.html">enginecustom</a></li><li class="navelem"><a class="el" href="dir_4288ac3ffb2af5f572fd6fdc04a1176b.html">src</a></li><li class="navelem"><a class="el" href="dir_9f969fb6181399983524402442d3614f.html">src</a></li><li class="navelem"><a class="el" href="dir_eca5a6ecd54f1e6167f92aa8e37ec00f.html">system</a></li><li class="navelem"><b>Modellistclass.cpp</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,150 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: enginecustom/src/inc/system/Modellistclass.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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('_modellistclass_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">Modellistclass.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#ifndef _MODELLISTCLASS_H_</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#define _MODELLISTCLASS_H_</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span> </div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment">// INCLUDES //</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include &lt;stdlib.h&gt;</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="preprocessor">#include &lt;time.h&gt;</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> </div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="comment">// Class name: ModelListClass</span></div>
<div class="foldopen" id="foldopen00015" data-start="{" data-end="};">
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"><a class="line" href="class_model_list_class.html"> 15</a></span><span class="keyword">class </span><a class="code hl_class" href="class_model_list_class.html">ModelListClass</a></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span>{</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> <span class="keyword">struct </span>ModelInfoType</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> {</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> <span class="keywordtype">float</span> positionX, positionY, positionZ;</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> };</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><span class="keyword">public</span>:</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> <a class="code hl_class" href="class_model_list_class.html">ModelListClass</a>();</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> <a class="code hl_class" href="class_model_list_class.html">ModelListClass</a>(<span class="keyword">const</span> <a class="code hl_class" href="class_model_list_class.html">ModelListClass</a>&amp;);</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> <a class="code hl_class" href="class_model_list_class.html">~ModelListClass</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"> 28</span> <span class="keywordtype">void</span> Initialize(<span class="keywordtype">int</span>);</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> <span class="keywordtype">void</span> Shutdown();</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="keywordtype">int</span> GetModelCount();</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> <span class="keywordtype">void</span> GetData(<span class="keywordtype">int</span>, <span class="keywordtype">float</span>&amp;, <span class="keywordtype">float</span>&amp;, <span class="keywordtype">float</span>&amp;);</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> </div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <span class="keywordtype">int</span> m_modelCount;</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> ModelInfoType* m_ModelInfoList;</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span>};</div>
</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"> 39</span><span class="preprocessor">#endif</span></div>
<div class="ttc" id="aclass_model_list_class_html"><div class="ttname"><a href="class_model_list_class.html">ModelListClass</a></div><div class="ttdef"><b>Definition</b> <a href="#l00015">Modellistclass.h:16</a></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_f4a881938f04d9c04de7741e8b9c813b.html">enginecustom</a></li><li class="navelem"><a class="el" href="dir_4288ac3ffb2af5f572fd6fdc04a1176b.html">src</a></li><li class="navelem"><a class="el" href="dir_fa382d1760f3c58d964524ef7c4d69c1.html">inc</a></li><li class="navelem"><a class="el" href="dir_31afb4cde3071d47ca274e3f4ae3badb.html">system</a></li><li class="navelem"><b>Modellistclass.h</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,182 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: enginecustom/src/src/system/Skybox.cpp 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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('_skybox_8cpp_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">Skybox.cpp</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#include &quot;Skybox.h&quot;</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span> </div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span>Skybox::Skybox()</div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span>{</div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span>}</div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span> </div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span>Skybox::~Skybox()</div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span>{</div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; texture : textures)</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> {</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> <span class="keywordflow">if</span> (texture)</div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> {</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> texture-&gt;Release();</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> texture = <span class="keyword">nullptr</span>;</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> }</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> }</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> textures.clear();</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> translations.clear();</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span>}</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> </div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="keywordtype">void</span> Skybox::Initialize(<a class="code hl_class" href="classd__3d__class.html">d_3d_class</a>* d3dClassRef)</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span>{</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> m_d3dClassRef = d3dClassRef;</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="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="keywordtype">object</span>* Skybox::ConstructSkybox(<a class="code hl_class" href="classapplication__class.html">application_class</a>* app)</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"> 28</span> Logger::Get().Log(<span class="stringliteral">&quot;Construct skybox&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> </div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> <span class="keywordtype">char</span> modelFilename[128];</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> strcpy_s(modelFilename, <span class="stringliteral">&quot;assets/Model/OBJ/skysphere.obj&quot;</span>);</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> </div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> std::vector&lt;std::wstring&gt; skyboxTextures = {</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> L<span class="stringliteral">&quot;assets/Skybox/skybox.png&quot;</span>,</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> };</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> </div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> <a class="code hl_struct" href="struct_texture_container.html">TextureContainer</a> SkyboxTextures;</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"> 39</span> <span class="comment">// Load the textures</span></div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span>&amp; textureFilename : skyboxTextures)</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> {</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> ID3D11ShaderResourceView* texture = <span class="keyword">nullptr</span>;</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> HRESULT result = DirectX::CreateWICTextureFromFile(m_d3dClassRef-&gt;get_device(), m_d3dClassRef-&gt;get_device_context(), textureFilename.c_str(), <span class="keyword">nullptr</span>, &amp;texture);</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> {</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to load texture: &quot;</span> + std::string(textureFilename.begin(), textureFilename.end()), __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> }</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> SkyboxTextures.diffuse.push_back(texture);</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> </div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> }</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> </div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <span class="comment">// Create the model object</span></div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> m_Skybox = <span class="keyword">new</span> <a class="code hl_class" href="classobject.html">object</a>(*app);</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> HRESULT result = m_Skybox-&gt;Initialize(m_d3dClassRef-&gt;get_device(), m_d3dClassRef-&gt;get_device_context(), modelFilename, SkyboxTextures);</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> <span class="keywordflow">if</span> (!result)</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"> 58</span> Logger::Get().Log(<span class="stringliteral">&quot;Could not initialize the skybox model object&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <span class="keyword">delete</span> m_Skybox;</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> }</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> m_Skybox-&gt;SetTranslateMatrix(XMMatrixTranslation(0.0f, 0.0f, 0.0f)); <span class="comment">// Set the initial translation of the skybox</span></div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> m_Skybox-&gt;SetActiveShader(ShaderType::SKYBOX);</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> </div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <span class="keywordflow">return</span> m_Skybox; <span class="comment">// Return the constructed skybox object</span></div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span>}</div>
<div class="ttc" id="aclassapplication__class_html"><div class="ttname"><a href="classapplication__class.html">application_class</a></div><div class="ttdef"><b>Definition</b> <a href="application__class_8h_source.html#l00078">application_class.h:79</a></div></div>
<div class="ttc" id="aclassd__3d__class_html"><div class="ttname"><a href="classd__3d__class.html">d_3d_class</a></div><div class="ttdef"><b>Definition</b> <a href="d__3d__class_8h_source.html#l00030">d_3d_class.h:31</a></div></div>
<div class="ttc" id="aclassobject_html"><div class="ttname"><a href="classobject.html">object</a></div><div class="ttdef"><b>Definition</b> <a href="object_8h_source.html#l00029">object.h:30</a></div></div>
<div class="ttc" id="astruct_texture_container_html"><div class="ttname"><a href="struct_texture_container.html">TextureContainer</a></div><div class="ttdef"><b>Definition</b> <a href="model__class_8h_source.html#l00033">model_class.h:34</a></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_f4a881938f04d9c04de7741e8b9c813b.html">enginecustom</a></li><li class="navelem"><a class="el" href="dir_4288ac3ffb2af5f572fd6fdc04a1176b.html">src</a></li><li class="navelem"><a class="el" href="dir_9f969fb6181399983524402442d3614f.html">src</a></li><li class="navelem"><a class="el" href="dir_eca5a6ecd54f1e6167f92aa8e37ec00f.html">system</a></li><li class="navelem"><b>Skybox.cpp</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,147 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: enginecustom/src/inc/system/Skybox.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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('_skybox_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">Skybox.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#include &lt;vector&gt;</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &quot;d_3d_class.h&quot;</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#include &quot;object.h&quot;</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span> </div>
<div class="foldopen" id="foldopen00007" data-start="{" data-end="};">
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"><a class="line" href="class_skybox.html"> 7</a></span><span class="keyword">class </span><a class="code hl_class" href="class_skybox.html">Skybox</a></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span>{</div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="keyword">public</span>:</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> </div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> <a class="code hl_class" href="class_skybox.html">Skybox</a>();</div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> <a class="code hl_class" href="class_skybox.html">~Skybox</a>();</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> <span class="keywordtype">void</span> Initialize(<a class="code hl_class" href="classd__3d__class.html">d_3d_class</a>* d3dClassRef); <span class="comment">// Get all the required references</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> <span class="keywordtype">object</span>* ConstructSkybox(<a class="code hl_class" href="classapplication__class.html">application_class</a>* app);</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> </div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> </div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> <span class="comment">// Variables</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> </div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> std::vector&lt;ID3D11ShaderResourceView*&gt; textures;</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> std::vector&lt;XMMATRIX&gt; translations;</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> </div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> </div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> <a class="code hl_class" href="classd__3d__class.html">d_3d_class</a>* m_d3dClassRef; <span class="comment">// Reference to the d_3d_class instance</span></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> <span class="keywordtype">object</span>* m_Skybox;</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> </div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> </div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span>};</div>
</div>
<div class="ttc" id="aclass_skybox_html"><div class="ttname"><a href="class_skybox.html">Skybox</a></div><div class="ttdef"><b>Definition</b> <a href="#l00007">Skybox.h:8</a></div></div>
<div class="ttc" id="aclassapplication__class_html"><div class="ttname"><a href="classapplication__class.html">application_class</a></div><div class="ttdef"><b>Definition</b> <a href="application__class_8h_source.html#l00078">application_class.h:79</a></div></div>
<div class="ttc" id="aclassd__3d__class_html"><div class="ttname"><a href="classd__3d__class.html">d_3d_class</a></div><div class="ttdef"><b>Definition</b> <a href="d__3d__class_8h_source.html#l00030">d_3d_class.h:31</a></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_f4a881938f04d9c04de7741e8b9c813b.html">enginecustom</a></li><li class="navelem"><a class="el" href="dir_4288ac3ffb2af5f572fd6fdc04a1176b.html">src</a></li><li class="navelem"><a class="el" href="dir_fa382d1760f3c58d964524ef7c4d69c1.html">inc</a></li><li class="navelem"><a class="el" href="dir_31afb4cde3071d47ca274e3f4ae3badb.html">system</a></li><li class="navelem"><b>Skybox.h</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,523 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: enginecustom/src/src/shader/alpha_map_shader_class.cpp 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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('alpha__map__shader__class_8cpp_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">alpha_map_shader_class.cpp</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#include &quot;alpha_map_shader_class.h&quot;</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span> </div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span>alpha_map_shader_class::alpha_map_shader_class()</div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span>{</div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span> vertex_shader_ = 0;</div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span> pixel_shader_ = 0;</div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> layout_ = 0;</div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> matrix_buffer_ = 0;</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> sample_state_ = 0;</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span>}</div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> </div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span>alpha_map_shader_class::alpha_map_shader_class(<span class="keyword">const</span> <a class="code hl_class" href="classalpha__map__shader__class.html">alpha_map_shader_class</a>&amp; other)</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span>{</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span>}</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> </div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> </div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span>alpha_map_shader_class::~alpha_map_shader_class()</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span>{</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span>}</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> </div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span><span class="keywordtype">bool</span> alpha_map_shader_class::initialize(ID3D11Device* device, HWND hwnd)</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span>{</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> Logger::Get().Log(<span class="stringliteral">&quot;Initializing alpha_map_shader_class&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</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"> 28</span> <span class="keywordtype">bool</span> result;</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> <span class="keywordtype">wchar_t</span> vsFilename[128];</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> <span class="keywordtype">wchar_t</span> psFilename[128];</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="keywordtype">int</span> error;</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> </div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <span class="comment">// Set the filename of the vertex shader.</span></div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> error = wcscpy_s(vsFilename, 128, L<span class="stringliteral">&quot;src/hlsl/alphamap.vs&quot;</span>);</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <span class="keywordflow">if</span> (error != 0)</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> {</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> Logger::Get().Log(<span class="stringliteral">&quot;Error copying string &quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> }</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> </div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> <span class="comment">// Set the filename of the pixel shader.</span></div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> error = wcscpy_s(psFilename, 128, L<span class="stringliteral">&quot;src/hlsl/alphamap.ps&quot;</span>);</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> <span class="keywordflow">if</span> (error != 0)</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> {</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> Logger::Get().Log(<span class="stringliteral">&quot;Error copying string&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</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"> 48</span> </div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> <span class="comment">// initialize the vertex and pixel shaders.</span></div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> result = initialize_shader(device, hwnd, vsFilename, psFilename);</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> {</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> Logger::Get().Log(<span class="stringliteral">&quot;Error initializing shader&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> }</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> </div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span>}</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> </div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> </div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span><span class="keywordtype">void</span> alpha_map_shader_class::shutdown()</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span>{</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> <span class="comment">// shutdown the vertex and pixel shaders as well as the related objects.</span></div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> shutdown_shader();</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"> 66</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span>}</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> </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"> 70</span><span class="keywordtype">bool</span> alpha_map_shader_class::render(ID3D11DeviceContext* deviceContext, <span class="keywordtype">int</span> indexCount, XMMATRIX worldMatrix, XMMATRIX viewMatrix, XMMATRIX projectionMatrix,</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> ID3D11ShaderResourceView* texture1, ID3D11ShaderResourceView* texture2, ID3D11ShaderResourceView* texture3)</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span>{</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <span class="keywordtype">bool</span> result;</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> </div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> </div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <span class="comment">// Set the shader parameters that it will use for rendering.</span></div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> result = set_shader_parameters(deviceContext, worldMatrix, viewMatrix, projectionMatrix, texture1, texture2, texture3);</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> {</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> Logger::Get().Log(<span class="stringliteral">&quot;Error setting shader parameters&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> }</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> </div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="comment">// Now render the prepared buffers with the shader.</span></div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> render_shader(deviceContext, indexCount);</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> </div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span>}</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> </div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> </div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span><span class="keywordtype">bool</span> alpha_map_shader_class::initialize_shader(ID3D11Device* device, HWND hwnd, WCHAR* vsFilename, WCHAR* psFilename)</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"> 93</span> Logger::Get().Log(<span class="stringliteral">&quot;Initializing shader&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> </div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> HRESULT result;</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> ID3D10Blob* errorMessage;</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> ID3D10Blob* vertexShaderBuffer;</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> ID3D10Blob* pixelShaderBuffer;</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> D3D11_INPUT_ELEMENT_DESC polygonLayout[3];</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> numElements;</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> D3D11_BUFFER_DESC matrixBufferDesc;</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> D3D11_SAMPLER_DESC samplerDesc;</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> </div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> </div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> <span class="comment">// initialize the pointers this function will use to null.</span></div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> errorMessage = 0;</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> vertexShaderBuffer = 0;</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> pixelShaderBuffer = 0;</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">// Compile the vertex shader code.</span></div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> result = D3DCompileFromFile(vsFilename, NULL, NULL, <span class="stringliteral">&quot;AlphaMapVertexShader&quot;</span>, <span class="stringliteral">&quot;vs_5_0&quot;</span>, D3D10_SHADER_ENABLE_STRICTNESS, 0,</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> &amp;vertexShaderBuffer, &amp;errorMessage);</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> {</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> <span class="comment">// If the shader failed to compile it should have writen something to the error message.</span></div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> <span class="keywordflow">if</span> (errorMessage)</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> {</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> output_shader_error_message(errorMessage, hwnd, vsFilename);</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> }</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> <span class="comment">// If there was nothing in the error message then it simply could not find the shader file itself.</span></div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> <span class="keywordflow">else</span></div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> {</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> Logger::Get().Log(<span class="stringliteral">&quot;Error compiling shader&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> }</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> </div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> }</div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> </div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> <span class="comment">// Compile the pixel shader code.</span></div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> result = D3DCompileFromFile(psFilename, NULL, NULL, <span class="stringliteral">&quot;AlphaMapPixelShader&quot;</span>, <span class="stringliteral">&quot;ps_5_0&quot;</span>, D3D10_SHADER_ENABLE_STRICTNESS, 0,</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> &amp;pixelShaderBuffer, &amp;errorMessage);</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> {</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> <span class="comment">// If the shader failed to compile it should have writen something to the error message.</span></div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> <span class="keywordflow">if</span> (errorMessage)</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> {</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> output_shader_error_message(errorMessage, hwnd, psFilename);</div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> }</div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> <span class="comment">// If there was nothing in the error message then it simply could not find the file itself.</span></div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> <span class="keywordflow">else</span></div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> {</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> Logger::Get().Log(<span class="stringliteral">&quot;Error compiling shader&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> }</div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> </div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> }</div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> </div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> <span class="comment">// Create the vertex shader from the buffer.</span></div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> result = device-&gt;CreateVertexShader(vertexShaderBuffer-&gt;GetBufferPointer(), vertexShaderBuffer-&gt;GetBufferSize(), NULL, &amp;vertex_shader_);</div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> {</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> Logger::Get().Log(<span class="stringliteral">&quot;Error creating vertex shader&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> }</div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> </div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> <span class="comment">// Create the pixel shader from the buffer.</span></div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> result = device-&gt;CreatePixelShader(pixelShaderBuffer-&gt;GetBufferPointer(), pixelShaderBuffer-&gt;GetBufferSize(), NULL, &amp;pixel_shader_);</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> {</div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> Logger::Get().Log(<span class="stringliteral">&quot;Error creating pixel shader&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> }</div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> </div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> <span class="comment">// Create the vertex input layout description.</span></div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> polygonLayout[0].SemanticName = <span class="stringliteral">&quot;POSITION&quot;</span>;</div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> polygonLayout[0].SemanticIndex = 0;</div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> polygonLayout[0].Format = DXGI_FORMAT_R32G32B32_FLOAT;</div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> polygonLayout[0].InputSlot = 0;</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> polygonLayout[0].AlignedByteOffset = 0;</div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> polygonLayout[0].InputSlotClass = D3D11_INPUT_PER_VERTEX_DATA;</div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> polygonLayout[0].InstanceDataStepRate = 0;</div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> </div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> polygonLayout[1].SemanticName = <span class="stringliteral">&quot;TEXCOORD&quot;</span>;</div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> polygonLayout[1].SemanticIndex = 0;</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> polygonLayout[1].Format = DXGI_FORMAT_R32G32_FLOAT;</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> polygonLayout[1].InputSlot = 0;</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> polygonLayout[1].AlignedByteOffset = D3D11_APPEND_ALIGNED_ELEMENT;</div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> polygonLayout[1].InputSlotClass = D3D11_INPUT_PER_VERTEX_DATA;</div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> polygonLayout[1].InstanceDataStepRate = 0;</div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> </div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> polygonLayout[2].SemanticName = <span class="stringliteral">&quot;NORMAL&quot;</span>;</div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> polygonLayout[2].SemanticIndex = 0;</div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> polygonLayout[2].Format = DXGI_FORMAT_R32G32B32_FLOAT;</div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> polygonLayout[2].InputSlot = 0;</div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> polygonLayout[2].AlignedByteOffset = D3D11_APPEND_ALIGNED_ELEMENT;</div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> polygonLayout[2].InputSlotClass = D3D11_INPUT_PER_VERTEX_DATA;</div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> polygonLayout[2].InstanceDataStepRate = 0;</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> </div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> <span class="comment">// Get a count of the elements in the layout.</span></div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> numElements = <span class="keyword">sizeof</span>(polygonLayout) / <span class="keyword">sizeof</span>(polygonLayout[0]);</div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> </div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> <span class="comment">// Create the vertex input layout.</span></div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> result = device-&gt;CreateInputLayout(polygonLayout, numElements, vertexShaderBuffer-&gt;GetBufferPointer(),</div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> vertexShaderBuffer-&gt;GetBufferSize(), &amp;layout_);</div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span> {</div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span> Logger::Get().Log(<span class="stringliteral">&quot;Error creating input layout&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span> }</div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span> </div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> <span class="comment">// Release the vertex shader buffer and pixel shader buffer since they are no longer needed.</span></div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span> vertexShaderBuffer-&gt;Release();</div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span> vertexShaderBuffer = 0;</div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span> </div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span> pixelShaderBuffer-&gt;Release();</div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span> pixelShaderBuffer = 0;</div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> </div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span> <span class="comment">// Setup the description of the dynamic matrix constant buffer that is in the vertex shader.</span></div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span> matrixBufferDesc.Usage = D3D11_USAGE_DYNAMIC;</div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> matrixBufferDesc.ByteWidth = <span class="keyword">sizeof</span>(matrix_buffer_type);</div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span> matrixBufferDesc.BindFlags = D3D11_BIND_CONSTANT_BUFFER;</div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span> matrixBufferDesc.CPUAccessFlags = D3D11_CPU_ACCESS_WRITE;</div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span> matrixBufferDesc.MiscFlags = 0;</div>
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno"> 214</span> matrixBufferDesc.StructureByteStride = 0;</div>
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"> 215</span> </div>
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno"> 216</span> <span class="comment">// Create the constant buffer pointer so we can access the vertex shader constant buffer from within this class.</span></div>
<div class="line"><a id="l00217" name="l00217"></a><span class="lineno"> 217</span> result = device-&gt;CreateBuffer(&amp;matrixBufferDesc, NULL, &amp;matrix_buffer_);</div>
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"> 218</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"> 219</span> {</div>
<div class="line"><a id="l00220" name="l00220"></a><span class="lineno"> 220</span> Logger::Get().Log(<span class="stringliteral">&quot;Error creating constant buffer&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00221" name="l00221"></a><span class="lineno"> 221</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno"> 222</span> }</div>
<div class="line"><a id="l00223" name="l00223"></a><span class="lineno"> 223</span> </div>
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"> 224</span> <span class="comment">// Create a texture sampler state description.</span></div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span> samplerDesc.Filter = D3D11_FILTER_MIN_MAG_MIP_LINEAR;</div>
<div class="line"><a id="l00226" name="l00226"></a><span class="lineno"> 226</span> samplerDesc.AddressU = D3D11_TEXTURE_ADDRESS_WRAP;</div>
<div class="line"><a id="l00227" name="l00227"></a><span class="lineno"> 227</span> samplerDesc.AddressV = D3D11_TEXTURE_ADDRESS_WRAP;</div>
<div class="line"><a id="l00228" name="l00228"></a><span class="lineno"> 228</span> samplerDesc.AddressW = D3D11_TEXTURE_ADDRESS_WRAP;</div>
<div class="line"><a id="l00229" name="l00229"></a><span class="lineno"> 229</span> samplerDesc.MipLODBias = 0.0f;</div>
<div class="line"><a id="l00230" name="l00230"></a><span class="lineno"> 230</span> samplerDesc.MaxAnisotropy = 1;</div>
<div class="line"><a id="l00231" name="l00231"></a><span class="lineno"> 231</span> samplerDesc.ComparisonFunc = D3D11_COMPARISON_ALWAYS;</div>
<div class="line"><a id="l00232" name="l00232"></a><span class="lineno"> 232</span> samplerDesc.BorderColor[0] = 0;</div>
<div class="line"><a id="l00233" name="l00233"></a><span class="lineno"> 233</span> samplerDesc.BorderColor[1] = 0;</div>
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"> 234</span> samplerDesc.BorderColor[2] = 0;</div>
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno"> 235</span> samplerDesc.BorderColor[3] = 0;</div>
<div class="line"><a id="l00236" name="l00236"></a><span class="lineno"> 236</span> samplerDesc.MinLOD = 0;</div>
<div class="line"><a id="l00237" name="l00237"></a><span class="lineno"> 237</span> samplerDesc.MaxLOD = D3D11_FLOAT32_MAX;</div>
<div class="line"><a id="l00238" name="l00238"></a><span class="lineno"> 238</span> </div>
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno"> 239</span> <span class="comment">// Create the texture sampler state.</span></div>
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"> 240</span> result = device-&gt;CreateSamplerState(&amp;samplerDesc, &amp;sample_state_);</div>
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"> 241</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno"> 242</span> {</div>
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"> 243</span> Logger::Get().Log(<span class="stringliteral">&quot;Error creating sampler state&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno"> 244</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00245" name="l00245"></a><span class="lineno"> 245</span> }</div>
<div class="line"><a id="l00246" name="l00246"></a><span class="lineno"> 246</span> </div>
<div class="line"><a id="l00247" name="l00247"></a><span class="lineno"> 247</span> Logger::Get().Log(<span class="stringliteral">&quot;Shader initialized&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><a id="l00248" name="l00248"></a><span class="lineno"> 248</span> </div>
<div class="line"><a id="l00249" name="l00249"></a><span class="lineno"> 249</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00250" name="l00250"></a><span class="lineno"> 250</span>}</div>
<div class="line"><a id="l00251" name="l00251"></a><span class="lineno"> 251</span> </div>
<div class="line"><a id="l00252" name="l00252"></a><span class="lineno"> 252</span> </div>
<div class="line"><a id="l00253" name="l00253"></a><span class="lineno"> 253</span><span class="keywordtype">void</span> alpha_map_shader_class::shutdown_shader()</div>
<div class="line"><a id="l00254" name="l00254"></a><span class="lineno"> 254</span>{</div>
<div class="line"><a id="l00255" name="l00255"></a><span class="lineno"> 255</span> </div>
<div class="line"><a id="l00256" name="l00256"></a><span class="lineno"> 256</span> Logger::Get().Log(<span class="stringliteral">&quot;Shutting down shader&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno"> 257</span> </div>
<div class="line"><a id="l00258" name="l00258"></a><span class="lineno"> 258</span> <span class="comment">// Release the sampler state.</span></div>
<div class="line"><a id="l00259" name="l00259"></a><span class="lineno"> 259</span> <span class="keywordflow">if</span> (sample_state_)</div>
<div class="line"><a id="l00260" name="l00260"></a><span class="lineno"> 260</span> {</div>
<div class="line"><a id="l00261" name="l00261"></a><span class="lineno"> 261</span> Logger::Get().Log(<span class="stringliteral">&quot;Releasing sampler state&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00262" name="l00262"></a><span class="lineno"> 262</span> sample_state_-&gt;Release();</div>
<div class="line"><a id="l00263" name="l00263"></a><span class="lineno"> 263</span> sample_state_ = 0;</div>
<div class="line"><a id="l00264" name="l00264"></a><span class="lineno"> 264</span> Logger::Get().Log(<span class="stringliteral">&quot;Sampler state released&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno"> 265</span> }</div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span> </div>
<div class="line"><a id="l00267" name="l00267"></a><span class="lineno"> 267</span> <span class="comment">// Release the matrix constant buffer.</span></div>
<div class="line"><a id="l00268" name="l00268"></a><span class="lineno"> 268</span> <span class="keywordflow">if</span> (matrix_buffer_)</div>
<div class="line"><a id="l00269" name="l00269"></a><span class="lineno"> 269</span> {</div>
<div class="line"><a id="l00270" name="l00270"></a><span class="lineno"> 270</span> Logger::Get().Log(<span class="stringliteral">&quot;Releasing constant buffer&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00271" name="l00271"></a><span class="lineno"> 271</span> matrix_buffer_-&gt;Release();</div>
<div class="line"><a id="l00272" name="l00272"></a><span class="lineno"> 272</span> matrix_buffer_ = 0;</div>
<div class="line"><a id="l00273" name="l00273"></a><span class="lineno"> 273</span> Logger::Get().Log(<span class="stringliteral">&quot;Constant buffer released&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00274" name="l00274"></a><span class="lineno"> 274</span> }</div>
<div class="line"><a id="l00275" name="l00275"></a><span class="lineno"> 275</span> </div>
<div class="line"><a id="l00276" name="l00276"></a><span class="lineno"> 276</span> <span class="comment">// Release the layout.</span></div>
<div class="line"><a id="l00277" name="l00277"></a><span class="lineno"> 277</span> <span class="keywordflow">if</span> (layout_)</div>
<div class="line"><a id="l00278" name="l00278"></a><span class="lineno"> 278</span> {</div>
<div class="line"><a id="l00279" name="l00279"></a><span class="lineno"> 279</span> Logger::Get().Log(<span class="stringliteral">&quot;Releasing layout&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00280" name="l00280"></a><span class="lineno"> 280</span> layout_-&gt;Release();</div>
<div class="line"><a id="l00281" name="l00281"></a><span class="lineno"> 281</span> layout_ = 0;</div>
<div class="line"><a id="l00282" name="l00282"></a><span class="lineno"> 282</span> Logger::Get().Log(<span class="stringliteral">&quot;Layout released&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00283" name="l00283"></a><span class="lineno"> 283</span> }</div>
<div class="line"><a id="l00284" name="l00284"></a><span class="lineno"> 284</span> </div>
<div class="line"><a id="l00285" name="l00285"></a><span class="lineno"> 285</span> <span class="comment">// Release the pixel shader.</span></div>
<div class="line"><a id="l00286" name="l00286"></a><span class="lineno"> 286</span> <span class="keywordflow">if</span> (pixel_shader_)</div>
<div class="line"><a id="l00287" name="l00287"></a><span class="lineno"> 287</span> {</div>
<div class="line"><a id="l00288" name="l00288"></a><span class="lineno"> 288</span> Logger::Get().Log(<span class="stringliteral">&quot;Releasing pixel shader&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00289" name="l00289"></a><span class="lineno"> 289</span> pixel_shader_-&gt;Release();</div>
<div class="line"><a id="l00290" name="l00290"></a><span class="lineno"> 290</span> pixel_shader_ = 0;</div>
<div class="line"><a id="l00291" name="l00291"></a><span class="lineno"> 291</span> Logger::Get().Log(<span class="stringliteral">&quot;Pixel shader released&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00292" name="l00292"></a><span class="lineno"> 292</span> }</div>
<div class="line"><a id="l00293" name="l00293"></a><span class="lineno"> 293</span> </div>
<div class="line"><a id="l00294" name="l00294"></a><span class="lineno"> 294</span> <span class="comment">// Release the vertex shader.</span></div>
<div class="line"><a id="l00295" name="l00295"></a><span class="lineno"> 295</span> <span class="keywordflow">if</span> (vertex_shader_)</div>
<div class="line"><a id="l00296" name="l00296"></a><span class="lineno"> 296</span> {</div>
<div class="line"><a id="l00297" name="l00297"></a><span class="lineno"> 297</span> Logger::Get().Log(<span class="stringliteral">&quot;Releasing vertex shader&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00298" name="l00298"></a><span class="lineno"> 298</span> vertex_shader_-&gt;Release();</div>
<div class="line"><a id="l00299" name="l00299"></a><span class="lineno"> 299</span> vertex_shader_ = 0;</div>
<div class="line"><a id="l00300" name="l00300"></a><span class="lineno"> 300</span> Logger::Get().Log(<span class="stringliteral">&quot;Vertex shader released&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00301" name="l00301"></a><span class="lineno"> 301</span> }</div>
<div class="line"><a id="l00302" name="l00302"></a><span class="lineno"> 302</span> </div>
<div class="line"><a id="l00303" name="l00303"></a><span class="lineno"> 303</span> Logger::Get().Log(<span class="stringliteral">&quot;Shader shutdown complete&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00304" name="l00304"></a><span class="lineno"> 304</span> </div>
<div class="line"><a id="l00305" name="l00305"></a><span class="lineno"> 305</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00306" name="l00306"></a><span class="lineno"> 306</span>}</div>
<div class="line"><a id="l00307" name="l00307"></a><span class="lineno"> 307</span> </div>
<div class="line"><a id="l00308" name="l00308"></a><span class="lineno"> 308</span> </div>
<div class="line"><a id="l00309" name="l00309"></a><span class="lineno"> 309</span><span class="keywordtype">void</span> alpha_map_shader_class::output_shader_error_message(ID3D10Blob* errorMessage, HWND hwnd, WCHAR* shaderFilename)</div>
<div class="line"><a id="l00310" name="l00310"></a><span class="lineno"> 310</span>{</div>
<div class="line"><a id="l00311" name="l00311"></a><span class="lineno"> 311</span> <span class="keywordtype">char</span>* compileErrors;</div>
<div class="line"><a id="l00312" name="l00312"></a><span class="lineno"> 312</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> bufferSize, i;</div>
<div class="line"><a id="l00313" name="l00313"></a><span class="lineno"> 313</span> ofstream fout;</div>
<div class="line"><a id="l00314" name="l00314"></a><span class="lineno"> 314</span> </div>
<div class="line"><a id="l00315" name="l00315"></a><span class="lineno"> 315</span> </div>
<div class="line"><a id="l00316" name="l00316"></a><span class="lineno"> 316</span> <span class="comment">// Get a pointer to the error message text buffer.</span></div>
<div class="line"><a id="l00317" name="l00317"></a><span class="lineno"> 317</span> compileErrors = (<span class="keywordtype">char</span>*)(errorMessage-&gt;GetBufferPointer());</div>
<div class="line"><a id="l00318" name="l00318"></a><span class="lineno"> 318</span> </div>
<div class="line"><a id="l00319" name="l00319"></a><span class="lineno"> 319</span> <span class="comment">// Get the length of the message.</span></div>
<div class="line"><a id="l00320" name="l00320"></a><span class="lineno"> 320</span> bufferSize = errorMessage-&gt;GetBufferSize();</div>
<div class="line"><a id="l00321" name="l00321"></a><span class="lineno"> 321</span> </div>
<div class="line"><a id="l00322" name="l00322"></a><span class="lineno"> 322</span> <span class="comment">// Open a file to write the error message to.</span></div>
<div class="line"><a id="l00323" name="l00323"></a><span class="lineno"> 323</span> fout.open(<span class="stringliteral">&quot;shader-error.txt&quot;</span>);</div>
<div class="line"><a id="l00324" name="l00324"></a><span class="lineno"> 324</span> </div>
<div class="line"><a id="l00325" name="l00325"></a><span class="lineno"> 325</span> <span class="comment">// Write out the error message.</span></div>
<div class="line"><a id="l00326" name="l00326"></a><span class="lineno"> 326</span> <span class="keywordflow">for</span> (i = 0; i &lt; bufferSize; i++)</div>
<div class="line"><a id="l00327" name="l00327"></a><span class="lineno"> 327</span> {</div>
<div class="line"><a id="l00328" name="l00328"></a><span class="lineno"> 328</span> fout &lt;&lt; compileErrors[i];</div>
<div class="line"><a id="l00329" name="l00329"></a><span class="lineno"> 329</span> }</div>
<div class="line"><a id="l00330" name="l00330"></a><span class="lineno"> 330</span> </div>
<div class="line"><a id="l00331" name="l00331"></a><span class="lineno"> 331</span> <span class="comment">// Close the file.</span></div>
<div class="line"><a id="l00332" name="l00332"></a><span class="lineno"> 332</span> fout.close();</div>
<div class="line"><a id="l00333" name="l00333"></a><span class="lineno"> 333</span> </div>
<div class="line"><a id="l00334" name="l00334"></a><span class="lineno"> 334</span> <span class="comment">// Release the error message.</span></div>
<div class="line"><a id="l00335" name="l00335"></a><span class="lineno"> 335</span> errorMessage-&gt;Release();</div>
<div class="line"><a id="l00336" name="l00336"></a><span class="lineno"> 336</span> errorMessage = 0;</div>
<div class="line"><a id="l00337" name="l00337"></a><span class="lineno"> 337</span> </div>
<div class="line"><a id="l00338" name="l00338"></a><span class="lineno"> 338</span> <span class="comment">// Pop a message up on the screen to notify the user to check the text file for compile errors.</span></div>
<div class="line"><a id="l00339" name="l00339"></a><span class="lineno"> 339</span> MessageBox(hwnd, L<span class="stringliteral">&quot;Error compiling shader. Check shader-error.txt for message.&quot;</span>, shaderFilename, MB_OK);</div>
<div class="line"><a id="l00340" name="l00340"></a><span class="lineno"> 340</span> </div>
<div class="line"><a id="l00341" name="l00341"></a><span class="lineno"> 341</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00342" name="l00342"></a><span class="lineno"> 342</span>}</div>
<div class="line"><a id="l00343" name="l00343"></a><span class="lineno"> 343</span> </div>
<div class="line"><a id="l00344" name="l00344"></a><span class="lineno"> 344</span> </div>
<div class="line"><a id="l00345" name="l00345"></a><span class="lineno"> 345</span><span class="keywordtype">bool</span> alpha_map_shader_class::set_shader_parameters(ID3D11DeviceContext* deviceContext, XMMATRIX worldMatrix, XMMATRIX viewMatrix, XMMATRIX projectionMatrix,</div>
<div class="line"><a id="l00346" name="l00346"></a><span class="lineno"> 346</span> ID3D11ShaderResourceView* texture1, ID3D11ShaderResourceView* texture2, ID3D11ShaderResourceView* texture3)</div>
<div class="line"><a id="l00347" name="l00347"></a><span class="lineno"> 347</span>{</div>
<div class="line"><a id="l00348" name="l00348"></a><span class="lineno"> 348</span> HRESULT result;</div>
<div class="line"><a id="l00349" name="l00349"></a><span class="lineno"> 349</span> D3D11_MAPPED_SUBRESOURCE mappedResource;</div>
<div class="line"><a id="l00350" name="l00350"></a><span class="lineno"> 350</span> matrix_buffer_type* dataPtr;</div>
<div class="line"><a id="l00351" name="l00351"></a><span class="lineno"> 351</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> bufferNumber;</div>
<div class="line"><a id="l00352" name="l00352"></a><span class="lineno"> 352</span> </div>
<div class="line"><a id="l00353" name="l00353"></a><span class="lineno"> 353</span> </div>
<div class="line"><a id="l00354" name="l00354"></a><span class="lineno"> 354</span> <span class="comment">// Transpose the matrices to prepare them for the shader.</span></div>
<div class="line"><a id="l00355" name="l00355"></a><span class="lineno"> 355</span> worldMatrix = XMMatrixTranspose(worldMatrix);</div>
<div class="line"><a id="l00356" name="l00356"></a><span class="lineno"> 356</span> viewMatrix = XMMatrixTranspose(viewMatrix);</div>
<div class="line"><a id="l00357" name="l00357"></a><span class="lineno"> 357</span> projectionMatrix = XMMatrixTranspose(projectionMatrix);</div>
<div class="line"><a id="l00358" name="l00358"></a><span class="lineno"> 358</span> </div>
<div class="line"><a id="l00359" name="l00359"></a><span class="lineno"> 359</span> <span class="comment">// Lock the constant buffer so it can be written to.</span></div>
<div class="line"><a id="l00360" name="l00360"></a><span class="lineno"> 360</span> result = deviceContext-&gt;Map(matrix_buffer_, 0, D3D11_MAP_WRITE_DISCARD, 0, &amp;mappedResource);</div>
<div class="line"><a id="l00361" name="l00361"></a><span class="lineno"> 361</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><a id="l00362" name="l00362"></a><span class="lineno"> 362</span> {</div>
<div class="line"><a id="l00363" name="l00363"></a><span class="lineno"> 363</span> Logger::Get().Log(<span class="stringliteral">&quot;Error mapping constant buffer&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00364" name="l00364"></a><span class="lineno"> 364</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00365" name="l00365"></a><span class="lineno"> 365</span> }</div>
<div class="line"><a id="l00366" name="l00366"></a><span class="lineno"> 366</span> </div>
<div class="line"><a id="l00367" name="l00367"></a><span class="lineno"> 367</span> <span class="comment">// Get a pointer to the data in the constant buffer.</span></div>
<div class="line"><a id="l00368" name="l00368"></a><span class="lineno"> 368</span> dataPtr = (matrix_buffer_type*)mappedResource.pData;</div>
<div class="line"><a id="l00369" name="l00369"></a><span class="lineno"> 369</span> </div>
<div class="line"><a id="l00370" name="l00370"></a><span class="lineno"> 370</span> <span class="comment">// Copy the matrices into the constant buffer.</span></div>
<div class="line"><a id="l00371" name="l00371"></a><span class="lineno"> 371</span> dataPtr-&gt;world = worldMatrix;</div>
<div class="line"><a id="l00372" name="l00372"></a><span class="lineno"> 372</span> dataPtr-&gt;view = viewMatrix;</div>
<div class="line"><a id="l00373" name="l00373"></a><span class="lineno"> 373</span> dataPtr-&gt;projection = projectionMatrix;</div>
<div class="line"><a id="l00374" name="l00374"></a><span class="lineno"> 374</span> </div>
<div class="line"><a id="l00375" name="l00375"></a><span class="lineno"> 375</span> <span class="comment">// Unlock the constant buffer.</span></div>
<div class="line"><a id="l00376" name="l00376"></a><span class="lineno"> 376</span> deviceContext-&gt;Unmap(matrix_buffer_, 0);</div>
<div class="line"><a id="l00377" name="l00377"></a><span class="lineno"> 377</span> </div>
<div class="line"><a id="l00378" name="l00378"></a><span class="lineno"> 378</span> <span class="comment">// Set the position of the constant buffer in the vertex shader.</span></div>
<div class="line"><a id="l00379" name="l00379"></a><span class="lineno"> 379</span> bufferNumber = 0;</div>
<div class="line"><a id="l00380" name="l00380"></a><span class="lineno"> 380</span> </div>
<div class="line"><a id="l00381" name="l00381"></a><span class="lineno"> 381</span> <span class="comment">// Finally set the constant buffer in the vertex shader with the updated values.</span></div>
<div class="line"><a id="l00382" name="l00382"></a><span class="lineno"> 382</span> deviceContext-&gt;VSSetConstantBuffers(bufferNumber, 1, &amp;matrix_buffer_);</div>
<div class="line"><a id="l00383" name="l00383"></a><span class="lineno"> 383</span> </div>
<div class="line"><a id="l00384" name="l00384"></a><span class="lineno"> 384</span> <span class="comment">// Set shader texture resources in the pixel shader.</span></div>
<div class="line"><a id="l00385" name="l00385"></a><span class="lineno"> 385</span> deviceContext-&gt;PSSetShaderResources(0, 1, &amp;texture1);</div>
<div class="line"><a id="l00386" name="l00386"></a><span class="lineno"> 386</span> deviceContext-&gt;PSSetShaderResources(1, 1, &amp;texture2);</div>
<div class="line"><a id="l00387" name="l00387"></a><span class="lineno"> 387</span> deviceContext-&gt;PSSetShaderResources(2, 1, &amp;texture3);</div>
<div class="line"><a id="l00388" name="l00388"></a><span class="lineno"> 388</span> </div>
<div class="line"><a id="l00389" name="l00389"></a><span class="lineno"> 389</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00390" name="l00390"></a><span class="lineno"> 390</span>}</div>
<div class="line"><a id="l00391" name="l00391"></a><span class="lineno"> 391</span> </div>
<div class="line"><a id="l00392" name="l00392"></a><span class="lineno"> 392</span> </div>
<div class="line"><a id="l00393" name="l00393"></a><span class="lineno"> 393</span><span class="keywordtype">void</span> alpha_map_shader_class::render_shader(ID3D11DeviceContext* deviceContext, <span class="keywordtype">int</span> indexCount)</div>
<div class="line"><a id="l00394" name="l00394"></a><span class="lineno"> 394</span>{</div>
<div class="line"><a id="l00395" name="l00395"></a><span class="lineno"> 395</span> </div>
<div class="line"><a id="l00396" name="l00396"></a><span class="lineno"> 396</span> <span class="comment">// Set the vertex input layout.</span></div>
<div class="line"><a id="l00397" name="l00397"></a><span class="lineno"> 397</span> deviceContext-&gt;IASetInputLayout(layout_);</div>
<div class="line"><a id="l00398" name="l00398"></a><span class="lineno"> 398</span> </div>
<div class="line"><a id="l00399" name="l00399"></a><span class="lineno"> 399</span> <span class="comment">// Set the vertex and pixel shaders that will be used to render this triangle.</span></div>
<div class="line"><a id="l00400" name="l00400"></a><span class="lineno"> 400</span> deviceContext-&gt;VSSetShader(vertex_shader_, NULL, 0);</div>
<div class="line"><a id="l00401" name="l00401"></a><span class="lineno"> 401</span> deviceContext-&gt;PSSetShader(pixel_shader_, NULL, 0);</div>
<div class="line"><a id="l00402" name="l00402"></a><span class="lineno"> 402</span> </div>
<div class="line"><a id="l00403" name="l00403"></a><span class="lineno"> 403</span> <span class="comment">// Set the sampler state in the pixel shader.</span></div>
<div class="line"><a id="l00404" name="l00404"></a><span class="lineno"> 404</span> deviceContext-&gt;PSSetSamplers(0, 1, &amp;sample_state_);</div>
<div class="line"><a id="l00405" name="l00405"></a><span class="lineno"> 405</span> </div>
<div class="line"><a id="l00406" name="l00406"></a><span class="lineno"> 406</span> <span class="comment">// render the triangle.</span></div>
<div class="line"><a id="l00407" name="l00407"></a><span class="lineno"> 407</span> deviceContext-&gt;DrawIndexed(indexCount, 0, 0);</div>
<div class="line"><a id="l00408" name="l00408"></a><span class="lineno"> 408</span> </div>
<div class="line"><a id="l00409" name="l00409"></a><span class="lineno"> 409</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00410" name="l00410"></a><span class="lineno"> 410</span>}</div>
<div class="ttc" id="aclassalpha__map__shader__class_html"><div class="ttname"><a href="classalpha__map__shader__class.html">alpha_map_shader_class</a></div><div class="ttdef"><b>Definition</b> <a href="alpha__map__shader__class_8h_source.html#l00020">alpha_map_shader_class.h:21</a></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_f4a881938f04d9c04de7741e8b9c813b.html">enginecustom</a></li><li class="navelem"><a class="el" href="dir_4288ac3ffb2af5f572fd6fdc04a1176b.html">src</a></li><li class="navelem"><a class="el" href="dir_9f969fb6181399983524402442d3614f.html">src</a></li><li class="navelem"><a class="el" href="dir_b9b5903ed1b60456b17bbae9b6f189f3.html">shader</a></li><li class="navelem"><b>alpha_map_shader_class.cpp</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,166 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: enginecustom/src/inc/shader/alpha_map_shader_class.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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('alpha__map__shader__class_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">alpha_map_shader_class.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#ifndef _ALPHAMAPSHADERCLASS_H_</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#define _ALPHAMAPSHADERCLASS_H_</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span> </div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment">// INCLUDES //</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include &quot;Logger.h&quot;</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="preprocessor">#include &lt;d3d11.h&gt;</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#include &lt;d3dcompiler.h&gt;</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="preprocessor">#include &lt;directxmath.h&gt;</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#include &lt;fstream&gt;</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="keyword">using namespace </span>DirectX;</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="keyword">using namespace </span>std;</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> </div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="comment">// Class name: alpha_map_shader_class</span></div>
<div class="foldopen" id="foldopen00020" data-start="{" data-end="};">
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"><a class="line" href="classalpha__map__shader__class.html"> 20</a></span><span class="keyword">class </span><a class="code hl_class" href="classalpha__map__shader__class.html">alpha_map_shader_class</a></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span>{</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> <span class="keyword">struct </span>matrix_buffer_type</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> XMMATRIX world;</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> XMMATRIX view;</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> XMMATRIX projection;</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> };</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> </div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span><span class="keyword">public</span>:</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <a class="code hl_class" href="classalpha__map__shader__class.html">alpha_map_shader_class</a>();</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> <a class="code hl_class" href="classalpha__map__shader__class.html">alpha_map_shader_class</a>(<span class="keyword">const</span> <a class="code hl_class" href="classalpha__map__shader__class.html">alpha_map_shader_class</a>&amp;);</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <a class="code hl_class" href="classalpha__map__shader__class.html">~alpha_map_shader_class</a>();</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> </div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <span class="keywordtype">bool</span> initialize(ID3D11Device*, HWND);</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> <span class="keywordtype">void</span> shutdown();</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> <span class="keywordtype">bool</span> render(ID3D11DeviceContext*, <span class="keywordtype">int</span>, XMMATRIX, XMMATRIX, XMMATRIX, ID3D11ShaderResourceView*, ID3D11ShaderResourceView*, ID3D11ShaderResourceView*);</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"> 39</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> <span class="keywordtype">bool</span> initialize_shader(ID3D11Device*, HWND, WCHAR*, WCHAR*);</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> <span class="keywordtype">void</span> shutdown_shader();</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <span class="keywordtype">void</span> output_shader_error_message(ID3D10Blob*, HWND, WCHAR*);</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <span class="keywordtype">bool</span> set_shader_parameters(ID3D11DeviceContext*, XMMATRIX, XMMATRIX, XMMATRIX, ID3D11ShaderResourceView*, ID3D11ShaderResourceView*, ID3D11ShaderResourceView*);</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> <span class="keywordtype">void</span> render_shader(ID3D11DeviceContext*, <span class="keywordtype">int</span>);</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> </div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> ID3D11VertexShader* vertex_shader_;</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> ID3D11PixelShader* pixel_shader_;</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> ID3D11InputLayout* layout_;</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> ID3D11Buffer* matrix_buffer_;</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> ID3D11SamplerState* sample_state_;</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span>};</div>
</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> </div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span><span class="preprocessor">#endif</span></div>
<div class="ttc" id="aclassalpha__map__shader__class_html"><div class="ttname"><a href="classalpha__map__shader__class.html">alpha_map_shader_class</a></div><div class="ttdef"><b>Definition</b> <a href="#l00020">alpha_map_shader_class.h:21</a></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_f4a881938f04d9c04de7741e8b9c813b.html">enginecustom</a></li><li class="navelem"><a class="el" href="dir_4288ac3ffb2af5f572fd6fdc04a1176b.html">src</a></li><li class="navelem"><a class="el" href="dir_fa382d1760f3c58d964524ef7c4d69c1.html">inc</a></li><li class="navelem"><a class="el" href="dir_a77fd64253ed7da2e528f6b352f899d7.html">shader</a></li><li class="navelem"><b>alpha_map_shader_class.h</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,189 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Class List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('annotated.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">Class List</div></div>
</div><!--header-->
<div class="contents">
<div class="textblock">Here are the classes, structs, unions and interfaces with brief descriptions:</div><div class="directory">
<div class="levels">[detail level <span onclick="javascript:dynsection.toggleLevel(1);">1</span><span onclick="javascript:dynsection.toggleLevel(2);">2</span>]</div><table class="directory">
<tr id="row_0_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_0_" class="arrow" onclick="dynsection.toggleFolder('0_')">&#9660;</span><span class="icona"><span class="icon">N</span></span><a class="el" href="namespaceecs.html" target="_self">ecs</a></td><td class="desc"></td></tr>
<tr id="row_0_0_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classecs_1_1_component.html" target="_self">Component</a></td><td class="desc"></td></tr>
<tr id="row_0_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classecs_1_1_entity.html" target="_self">Entity</a></td><td class="desc"></td></tr>
<tr id="row_0_2_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classecs_1_1_entity_manager.html" target="_self">EntityManager</a></td><td class="desc"></td></tr>
<tr id="row_0_3_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classecs_1_1_identity_component.html" target="_self">IdentityComponent</a></td><td class="desc"></td></tr>
<tr id="row_0_4_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classecs_1_1_model_path_component.html" target="_self">ModelPathComponent</a></td><td class="desc"></td></tr>
<tr id="row_0_5_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classecs_1_1_physics_component.html" target="_self">PhysicsComponent</a></td><td class="desc"></td></tr>
<tr id="row_0_6_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classecs_1_1_render_component.html" target="_self">RenderComponent</a></td><td class="desc"></td></tr>
<tr id="row_0_7_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classecs_1_1_render_system.html" target="_self">RenderSystem</a></td><td class="desc"></td></tr>
<tr id="row_0_8_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classecs_1_1_shader_component.html" target="_self">ShaderComponent</a></td><td class="desc"></td></tr>
<tr id="row_0_9_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classecs_1_1_transform_component.html" target="_self">TransformComponent</a></td><td class="desc"></td></tr>
<tr id="row_1_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classalpha__map__shader__class.html" target="_self">alpha_map_shader_class</a></td><td class="desc"></td></tr>
<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classapplication__class.html" target="_self">application_class</a></td><td class="desc"></td></tr>
<tr id="row_3_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classbitmap__class.html" target="_self">bitmap_class</a></td><td class="desc"></td></tr>
<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classcamera__class.html" target="_self">camera_class</a></td><td class="desc"></td></tr>
<tr id="row_5_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classcelshade__class.html" target="_self">celshade_class</a></td><td class="desc"></td></tr>
<tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classcolor__shader__class.html" target="_self">color_shader_class</a></td><td class="desc"></td></tr>
<tr id="row_7_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classd__3d__class.html" target="_self">d_3d_class</a></td><td class="desc"></td></tr>
<tr id="row_8_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdepth__shader__class.html" target="_self">depth_shader_class</a></td><td class="desc"></td></tr>
<tr id="row_9_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdisplay__plane__class.html" target="_self">display_plane_class</a></td><td class="desc"></td></tr>
<tr id="row_10_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classfont__class.html" target="_self">font_class</a></td><td class="desc"></td></tr>
<tr id="row_11_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classfont__shader__class.html" target="_self">font_shader_class</a></td><td class="desc"></td></tr>
<tr id="row_12_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classfps__class.html" target="_self">fps_class</a></td><td class="desc"></td></tr>
<tr id="row_13_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classfps__limiter.html" target="_self">fps_limiter</a></td><td class="desc"></td></tr>
<tr id="row_14_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classfrustum.html" target="_self">frustum</a></td><td class="desc"></td></tr>
<tr id="row_15_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_frustum_class.html" target="_self">FrustumClass</a></td><td class="desc"></td></tr>
<tr id="row_16_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classimgui_manager.html" target="_self">imguiManager</a></td><td class="desc"></td></tr>
<tr id="row_17_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structinput.html" target="_self">input</a></td><td class="desc"></td></tr>
<tr id="row_18_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classinput__class.html" target="_self">input_class</a></td><td class="desc"></td></tr>
<tr id="row_19_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classlight__class.html" target="_self">light_class</a></td><td class="desc"></td></tr>
<tr id="row_20_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classlight__map__shader__class.html" target="_self">light_map_shader_class</a></td><td class="desc"></td></tr>
<tr id="row_21_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classlight__shader__class.html" target="_self">light_shader_class</a></td><td class="desc"></td></tr>
<tr id="row_22_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_22_" class="arrow" onclick="dynsection.toggleFolder('22_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_logger.html" target="_self">Logger</a></td><td class="desc"></td></tr>
<tr id="row_22_0_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_logger_1_1_log_entry.html" target="_self">LogEntry</a></td><td class="desc"></td></tr>
<tr id="row_22_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_logger_1_1_log_level_info.html" target="_self">LogLevelInfo</a></td><td class="desc"></td></tr>
<tr id="row_23_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmaster__shader.html" target="_self">master_shader</a></td><td class="desc"></td></tr>
<tr id="row_24_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_24_" class="arrow" onclick="dynsection.toggleFolder('24_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmodel__class.html" target="_self">model_class</a></td><td class="desc"></td></tr>
<tr id="row_24_0_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structmodel__class_1_1_face.html" target="_self">Face</a></td><td class="desc"></td></tr>
<tr id="row_24_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structmodel__class_1_1_model_type.html" target="_self">ModelType</a></td><td class="desc"></td></tr>
<tr id="row_24_2_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structmodel__class_1_1_normal.html" target="_self">Normal</a></td><td class="desc"></td></tr>
<tr id="row_24_3_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structmodel__class_1_1_temp_vertex_type.html" target="_self">TempVertexType</a></td><td class="desc"></td></tr>
<tr id="row_24_4_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structmodel__class_1_1_texture.html" target="_self">Texture</a></td><td class="desc"></td></tr>
<tr id="row_24_5_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structmodel__class_1_1_vector_type.html" target="_self">VectorType</a></td><td class="desc"></td></tr>
<tr id="row_24_6_" class="odd"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structmodel__class_1_1_vertex.html" target="_self">Vertex</a></td><td class="desc"></td></tr>
<tr id="row_24_7_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structmodel__class_1_1_vertex_type.html" target="_self">VertexType</a></td><td class="desc"></td></tr>
<tr id="row_25_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_model_list_class.html" target="_self">ModelListClass</a></td><td class="desc"></td></tr>
<tr id="row_26_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classmulti__texture__shader__class.html" target="_self">multi_texture_shader_class</a></td><td class="desc"></td></tr>
<tr id="row_27_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classnormal__map__shader__class.html" target="_self">normal_map_shader_class</a></td><td class="desc"></td></tr>
<tr id="row_28_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classobject.html" target="_self">object</a></td><td class="desc"></td></tr>
<tr id="row_29_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classphysics.html" target="_self">physics</a></td><td class="desc"></td></tr>
<tr id="row_30_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classposition__class.html" target="_self">position_class</a></td><td class="desc"></td></tr>
<tr id="row_31_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classreflection__shader__class.html" target="_self">reflection_shader_class</a></td><td class="desc"></td></tr>
<tr id="row_32_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classrefraction__shader__class.html" target="_self">refraction_shader_class</a></td><td class="desc"></td></tr>
<tr id="row_33_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classrender__texture__class.html" target="_self">render_texture_class</a></td><td class="desc"></td></tr>
<tr id="row_34_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classscene__manager.html" target="_self">scene_manager</a></td><td class="desc"></td></tr>
<tr id="row_35_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classscene_manager.html" target="_self">sceneManager</a></td><td class="desc"></td></tr>
<tr id="row_36_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classshader__manager__class.html" target="_self">shader_manager_class</a></td><td class="desc"></td></tr>
<tr id="row_37_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classshadow__map.html" target="_self">shadow_map</a></td><td class="desc"></td></tr>
<tr id="row_38_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="class_skybox.html" target="_self">Skybox</a></td><td class="desc"></td></tr>
<tr id="row_39_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classskybox__shader__class.html" target="_self">skybox_shader_class</a></td><td class="desc"></td></tr>
<tr id="row_40_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classspec__map__shader__class.html" target="_self">spec_map_shader_class</a></td><td class="desc"></td></tr>
<tr id="row_41_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classsprite__class.html" target="_self">sprite_class</a></td><td class="desc"></td></tr>
<tr id="row_42_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classstats.html" target="_self">stats</a></td><td class="desc"></td></tr>
<tr id="row_43_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classsunlight__shader__class.html" target="_self">sunlight_shader_class</a></td><td class="desc"></td></tr>
<tr id="row_44_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classsystem__class.html" target="_self">system_class</a></td><td class="desc"></td></tr>
<tr id="row_45_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classtext__class.html" target="_self">text_class</a></td><td class="desc"></td></tr>
<tr id="row_46_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classtexture__class.html" target="_self">texture_class</a></td><td class="desc"></td></tr>
<tr id="row_47_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classtexture__shader__class.html" target="_self">texture_shader_class</a></td><td class="desc"></td></tr>
<tr id="row_48_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_texture_container.html" target="_self">TextureContainer</a></td><td class="desc"></td></tr>
<tr id="row_49_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classtimer__class.html" target="_self">timer_class</a></td><td class="desc"></td></tr>
<tr id="row_50_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classtranslate__shader__class.html" target="_self">translate_shader_class</a></td><td class="desc"></td></tr>
<tr id="row_51_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classtransparent__shader__class.html" target="_self">transparent_shader_class</a></td><td class="desc"></td></tr>
<tr id="row_52_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classwater__shader__class.html" target="_self">water_shader_class</a></td><td class="desc"></td></tr>
<tr id="row_53_" class="odd"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structwidget__entry.html" target="_self">widget_entry</a></td><td class="desc"></td></tr>
</table>
</div><!-- directory -->
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,68 @@
var annotated_dup =
[
[ "ecs", "namespaceecs.html", [
[ "Component", "classecs_1_1_component.html", "classecs_1_1_component" ],
[ "Entity", "classecs_1_1_entity.html", "classecs_1_1_entity" ],
[ "EntityManager", "classecs_1_1_entity_manager.html", "classecs_1_1_entity_manager" ],
[ "IdentityComponent", "classecs_1_1_identity_component.html", "classecs_1_1_identity_component" ],
[ "ModelPathComponent", "classecs_1_1_model_path_component.html", "classecs_1_1_model_path_component" ],
[ "PhysicsComponent", "classecs_1_1_physics_component.html", "classecs_1_1_physics_component" ],
[ "RenderComponent", "classecs_1_1_render_component.html", "classecs_1_1_render_component" ],
[ "RenderSystem", "classecs_1_1_render_system.html", "classecs_1_1_render_system" ],
[ "ShaderComponent", "classecs_1_1_shader_component.html", "classecs_1_1_shader_component" ],
[ "TransformComponent", "classecs_1_1_transform_component.html", "classecs_1_1_transform_component" ]
] ],
[ "alpha_map_shader_class", "classalpha__map__shader__class.html", null ],
[ "application_class", "classapplication__class.html", "classapplication__class" ],
[ "bitmap_class", "classbitmap__class.html", null ],
[ "camera_class", "classcamera__class.html", null ],
[ "celshade_class", "classcelshade__class.html", null ],
[ "color_shader_class", "classcolor__shader__class.html", null ],
[ "d_3d_class", "classd__3d__class.html", null ],
[ "depth_shader_class", "classdepth__shader__class.html", null ],
[ "display_plane_class", "classdisplay__plane__class.html", null ],
[ "font_class", "classfont__class.html", null ],
[ "font_shader_class", "classfont__shader__class.html", null ],
[ "fps_class", "classfps__class.html", null ],
[ "fps_limiter", "classfps__limiter.html", null ],
[ "frustum", "classfrustum.html", null ],
[ "FrustumClass", "class_frustum_class.html", null ],
[ "imguiManager", "classimgui_manager.html", null ],
[ "input", "structinput.html", null ],
[ "input_class", "classinput__class.html", null ],
[ "light_class", "classlight__class.html", null ],
[ "light_map_shader_class", "classlight__map__shader__class.html", null ],
[ "light_shader_class", "classlight__shader__class.html", null ],
[ "Logger", "class_logger.html", "class_logger" ],
[ "master_shader", "classmaster__shader.html", null ],
[ "model_class", "classmodel__class.html", "classmodel__class" ],
[ "ModelListClass", "class_model_list_class.html", null ],
[ "multi_texture_shader_class", "classmulti__texture__shader__class.html", null ],
[ "normal_map_shader_class", "classnormal__map__shader__class.html", null ],
[ "object", "classobject.html", null ],
[ "physics", "classphysics.html", null ],
[ "position_class", "classposition__class.html", null ],
[ "reflection_shader_class", "classreflection__shader__class.html", null ],
[ "refraction_shader_class", "classrefraction__shader__class.html", null ],
[ "render_texture_class", "classrender__texture__class.html", null ],
[ "scene_manager", "classscene__manager.html", null ],
[ "sceneManager", "classscene_manager.html", null ],
[ "shader_manager_class", "classshader__manager__class.html", null ],
[ "shadow_map", "classshadow__map.html", null ],
[ "Skybox", "class_skybox.html", null ],
[ "skybox_shader_class", "classskybox__shader__class.html", null ],
[ "spec_map_shader_class", "classspec__map__shader__class.html", null ],
[ "sprite_class", "classsprite__class.html", null ],
[ "stats", "classstats.html", null ],
[ "sunlight_shader_class", "classsunlight__shader__class.html", null ],
[ "system_class", "classsystem__class.html", null ],
[ "text_class", "classtext__class.html", null ],
[ "texture_class", "classtexture__class.html", null ],
[ "texture_shader_class", "classtexture__shader__class.html", null ],
[ "TextureContainer", "struct_texture_container.html", null ],
[ "timer_class", "classtimer__class.html", null ],
[ "translate_shader_class", "classtranslate__shader__class.html", null ],
[ "transparent_shader_class", "classtransparent__shader__class.html", null ],
[ "water_shader_class", "classwater__shader__class.html", null ],
[ "widget_entry", "structwidget__entry.html", null ]
];

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,527 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: enginecustom/src/inc/system/application_class.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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('application__class_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">application_class.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#ifndef _APPLICATIONCLASS_H_</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#define _APPLICATIONCLASS_H_</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span> </div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment">// MY CLASS INCLUDES //</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include &quot;d_3d_class.h&quot;</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="preprocessor">#include &quot;camera_class.h&quot;</span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#include &quot;light_class.h&quot;</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#include &quot;bitmap_class.h&quot;</span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="preprocessor">#include &quot;sprite_class.h&quot;</span></div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="preprocessor">#include &quot;timer_class.h&quot;</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="preprocessor">#include &quot;font_shader_class.h&quot;</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="preprocessor">#include &quot;font_class.h&quot;</span></div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#include &quot;text_class.h&quot;</span></div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="preprocessor">#include &quot;fps_class.h&quot;</span></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="preprocessor">#include &quot;input_class.h&quot;</span></div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="preprocessor">#include &quot;shader_manager_class.h&quot;</span></div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="preprocessor">#include &quot;modellistclass.h&quot;</span></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><span class="preprocessor">#include &quot;position_class.h&quot;</span></div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><span class="preprocessor">#include &quot;frustumclass.h&quot;</span></div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span><span class="preprocessor">#include &quot;render_texture_class.h&quot;</span></div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="preprocessor">#include &quot;display_plane_class.h&quot;</span></div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="preprocessor">#include &quot;translate_shader_class.h&quot;</span></div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="preprocessor">#include &quot;reflection_shader_class.h&quot;</span></div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span><span class="preprocessor">#include &quot;physics.h&quot;</span></div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span><span class="preprocessor">#include &quot;frustum.h&quot;</span></div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span><span class="preprocessor">#include &quot;skybox.h&quot;</span></div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span><span class="preprocessor">#include &quot;shadow_map.h&quot;</span></div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span><span class="preprocessor">#include &quot;stats.h&quot;</span></div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> </div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span><span class="preprocessor">#include &quot;ecs/components/identity_component.h&quot;</span></div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span><span class="preprocessor">#include &quot;ecs/components/render_component.h&quot;</span></div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span><span class="preprocessor">#include &quot;ecs/components/transform_component.h&quot;</span></div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span><span class="preprocessor">#include &quot;ecs/components/physics_component.h&quot;</span></div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span><span class="preprocessor">#include &quot;ecs/components/shader_component.h&quot;</span></div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span><span class="preprocessor">#include &quot;ecs/systems/render_system.h&quot;</span></div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span><span class="preprocessor">#include &quot;ecs/components/model_path_component.h&quot;</span></div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> </div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span><span class="preprocessor">#include &lt;fstream&gt;</span></div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span><span class="preprocessor">#include &lt;WICTextureLoader.h&gt;</span></div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span><span class="preprocessor">#include &lt;comdef.h&gt;</span> <span class="comment">// Pour _com_error</span></div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span><span class="preprocessor">#include &lt;chrono&gt;</span></div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span><span class="preprocessor">#include &lt;thread&gt;</span></div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span><span class="preprocessor">#include &lt;map&gt;</span></div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span><span class="preprocessor">#include &lt;algorithm&gt;</span></div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span><span class="preprocessor">#include &lt;DirectXMath.h&gt;</span></div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span><span class="preprocessor">#include &lt;mutex&gt;</span></div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span><span class="preprocessor">#include &lt;memory&gt;</span></div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span><span class="preprocessor">#include &lt;vector&gt;</span></div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span><span class="preprocessor">#include &lt;filesystem&gt;</span></div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> </div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span><span class="preprocessor">#include &quot;ecs/entity_manager.h&quot;</span></div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> </div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> </div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span><span class="comment">// GLOBALS //</span></div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span><span class="keyword">constexpr</span> <span class="keywordtype">bool</span> full_screen = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span><span class="keyword">constexpr</span> <span class="keywordtype">float</span> screen_depth = 1000.0f;</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span><span class="keyword">constexpr</span> <span class="keywordtype">float</span> screen_near = 0.3f;</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> </div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span><span class="keyword">static</span> std::map&lt;std::string, std::shared_ptr&lt;model_class&gt;&gt; g_model_cache;</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> </div>
<div class="foldopen" id="foldopen00067" data-start="{" data-end="};">
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"><a class="line" href="structinput.html"> 67</a></span><span class="keyword">struct </span><a class="code hl_struct" href="structinput.html">input</a></div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span>{</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> <span class="keywordtype">bool</span> key_left = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> <span class="keywordtype">bool</span> key_right = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="keywordtype">bool</span> key_up = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <span class="keywordtype">bool</span> key_down = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span>};</div>
</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> </div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span><span class="comment">// Class name: application_class</span></div>
<div class="foldopen" id="foldopen00078" data-start="{" data-end="};">
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"><a class="line" href="classapplication__class.html"> 78</a></span><span class="keyword">class </span><a class="code hl_class" href="classapplication__class.html">application_class</a></div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span>{</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span><span class="keyword">public</span>:</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> <a class="code hl_function" href="classapplication__class.html#ab3b678dde613c8568a2124482ed45a73">application_class</a>();</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> <a class="code hl_class" href="classapplication__class.html">~application_class</a>();</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <span class="keyword">virtual</span> <a class="code hl_class" href="classd__3d__class.html">d_3d_class</a>* get_direct_3d();</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> <span class="keywordtype">void</span> set_direct_3d(<a class="code hl_class" href="classd__3d__class.html">d_3d_class</a>* direct_3d) { direct_3d_ = direct_3d; };</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> </div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"><a class="line" href="classapplication__class.html#a69a84a1345d56bb8d81e7d3427ce969e"> 94</a></span> <a class="code hl_class" href="classrender__texture__class.html">render_texture_class</a>* <a class="code hl_function" href="classapplication__class.html#a69a84a1345d56bb8d81e7d3427ce969e">get_scene_texture</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> scene_texture_; };</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"><a class="line" href="classapplication__class.html#a3ec69cb088888911ab1e32490c39f3e6"> 99</a></span> <a class="code hl_class" href="classrender__texture__class.html">render_texture_class</a>* <a class="code hl_function" href="classapplication__class.html#a3ec69cb088888911ab1e32490c39f3e6">get_render_texture</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> render_texture_; };</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"><a class="line" href="classapplication__class.html#a8d993ac51d86d09c2b03b612ed914a74"> 104</a></span> <a class="code hl_class" href="classrender__texture__class.html">render_texture_class</a>* <a class="code hl_function" href="classapplication__class.html#a8d993ac51d86d09c2b03b612ed914a74">get_refraction_texture</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> refraction_texture_; };</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"><a class="line" href="classapplication__class.html#a25592af930b0ee6c34d667fc0f8d69e1"> 109</a></span> <a class="code hl_class" href="classrender__texture__class.html">render_texture_class</a>* <a class="code hl_function" href="classapplication__class.html#a25592af930b0ee6c34d667fc0f8d69e1">get_reflection_texture</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> reflection_texture_; };</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> </div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classapplication__class.html#a7b0482e4b79a4c3bf32e1f40ccb48678">create_big_cube</a>(<span class="keywordtype">int</span> side_count);</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classapplication__class.html#a3be4f6532857c72283450ce43907f309">initialize</a>(<span class="keywordtype">int</span> screen_width, <span class="keywordtype">int</span> screen_height, HWND hwdn, <span class="keywordtype">bool</span> is_vulkan);</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#af2ef20892819f21303002a0f3005e73d">shutdown</a>();</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classapplication__class.html#a0d9b9cbfbe1a2efa52606fcbbdfb40ca">frame</a>(<a class="code hl_class" href="classinput__class.html">input_class</a>*);</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#aa583e172e6a2d45cb9b4841634b9eea4">physics_thread_function</a>();</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"><a class="line" href="classapplication__class.html#a118113b8ab8ad1065b032d57150fa7dd"> 146</a></span> <span class="keywordtype">int</span> <a class="code hl_function" href="classapplication__class.html#a118113b8ab8ad1065b032d57150fa7dd">get_physics_tick_rate</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> physics_tick_rate_; };</div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"><a class="line" href="classapplication__class.html#a8b03fc0a380762e268606262914e55a8"> 151</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#a8b03fc0a380762e268606262914e55a8">set_physics_tick_rate</a>(<span class="keywordtype">int</span> physics_tick_rate) { physics_tick_rate_ = physics_tick_rate; };</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> </div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> <span class="keywordtype">int</span> <a class="code hl_function" href="classapplication__class.html#ae4bf8de77c3edaac71aaba75193c3be9">get_screen_width</a>() <span class="keyword">const</span>;</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#aca66fefd8c7c473e2700a69f13a4cb6b">set_screen_width</a>(<span class="keywordtype">int</span> screen_width);</div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> <span class="keywordtype">int</span> <a class="code hl_function" href="classapplication__class.html#a468b1ed714bae99f4f2fcf7a93407bfb">get_screen_height</a>() <span class="keyword">const</span>;</div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#ae5ed92985e95d9f34a152cae2d7345d7">set_screen_height</a>(<span class="keywordtype">int</span> screen_height);</div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> </div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"><a class="line" href="classapplication__class.html#ad724a8b8867f487bc602406ae20e1301"> 180</a></span> <span class="keywordtype">float</span> <a class="code hl_function" href="classapplication__class.html#ad724a8b8867f487bc602406ae20e1301">get_speed</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> speed_; };</div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"><a class="line" href="classapplication__class.html#a7b1a11759ecc6b80542c7f4f3cf4e8e9"> 187</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#a7b1a11759ecc6b80542c7f4f3cf4e8e9">set_speed</a>(<span class="keyword">const</span> <span class="keywordtype">float</span> speed) { this-&gt;speed_ = speed; };</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> </div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#aaa09afdc106fb3f82788c42272811657">add_cube</a>();</div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#a5ade90e873b7b6a31c148672dd0305cb">delete_entity_by_id</a>(<span class="keywordtype">int</span> entity_id);</div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#a9a39dfe69bca6fe96a339ab47b2f0539">add_kobject</a>(std::wstring&amp; filepath);</div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"><a class="line" href="classapplication__class.html#a4ead7c7ba402fb9619000d201c0cf95f"> 207</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#a4ead7c7ba402fb9619000d201c0cf95f">set_path</a>(WCHAR* path) { path_ = path; };</div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"><a class="line" href="classapplication__class.html#a5dbf967cc3d2a08b07c13b6aa44fafe1"> 211</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#a5dbf967cc3d2a08b07c13b6aa44fafe1">set_w_folder</a>(<span class="keyword">const</span> std::filesystem::path&amp; w_folder) { w_folder_ = w_folder; };</div>
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno"><a class="line" href="classapplication__class.html#a2f6b5156b585944bb912d93fa1595af2"> 216</a></span> std::filesystem::path <a class="code hl_function" href="classapplication__class.html#a2f6b5156b585944bb912d93fa1595af2">get_w_folder</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> w_folder_; };</div>
<div class="line"><a id="l00221" name="l00221"></a><span class="lineno"> 221</span> <span class="keywordtype">int</span> <a class="code hl_function" href="classapplication__class.html#afe1ff7bf39935cae054c8f3743e923e1">get_terrain_entity_count</a>();</div>
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno"> 222</span> </div>
<div class="line"><a id="l00227" name="l00227"></a><span class="lineno"><a class="line" href="classapplication__class.html#a32624a7be14230d2120de382c2c2e298"> 227</a></span> <span class="keywordtype">int</span> <a class="code hl_function" href="classapplication__class.html#a32624a7be14230d2120de382c2c2e298">get_object_id</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> object_id_; };</div>
<div class="line"><a id="l00232" name="l00232"></a><span class="lineno"><a class="line" href="classapplication__class.html#ae586e8e9431b6d6168c335a9ae0f08ca"> 232</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#ae586e8e9431b6d6168c335a9ae0f08ca">set_object_id</a>(<span class="keywordtype">int</span> object_id) { object_id_ = object_id; };</div>
<div class="line"><a id="l00233" name="l00233"></a><span class="lineno"> 233</span> </div>
<div class="line"><a id="l00237" name="l00237"></a><span class="lineno"> 237</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#aca20ad22e0c95f5404e3c47a11317025">generate_terrain</a>();</div>
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"> 241</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#a69bce73916e1180493ac74030dbb77ba">delete_terrain</a>();</div>
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno"> 242</span> </div>
<div class="line"><a id="l00248" name="l00248"></a><span class="lineno"> 248</span> XMVECTOR <a class="code hl_function" href="classapplication__class.html#a54f4915b1878fde4dc60ff26be5712ee">get_light_position</a>(<span class="keywordtype">int</span> index);</div>
<div class="line"><a id="l00254" name="l00254"></a><span class="lineno"> 254</span> XMVECTOR <a class="code hl_function" href="classapplication__class.html#a85c04a3f2d050cb750d7986ebc7e76a5">get_light_color</a>(<span class="keywordtype">int</span> index);</div>
<div class="line"><a id="l00260" name="l00260"></a><span class="lineno"> 260</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#a1715fe1c06659636399b60e859e6b2ae">set_light_position</a>(<span class="keywordtype">int</span> index, XMVECTOR position);</div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#a79b165193754e7361b0a467f5e70c72b">set_light_color</a>(<span class="keywordtype">int</span> index, XMVECTOR color);</div>
<div class="line"><a id="l00271" name="l00271"></a><span class="lineno"><a class="line" href="classapplication__class.html#a9b1ca112e8d8fd01a7061d9a638e9f3e"> 271</a></span> std::vector&lt;light_class*&gt; <a class="code hl_function" href="classapplication__class.html#a9b1ca112e8d8fd01a7061d9a638e9f3e">get_lights</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> lights_; };</div>
<div class="line"><a id="l00276" name="l00276"></a><span class="lineno"><a class="line" href="classapplication__class.html#ad757f3dc7ad49b74643fca7947889ed6"> 276</a></span> <a class="code hl_class" href="classlight__class.html">light_class</a>* <a class="code hl_function" href="classapplication__class.html#ad757f3dc7ad49b74643fca7947889ed6">get_sun_light</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> sun_light_; };</div>
<div class="line"><a id="l00277" name="l00277"></a><span class="lineno"> 277</span> </div>
<div class="line"><a id="l00283" name="l00283"></a><span class="lineno"><a class="line" href="classapplication__class.html#afea1cdf2706dc45cdae0396b7948f2b0"> 283</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classapplication__class.html#afea1cdf2706dc45cdae0396b7948f2b0">get_should_quit</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> should_quit_; };</div>
<div class="line"><a id="l00289" name="l00289"></a><span class="lineno"><a class="line" href="classapplication__class.html#a96068cd56a5bb2ed0c02db3b70272be2"> 289</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#a96068cd56a5bb2ed0c02db3b70272be2">set_should_quit</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> should_quit) { should_quit_ = should_quit; };</div>
<div class="line"><a id="l00290" name="l00290"></a><span class="lineno"> 290</span> </div>
<div class="line"><a id="l00297" name="l00297"></a><span class="lineno"><a class="line" href="classapplication__class.html#a1bdce1b8c5a23cd60dd35c441a670601"> 297</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#a1bdce1b8c5a23cd60dd35c441a670601">set_cel_shading</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> enable) { enable_cel_shading_ = enable; };</div>
<div class="line"><a id="l00298" name="l00298"></a><span class="lineno"> 298</span> </div>
<div class="foldopen" id="foldopen00303" data-start="{" data-end="}">
<div class="line"><a id="l00303" name="l00303"></a><span class="lineno"><a class="line" href="classapplication__class.html#a642858510be15dc3d2890ccc5f6df31f"> 303</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#a642858510be15dc3d2890ccc5f6df31f">set_vsync</a>(<span class="keywordtype">bool</span> vsync) { </div>
<div class="line"><a id="l00304" name="l00304"></a><span class="lineno"> 304</span> vsync_enabled_ = vsync; </div>
<div class="line"><a id="l00305" name="l00305"></a><span class="lineno"> 305</span> <span class="keywordflow">if</span> (direct_3d_) {</div>
<div class="line"><a id="l00306" name="l00306"></a><span class="lineno"> 306</span> direct_3d_-&gt;set_vsync(vsync); </div>
<div class="line"><a id="l00307" name="l00307"></a><span class="lineno"> 307</span> Logger::Get().Log(<span class="stringliteral">&quot;Setting Vsync to &quot;</span> + std::to_string(vsync), __FILE__, __LINE__);</div>
<div class="line"><a id="l00308" name="l00308"></a><span class="lineno"> 308</span> }</div>
<div class="line"><a id="l00309" name="l00309"></a><span class="lineno"> 309</span> };</div>
</div>
<div class="line"><a id="l00310" name="l00310"></a><span class="lineno"> 310</span> </div>
<div class="line"><a id="l00315" name="l00315"></a><span class="lineno"><a class="line" href="classapplication__class.html#aa79efde57fb87b64bf95b47ee87c3bff"> 315</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classapplication__class.html#aa79efde57fb87b64bf95b47ee87c3bff">get_vsync</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> vsync_enabled_; };</div>
<div class="line"><a id="l00316" name="l00316"></a><span class="lineno"> 316</span> </div>
<div class="line"><a id="l00321" name="l00321"></a><span class="lineno"><a class="line" href="classapplication__class.html#a692f521b7d27a89a95848dd912342c1f"> 321</a></span> HWND <a class="code hl_function" href="classapplication__class.html#a692f521b7d27a89a95848dd912342c1f">get_hwnd</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> hwnd_; };</div>
<div class="line"><a id="l00326" name="l00326"></a><span class="lineno"><a class="line" href="classapplication__class.html#a40392869f0ff57982fef8098dd3354fe"> 326</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#a40392869f0ff57982fef8098dd3354fe">set_hwnd</a>(HWND hwnd) { hwnd_ = hwnd; };</div>
<div class="line"><a id="l00327" name="l00327"></a><span class="lineno"> 327</span> </div>
<div class="line"><a id="l00332" name="l00332"></a><span class="lineno"><a class="line" href="classapplication__class.html#aac1577a0fe08e8007980b6b1778da478"> 332</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classapplication__class.html#aac1577a0fe08e8007980b6b1778da478">is_windowed</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> windowed_; };</div>
<div class="line"><a id="l00337" name="l00337"></a><span class="lineno"><a class="line" href="classapplication__class.html#a7faa4a3a5150086acaec8bc223a4bf7e"> 337</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#a7faa4a3a5150086acaec8bc223a4bf7e">set_windowed</a>(<span class="keywordtype">bool</span> windowed) { windowed_ = windowed; };</div>
<div class="line"><a id="l00338" name="l00338"></a><span class="lineno"> 338</span> </div>
<div class="line"><a id="l00344" name="l00344"></a><span class="lineno"><a class="line" href="classapplication__class.html#ab0418282e11e00cebb3a63747384a24b"> 344</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#ab0418282e11e00cebb3a63747384a24b">set_window_size</a>(<span class="keyword">const</span> ImVec2 size) { window_size_ = size; };</div>
<div class="line"><a id="l00350" name="l00350"></a><span class="lineno"><a class="line" href="classapplication__class.html#a3c76d728525b1ee4558a41383f9f2217"> 350</a></span> ImVec2 <a class="code hl_function" href="classapplication__class.html#a3c76d728525b1ee4558a41383f9f2217">get_window_size</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> window_size_; };</div>
<div class="line"><a id="l00355" name="l00355"></a><span class="lineno"><a class="line" href="classapplication__class.html#a1bbbc70e5a68278f410e9b2b93942230"> 355</a></span> <span class="keywordtype">float</span> <a class="code hl_function" href="classapplication__class.html#a1bbbc70e5a68278f410e9b2b93942230">get_aspect_ratio</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span><span class="keywordtype">float</span><span class="keyword">&gt;</span>(screen_width_) / <span class="keyword">static_cast&lt;</span><span class="keywordtype">float</span><span class="keyword">&gt;</span>(screen_height_); };</div>
<div class="line"><a id="l00356" name="l00356"></a><span class="lineno"> 356</span> </div>
<div class="line"><a id="l00361" name="l00361"></a><span class="lineno"><a class="line" href="classapplication__class.html#ab1924a7177c04594ec5dab7fe4c0104f"> 361</a></span> <a class="code hl_class" href="classphysics.html">physics</a>* <a class="code hl_function" href="classapplication__class.html#ab1924a7177c04594ec5dab7fe4c0104f">get_physics</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> physics_; };</div>
<div class="line"><a id="l00362" name="l00362"></a><span class="lineno"> 362</span> </div>
<div class="line"><a id="l00363" name="l00363"></a><span class="lineno"> 363</span> <span class="comment">// ----------------------------------- //</span></div>
<div class="line"><a id="l00364" name="l00364"></a><span class="lineno"> 364</span> <span class="comment">// ------------- Culling ------------- //</span></div>
<div class="line"><a id="l00365" name="l00365"></a><span class="lineno"> 365</span> <span class="comment">// ----------------------------------- //</span></div>
<div class="line"><a id="l00366" name="l00366"></a><span class="lineno"> 366</span> </div>
<div class="line"><a id="l00371" name="l00371"></a><span class="lineno"><a class="line" href="classapplication__class.html#a29f11f9f0ab0f41af7b1b657d9310209"> 371</a></span> <a class="code hl_class" href="classfrustum.html">frustum</a> <a class="code hl_function" href="classapplication__class.html#a29f11f9f0ab0f41af7b1b657d9310209">get_frustum</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> frustum_culling_; };</div>
<div class="line"><a id="l00376" name="l00376"></a><span class="lineno"><a class="line" href="classapplication__class.html#abd47278db9d786b80833c787900c145b"> 376</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#abd47278db9d786b80833c787900c145b">set_frustum</a>(<span class="keyword">const</span> <a class="code hl_class" href="classfrustum.html">frustum</a>&amp; <a class="code hl_class" href="classfrustum.html">frustum</a>) { frustum_culling_ = <a class="code hl_class" href="classfrustum.html">frustum</a>; };</div>
<div class="line"><a id="l00377" name="l00377"></a><span class="lineno"> 377</span> </div>
<div class="line"><a id="l00382" name="l00382"></a><span class="lineno"> 382</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#a7b959a12a5574b263556937f1c94e255">construct_frustum</a>();</div>
<div class="line"><a id="l00383" name="l00383"></a><span class="lineno"> 383</span> </div>
<div class="line"><a id="l00388" name="l00388"></a><span class="lineno"><a class="line" href="classapplication__class.html#acc0c095b41d72833d974229cc64d0689"> 388</a></span> <span class="keywordtype">int</span> <a class="code hl_function" href="classapplication__class.html#acc0c095b41d72833d974229cc64d0689">get_render_count</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> render_count_; };</div>
<div class="line"><a id="l00393" name="l00393"></a><span class="lineno"><a class="line" href="classapplication__class.html#a1f607939202c0cb805df935eb38dabe7"> 393</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#a1f607939202c0cb805df935eb38dabe7">set_render_count</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> render_count) { render_count_ = render_count; };</div>
<div class="line"><a id="l00399" name="l00399"></a><span class="lineno"><a class="line" href="classapplication__class.html#aa271ce1d2803a5a1fcd9becad215ecb0"> 399</a></span> <span class="keywordtype">float</span> <a class="code hl_function" href="classapplication__class.html#aa271ce1d2803a5a1fcd9becad215ecb0">get_frustum_tolerance</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> frustum_culling_tolerance_; };</div>
<div class="line"><a id="l00405" name="l00405"></a><span class="lineno"><a class="line" href="classapplication__class.html#a2f41c2a8f5f18aca2859b02e804c7a1a"> 405</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#a2f41c2a8f5f18aca2859b02e804c7a1a">set_frustum_tolerance</a>(<span class="keyword">const</span> <span class="keywordtype">float</span> frustum_tolerance) { frustum_culling_tolerance_ = frustum_tolerance; };</div>
<div class="line"><a id="l00406" name="l00406"></a><span class="lineno"> 406</span> </div>
<div class="line"><a id="l00411" name="l00411"></a><span class="lineno"><a class="line" href="classapplication__class.html#abf98d275e281e99e54a68d3b53ba7b94"> 411</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classapplication__class.html#abf98d275e281e99e54a68d3b53ba7b94">get_can_fixed_update</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> can_fixed_update_; };</div>
<div class="line"><a id="l00416" name="l00416"></a><span class="lineno"><a class="line" href="classapplication__class.html#aa0a44059eae0a8df0cb65a7962d598ed"> 416</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#aa0a44059eae0a8df0cb65a7962d598ed">set_can_fixed_update</a>(<span class="keywordtype">bool</span> can_fixed_update) { can_fixed_update_ = can_fixed_update; };</div>
<div class="line"><a id="l00417" name="l00417"></a><span class="lineno"> 417</span> </div>
<div class="line"><a id="l00422" name="l00422"></a><span class="lineno"><a class="line" href="classapplication__class.html#a0e7b21b1421fd52bb3740fb25f26e4a7"> 422</a></span> ID3D11ShaderResourceView* <a class="code hl_function" href="classapplication__class.html#a0e7b21b1421fd52bb3740fb25f26e4a7">get_back_buffer_srv</a>()<span class="keyword"> const </span>{<span class="keywordflow">return</span> back_buffer_srv_;};</div>
<div class="line"><a id="l00423" name="l00423"></a><span class="lineno"> 423</span> </div>
<div class="line"><a id="l00428" name="l00428"></a><span class="lineno"><a class="line" href="classapplication__class.html#adfd9213758db871e03aada83dee961b3"> 428</a></span> <a class="code hl_class" href="classstats.html">stats</a>* <a class="code hl_function" href="classapplication__class.html#adfd9213758db871e03aada83dee961b3">get_stats</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> stats_; };</div>
<div class="line"><a id="l00433" name="l00433"></a><span class="lineno"><a class="line" href="classapplication__class.html#a8a2103b81e5a5f73ebce656b96467ee3"> 433</a></span> <a class="code hl_class" href="classfps__class.html">fps_class</a>* <a class="code hl_function" href="classapplication__class.html#a8a2103b81e5a5f73ebce656b96467ee3">get_fps</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> fps_; };</div>
<div class="line"><a id="l00434" name="l00434"></a><span class="lineno"> 434</span> </div>
<div class="line"><a id="l00439" name="l00439"></a><span class="lineno"><a class="line" href="classapplication__class.html#ab6487040a8f3f90c62eaaeec09504071"> 439</a></span> <a class="code hl_class" href="classecs_1_1_entity_manager.html">ecs::EntityManager</a>* <a class="code hl_function" href="classapplication__class.html#ab6487040a8f3f90c62eaaeec09504071">get_entity_manager</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> entity_manager_.get(); };</div>
<div class="line"><a id="l00443" name="l00443"></a><span class="lineno"> 443</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classapplication__class.html#aa453b06f65ab6344907f0c65670de202">update_stats_after_modification</a>();</div>
<div class="line"><a id="l00450" name="l00450"></a><span class="lineno"><a class="line" href="classapplication__class.html#a6eff226c2686a261a394b1c046096c5e"> 450</a></span> std::map&lt;std::string, std::shared_ptr&lt;model_class&gt;&gt;&amp; <a class="code hl_function" href="classapplication__class.html#a6eff226c2686a261a394b1c046096c5e">get_model_cache</a>() { <span class="keywordflow">return</span> g_model_cache; }</div>
<div class="line"><a id="l00451" name="l00451"></a><span class="lineno"> 451</span> </div>
<div class="line"><a id="l00452" name="l00452"></a><span class="lineno"> 452</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00462" name="l00462"></a><span class="lineno"> 462</span> <span class="keywordtype">bool</span> render(<span class="keywordtype">float</span>, <span class="keywordtype">float</span>, <span class="keywordtype">float</span>, <span class="keywordtype">float</span>, <span class="keywordtype">float</span>);</div>
<div class="line"><a id="l00468" name="l00468"></a><span class="lineno"> 468</span> <span class="keywordtype">bool</span> render_physics(<span class="keywordtype">float</span> delta_time);</div>
<div class="line"><a id="l00476" name="l00476"></a><span class="lineno"> 476</span> <span class="keywordtype">bool</span> update_mouse_strings(<span class="keywordtype">int</span>, <span class="keywordtype">int</span>, <span class="keywordtype">bool</span>);</div>
<div class="line"><a id="l00481" name="l00481"></a><span class="lineno"> 481</span> <span class="keywordtype">bool</span> update_fps();</div>
<div class="line"><a id="l00487" name="l00487"></a><span class="lineno"> 487</span> <span class="keywordtype">bool</span> update_render_count_string(<span class="keywordtype">int</span>);</div>
<div class="line"><a id="l00494" name="l00494"></a><span class="lineno"> 494</span> <span class="keywordtype">bool</span> render_scene_to_texture(<span class="keywordtype">float</span>);</div>
<div class="line"><a id="l00500" name="l00500"></a><span class="lineno"> 500</span> <span class="keywordtype">bool</span> render_refraction_to_texture();</div>
<div class="line"><a id="l00506" name="l00506"></a><span class="lineno"> 506</span> <span class="keywordtype">bool</span> render_reflection_to_texture();</div>
<div class="line"><a id="l00519" name="l00519"></a><span class="lineno"> 519</span> <span class="keywordtype">bool</span> render_pass(XMFLOAT4* diffuse, XMFLOAT4* position, XMFLOAT4* ambient, XMMATRIX view, XMMATRIX projection);</div>
<div class="line"><a id="l00520" name="l00520"></a><span class="lineno"> 520</span> </div>
<div class="line"><a id="l00526" name="l00526"></a><span class="lineno"> 526</span> <span class="keywordtype">void</span> update_skybox_position();</div>
<div class="line"><a id="l00530" name="l00530"></a><span class="lineno"> 530</span> <span class="keywordtype">void</span> culling_thread_function();</div>
<div class="line"><a id="l00531" name="l00531"></a><span class="lineno"> 531</span> </div>
<div class="line"><a id="l00532" name="l00532"></a><span class="lineno"> 532</span>public :</div>
<div class="line"><a id="l00533" name="l00533"></a><span class="lineno"> 533</span> std::vector&lt;ID3D11ShaderResourceView*&gt; textures;</div>
<div class="line"><a id="l00534" name="l00534"></a><span class="lineno"> 534</span> </div>
<div class="line"><a id="l00535" name="l00535"></a><span class="lineno"> 535</span>private :</div>
<div class="line"><a id="l00536" name="l00536"></a><span class="lineno"> 536</span> </div>
<div class="line"><a id="l00537" name="l00537"></a><span class="lineno"> 537</span> <span class="comment">// Thread de culling</span></div>
<div class="line"><a id="l00538" name="l00538"></a><span class="lineno"> 538</span> std::thread culling_thread_;</div>
<div class="line"><a id="l00539" name="l00539"></a><span class="lineno"> 539</span> std::atomic&lt;bool&gt; culling_active_;</div>
<div class="line"><a id="l00540" name="l00540"></a><span class="lineno"> 540</span> std::mutex objects_mutex_;</div>
<div class="line"><a id="l00541" name="l00541"></a><span class="lineno"> 541</span> </div>
<div class="line"><a id="l00542" name="l00542"></a><span class="lineno"> 542</span> std::mutex terrain_mutex_;</div>
<div class="line"><a id="l00543" name="l00543"></a><span class="lineno"> 543</span> std::vector&lt;std::tuple&lt;float, float, float, std::string, int&gt;&gt; terrain_generation_data_;</div>
<div class="line"><a id="l00544" name="l00544"></a><span class="lineno"> 544</span> <span class="keywordtype">bool</span> terrain_generation_ready_;</div>
<div class="line"><a id="l00545" name="l00545"></a><span class="lineno"> 545</span> <span class="keywordtype">int</span> next_terrain_object_id_;</div>
<div class="line"><a id="l00546" name="l00546"></a><span class="lineno"> 546</span> </div>
<div class="line"><a id="l00547" name="l00547"></a><span class="lineno"> 547</span> <span class="comment">// ------------------------------------- //</span></div>
<div class="line"><a id="l00548" name="l00548"></a><span class="lineno"> 548</span> <span class="comment">// ------------- DIRECT3D -------------- //</span></div>
<div class="line"><a id="l00549" name="l00549"></a><span class="lineno"> 549</span> <span class="comment">// ------------------------------------- //</span></div>
<div class="line"><a id="l00550" name="l00550"></a><span class="lineno"> 550</span> </div>
<div class="line"><a id="l00551" name="l00551"></a><span class="lineno"> 551</span> <a class="code hl_class" href="classd__3d__class.html">d_3d_class</a>* direct_3d_;</div>
<div class="line"><a id="l00552" name="l00552"></a><span class="lineno"> 552</span> IDXGISwapChain* swap_chain_;</div>
<div class="line"><a id="l00553" name="l00553"></a><span class="lineno"> 553</span> <a class="code hl_class" href="classmodel__class.html">model_class</a>* model_,* ground_model_, * wall_model_, * bath_model_, * water_model_;</div>
<div class="line"><a id="l00554" name="l00554"></a><span class="lineno"> 554</span> <a class="code hl_class" href="class_model_list_class.html">ModelListClass</a>* model_list_;</div>
<div class="line"><a id="l00555" name="l00555"></a><span class="lineno"> 555</span> <span class="keywordtype">bool</span> vsync_enabled_ = <span class="keyword">true</span>;</div>
<div class="line"><a id="l00556" name="l00556"></a><span class="lineno"> 556</span> </div>
<div class="line"><a id="l00557" name="l00557"></a><span class="lineno"> 557</span> HWND hwnd_;</div>
<div class="line"><a id="l00558" name="l00558"></a><span class="lineno"> 558</span> <span class="keywordtype">bool</span> windowed_;</div>
<div class="line"><a id="l00559" name="l00559"></a><span class="lineno"> 559</span> </div>
<div class="line"><a id="l00560" name="l00560"></a><span class="lineno"> 560</span> <span class="comment">// ------------------------------------- //</span></div>
<div class="line"><a id="l00561" name="l00561"></a><span class="lineno"> 561</span> <span class="comment">// ------------- RENDERING ------------- //</span></div>
<div class="line"><a id="l00562" name="l00562"></a><span class="lineno"> 562</span> <span class="comment">// ------------------------------------- //</span></div>
<div class="line"><a id="l00563" name="l00563"></a><span class="lineno"> 563</span> </div>
<div class="line"><a id="l00564" name="l00564"></a><span class="lineno"> 564</span> XMMATRIX base_view_matrix_;</div>
<div class="line"><a id="l00565" name="l00565"></a><span class="lineno"> 565</span> <a class="code hl_class" href="classrender__texture__class.html">render_texture_class</a>* render_texture_, * refraction_texture_, * reflection_texture_;</div>
<div class="line"><a id="l00566" name="l00566"></a><span class="lineno"> 566</span> <a class="code hl_class" href="classrender__texture__class.html">render_texture_class</a>* scene_texture_;</div>
<div class="line"><a id="l00567" name="l00567"></a><span class="lineno"> 567</span> <a class="code hl_class" href="classdisplay__plane__class.html">display_plane_class</a>* display_plane_;</div>
<div class="line"><a id="l00568" name="l00568"></a><span class="lineno"> 568</span> <span class="keywordtype">int</span> screen_width_, screen_height_;</div>
<div class="line"><a id="l00569" name="l00569"></a><span class="lineno"> 569</span> <a class="code hl_class" href="classcamera__class.html">camera_class</a>* camera_;</div>
<div class="line"><a id="l00570" name="l00570"></a><span class="lineno"> 570</span> <a class="code hl_class" href="classcamera__class.html">camera_class</a>* sun_camera_;</div>
<div class="line"><a id="l00571" name="l00571"></a><span class="lineno"> 571</span> <a class="code hl_class" href="classcamera__class.html">camera_class</a>* active_camera_;</div>
<div class="line"><a id="l00572" name="l00572"></a><span class="lineno"> 572</span> <a class="code hl_class" href="classposition__class.html">position_class</a>* position_;</div>
<div class="line"><a id="l00573" name="l00573"></a><span class="lineno"> 573</span> </div>
<div class="line"><a id="l00574" name="l00574"></a><span class="lineno"> 574</span> <a class="code hl_class" href="classshadow__map.html">shadow_map</a>* shadow_map_;</div>
<div class="line"><a id="l00575" name="l00575"></a><span class="lineno"> 575</span> ID3D11ShaderResourceView* shadow_map_srv_;</div>
<div class="line"><a id="l00576" name="l00576"></a><span class="lineno"> 576</span> </div>
<div class="line"><a id="l00577" name="l00577"></a><span class="lineno"> 577</span> <span class="comment">// ------------------------------------ //</span></div>
<div class="line"><a id="l00578" name="l00578"></a><span class="lineno"> 578</span> <span class="comment">// ------------- OBJECTS -------------- //</span></div>
<div class="line"><a id="l00579" name="l00579"></a><span class="lineno"> 579</span> <span class="comment">// ------------------------------------ //</span></div>
<div class="line"><a id="l00580" name="l00580"></a><span class="lineno"> 580</span> </div>
<div class="line"><a id="l00581" name="l00581"></a><span class="lineno"> 581</span> std::unique_ptr&lt;ecs::EntityManager&gt; entity_manager_;</div>
<div class="line"><a id="l00582" name="l00582"></a><span class="lineno"> 582</span> </div>
<div class="line"><a id="l00583" name="l00583"></a><span class="lineno"> 583</span> <span class="keywordtype">object</span>* selected_object_;</div>
<div class="line"><a id="l00584" name="l00584"></a><span class="lineno"> 584</span> </div>
<div class="line"><a id="l00585" name="l00585"></a><span class="lineno"> 585</span> <span class="keywordtype">float</span> speed_ = 0.1f; <span class="comment">// speed for the demo spinning object</span></div>
<div class="line"><a id="l00586" name="l00586"></a><span class="lineno"> 586</span> std::vector&lt;object*&gt; imported_object_;</div>
<div class="line"><a id="l00587" name="l00587"></a><span class="lineno"> 587</span> <span class="keywordtype">int</span> object_id_ = 0;</div>
<div class="line"><a id="l00588" name="l00588"></a><span class="lineno"> 588</span> std::vector&lt;object*&gt; skybox_;</div>
<div class="line"><a id="l00589" name="l00589"></a><span class="lineno"> 589</span> </div>
<div class="line"><a id="l00590" name="l00590"></a><span class="lineno"> 590</span> <span class="comment">// ----------------------------------- //</span></div>
<div class="line"><a id="l00591" name="l00591"></a><span class="lineno"> 591</span> <span class="comment">// ------------- LIGHTS -------------- //</span></div>
<div class="line"><a id="l00592" name="l00592"></a><span class="lineno"> 592</span> <span class="comment">// ----------------------------------- //</span></div>
<div class="line"><a id="l00593" name="l00593"></a><span class="lineno"> 593</span> </div>
<div class="line"><a id="l00594" name="l00594"></a><span class="lineno"> 594</span> <a class="code hl_class" href="classlight__class.html">light_class</a>* m_light_;</div>
<div class="line"><a id="l00595" name="l00595"></a><span class="lineno"> 595</span> std::vector&lt;light_class*&gt; lights_;</div>
<div class="line"><a id="l00596" name="l00596"></a><span class="lineno"> 596</span> <span class="keywordtype">int</span> num_lights_;</div>
<div class="line"><a id="l00597" name="l00597"></a><span class="lineno"> 597</span> <a class="code hl_class" href="classlight__class.html">light_class</a>* sun_light_;</div>
<div class="line"><a id="l00598" name="l00598"></a><span class="lineno"> 598</span> XMFLOAT3 true_light_position_;</div>
<div class="line"><a id="l00599" name="l00599"></a><span class="lineno"> 599</span> <a class="code hl_class" href="classmodel__class.html">model_class</a>* light_model_;</div>
<div class="line"><a id="l00600" name="l00600"></a><span class="lineno"> 600</span> </div>
<div class="line"><a id="l00601" name="l00601"></a><span class="lineno"> 601</span> <span class="comment">// ----------------------------------- //</span></div>
<div class="line"><a id="l00602" name="l00602"></a><span class="lineno"> 602</span> <span class="comment">// ------------- SHADERS ------------- //</span></div>
<div class="line"><a id="l00603" name="l00603"></a><span class="lineno"> 603</span> <span class="comment">// ----------------------------------- //</span></div>
<div class="line"><a id="l00604" name="l00604"></a><span class="lineno"> 604</span> </div>
<div class="line"><a id="l00605" name="l00605"></a><span class="lineno"> 605</span> <a class="code hl_class" href="classshader__manager__class.html">shader_manager_class</a>* shader_manager_;</div>
<div class="line"><a id="l00606" name="l00606"></a><span class="lineno"> 606</span> <a class="code hl_class" href="classfont__shader__class.html">font_shader_class</a>* font_shader_;</div>
<div class="line"><a id="l00607" name="l00607"></a><span class="lineno"> 607</span> <a class="code hl_class" href="classbitmap__class.html">bitmap_class</a>* bitmap_;</div>
<div class="line"><a id="l00608" name="l00608"></a><span class="lineno"> 608</span> <a class="code hl_class" href="classsprite__class.html">sprite_class</a>* sprite_;</div>
<div class="line"><a id="l00609" name="l00609"></a><span class="lineno"> 609</span> <span class="keywordtype">bool</span> enable_cel_shading_;</div>
<div class="line"><a id="l00610" name="l00610"></a><span class="lineno"> 610</span> </div>
<div class="line"><a id="l00611" name="l00611"></a><span class="lineno"> 611</span> <span class="comment">// ----------------------------------- //</span></div>
<div class="line"><a id="l00612" name="l00612"></a><span class="lineno"> 612</span> <span class="comment">// ------------ VARIABLES ------------ //</span></div>
<div class="line"><a id="l00613" name="l00613"></a><span class="lineno"> 613</span> <span class="comment">// ----------------------------------- //</span></div>
<div class="line"><a id="l00614" name="l00614"></a><span class="lineno"> 614</span> </div>
<div class="line"><a id="l00615" name="l00615"></a><span class="lineno"> 615</span> <span class="keywordtype">float</span> water_height_, water_translation_;</div>
<div class="line"><a id="l00616" name="l00616"></a><span class="lineno"> 616</span> <span class="keywordtype">wchar_t</span>* path_;</div>
<div class="line"><a id="l00617" name="l00617"></a><span class="lineno"> 617</span> std::filesystem::path w_folder_;</div>
<div class="line"><a id="l00618" name="l00618"></a><span class="lineno"> 618</span> </div>
<div class="line"><a id="l00619" name="l00619"></a><span class="lineno"> 619</span> <span class="comment">// ------------------------------------------------- //</span></div>
<div class="line"><a id="l00620" name="l00620"></a><span class="lineno"> 620</span> <span class="comment">// ------------- FPS AND INFO ON SCREEN ------------ //</span></div>
<div class="line"><a id="l00621" name="l00621"></a><span class="lineno"> 621</span> <span class="comment">// ------------------------------------------------- //</span></div>
<div class="line"><a id="l00622" name="l00622"></a><span class="lineno"> 622</span> </div>
<div class="line"><a id="l00623" name="l00623"></a><span class="lineno"> 623</span> <a class="code hl_class" href="classtimer__class.html">timer_class</a>* timer_;</div>
<div class="line"><a id="l00624" name="l00624"></a><span class="lineno"> 624</span> <a class="code hl_class" href="classtext__class.html">text_class</a>* mouse_strings_;</div>
<div class="line"><a id="l00625" name="l00625"></a><span class="lineno"> 625</span> <a class="code hl_class" href="classtext__class.html">text_class</a>* render_count_string_;</div>
<div class="line"><a id="l00626" name="l00626"></a><span class="lineno"> 626</span> <a class="code hl_class" href="classfont__class.html">font_class</a>* font_;</div>
<div class="line"><a id="l00627" name="l00627"></a><span class="lineno"> 627</span> <a class="code hl_class" href="classfps__class.html">fps_class</a>* fps_;</div>
<div class="line"><a id="l00628" name="l00628"></a><span class="lineno"> 628</span> <a class="code hl_class" href="classtext__class.html">text_class</a>* fps_string_;</div>
<div class="line"><a id="l00629" name="l00629"></a><span class="lineno"> 629</span> <span class="keywordtype">int</span> previous_fps_;</div>
<div class="line"><a id="l00630" name="l00630"></a><span class="lineno"> 630</span> </div>
<div class="line"><a id="l00631" name="l00631"></a><span class="lineno"> 631</span> <span class="comment">// ------------------------------------------------- //</span></div>
<div class="line"><a id="l00632" name="l00632"></a><span class="lineno"> 632</span> <span class="comment">// ------------------- OTHER ----------------------- //</span></div>
<div class="line"><a id="l00633" name="l00633"></a><span class="lineno"> 633</span> <span class="comment">// ------------------------------------------------- //</span></div>
<div class="line"><a id="l00634" name="l00634"></a><span class="lineno"> 634</span> </div>
<div class="line"><a id="l00635" name="l00635"></a><span class="lineno"> 635</span> <span class="keywordtype">bool</span> should_quit_;</div>
<div class="line"><a id="l00636" name="l00636"></a><span class="lineno"> 636</span> <a class="code hl_class" href="classphysics.html">physics</a>* physics_;</div>
<div class="line"><a id="l00637" name="l00637"></a><span class="lineno"> 637</span> <span class="keywordtype">float</span> gravity_;</div>
<div class="line"><a id="l00638" name="l00638"></a><span class="lineno"> 638</span> XMVECTOR previous_position_;</div>
<div class="line"><a id="l00639" name="l00639"></a><span class="lineno"> 639</span> ImVec2 window_size_;</div>
<div class="line"><a id="l00640" name="l00640"></a><span class="lineno"> 640</span> <span class="keywordtype">int</span> physics_tick_rate_ = 50;</div>
<div class="line"><a id="l00641" name="l00641"></a><span class="lineno"> 641</span> <span class="keywordtype">bool</span> can_fixed_update_ = <span class="keyword">false</span>;</div>
<div class="line"><a id="l00642" name="l00642"></a><span class="lineno"> 642</span> std::thread physics_thread_;</div>
<div class="line"><a id="l00643" name="l00643"></a><span class="lineno"> 643</span> </div>
<div class="line"><a id="l00644" name="l00644"></a><span class="lineno"> 644</span> ID3D11Texture2D* back_buffer_texture_;</div>
<div class="line"><a id="l00645" name="l00645"></a><span class="lineno"> 645</span> ID3D11ShaderResourceView* back_buffer_srv_;</div>
<div class="line"><a id="l00646" name="l00646"></a><span class="lineno"> 646</span> </div>
<div class="line"><a id="l00647" name="l00647"></a><span class="lineno"> 647</span> <a class="code hl_class" href="classstats.html">stats</a>* stats_;</div>
<div class="line"><a id="l00648" name="l00648"></a><span class="lineno"> 648</span> </div>
<div class="line"><a id="l00649" name="l00649"></a><span class="lineno"> 649</span> <span class="comment">// ------------------------------------------------- //</span></div>
<div class="line"><a id="l00650" name="l00650"></a><span class="lineno"> 650</span> <span class="comment">// ------------------- Culling --------------------- //</span></div>
<div class="line"><a id="l00651" name="l00651"></a><span class="lineno"> 651</span> <span class="comment">// ------------------------------------------------- //</span></div>
<div class="line"><a id="l00652" name="l00652"></a><span class="lineno"> 652</span> </div>
<div class="line"><a id="l00653" name="l00653"></a><span class="lineno"> 653</span> <a class="code hl_class" href="classfrustum.html">frustum</a> frustum_culling_;</div>
<div class="line"><a id="l00654" name="l00654"></a><span class="lineno"> 654</span> <span class="keywordtype">int</span> render_count_;</div>
<div class="line"><a id="l00655" name="l00655"></a><span class="lineno"> 655</span> <span class="keywordtype">float</span> frustum_culling_tolerance_ = 5.f;</div>
<div class="line"><a id="l00656" name="l00656"></a><span class="lineno"> 656</span> </div>
<div class="line"><a id="l00657" name="l00657"></a><span class="lineno"> 657</span> <span class="comment">// ------------------------------------------------- //</span></div>
<div class="line"><a id="l00658" name="l00658"></a><span class="lineno"> 658</span> <span class="comment">// -------------------- Input ---------------------- //</span></div>
<div class="line"><a id="l00659" name="l00659"></a><span class="lineno"> 659</span> <span class="comment">// ------------------------------------------------- //</span></div>
<div class="line"><a id="l00660" name="l00660"></a><span class="lineno"> 660</span> </div>
<div class="line"><a id="l00661" name="l00661"></a><span class="lineno"> 661</span> <a class="code hl_struct" href="structinput.html">input</a> inputs_;</div>
<div class="line"><a id="l00662" name="l00662"></a><span class="lineno"> 662</span> <span class="keywordtype">bool</span> tab_was_pressed_;</div>
<div class="line"><a id="l00663" name="l00663"></a><span class="lineno"> 663</span>};</div>
</div>
<div class="line"><a id="l00664" name="l00664"></a><span class="lineno"> 664</span> </div>
<div class="line"><a id="l00665" name="l00665"></a><span class="lineno"> 665</span><span class="preprocessor">#endif</span></div>
<div class="ttc" id="aclass_model_list_class_html"><div class="ttname"><a href="class_model_list_class.html">ModelListClass</a></div><div class="ttdef"><b>Definition</b> <a href="_modellistclass_8h_source.html#l00015">Modellistclass.h:16</a></div></div>
<div class="ttc" id="aclassapplication__class_html"><div class="ttname"><a href="classapplication__class.html">application_class</a></div><div class="ttdef"><b>Definition</b> <a href="#l00078">application_class.h:79</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a0d9b9cbfbe1a2efa52606fcbbdfb40ca"><div class="ttname"><a href="classapplication__class.html#a0d9b9cbfbe1a2efa52606fcbbdfb40ca">application_class::frame</a></div><div class="ttdeci">virtual bool frame(input_class *)</div><div class="ttdoc">Run the main loop of the application. This function will handle the main loop, including rendering an...</div><div class="ttdef"><b>Definition</b> <a href="application__class_8cpp_source.html#l00760">application_class.cpp:760</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a0e7b21b1421fd52bb3740fb25f26e4a7"><div class="ttname"><a href="classapplication__class.html#a0e7b21b1421fd52bb3740fb25f26e4a7">application_class::get_back_buffer_srv</a></div><div class="ttdeci">ID3D11ShaderResourceView * get_back_buffer_srv() const</div><div class="ttdef"><b>Definition</b> <a href="#l00422">application_class.h:422</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a118113b8ab8ad1065b032d57150fa7dd"><div class="ttname"><a href="classapplication__class.html#a118113b8ab8ad1065b032d57150fa7dd">application_class::get_physics_tick_rate</a></div><div class="ttdeci">int get_physics_tick_rate() const</div><div class="ttdef"><b>Definition</b> <a href="#l00146">application_class.h:146</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a1715fe1c06659636399b60e859e6b2ae"><div class="ttname"><a href="classapplication__class.html#a1715fe1c06659636399b60e859e6b2ae">application_class::set_light_position</a></div><div class="ttdeci">void set_light_position(int index, XMVECTOR position)</div><div class="ttdef"><b>Definition</b> <a href="application__class_8cpp_source.html#l01748">application_class.cpp:1748</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a1bbbc70e5a68278f410e9b2b93942230"><div class="ttname"><a href="classapplication__class.html#a1bbbc70e5a68278f410e9b2b93942230">application_class::get_aspect_ratio</a></div><div class="ttdeci">float get_aspect_ratio() const</div><div class="ttdef"><b>Definition</b> <a href="#l00355">application_class.h:355</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a1bdce1b8c5a23cd60dd35c441a670601"><div class="ttname"><a href="classapplication__class.html#a1bdce1b8c5a23cd60dd35c441a670601">application_class::set_cel_shading</a></div><div class="ttdeci">void set_cel_shading(const bool enable)</div><div class="ttdef"><b>Definition</b> <a href="#l00297">application_class.h:297</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a1f607939202c0cb805df935eb38dabe7"><div class="ttname"><a href="classapplication__class.html#a1f607939202c0cb805df935eb38dabe7">application_class::set_render_count</a></div><div class="ttdeci">void set_render_count(const int render_count)</div><div class="ttdef"><b>Definition</b> <a href="#l00393">application_class.h:393</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a25592af930b0ee6c34d667fc0f8d69e1"><div class="ttname"><a href="classapplication__class.html#a25592af930b0ee6c34d667fc0f8d69e1">application_class::get_reflection_texture</a></div><div class="ttdeci">render_texture_class * get_reflection_texture() const</div><div class="ttdef"><b>Definition</b> <a href="#l00109">application_class.h:109</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a29f11f9f0ab0f41af7b1b657d9310209"><div class="ttname"><a href="classapplication__class.html#a29f11f9f0ab0f41af7b1b657d9310209">application_class::get_frustum</a></div><div class="ttdeci">frustum get_frustum() const</div><div class="ttdef"><b>Definition</b> <a href="#l00371">application_class.h:371</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a2f41c2a8f5f18aca2859b02e804c7a1a"><div class="ttname"><a href="classapplication__class.html#a2f41c2a8f5f18aca2859b02e804c7a1a">application_class::set_frustum_tolerance</a></div><div class="ttdeci">void set_frustum_tolerance(const float frustum_tolerance)</div><div class="ttdef"><b>Definition</b> <a href="#l00405">application_class.h:405</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a2f6b5156b585944bb912d93fa1595af2"><div class="ttname"><a href="classapplication__class.html#a2f6b5156b585944bb912d93fa1595af2">application_class::get_w_folder</a></div><div class="ttdeci">std::filesystem::path get_w_folder() const</div><div class="ttdef"><b>Definition</b> <a href="#l00216">application_class.h:216</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a32624a7be14230d2120de382c2c2e298"><div class="ttname"><a href="classapplication__class.html#a32624a7be14230d2120de382c2c2e298">application_class::get_object_id</a></div><div class="ttdeci">int get_object_id() const</div><div class="ttdef"><b>Definition</b> <a href="#l00227">application_class.h:227</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a3be4f6532857c72283450ce43907f309"><div class="ttname"><a href="classapplication__class.html#a3be4f6532857c72283450ce43907f309">application_class::initialize</a></div><div class="ttdeci">virtual bool initialize(int screen_width, int screen_height, HWND hwdn, bool is_vulkan)</div><div class="ttdef"><b>Definition</b> <a href="application__class_8cpp_source.html#l00070">application_class.cpp:70</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a3c76d728525b1ee4558a41383f9f2217"><div class="ttname"><a href="classapplication__class.html#a3c76d728525b1ee4558a41383f9f2217">application_class::get_window_size</a></div><div class="ttdeci">ImVec2 get_window_size() const</div><div class="ttdef"><b>Definition</b> <a href="#l00350">application_class.h:350</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a3ec69cb088888911ab1e32490c39f3e6"><div class="ttname"><a href="classapplication__class.html#a3ec69cb088888911ab1e32490c39f3e6">application_class::get_render_texture</a></div><div class="ttdeci">render_texture_class * get_render_texture() const</div><div class="ttdef"><b>Definition</b> <a href="#l00099">application_class.h:99</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a40392869f0ff57982fef8098dd3354fe"><div class="ttname"><a href="classapplication__class.html#a40392869f0ff57982fef8098dd3354fe">application_class::set_hwnd</a></div><div class="ttdeci">void set_hwnd(HWND hwnd)</div><div class="ttdef"><b>Definition</b> <a href="#l00326">application_class.h:326</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a468b1ed714bae99f4f2fcf7a93407bfb"><div class="ttname"><a href="classapplication__class.html#a468b1ed714bae99f4f2fcf7a93407bfb">application_class::get_screen_height</a></div><div class="ttdeci">int get_screen_height() const</div><div class="ttdef"><b>Definition</b> <a href="application__class_8cpp_source.html#l01288">application_class.cpp:1288</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a4ead7c7ba402fb9619000d201c0cf95f"><div class="ttname"><a href="classapplication__class.html#a4ead7c7ba402fb9619000d201c0cf95f">application_class::set_path</a></div><div class="ttdeci">void set_path(WCHAR *path)</div><div class="ttdef"><b>Definition</b> <a href="#l00207">application_class.h:207</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a54f4915b1878fde4dc60ff26be5712ee"><div class="ttname"><a href="classapplication__class.html#a54f4915b1878fde4dc60ff26be5712ee">application_class::get_light_position</a></div><div class="ttdeci">XMVECTOR get_light_position(int index)</div><div class="ttdef"><b>Definition</b> <a href="application__class_8cpp_source.html#l01730">application_class.cpp:1730</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a5ade90e873b7b6a31c148672dd0305cb"><div class="ttname"><a href="classapplication__class.html#a5ade90e873b7b6a31c148672dd0305cb">application_class::delete_entity_by_id</a></div><div class="ttdeci">void delete_entity_by_id(int entity_id)</div><div class="ttdef"><b>Definition</b> <a href="application__class_8cpp_source.html#l01526">application_class.cpp:1526</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a5dbf967cc3d2a08b07c13b6aa44fafe1"><div class="ttname"><a href="classapplication__class.html#a5dbf967cc3d2a08b07c13b6aa44fafe1">application_class::set_w_folder</a></div><div class="ttdeci">void set_w_folder(const std::filesystem::path &amp;w_folder)</div><div class="ttdef"><b>Definition</b> <a href="#l00211">application_class.h:211</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a642858510be15dc3d2890ccc5f6df31f"><div class="ttname"><a href="classapplication__class.html#a642858510be15dc3d2890ccc5f6df31f">application_class::set_vsync</a></div><div class="ttdeci">void set_vsync(bool vsync)</div><div class="ttdef"><b>Definition</b> <a href="#l00303">application_class.h:303</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a692f521b7d27a89a95848dd912342c1f"><div class="ttname"><a href="classapplication__class.html#a692f521b7d27a89a95848dd912342c1f">application_class::get_hwnd</a></div><div class="ttdeci">HWND get_hwnd() const</div><div class="ttdef"><b>Definition</b> <a href="#l00321">application_class.h:321</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a69a84a1345d56bb8d81e7d3427ce969e"><div class="ttname"><a href="classapplication__class.html#a69a84a1345d56bb8d81e7d3427ce969e">application_class::get_scene_texture</a></div><div class="ttdeci">render_texture_class * get_scene_texture() const</div><div class="ttdef"><b>Definition</b> <a href="#l00094">application_class.h:94</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a69bce73916e1180493ac74030dbb77ba"><div class="ttname"><a href="classapplication__class.html#a69bce73916e1180493ac74030dbb77ba">application_class::delete_terrain</a></div><div class="ttdeci">void delete_terrain()</div><div class="ttdef"><b>Definition</b> <a href="application__class_8cpp_source.html#l01548">application_class.cpp:1548</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a6eff226c2686a261a394b1c046096c5e"><div class="ttname"><a href="classapplication__class.html#a6eff226c2686a261a394b1c046096c5e">application_class::get_model_cache</a></div><div class="ttdeci">std::map&lt; std::string, std::shared_ptr&lt; model_class &gt; &gt; &amp; get_model_cache()</div><div class="ttdef"><b>Definition</b> <a href="#l00450">application_class.h:450</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a79b165193754e7361b0a467f5e70c72b"><div class="ttname"><a href="classapplication__class.html#a79b165193754e7361b0a467f5e70c72b">application_class::set_light_color</a></div><div class="ttdeci">void set_light_color(int index, XMVECTOR color)</div><div class="ttdef"><b>Definition</b> <a href="application__class_8cpp_source.html#l01738">application_class.cpp:1738</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a7b0482e4b79a4c3bf32e1f40ccb48678"><div class="ttname"><a href="classapplication__class.html#a7b0482e4b79a4c3bf32e1f40ccb48678">application_class::create_big_cube</a></div><div class="ttdeci">bool create_big_cube(int side_count)</div><div class="ttdoc">Create a big cube with a specified number of little cube per sides.</div><div class="ttdef"><b>Definition</b> <a href="application__class_8cpp_source.html#l02003">application_class.cpp:2003</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a7b1a11759ecc6b80542c7f4f3cf4e8e9"><div class="ttname"><a href="classapplication__class.html#a7b1a11759ecc6b80542c7f4f3cf4e8e9">application_class::set_speed</a></div><div class="ttdeci">void set_speed(const float speed)</div><div class="ttdef"><b>Definition</b> <a href="#l00187">application_class.h:187</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a7b959a12a5574b263556937f1c94e255"><div class="ttname"><a href="classapplication__class.html#a7b959a12a5574b263556937f1c94e255">application_class::construct_frustum</a></div><div class="ttdeci">void construct_frustum()</div><div class="ttdef"><b>Definition</b> <a href="application__class_8cpp_source.html#l01940">application_class.cpp:1940</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a7faa4a3a5150086acaec8bc223a4bf7e"><div class="ttname"><a href="classapplication__class.html#a7faa4a3a5150086acaec8bc223a4bf7e">application_class::set_windowed</a></div><div class="ttdeci">void set_windowed(bool windowed)</div><div class="ttdef"><b>Definition</b> <a href="#l00337">application_class.h:337</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a85c04a3f2d050cb750d7986ebc7e76a5"><div class="ttname"><a href="classapplication__class.html#a85c04a3f2d050cb750d7986ebc7e76a5">application_class::get_light_color</a></div><div class="ttdeci">XMVECTOR get_light_color(int index)</div><div class="ttdef"><b>Definition</b> <a href="application__class_8cpp_source.html#l01722">application_class.cpp:1722</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a8a2103b81e5a5f73ebce656b96467ee3"><div class="ttname"><a href="classapplication__class.html#a8a2103b81e5a5f73ebce656b96467ee3">application_class::get_fps</a></div><div class="ttdeci">fps_class * get_fps() const</div><div class="ttdef"><b>Definition</b> <a href="#l00433">application_class.h:433</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a8b03fc0a380762e268606262914e55a8"><div class="ttname"><a href="classapplication__class.html#a8b03fc0a380762e268606262914e55a8">application_class::set_physics_tick_rate</a></div><div class="ttdeci">void set_physics_tick_rate(int physics_tick_rate)</div><div class="ttdef"><b>Definition</b> <a href="#l00151">application_class.h:151</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a8d993ac51d86d09c2b03b612ed914a74"><div class="ttname"><a href="classapplication__class.html#a8d993ac51d86d09c2b03b612ed914a74">application_class::get_refraction_texture</a></div><div class="ttdeci">render_texture_class * get_refraction_texture() const</div><div class="ttdef"><b>Definition</b> <a href="#l00104">application_class.h:104</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a96068cd56a5bb2ed0c02db3b70272be2"><div class="ttname"><a href="classapplication__class.html#a96068cd56a5bb2ed0c02db3b70272be2">application_class::set_should_quit</a></div><div class="ttdeci">void set_should_quit(const bool should_quit)</div><div class="ttdef"><b>Definition</b> <a href="#l00289">application_class.h:289</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a9a39dfe69bca6fe96a339ab47b2f0539"><div class="ttname"><a href="classapplication__class.html#a9a39dfe69bca6fe96a339ab47b2f0539">application_class::add_kobject</a></div><div class="ttdeci">void add_kobject(std::wstring &amp;filepath)</div><div class="ttdef"><b>Definition</b> <a href="application__class_8cpp_source.html#l01378">application_class.cpp:1378</a></div></div>
<div class="ttc" id="aclassapplication__class_html_a9b1ca112e8d8fd01a7061d9a638e9f3e"><div class="ttname"><a href="classapplication__class.html#a9b1ca112e8d8fd01a7061d9a638e9f3e">application_class::get_lights</a></div><div class="ttdeci">std::vector&lt; light_class * &gt; get_lights() const</div><div class="ttdef"><b>Definition</b> <a href="#l00271">application_class.h:271</a></div></div>
<div class="ttc" id="aclassapplication__class_html_aa0a44059eae0a8df0cb65a7962d598ed"><div class="ttname"><a href="classapplication__class.html#aa0a44059eae0a8df0cb65a7962d598ed">application_class::set_can_fixed_update</a></div><div class="ttdeci">void set_can_fixed_update(bool can_fixed_update)</div><div class="ttdef"><b>Definition</b> <a href="#l00416">application_class.h:416</a></div></div>
<div class="ttc" id="aclassapplication__class_html_aa271ce1d2803a5a1fcd9becad215ecb0"><div class="ttname"><a href="classapplication__class.html#aa271ce1d2803a5a1fcd9becad215ecb0">application_class::get_frustum_tolerance</a></div><div class="ttdeci">float get_frustum_tolerance() const</div><div class="ttdef"><b>Definition</b> <a href="#l00399">application_class.h:399</a></div></div>
<div class="ttc" id="aclassapplication__class_html_aa453b06f65ab6344907f0c65670de202"><div class="ttname"><a href="classapplication__class.html#aa453b06f65ab6344907f0c65670de202">application_class::update_stats_after_modification</a></div><div class="ttdeci">void update_stats_after_modification()</div><div class="ttdef"><b>Definition</b> <a href="application__class_8cpp_source.html#l02066">application_class.cpp:2066</a></div></div>
<div class="ttc" id="aclassapplication__class_html_aa583e172e6a2d45cb9b4841634b9eea4"><div class="ttname"><a href="classapplication__class.html#aa583e172e6a2d45cb9b4841634b9eea4">application_class::physics_thread_function</a></div><div class="ttdeci">void physics_thread_function()</div><div class="ttdoc">Thread function for handling physics updates. this function will run in a separate thread to handle p...</div><div class="ttdef"><b>Definition</b> <a href="application__class_8cpp_source.html#l01978">application_class.cpp:1978</a></div></div>
<div class="ttc" id="aclassapplication__class_html_aa79efde57fb87b64bf95b47ee87c3bff"><div class="ttname"><a href="classapplication__class.html#aa79efde57fb87b64bf95b47ee87c3bff">application_class::get_vsync</a></div><div class="ttdeci">bool get_vsync() const</div><div class="ttdef"><b>Definition</b> <a href="#l00315">application_class.h:315</a></div></div>
<div class="ttc" id="aclassapplication__class_html_aaa09afdc106fb3f82788c42272811657"><div class="ttname"><a href="classapplication__class.html#aaa09afdc106fb3f82788c42272811657">application_class::add_cube</a></div><div class="ttdeci">void add_cube()</div><div class="ttdef"><b>Definition</b> <a href="application__class_8cpp_source.html#l01464">application_class.cpp:1464</a></div></div>
<div class="ttc" id="aclassapplication__class_html_aac1577a0fe08e8007980b6b1778da478"><div class="ttname"><a href="classapplication__class.html#aac1577a0fe08e8007980b6b1778da478">application_class::is_windowed</a></div><div class="ttdeci">bool is_windowed() const</div><div class="ttdef"><b>Definition</b> <a href="#l00332">application_class.h:332</a></div></div>
<div class="ttc" id="aclassapplication__class_html_ab0418282e11e00cebb3a63747384a24b"><div class="ttname"><a href="classapplication__class.html#ab0418282e11e00cebb3a63747384a24b">application_class::set_window_size</a></div><div class="ttdeci">void set_window_size(const ImVec2 size)</div><div class="ttdef"><b>Definition</b> <a href="#l00344">application_class.h:344</a></div></div>
<div class="ttc" id="aclassapplication__class_html_ab1924a7177c04594ec5dab7fe4c0104f"><div class="ttname"><a href="classapplication__class.html#ab1924a7177c04594ec5dab7fe4c0104f">application_class::get_physics</a></div><div class="ttdeci">physics * get_physics() const</div><div class="ttdef"><b>Definition</b> <a href="#l00361">application_class.h:361</a></div></div>
<div class="ttc" id="aclassapplication__class_html_ab3b678dde613c8568a2124482ed45a73"><div class="ttname"><a href="classapplication__class.html#ab3b678dde613c8568a2124482ed45a73">application_class::application_class</a></div><div class="ttdeci">application_class()</div><div class="ttdoc">Constructor for the application class. Initializes member variables and sets up the application.</div><div class="ttdef"><b>Definition</b> <a href="application__class_8cpp_source.html#l00006">application_class.cpp:6</a></div></div>
<div class="ttc" id="aclassapplication__class_html_ab6487040a8f3f90c62eaaeec09504071"><div class="ttname"><a href="classapplication__class.html#ab6487040a8f3f90c62eaaeec09504071">application_class::get_entity_manager</a></div><div class="ttdeci">ecs::EntityManager * get_entity_manager() const</div><div class="ttdef"><b>Definition</b> <a href="#l00439">application_class.h:439</a></div></div>
<div class="ttc" id="aclassapplication__class_html_abd47278db9d786b80833c787900c145b"><div class="ttname"><a href="classapplication__class.html#abd47278db9d786b80833c787900c145b">application_class::set_frustum</a></div><div class="ttdeci">void set_frustum(const frustum &amp;frustum)</div><div class="ttdef"><b>Definition</b> <a href="#l00376">application_class.h:376</a></div></div>
<div class="ttc" id="aclassapplication__class_html_abf98d275e281e99e54a68d3b53ba7b94"><div class="ttname"><a href="classapplication__class.html#abf98d275e281e99e54a68d3b53ba7b94">application_class::get_can_fixed_update</a></div><div class="ttdeci">bool get_can_fixed_update() const</div><div class="ttdef"><b>Definition</b> <a href="#l00411">application_class.h:411</a></div></div>
<div class="ttc" id="aclassapplication__class_html_aca20ad22e0c95f5404e3c47a11317025"><div class="ttname"><a href="classapplication__class.html#aca20ad22e0c95f5404e3c47a11317025">application_class::generate_terrain</a></div><div class="ttdeci">void generate_terrain()</div><div class="ttdef"><b>Definition</b> <a href="application__class_8cpp_source.html#l01293">application_class.cpp:1293</a></div></div>
<div class="ttc" id="aclassapplication__class_html_aca66fefd8c7c473e2700a69f13a4cb6b"><div class="ttname"><a href="classapplication__class.html#aca66fefd8c7c473e2700a69f13a4cb6b">application_class::set_screen_width</a></div><div class="ttdeci">void set_screen_width(int screen_width)</div><div class="ttdef"><b>Definition</b> <a href="application__class_8cpp_source.html#l01765">application_class.cpp:1765</a></div></div>
<div class="ttc" id="aclassapplication__class_html_acc0c095b41d72833d974229cc64d0689"><div class="ttname"><a href="classapplication__class.html#acc0c095b41d72833d974229cc64d0689">application_class::get_render_count</a></div><div class="ttdeci">int get_render_count() const</div><div class="ttdef"><b>Definition</b> <a href="#l00388">application_class.h:388</a></div></div>
<div class="ttc" id="aclassapplication__class_html_ad724a8b8867f487bc602406ae20e1301"><div class="ttname"><a href="classapplication__class.html#ad724a8b8867f487bc602406ae20e1301">application_class::get_speed</a></div><div class="ttdeci">float get_speed() const</div><div class="ttdef"><b>Definition</b> <a href="#l00180">application_class.h:180</a></div></div>
<div class="ttc" id="aclassapplication__class_html_ad757f3dc7ad49b74643fca7947889ed6"><div class="ttname"><a href="classapplication__class.html#ad757f3dc7ad49b74643fca7947889ed6">application_class::get_sun_light</a></div><div class="ttdeci">light_class * get_sun_light() const</div><div class="ttdef"><b>Definition</b> <a href="#l00276">application_class.h:276</a></div></div>
<div class="ttc" id="aclassapplication__class_html_adfd9213758db871e03aada83dee961b3"><div class="ttname"><a href="classapplication__class.html#adfd9213758db871e03aada83dee961b3">application_class::get_stats</a></div><div class="ttdeci">stats * get_stats() const</div><div class="ttdef"><b>Definition</b> <a href="#l00428">application_class.h:428</a></div></div>
<div class="ttc" id="aclassapplication__class_html_ae4bf8de77c3edaac71aaba75193c3be9"><div class="ttname"><a href="classapplication__class.html#ae4bf8de77c3edaac71aaba75193c3be9">application_class::get_screen_width</a></div><div class="ttdeci">int get_screen_width() const</div><div class="ttdef"><b>Definition</b> <a href="application__class_8cpp_source.html#l01283">application_class.cpp:1283</a></div></div>
<div class="ttc" id="aclassapplication__class_html_ae586e8e9431b6d6168c335a9ae0f08ca"><div class="ttname"><a href="classapplication__class.html#ae586e8e9431b6d6168c335a9ae0f08ca">application_class::set_object_id</a></div><div class="ttdeci">void set_object_id(int object_id)</div><div class="ttdef"><b>Definition</b> <a href="#l00232">application_class.h:232</a></div></div>
<div class="ttc" id="aclassapplication__class_html_ae5ed92985e95d9f34a152cae2d7345d7"><div class="ttname"><a href="classapplication__class.html#ae5ed92985e95d9f34a152cae2d7345d7">application_class::set_screen_height</a></div><div class="ttdeci">void set_screen_height(int screen_height)</div><div class="ttdef"><b>Definition</b> <a href="application__class_8cpp_source.html#l01758">application_class.cpp:1758</a></div></div>
<div class="ttc" id="aclassapplication__class_html_af2ef20892819f21303002a0f3005e73d"><div class="ttname"><a href="classapplication__class.html#af2ef20892819f21303002a0f3005e73d">application_class::shutdown</a></div><div class="ttdeci">void shutdown()</div><div class="ttdef"><b>Definition</b> <a href="application__class_8cpp_source.html#l00520">application_class.cpp:520</a></div></div>
<div class="ttc" id="aclassapplication__class_html_afe1ff7bf39935cae054c8f3743e923e1"><div class="ttname"><a href="classapplication__class.html#afe1ff7bf39935cae054c8f3743e923e1">application_class::get_terrain_entity_count</a></div><div class="ttdeci">int get_terrain_entity_count()</div><div class="ttdef"><b>Definition</b> <a href="application__class_8cpp_source.html#l02074">application_class.cpp:2074</a></div></div>
<div class="ttc" id="aclassapplication__class_html_afea1cdf2706dc45cdae0396b7948f2b0"><div class="ttname"><a href="classapplication__class.html#afea1cdf2706dc45cdae0396b7948f2b0">application_class::get_should_quit</a></div><div class="ttdeci">bool get_should_quit() const</div><div class="ttdef"><b>Definition</b> <a href="#l00283">application_class.h:283</a></div></div>
<div class="ttc" id="aclassbitmap__class_html"><div class="ttname"><a href="classbitmap__class.html">bitmap_class</a></div><div class="ttdef"><b>Definition</b> <a href="bitmap__class_8h_source.html#l00021">bitmap_class.h:22</a></div></div>
<div class="ttc" id="aclasscamera__class_html"><div class="ttname"><a href="classcamera__class.html">camera_class</a></div><div class="ttdef"><b>Definition</b> <a href="camera__class_8h_source.html#l00018">camera_class.h:19</a></div></div>
<div class="ttc" id="aclassd__3d__class_html"><div class="ttname"><a href="classd__3d__class.html">d_3d_class</a></div><div class="ttdef"><b>Definition</b> <a href="d__3d__class_8h_source.html#l00030">d_3d_class.h:31</a></div></div>
<div class="ttc" id="aclassdisplay__plane__class_html"><div class="ttname"><a href="classdisplay__plane__class.html">display_plane_class</a></div><div class="ttdef"><b>Definition</b> <a href="display__plane__class_8h_source.html#l00014">display_plane_class.h:15</a></div></div>
<div class="ttc" id="aclassecs_1_1_entity_manager_html"><div class="ttname"><a href="classecs_1_1_entity_manager.html">ecs::EntityManager</a></div><div class="ttdef"><b>Definition</b> <a href="entity__manager_8h_source.html#l00009">entity_manager.h:9</a></div></div>
<div class="ttc" id="aclassfont__class_html"><div class="ttname"><a href="classfont__class.html">font_class</a></div><div class="ttdef"><b>Definition</b> <a href="font__class_8h_source.html#l00022">font_class.h:23</a></div></div>
<div class="ttc" id="aclassfont__shader__class_html"><div class="ttname"><a href="classfont__shader__class.html">font_shader_class</a></div><div class="ttdef"><b>Definition</b> <a href="font__shader__class_8h_source.html#l00020">font_shader_class.h:21</a></div></div>
<div class="ttc" id="aclassfps__class_html"><div class="ttname"><a href="classfps__class.html">fps_class</a></div><div class="ttdef"><b>Definition</b> <a href="fps__class_8h_source.html#l00020">fps_class.h:21</a></div></div>
<div class="ttc" id="aclassfrustum_html"><div class="ttname"><a href="classfrustum.html">frustum</a></div><div class="ttdef"><b>Definition</b> <a href="frustum_8h_source.html#l00004">frustum.h:5</a></div></div>
<div class="ttc" id="aclassinput__class_html"><div class="ttname"><a href="classinput__class.html">input_class</a></div><div class="ttdef"><b>Definition</b> <a href="input__class_8h_source.html#l00024">input_class.h:25</a></div></div>
<div class="ttc" id="aclasslight__class_html"><div class="ttname"><a href="classlight__class.html">light_class</a></div><div class="ttdef"><b>Definition</b> <a href="light__class_8h_source.html#l00019">light_class.h:20</a></div></div>
<div class="ttc" id="aclassmodel__class_html"><div class="ttname"><a href="classmodel__class.html">model_class</a></div><div class="ttdef"><b>Definition</b> <a href="model__class_8h_source.html#l00150">model_class.h:151</a></div></div>
<div class="ttc" id="aclassphysics_html"><div class="ttname"><a href="classphysics.html">physics</a></div><div class="ttdef"><b>Definition</b> <a href="physics_8h_source.html#l00007">physics.h:8</a></div></div>
<div class="ttc" id="aclassposition__class_html"><div class="ttname"><a href="classposition__class.html">position_class</a></div><div class="ttdef"><b>Definition</b> <a href="position__class_8h_source.html#l00014">position_class.h:15</a></div></div>
<div class="ttc" id="aclassrender__texture__class_html"><div class="ttname"><a href="classrender__texture__class.html">render_texture_class</a></div><div class="ttdef"><b>Definition</b> <a href="render__texture__class_8h_source.html#l00020">render_texture_class.h:21</a></div></div>
<div class="ttc" id="aclassshader__manager__class_html"><div class="ttname"><a href="classshader__manager__class.html">shader_manager_class</a></div><div class="ttdef"><b>Definition</b> <a href="shader__manager__class_8h_source.html#l00027">shader_manager_class.h:28</a></div></div>
<div class="ttc" id="aclassshadow__map_html"><div class="ttname"><a href="classshadow__map.html">shadow_map</a></div><div class="ttdef"><b>Definition</b> <a href="shadow__map_8h_source.html#l00005">shadow_map.h:5</a></div></div>
<div class="ttc" id="aclasssprite__class_html"><div class="ttname"><a href="classsprite__class.html">sprite_class</a></div><div class="ttdef"><b>Definition</b> <a href="sprite__class_8h_source.html#l00022">sprite_class.h:23</a></div></div>
<div class="ttc" id="aclassstats_html"><div class="ttname"><a href="classstats.html">stats</a></div><div class="ttdef"><b>Definition</b> <a href="stats_8h_source.html#l00012">stats.h:13</a></div></div>
<div class="ttc" id="aclasstext__class_html"><div class="ttname"><a href="classtext__class.html">text_class</a></div><div class="ttdef"><b>Definition</b> <a href="text__class_8h_source.html#l00012">text_class.h:13</a></div></div>
<div class="ttc" id="aclasstimer__class_html"><div class="ttname"><a href="classtimer__class.html">timer_class</a></div><div class="ttdef"><b>Definition</b> <a href="timer__class_8h_source.html#l00015">timer_class.h:16</a></div></div>
<div class="ttc" id="astructinput_html"><div class="ttname"><a href="structinput.html">input</a></div><div class="ttdef"><b>Definition</b> <a href="#l00067">application_class.h:68</a></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_f4a881938f04d9c04de7741e8b9c813b.html">enginecustom</a></li><li class="navelem"><a class="el" href="dir_4288ac3ffb2af5f572fd6fdc04a1176b.html">src</a></li><li class="navelem"><a class="el" href="dir_fa382d1760f3c58d964524ef7c4d69c1.html">inc</a></li><li class="navelem"><a class="el" href="dir_31afb4cde3071d47ca274e3f4ae3badb.html">system</a></li><li class="navelem"><b>application_class.h</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

BIN
doxygen_docs/html/bc_s.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 676 B

BIN
doxygen_docs/html/bc_sd.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 635 B

View File

@ -0,0 +1,475 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: enginecustom/src/src/system/bitmap_class.cpp 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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('bitmap__class_8cpp_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">bitmap_class.cpp</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#include &quot;bitmap_class.h&quot;</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span> </div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span>bitmap_class::bitmap_class()</div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span>{</div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span> vertex_buffer_ = 0;</div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span> index_buffer_ = 0;</div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span> texture_ = 0;</div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span>}</div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> </div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> </div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span>bitmap_class::bitmap_class(<span class="keyword">const</span> <a class="code hl_class" href="classbitmap__class.html">bitmap_class</a>&amp; other)</div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span>{</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span>}</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> </div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span>bitmap_class::~bitmap_class()</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span>{</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span>}</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> </div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> </div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="keywordtype">bool</span> bitmap_class::initialize(ID3D11Device* device, ID3D11DeviceContext* deviceContext, <span class="keywordtype">int</span> screenWidth, <span class="keywordtype">int</span> screenHeight, <span class="keywordtype">char</span>* textureFilename, <span class="keywordtype">int</span> renderX, <span class="keywordtype">int</span> renderY)</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span>{</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> Logger::Get().Log(<span class="stringliteral">&quot;Initializing bitmap class&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</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> <span class="keywordtype">bool</span> result;</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> </div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> <span class="comment">// Store the screen size.</span></div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> screen_width_ = screenWidth;</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> screen_height_ = screenHeight;</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <span class="comment">// Store where the bitmap should be rendered to.</span></div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> render_x_ = renderX;</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> render_y_ = renderY;</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> </div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <span class="comment">// initialize the vertex and index buffer that hold the geometry for the bitmap quad.</span></div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> result = initialize_buffers(device);</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> <span class="keywordflow">if</span> (!result)</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"> 39</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to initialize buffers&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> }</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> </div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> <span class="comment">// Load the texture for this bitmap.</span></div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> result = load_texture(device, deviceContext, textureFilename);</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> {</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to load texture&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> }</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> </div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> Logger::Get().Log(<span class="stringliteral">&quot;Bitmap class initialized&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> </div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span>}</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> </div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span><span class="keywordtype">void</span> bitmap_class::shutdown()</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"> 58</span> <span class="comment">// Release the bitmap texture.</span></div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> release_texture();</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> </div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> <span class="comment">// Release the vertex and index buffers.</span></div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> shutdown_buffers();</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> </div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> <span class="keywordflow">return</span>;</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"> 66</span> </div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span><span class="keywordtype">bool</span> bitmap_class::render(ID3D11DeviceContext* deviceContext)</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span>{</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> <span class="keywordtype">bool</span> result;</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> </div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> </div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> <span class="comment">// Update the buffers if the position of the bitmap has changed from its original position.</span></div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> result = update_buffers(deviceContext);</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> {</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to update buffers&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> }</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> </div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="comment">// Put the vertex and index buffers on the graphics pipeline to prepare them for drawing.</span></div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> render_buffers(deviceContext);</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> </div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span>}</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> </div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span><span class="keywordtype">int</span> bitmap_class::get_index_count()</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span>{</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> <span class="keywordflow">return</span> index_count_;</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span>}</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> </div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span>ID3D11ShaderResourceView* bitmap_class::get_texture()</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"> 93</span> <span class="keywordflow">return</span> texture_-&gt;GetTexture();</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span>}</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> </div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span><span class="keywordtype">bool</span> bitmap_class::initialize_buffers(ID3D11Device* device)</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"> 98</span> Logger::Get().Log(<span class="stringliteral">&quot;Initializing buffers&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> </div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> vertex_type* vertices;</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span>* indices;</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> D3D11_BUFFER_DESC vertexBufferDesc, indexBufferDesc;</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> D3D11_SUBRESOURCE_DATA vertexData, indexData;</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> HRESULT result;</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> <span class="keywordtype">int</span> i;</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> </div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> <span class="comment">// initialize the previous rendering position to negative one.</span></div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> prev_pos_x_ = -1;</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> prev_pos_y_ = -1;</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> </div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> <span class="comment">// Set the number of vertices in the vertex array.</span></div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> vertex_count_ = 6;</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> </div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> <span class="comment">// Set the number of indices in the index array.</span></div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> index_count_ = vertex_count_;</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> </div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> <span class="comment">// Create the vertex array.</span></div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> vertices = <span class="keyword">new</span> vertex_type[vertex_count_];</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> </div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> <span class="comment">// Create the index array.</span></div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> indices = <span class="keyword">new</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span>[index_count_];</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> </div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> <span class="comment">// initialize vertex array to zeros at first.</span></div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> memset(vertices, 0, (<span class="keyword">sizeof</span>(vertex_type) * vertex_count_));</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> </div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> <span class="comment">// Load the index array with data.</span></div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> <span class="keywordflow">for</span> (i = 0; i &lt; index_count_; i++)</div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> {</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> indices[i] = i;</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> }</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> </div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> <span class="comment">// Set up the description of the dynamic vertex buffer.</span></div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> vertexBufferDesc.Usage = D3D11_USAGE_DYNAMIC;</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> vertexBufferDesc.ByteWidth = <span class="keyword">sizeof</span>(vertex_type) * vertex_count_;</div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> vertexBufferDesc.BindFlags = D3D11_BIND_VERTEX_BUFFER;</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> vertexBufferDesc.CPUAccessFlags = D3D11_CPU_ACCESS_WRITE;</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> vertexBufferDesc.MiscFlags = 0;</div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> vertexBufferDesc.StructureByteStride = 0;</div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> </div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> <span class="comment">// Give the subresource structure a pointer to the vertex data.</span></div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> vertexData.pSysMem = vertices;</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> vertexData.SysMemPitch = 0;</div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> vertexData.SysMemSlicePitch = 0;</div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> </div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> <span class="comment">// Now finally create the vertex buffer.</span></div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> result = device-&gt;CreateBuffer(&amp;vertexBufferDesc, &amp;vertexData, &amp;vertex_buffer_);</div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> {</div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to create vertex buffer&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> }</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> </div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> <span class="comment">// Set up the description of the index buffer.</span></div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> indexBufferDesc.Usage = D3D11_USAGE_DEFAULT;</div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> indexBufferDesc.ByteWidth = <span class="keyword">sizeof</span>(<span class="keywordtype">unsigned</span> long) * index_count_;</div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> indexBufferDesc.BindFlags = D3D11_BIND_INDEX_BUFFER;</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> indexBufferDesc.CPUAccessFlags = 0;</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> indexBufferDesc.MiscFlags = 0;</div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> indexBufferDesc.StructureByteStride = 0;</div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> </div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> <span class="comment">// Give the subresource structure a pointer to the index data.</span></div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> indexData.pSysMem = indices;</div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> indexData.SysMemPitch = 0;</div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> indexData.SysMemSlicePitch = 0;</div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> </div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> <span class="comment">// Create the index buffer.</span></div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> result = device-&gt;CreateBuffer(&amp;indexBufferDesc, &amp;indexData, &amp;index_buffer_);</div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> {</div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to create index buffer&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> }</div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> </div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> <span class="comment">// Release the arrays now that the vertex and index buffers have been created and loaded.</span></div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> <span class="keyword">delete</span>[] vertices;</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> vertices = 0;</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> </div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> <span class="keyword">delete</span>[] indices;</div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> indices = 0;</div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> </div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> Logger::Get().Log(<span class="stringliteral">&quot;Buffers initialized&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> </div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span>}</div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> </div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span><span class="keywordtype">void</span> bitmap_class::shutdown_buffers()</div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span>{</div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> Logger::Get().Log(<span class="stringliteral">&quot;Shutting down buffers&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> </div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> <span class="comment">// Release the index buffer.</span></div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> <span class="keywordflow">if</span> (index_buffer_)</div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> {</div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> Logger::Get().Log(<span class="stringliteral">&quot;Releasing index buffer&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> index_buffer_-&gt;Release();</div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> index_buffer_ = 0;</div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span> Logger::Get().Log(<span class="stringliteral">&quot;Index buffer released&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span> }</div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> </div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span> <span class="comment">// Release the vertex buffer.</span></div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span> <span class="keywordflow">if</span> (vertex_buffer_)</div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> {</div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span> Logger::Get().Log(<span class="stringliteral">&quot;Releasing vertex buffer&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span> vertex_buffer_-&gt;Release();</div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span> vertex_buffer_ = 0;</div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span> Logger::Get().Log(<span class="stringliteral">&quot;Vertex buffer released&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span> }</div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> </div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span> Logger::Get().Log(<span class="stringliteral">&quot;Buffers shut down&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span> </div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span>}</div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span> </div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span><span class="keywordtype">bool</span> bitmap_class::update_buffers(ID3D11DeviceContext* deviceContent)</div>
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno"> 214</span>{</div>
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"> 215</span> <span class="keywordtype">float</span> left, right, top, bottom;</div>
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno"> 216</span> vertex_type* vertices;</div>
<div class="line"><a id="l00217" name="l00217"></a><span class="lineno"> 217</span> D3D11_MAPPED_SUBRESOURCE mappedResource;</div>
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"> 218</span> vertex_type* dataPtr;</div>
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"> 219</span> HRESULT result;</div>
<div class="line"><a id="l00220" name="l00220"></a><span class="lineno"> 220</span> </div>
<div class="line"><a id="l00221" name="l00221"></a><span class="lineno"> 221</span> <span class="comment">// If the position we are rendering this bitmap to hasn&#39;t changed then don&#39;t update the vertex buffer.</span></div>
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno"> 222</span> <span class="keywordflow">if</span> ((prev_pos_x_ == render_x_) &amp;&amp; (prev_pos_y_ == render_y_))</div>
<div class="line"><a id="l00223" name="l00223"></a><span class="lineno"> 223</span> {</div>
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"> 224</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span> }</div>
<div class="line"><a id="l00226" name="l00226"></a><span class="lineno"> 226</span> </div>
<div class="line"><a id="l00227" name="l00227"></a><span class="lineno"> 227</span> <span class="comment">// If the rendering location has changed then store the new position and update the vertex buffer.</span></div>
<div class="line"><a id="l00228" name="l00228"></a><span class="lineno"> 228</span> prev_pos_x_ = render_x_;</div>
<div class="line"><a id="l00229" name="l00229"></a><span class="lineno"> 229</span> prev_pos_y_ = render_y_;</div>
<div class="line"><a id="l00230" name="l00230"></a><span class="lineno"> 230</span> </div>
<div class="line"><a id="l00231" name="l00231"></a><span class="lineno"> 231</span> <span class="comment">// Create the vertex array.</span></div>
<div class="line"><a id="l00232" name="l00232"></a><span class="lineno"> 232</span> vertices = <span class="keyword">new</span> vertex_type[vertex_count_];</div>
<div class="line"><a id="l00233" name="l00233"></a><span class="lineno"> 233</span> </div>
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"> 234</span> <span class="comment">// Calculate the screen coordinates of the left side of the bitmap.</span></div>
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno"> 235</span> left = (float)((screen_width_ / 2) * -1) + (float)render_x_;</div>
<div class="line"><a id="l00236" name="l00236"></a><span class="lineno"> 236</span> </div>
<div class="line"><a id="l00237" name="l00237"></a><span class="lineno"> 237</span> <span class="comment">// Calculate the screen coordinates of the right side of the bitmap.</span></div>
<div class="line"><a id="l00238" name="l00238"></a><span class="lineno"> 238</span> right = left + (float)bitmap_width_;</div>
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno"> 239</span> </div>
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"> 240</span> <span class="comment">// Calculate the screen coordinates of the top of the bitmap.</span></div>
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"> 241</span> top = (float)(screen_height_ / 2) - (float)render_y_;</div>
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno"> 242</span> </div>
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"> 243</span> <span class="comment">// Calculate the screen coordinates of the bottom of the bitmap.</span></div>
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno"> 244</span> bottom = top - (float)bitmap_height_;</div>
<div class="line"><a id="l00245" name="l00245"></a><span class="lineno"> 245</span> </div>
<div class="line"><a id="l00246" name="l00246"></a><span class="lineno"> 246</span> <span class="comment">// Load the vertex array with data.</span></div>
<div class="line"><a id="l00247" name="l00247"></a><span class="lineno"> 247</span><span class="comment">// First triangle.</span></div>
<div class="line"><a id="l00248" name="l00248"></a><span class="lineno"> 248</span> vertices[0].position = XMFLOAT3(left, top, 0.0f); <span class="comment">// Top left.</span></div>
<div class="line"><a id="l00249" name="l00249"></a><span class="lineno"> 249</span> vertices[0].texture = XMFLOAT2(0.0f, 0.0f);</div>
<div class="line"><a id="l00250" name="l00250"></a><span class="lineno"> 250</span> </div>
<div class="line"><a id="l00251" name="l00251"></a><span class="lineno"> 251</span> vertices[1].position = XMFLOAT3(right, bottom, 0.0f); <span class="comment">// Bottom right.</span></div>
<div class="line"><a id="l00252" name="l00252"></a><span class="lineno"> 252</span> vertices[1].texture = XMFLOAT2(1.0f, 1.0f);</div>
<div class="line"><a id="l00253" name="l00253"></a><span class="lineno"> 253</span> </div>
<div class="line"><a id="l00254" name="l00254"></a><span class="lineno"> 254</span> vertices[2].position = XMFLOAT3(left, bottom, 0.0f); <span class="comment">// Bottom left.</span></div>
<div class="line"><a id="l00255" name="l00255"></a><span class="lineno"> 255</span> vertices[2].texture = XMFLOAT2(0.0f, 1.0f);</div>
<div class="line"><a id="l00256" name="l00256"></a><span class="lineno"> 256</span> </div>
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno"> 257</span> <span class="comment">// Second triangle.</span></div>
<div class="line"><a id="l00258" name="l00258"></a><span class="lineno"> 258</span> vertices[3].position = XMFLOAT3(left, top, 0.0f); <span class="comment">// Top left.</span></div>
<div class="line"><a id="l00259" name="l00259"></a><span class="lineno"> 259</span> vertices[3].texture = XMFLOAT2(0.0f, 0.0f);</div>
<div class="line"><a id="l00260" name="l00260"></a><span class="lineno"> 260</span> </div>
<div class="line"><a id="l00261" name="l00261"></a><span class="lineno"> 261</span> vertices[4].position = XMFLOAT3(right, top, 0.0f); <span class="comment">// Top right.</span></div>
<div class="line"><a id="l00262" name="l00262"></a><span class="lineno"> 262</span> vertices[4].texture = XMFLOAT2(1.0f, 0.0f);</div>
<div class="line"><a id="l00263" name="l00263"></a><span class="lineno"> 263</span> </div>
<div class="line"><a id="l00264" name="l00264"></a><span class="lineno"> 264</span> vertices[5].position = XMFLOAT3(right, bottom, 0.0f); <span class="comment">// Bottom right.</span></div>
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno"> 265</span> vertices[5].texture = XMFLOAT2(1.0f, 1.0f);</div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span> </div>
<div class="line"><a id="l00267" name="l00267"></a><span class="lineno"> 267</span> <span class="comment">// Lock the vertex buffer.</span></div>
<div class="line"><a id="l00268" name="l00268"></a><span class="lineno"> 268</span> result = deviceContent-&gt;Map(vertex_buffer_, 0, D3D11_MAP_WRITE_DISCARD, 0, &amp;mappedResource);</div>
<div class="line"><a id="l00269" name="l00269"></a><span class="lineno"> 269</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><a id="l00270" name="l00270"></a><span class="lineno"> 270</span> {</div>
<div class="line"><a id="l00271" name="l00271"></a><span class="lineno"> 271</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to map vertex buffer&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00272" name="l00272"></a><span class="lineno"> 272</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00273" name="l00273"></a><span class="lineno"> 273</span> }</div>
<div class="line"><a id="l00274" name="l00274"></a><span class="lineno"> 274</span> </div>
<div class="line"><a id="l00275" name="l00275"></a><span class="lineno"> 275</span> <span class="comment">// Get a pointer to the data in the constant buffer.</span></div>
<div class="line"><a id="l00276" name="l00276"></a><span class="lineno"> 276</span> dataPtr = (vertex_type*)mappedResource.pData;</div>
<div class="line"><a id="l00277" name="l00277"></a><span class="lineno"> 277</span> </div>
<div class="line"><a id="l00278" name="l00278"></a><span class="lineno"> 278</span> <span class="comment">// Copy the data into the vertex buffer.</span></div>
<div class="line"><a id="l00279" name="l00279"></a><span class="lineno"> 279</span> memcpy(dataPtr, (<span class="keywordtype">void</span>*)vertices, (<span class="keyword">sizeof</span>(vertex_type) * vertex_count_));</div>
<div class="line"><a id="l00280" name="l00280"></a><span class="lineno"> 280</span> </div>
<div class="line"><a id="l00281" name="l00281"></a><span class="lineno"> 281</span> <span class="comment">// Unlock the vertex buffer.</span></div>
<div class="line"><a id="l00282" name="l00282"></a><span class="lineno"> 282</span> deviceContent-&gt;Unmap(vertex_buffer_, 0);</div>
<div class="line"><a id="l00283" name="l00283"></a><span class="lineno"> 283</span> </div>
<div class="line"><a id="l00284" name="l00284"></a><span class="lineno"> 284</span> <span class="comment">// Release the pointer reference.</span></div>
<div class="line"><a id="l00285" name="l00285"></a><span class="lineno"> 285</span> dataPtr = 0;</div>
<div class="line"><a id="l00286" name="l00286"></a><span class="lineno"> 286</span> </div>
<div class="line"><a id="l00287" name="l00287"></a><span class="lineno"> 287</span> <span class="comment">// Release the vertex array as it is no longer needed.</span></div>
<div class="line"><a id="l00288" name="l00288"></a><span class="lineno"> 288</span> <span class="keyword">delete</span>[] vertices;</div>
<div class="line"><a id="l00289" name="l00289"></a><span class="lineno"> 289</span> vertices = 0;</div>
<div class="line"><a id="l00290" name="l00290"></a><span class="lineno"> 290</span> </div>
<div class="line"><a id="l00291" name="l00291"></a><span class="lineno"> 291</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00292" name="l00292"></a><span class="lineno"> 292</span>}</div>
<div class="line"><a id="l00293" name="l00293"></a><span class="lineno"> 293</span> </div>
<div class="line"><a id="l00294" name="l00294"></a><span class="lineno"> 294</span><span class="keywordtype">void</span> bitmap_class::render_buffers(ID3D11DeviceContext* deviceContext)</div>
<div class="line"><a id="l00295" name="l00295"></a><span class="lineno"> 295</span>{</div>
<div class="line"><a id="l00296" name="l00296"></a><span class="lineno"> 296</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> stride;</div>
<div class="line"><a id="l00297" name="l00297"></a><span class="lineno"> 297</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> offset;</div>
<div class="line"><a id="l00298" name="l00298"></a><span class="lineno"> 298</span> </div>
<div class="line"><a id="l00299" name="l00299"></a><span class="lineno"> 299</span> </div>
<div class="line"><a id="l00300" name="l00300"></a><span class="lineno"> 300</span> <span class="comment">// Set vertex buffer stride and offset.</span></div>
<div class="line"><a id="l00301" name="l00301"></a><span class="lineno"> 301</span> stride = <span class="keyword">sizeof</span>(vertex_type);</div>
<div class="line"><a id="l00302" name="l00302"></a><span class="lineno"> 302</span> offset = 0;</div>
<div class="line"><a id="l00303" name="l00303"></a><span class="lineno"> 303</span> </div>
<div class="line"><a id="l00304" name="l00304"></a><span class="lineno"> 304</span> <span class="comment">// Set the vertex buffer to active in the input assembler so it can be rendered.</span></div>
<div class="line"><a id="l00305" name="l00305"></a><span class="lineno"> 305</span> deviceContext-&gt;IASetVertexBuffers(0, 1, &amp;vertex_buffer_, &amp;stride, &amp;offset);</div>
<div class="line"><a id="l00306" name="l00306"></a><span class="lineno"> 306</span> </div>
<div class="line"><a id="l00307" name="l00307"></a><span class="lineno"> 307</span> <span class="comment">// Set the index buffer to active in the input assembler so it can be rendered.</span></div>
<div class="line"><a id="l00308" name="l00308"></a><span class="lineno"> 308</span> deviceContext-&gt;IASetIndexBuffer(index_buffer_, DXGI_FORMAT_R32_UINT, 0);</div>
<div class="line"><a id="l00309" name="l00309"></a><span class="lineno"> 309</span> </div>
<div class="line"><a id="l00310" name="l00310"></a><span class="lineno"> 310</span> <span class="comment">// Set the type of primitive that should be rendered from this vertex buffer, in this case triangles.</span></div>
<div class="line"><a id="l00311" name="l00311"></a><span class="lineno"> 311</span> deviceContext-&gt;IASetPrimitiveTopology(D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST);</div>
<div class="line"><a id="l00312" name="l00312"></a><span class="lineno"> 312</span> </div>
<div class="line"><a id="l00313" name="l00313"></a><span class="lineno"> 313</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00314" name="l00314"></a><span class="lineno"> 314</span>}</div>
<div class="line"><a id="l00315" name="l00315"></a><span class="lineno"> 315</span> </div>
<div class="line"><a id="l00316" name="l00316"></a><span class="lineno"> 316</span><span class="keywordtype">bool</span> bitmap_class::load_texture(ID3D11Device* device, ID3D11DeviceContext* deviceContext, <span class="keywordtype">char</span>* filename)</div>
<div class="line"><a id="l00317" name="l00317"></a><span class="lineno"> 317</span>{</div>
<div class="line"><a id="l00318" name="l00318"></a><span class="lineno"> 318</span> <span class="keywordtype">bool</span> result;</div>
<div class="line"><a id="l00319" name="l00319"></a><span class="lineno"> 319</span> </div>
<div class="line"><a id="l00320" name="l00320"></a><span class="lineno"> 320</span> </div>
<div class="line"><a id="l00321" name="l00321"></a><span class="lineno"> 321</span> <span class="comment">// Create and initialize the texture object.</span></div>
<div class="line"><a id="l00322" name="l00322"></a><span class="lineno"> 322</span> texture_ = <span class="keyword">new</span> <a class="code hl_class" href="classtexture__class.html">texture_class</a>;</div>
<div class="line"><a id="l00323" name="l00323"></a><span class="lineno"> 323</span> </div>
<div class="line"><a id="l00324" name="l00324"></a><span class="lineno"> 324</span> result = texture_-&gt;Initialize(device, deviceContext, filename);</div>
<div class="line"><a id="l00325" name="l00325"></a><span class="lineno"> 325</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><a id="l00326" name="l00326"></a><span class="lineno"> 326</span> {</div>
<div class="line"><a id="l00327" name="l00327"></a><span class="lineno"> 327</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to initialize texture object&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00328" name="l00328"></a><span class="lineno"> 328</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00329" name="l00329"></a><span class="lineno"> 329</span> }</div>
<div class="line"><a id="l00330" name="l00330"></a><span class="lineno"> 330</span> </div>
<div class="line"><a id="l00331" name="l00331"></a><span class="lineno"> 331</span> <span class="comment">// Store the size in pixels that this bitmap should be rendered at.</span></div>
<div class="line"><a id="l00332" name="l00332"></a><span class="lineno"> 332</span> bitmap_width_ = texture_-&gt;GetWidth();</div>
<div class="line"><a id="l00333" name="l00333"></a><span class="lineno"> 333</span> bitmap_height_ = texture_-&gt;GetHeight();</div>
<div class="line"><a id="l00334" name="l00334"></a><span class="lineno"> 334</span> </div>
<div class="line"><a id="l00335" name="l00335"></a><span class="lineno"> 335</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00336" name="l00336"></a><span class="lineno"> 336</span>}</div>
<div class="line"><a id="l00337" name="l00337"></a><span class="lineno"> 337</span> </div>
<div class="line"><a id="l00338" name="l00338"></a><span class="lineno"> 338</span><span class="keywordtype">void</span> bitmap_class::release_texture()</div>
<div class="line"><a id="l00339" name="l00339"></a><span class="lineno"> 339</span>{</div>
<div class="line"><a id="l00340" name="l00340"></a><span class="lineno"> 340</span> Logger::Get().Log(<span class="stringliteral">&quot;Releasing texture&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00341" name="l00341"></a><span class="lineno"> 341</span> <span class="comment">// Release the texture object.</span></div>
<div class="line"><a id="l00342" name="l00342"></a><span class="lineno"> 342</span> <span class="keywordflow">if</span> (texture_)</div>
<div class="line"><a id="l00343" name="l00343"></a><span class="lineno"> 343</span> {</div>
<div class="line"><a id="l00344" name="l00344"></a><span class="lineno"> 344</span> Logger::Get().Log(<span class="stringliteral">&quot;Releasing texture object&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00345" name="l00345"></a><span class="lineno"> 345</span> texture_-&gt;Shutdown();</div>
<div class="line"><a id="l00346" name="l00346"></a><span class="lineno"> 346</span> <span class="keyword">delete</span> texture_;</div>
<div class="line"><a id="l00347" name="l00347"></a><span class="lineno"> 347</span> texture_ = 0;</div>
<div class="line"><a id="l00348" name="l00348"></a><span class="lineno"> 348</span> Logger::Get().Log(<span class="stringliteral">&quot;Texture object released&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00349" name="l00349"></a><span class="lineno"> 349</span> }</div>
<div class="line"><a id="l00350" name="l00350"></a><span class="lineno"> 350</span> </div>
<div class="line"><a id="l00351" name="l00351"></a><span class="lineno"> 351</span> Logger::Get().Log(<span class="stringliteral">&quot;Texture released&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00352" name="l00352"></a><span class="lineno"> 352</span> </div>
<div class="line"><a id="l00353" name="l00353"></a><span class="lineno"> 353</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00354" name="l00354"></a><span class="lineno"> 354</span>}</div>
<div class="line"><a id="l00355" name="l00355"></a><span class="lineno"> 355</span> </div>
<div class="line"><a id="l00356" name="l00356"></a><span class="lineno"> 356</span><span class="keywordtype">void</span> bitmap_class::set_render_location(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y)</div>
<div class="line"><a id="l00357" name="l00357"></a><span class="lineno"> 357</span>{</div>
<div class="line"><a id="l00358" name="l00358"></a><span class="lineno"> 358</span> render_x_ = x;</div>
<div class="line"><a id="l00359" name="l00359"></a><span class="lineno"> 359</span> render_y_ = y;</div>
<div class="line"><a id="l00360" name="l00360"></a><span class="lineno"> 360</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00361" name="l00361"></a><span class="lineno"> 361</span>}</div>
<div class="ttc" id="aclassbitmap__class_html"><div class="ttname"><a href="classbitmap__class.html">bitmap_class</a></div><div class="ttdef"><b>Definition</b> <a href="bitmap__class_8h_source.html#l00021">bitmap_class.h:22</a></div></div>
<div class="ttc" id="aclasstexture__class_html"><div class="ttname"><a href="classtexture__class.html">texture_class</a></div><div class="ttdef"><b>Definition</b> <a href="texture__class_8h_source.html#l00016">texture_class.h:17</a></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_f4a881938f04d9c04de7741e8b9c813b.html">enginecustom</a></li><li class="navelem"><a class="el" href="dir_4288ac3ffb2af5f572fd6fdc04a1176b.html">src</a></li><li class="navelem"><a class="el" href="dir_9f969fb6181399983524402442d3614f.html">src</a></li><li class="navelem"><a class="el" href="dir_eca5a6ecd54f1e6167f92aa8e37ec00f.html">system</a></li><li class="navelem"><b>bitmap_class.cpp</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,169 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: enginecustom/src/inc/system/bitmap_class.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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('bitmap__class_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">bitmap_class.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#ifndef _BITMAPCLASS_H_</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#define _BITMAPCLASS_H_</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span> </div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment">// INCLUDES //</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include &lt;directxmath.h&gt;</span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="keyword">using namespace </span>DirectX;</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> </div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="comment">// MY CLASS INCLUDES //</span></div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="preprocessor">#include &quot;texture_class.h&quot;</span></div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> </div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> </div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="comment">// Class name: bitmap_class</span></div>
<div class="foldopen" id="foldopen00021" data-start="{" data-end="};">
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"><a class="line" href="classbitmap__class.html"> 21</a></span><span class="keyword">class </span><a class="code hl_class" href="classbitmap__class.html">bitmap_class</a></div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span>{</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> <span class="keyword">struct </span>vertex_type</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> {</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> XMFLOAT3 position;</div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span> XMFLOAT2 texture;</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span> };</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> </div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span><span class="keyword">public</span>:</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> <a class="code hl_class" href="classbitmap__class.html">bitmap_class</a>();</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> <a class="code hl_class" href="classbitmap__class.html">bitmap_class</a>(<span class="keyword">const</span> <a class="code hl_class" href="classbitmap__class.html">bitmap_class</a>&amp;);</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <a class="code hl_class" href="classbitmap__class.html">~bitmap_class</a>();</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> </div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <span class="keywordtype">bool</span> initialize(ID3D11Device*, ID3D11DeviceContext*, <span class="keywordtype">int</span>, <span class="keywordtype">int</span>, <span class="keywordtype">char</span>*, <span class="keywordtype">int</span>, <span class="keywordtype">int</span>);</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> <span class="keywordtype">void</span> shutdown();</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> <span class="keywordtype">bool</span> render(ID3D11DeviceContext*);</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"> 39</span> <span class="keywordtype">int</span> get_index_count();</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> ID3D11ShaderResourceView* get_texture();</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> </div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <span class="keywordtype">void</span> set_render_location(<span class="keywordtype">int</span>, <span class="keywordtype">int</span>);</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> <span class="keywordtype">bool</span> initialize_buffers(ID3D11Device*);</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> <span class="keywordtype">void</span> shutdown_buffers();</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> <span class="keywordtype">bool</span> update_buffers(ID3D11DeviceContext*);</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> <span class="keywordtype">void</span> render_buffers(ID3D11DeviceContext*);</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> </div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> <span class="keywordtype">bool</span> load_texture(ID3D11Device*, ID3D11DeviceContext*, <span class="keywordtype">char</span>*);</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> <span class="keywordtype">void</span> release_texture();</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> ID3D11Buffer* vertex_buffer_, * index_buffer_;</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> <span class="keywordtype">int</span> vertex_count_, index_count_, screen_width_, screen_height_, bitmap_width_, bitmap_height_, render_x_, render_y_, prev_pos_x_, prev_pos_y_;</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <a class="code hl_class" href="classtexture__class.html">texture_class</a>* texture_;</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> </div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span>};</div>
</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> </div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span><span class="preprocessor">#endif</span></div>
<div class="ttc" id="aclassbitmap__class_html"><div class="ttname"><a href="classbitmap__class.html">bitmap_class</a></div><div class="ttdef"><b>Definition</b> <a href="#l00021">bitmap_class.h:22</a></div></div>
<div class="ttc" id="aclasstexture__class_html"><div class="ttname"><a href="classtexture__class.html">texture_class</a></div><div class="ttdef"><b>Definition</b> <a href="texture__class_8h_source.html#l00016">texture_class.h:17</a></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_f4a881938f04d9c04de7741e8b9c813b.html">enginecustom</a></li><li class="navelem"><a class="el" href="dir_4288ac3ffb2af5f572fd6fdc04a1176b.html">src</a></li><li class="navelem"><a class="el" href="dir_fa382d1760f3c58d964524ef7c4d69c1.html">inc</a></li><li class="navelem"><a class="el" href="dir_31afb4cde3071d47ca274e3f4ae3badb.html">system</a></li><li class="navelem"><b>bitmap_class.h</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,283 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: enginecustom/src/src/system/camera_class.cpp 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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('camera__class_8cpp_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">camera_class.cpp</div></div>
</div><!--header-->
<div class="contents">
<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="comment">// Filename: cameraclass.cpp</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &quot;camera_class.h&quot;</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span> </div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span>camera_class::camera_class()</div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span>{</div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span> position_x_ = 0.0f;</div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> position_y_ = 0.0f;</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> position_z_ = 0.0f;</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> </div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> rotation_x_ = 0.0f;</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> rotation_y_ = 0.0f;</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> rotation_z_ = 0.0f;</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span>}</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> </div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> </div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span>camera_class::camera_class(<span class="keyword">const</span> <a class="code hl_class" href="classcamera__class.html">camera_class</a>&amp; other)</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span>{</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span>}</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> </div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> </div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span>camera_class::~camera_class()</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="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> </div>
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="keywordtype">void</span> camera_class::set_position(<span class="keywordtype">float</span> x, <span class="keywordtype">float</span> y, <span class="keywordtype">float</span> z)</div>
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span>{</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> position_x_ = x;</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> position_y_ = y;</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> position_z_ = z;</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span>}</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> </div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> </div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span><span class="keywordtype">void</span> camera_class::set_rotation(<span class="keywordtype">float</span> x, <span class="keywordtype">float</span> y, <span class="keywordtype">float</span> z)</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span>{</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> rotation_x_ = x;</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> rotation_y_ = y;</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> rotation_z_ = z;</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span>}</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span>XMFLOAT3 camera_class::get_position()</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span>{</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> <span class="keywordflow">return</span> XMFLOAT3(position_x_, position_y_, position_z_);</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"> 48</span> </div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> </div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span>XMFLOAT3 camera_class::get_rotation()</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span>{</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> <span class="keywordflow">return</span> XMFLOAT3(rotation_x_, rotation_y_, rotation_z_);</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span>}</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> </div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span><span class="keywordtype">void</span> camera_class::render()</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span>{</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> XMFLOAT3 up, position, lookAt;</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> XMVECTOR upVector, positionVector, lookAtVector;</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <span class="keywordtype">float</span> yaw, pitch, roll;</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> XMMATRIX rotationMatrix;</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> </div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> </div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> <span class="comment">// Setup the vector that points upwards.</span></div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> up.x = 0.0f;</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> up.y = 1.0f;</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> up.z = 0.0f;</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> </div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> <span class="comment">// Load it into a XMVECTOR structure.</span></div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> upVector = XMLoadFloat3(&amp;up);</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> </div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="comment">// Setup the position of the camera in the world.</span></div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> position.x = position_x_;</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> position.y = position_y_;</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> position.z = position_z_;</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> </div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> <span class="comment">// Load it into a XMVECTOR structure.</span></div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> positionVector = XMLoadFloat3(&amp;position);</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> </div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> <span class="comment">// Setup where the camera is looking by default.</span></div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> lookAt.x = 0.0f;</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> lookAt.y = 0.0f;</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> lookAt.z = 1.0f;</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> </div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> <span class="comment">// Load it into a XMVECTOR structure.</span></div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> lookAtVector = XMLoadFloat3(&amp;lookAt);</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> </div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> <span class="comment">// Set the yaw (Y axis), pitch (X axis), and roll (Z axis) rotations in radians.</span></div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> pitch = rotation_x_ * 0.0174532925f;</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> yaw = rotation_y_ * 0.0174532925f;</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> roll = rotation_z_ * 0.0174532925f;</div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> </div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> <span class="comment">// Create the rotation matrix from the yaw, pitch, and roll values.</span></div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> rotationMatrix = XMMatrixRotationRollPitchYaw(pitch, yaw, roll);</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> </div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> <span class="comment">// Transform the lookAt and up vector by the rotation matrix so the view is correctly rotated at the origin.</span></div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> lookAtVector = XMVector3TransformCoord(lookAtVector, rotationMatrix);</div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> upVector = XMVector3TransformCoord(upVector, rotationMatrix);</div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> </div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> <span class="comment">// Translate the rotated camera position to the location of the viewer.</span></div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> lookAtVector = XMVectorAdd(positionVector, lookAtVector);</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> </div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> <span class="comment">// Finally create the view matrix from the three updated vectors.</span></div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> view_matrix_ = XMMatrixLookAtLH(positionVector, lookAtVector, upVector);</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> </div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span>}</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> </div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span>XMMATRIX camera_class::get_view_matrix(XMMATRIX&amp; view_matrix)<span class="keyword"> const</span></div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span><span class="keyword"></span>{</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> view_matrix = view_matrix_;</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> <span class="keywordflow">return</span> view_matrix;</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span>}</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> </div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span><span class="keywordtype">void</span> camera_class::render_reflection(<span class="keywordtype">float</span> height)</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span>{</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> XMFLOAT3 up, position, lookAt;</div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> XMVECTOR upVector, positionVector, lookAtVector;</div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> <span class="keywordtype">float</span> yaw, pitch, roll;</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> XMMATRIX rotationMatrix;</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> </div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> </div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> <span class="comment">// Setup the vector that points upwards.</span></div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> up.x = 0.0f;</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> up.y = 1.0f;</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> up.z = 0.0f;</div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> </div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> <span class="comment">// Load it into a XMVECTOR structure.</span></div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> upVector = XMLoadFloat3(&amp;up);</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> </div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> <span class="comment">// Setup the position of the camera in the world.</span></div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> position.x = position_x_;</div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> position.y = -position_y_ + (height * 2.0f);</div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> position.z = position_z_;</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> </div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> <span class="comment">// Load it into a XMVECTOR structure.</span></div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> positionVector = XMLoadFloat3(&amp;position);</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> </div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> <span class="comment">// Setup where the camera is looking by default.</span></div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> lookAt.x = 0.0f;</div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> lookAt.y = 0.0f;</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> lookAt.z = 1.0f;</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> </div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> <span class="comment">// Load it into a XMVECTOR structure.</span></div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> lookAtVector = XMLoadFloat3(&amp;lookAt);</div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> </div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> <span class="comment">// Set the yaw (Y axis), pitch (X axis), and roll (Z axis) rotations in radians.</span></div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> pitch = (-1.0f * rotation_x_) * 0.0174532925f; <span class="comment">// Invert for reflection</span></div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> yaw = rotation_y_ * 0.0174532925f;</div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> roll = rotation_z_ * 0.0174532925f;</div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> </div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> <span class="comment">// Create the rotation matrix from the yaw, pitch, and roll values.</span></div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> rotationMatrix = XMMatrixRotationRollPitchYaw(pitch, yaw, roll);</div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> </div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> <span class="comment">// Transform the lookAt and up vector by the rotation matrix so the view is correctly rotated at the origin.</span></div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> lookAtVector = XMVector3TransformCoord(lookAtVector, rotationMatrix);</div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> upVector = XMVector3TransformCoord(upVector, rotationMatrix);</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> </div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> <span class="comment">// Translate the rotated camera position to the location of the viewer.</span></div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> lookAtVector = XMVectorAdd(positionVector, lookAtVector);</div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> </div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> <span class="comment">// Finally create the view matrix from the three updated vectors.</span></div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> reflection_view_matrix_ = XMMatrixLookAtLH(positionVector, lookAtVector, upVector);</div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> </div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span>}</div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> </div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span><span class="keywordtype">void</span> camera_class::get_reflection_view_matrix(XMMATRIX&amp; reflectionViewMatrix)<span class="keyword"> const</span></div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span><span class="keyword"></span>{</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> reflectionViewMatrix = reflection_view_matrix_;</div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span>}</div>
<div class="ttc" id="aclasscamera__class_html"><div class="ttname"><a href="classcamera__class.html">camera_class</a></div><div class="ttdef"><b>Definition</b> <a href="camera__class_8h_source.html#l00018">camera_class.h:19</a></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_f4a881938f04d9c04de7741e8b9c813b.html">enginecustom</a></li><li class="navelem"><a class="el" href="dir_4288ac3ffb2af5f572fd6fdc04a1176b.html">src</a></li><li class="navelem"><a class="el" href="dir_9f969fb6181399983524402442d3614f.html">src</a></li><li class="navelem"><a class="el" href="dir_eca5a6ecd54f1e6167f92aa8e37ec00f.html">system</a></li><li class="navelem"><b>camera_class.cpp</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,156 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: enginecustom/src/inc/system/camera_class.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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('camera__class_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">camera_class.h</div></div>
</div><!--header-->
<div class="contents">
<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="comment">// Filename: cameraclass.h</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#ifndef _CAMERACLASS_H_</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#define _CAMERACLASS_H_</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span> </div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span> </div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment">// INCLUDES //</span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="preprocessor">#include &lt;directxmath.h&gt;</span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="keyword">using namespace </span>DirectX;</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> </div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="comment">// Class name: camera_class</span></div>
<div class="foldopen" id="foldopen00018" data-start="{" data-end="};">
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"><a class="line" href="classcamera__class.html"> 18</a></span><span class="keyword">class </span><a class="code hl_class" href="classcamera__class.html">camera_class</a></div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span>{</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="keyword">public</span>:</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> <a class="code hl_class" href="classcamera__class.html">camera_class</a>();</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <a class="code hl_class" href="classcamera__class.html">camera_class</a>(<span class="keyword">const</span> <a class="code hl_class" href="classcamera__class.html">camera_class</a>&amp;);</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> <a class="code hl_class" href="classcamera__class.html">~camera_class</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> <span class="keywordtype">void</span> set_position(<span class="keywordtype">float</span>, <span class="keywordtype">float</span>, <span class="keywordtype">float</span>);</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> <span class="keywordtype">void</span> set_rotation(<span class="keywordtype">float</span>, <span class="keywordtype">float</span>, <span class="keywordtype">float</span>);</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"> 28</span> XMFLOAT3 get_position();</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> XMFLOAT3 get_rotation();</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> </div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> <span class="keywordtype">void</span> render();</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> XMMATRIX get_view_matrix(XMMATRIX&amp; view_matrix) <span class="keyword">const</span>;</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> </div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <span class="keywordtype">void</span> render_reflection(<span class="keywordtype">float</span>);</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> <span class="keywordtype">void</span> get_reflection_view_matrix(XMMATRIX&amp;) <span class="keyword">const</span>;</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> </div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> <span class="keywordtype">float</span> position_x_, position_y_, position_z_;</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> <span class="keywordtype">float</span> rotation_x_, rotation_y_, rotation_z_;</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> XMMATRIX view_matrix_;</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> XMMATRIX reflection_view_matrix_;</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> </div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span>};</div>
</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> </div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span><span class="preprocessor">#endif</span></div>
<div class="ttc" id="aclasscamera__class_html"><div class="ttname"><a href="classcamera__class.html">camera_class</a></div><div class="ttdef"><b>Definition</b> <a href="#l00018">camera_class.h:19</a></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_f4a881938f04d9c04de7741e8b9c813b.html">enginecustom</a></li><li class="navelem"><a class="el" href="dir_4288ac3ffb2af5f572fd6fdc04a1176b.html">src</a></li><li class="navelem"><a class="el" href="dir_fa382d1760f3c58d964524ef7c4d69c1.html">inc</a></li><li class="navelem"><a class="el" href="dir_31afb4cde3071d47ca274e3f4ae3badb.html">system</a></li><li class="navelem"><b>camera_class.h</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,584 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: enginecustom/src/src/shader/celshade_class.cpp 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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('celshade__class_8cpp_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">celshade_class.cpp</div></div>
</div><!--header-->
<div class="contents">
<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="comment">// Filename: lightshaderclass.cpp</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &quot;celshade_class.h&quot;</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span> </div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span> </div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span>celshade_class::celshade_class()</div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span>{</div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span> vertex_shader_ = 0;</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> pixel_shader_ = 0;</div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span> layout_ = 0;</div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> sample_state_ = 0;</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> matrix_buffer_ = 0;</div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> camera_buffer_ = 0;</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> sunlight_buffer_ = 0;</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> sunlight_color_buffer_ = 0;</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> sunlight_position_buffer_ = 0;</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span>}</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> </div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> </div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span>celshade_class::celshade_class(<span class="keyword">const</span> <a class="code hl_class" href="classcelshade__class.html">celshade_class</a>&amp; other)</div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span>{</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span>}</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="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span>celshade_class::~celshade_class()</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"> 28</span>}</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> </div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> </div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span><span class="keywordtype">bool</span> celshade_class::initialize(ID3D11Device* device, HWND hwnd)</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span>{</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> Logger::Get().Log(<span class="stringliteral">&quot;Initializing LightShaderClass&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> </div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> <span class="keywordtype">wchar_t</span> vsFilename[128];</div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> <span class="keywordtype">wchar_t</span> psFilename[128];</div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span> <span class="keywordtype">int</span> error;</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> <span class="keywordtype">bool</span> result;</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> </div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> <span class="comment">// Set the filename of the vertex shader.</span></div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> error = wcscpy_s(vsFilename, 128, L<span class="stringliteral">&quot;src/hlsl/celshading.vs&quot;</span>);</div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <span class="keywordflow">if</span> (error != 0)</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> {</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to copy string&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> }</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"> 48</span> <span class="comment">// Set the filename of the pixel shader.</span></div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> error = wcscpy_s(psFilename, 128, L<span class="stringliteral">&quot;src/hlsl/celshading.ps&quot;</span>);</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> <span class="keywordflow">if</span> (error != 0)</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> {</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to copy string&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> }</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <span class="comment">// initialize the vertex and pixel shaders.</span></div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> result = initialize_shader(device, hwnd, vsFilename, psFilename);</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> {</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to initialize shader&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> }</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> </div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> Logger::Get().Log(<span class="stringliteral">&quot;SunLightShaderClass initialized&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> </div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span>}</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> </div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> </div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span><span class="keywordtype">void</span> celshade_class::shutdown()</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span>{</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="comment">// shutdown the vertex and pixel shaders as well as the related objects.</span></div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> shutdown_shader();</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> </div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span>}</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> </div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span><span class="keywordtype">bool</span> celshade_class::render(ID3D11DeviceContext* deviceContext, <span class="keywordtype">int</span> index_count, XMMATRIX world_matrix, XMMATRIX view_matrix, XMMATRIX projection_matrix,</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> ID3D11ShaderResourceView* texture, XMFLOAT4 diffuse_color, XMFLOAT4 ambient_color, XMFLOAT3 sun_direction, <span class="keywordtype">float</span> sunIntensity)</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span>{</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> <span class="keywordtype">bool</span> result;</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> </div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> </div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> <span class="comment">// Set the shader parameters that it will use for rendering.</span></div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> result = set_shader_parameters(deviceContext, world_matrix, view_matrix, projection_matrix, texture, diffuse_color, ambient_color, sun_direction, sunIntensity);</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> {</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to set shader parameters&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> }</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> </div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> <span class="comment">// Now render the prepared buffers with the shader.</span></div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> render_shader(deviceContext, index_count);</div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> </div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span>}</div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> </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"> 98</span><span class="keywordtype">bool</span> celshade_class::initialize_shader(ID3D11Device* device, HWND hwnd, WCHAR* vsFilename, WCHAR* psFilename)</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span>{</div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span> Logger::Get().Log(<span class="stringliteral">&quot;Initializing shader&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> </div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> HRESULT result;</div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> ID3D10Blob* errorMessage;</div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span> ID3D10Blob* vertexShaderBuffer;</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"> 105</span> ID3D10Blob* pixelShaderBuffer;</div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> D3D11_INPUT_ELEMENT_DESC polygonLayout[3];</div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> numElements;</div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span> D3D11_SAMPLER_DESC samplerDesc;</div>
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> D3D11_BUFFER_DESC matrixBufferDesc;</div>
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span> D3D11_BUFFER_DESC sunlightBufferDesc;</div>
<div class="line"><a id="l00111" name="l00111"></a><span class="lineno"> 111</span> </div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"> 112</span> <span class="comment">// initialize the pointers this function will use to null.</span></div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span> errorMessage = 0;</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> vertexShaderBuffer = 0;</div>
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> pixelShaderBuffer = 0;</div>
<div class="line"><a id="l00116" name="l00116"></a><span class="lineno"> 116</span> </div>
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"> 117</span> <span class="comment">// Compile the vertex shader code.</span></div>
<div class="line"><a id="l00118" name="l00118"></a><span class="lineno"> 118</span> result = D3DCompileFromFile(vsFilename, NULL, NULL, <span class="stringliteral">&quot;SunLightVertexShader&quot;</span>, <span class="stringliteral">&quot;vs_5_0&quot;</span>, D3D10_SHADER_ENABLE_STRICTNESS, 0, &amp;vertexShaderBuffer, &amp;errorMessage);</div>
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"> 119</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> {</div>
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> <span class="keywordflow">if</span> (errorMessage)</div>
<div class="line"><a id="l00122" name="l00122"></a><span class="lineno"> 122</span> {</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"> 123</span> output_shader_error_message(errorMessage, hwnd, vsFilename);</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> }</div>
<div class="line"><a id="l00125" name="l00125"></a><span class="lineno"> 125</span> <span class="keywordflow">else</span></div>
<div class="line"><a id="l00126" name="l00126"></a><span class="lineno"> 126</span> {</div>
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"> 127</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to compile shader&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span> }</div>
<div class="line"><a id="l00129" name="l00129"></a><span class="lineno"> 129</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00130" name="l00130"></a><span class="lineno"> 130</span> }</div>
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"> 131</span> </div>
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span> <span class="comment">// Compile the pixel shader code.</span></div>
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> result = D3DCompileFromFile(psFilename, NULL, NULL, <span class="stringliteral">&quot;SunLightPixelShader&quot;</span>, <span class="stringliteral">&quot;ps_5_0&quot;</span>, D3D10_SHADER_ENABLE_STRICTNESS, 0, &amp;pixelShaderBuffer, &amp;errorMessage);</div>
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> {</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span> <span class="keywordflow">if</span> (errorMessage)</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> {</div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> output_shader_error_message(errorMessage, hwnd, psFilename);</div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> }</div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> <span class="keywordflow">else</span></div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> {</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to compile shader&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"> 143</span> }</div>
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"> 144</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"> 145</span> }</div>
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> </div>
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span> <span class="comment">// Create the vertex shader from the buffer.</span></div>
<div class="line"><a id="l00148" name="l00148"></a><span class="lineno"> 148</span> result = device-&gt;CreateVertexShader(vertexShaderBuffer-&gt;GetBufferPointer(), vertexShaderBuffer-&gt;GetBufferSize(), NULL, &amp;vertex_shader_);</div>
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> {</div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to create vertex shader&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> }</div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> </div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> <span class="comment">// Create the pixel shader from the buffer.</span></div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> result = device-&gt;CreatePixelShader(pixelShaderBuffer-&gt;GetBufferPointer(), pixelShaderBuffer-&gt;GetBufferSize(), NULL, &amp;pixel_shader_);</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> {</div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to create pixel shader&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> }</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> </div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> <span class="comment">// Create the vertex input layout description.</span></div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> polygonLayout[0].SemanticName = <span class="stringliteral">&quot;POSITION&quot;</span>;</div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> polygonLayout[0].SemanticIndex = 0;</div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> polygonLayout[0].Format = DXGI_FORMAT_R32G32B32_FLOAT;</div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> polygonLayout[0].InputSlot = 0;</div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> polygonLayout[0].AlignedByteOffset = 0;</div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> polygonLayout[0].InputSlotClass = D3D11_INPUT_PER_VERTEX_DATA;</div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> polygonLayout[0].InstanceDataStepRate = 0;</div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> </div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> polygonLayout[1].SemanticName = <span class="stringliteral">&quot;TEXCOORD&quot;</span>;</div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> polygonLayout[1].SemanticIndex = 0;</div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> polygonLayout[1].Format = DXGI_FORMAT_R32G32_FLOAT;</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> polygonLayout[1].InputSlot = 0;</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> polygonLayout[1].AlignedByteOffset = D3D11_APPEND_ALIGNED_ELEMENT;</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> polygonLayout[1].InputSlotClass = D3D11_INPUT_PER_VERTEX_DATA;</div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> polygonLayout[1].InstanceDataStepRate = 0;</div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> </div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> polygonLayout[2].SemanticName = <span class="stringliteral">&quot;NORMAL&quot;</span>;</div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> polygonLayout[2].SemanticIndex = 0;</div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> polygonLayout[2].Format = DXGI_FORMAT_R32G32B32_FLOAT;</div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> polygonLayout[2].InputSlot = 0;</div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> polygonLayout[2].AlignedByteOffset = D3D11_APPEND_ALIGNED_ELEMENT;</div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> polygonLayout[2].InputSlotClass = D3D11_INPUT_PER_VERTEX_DATA;</div>
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> polygonLayout[2].InstanceDataStepRate = 0;</div>
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> </div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> <span class="comment">// Get a count of the elements in the layout.</span></div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> numElements = <span class="keyword">sizeof</span>(polygonLayout) / <span class="keyword">sizeof</span>(polygonLayout[0]);</div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> </div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> <span class="comment">// Create the vertex input layout.</span></div>
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> result = device-&gt;CreateInputLayout(polygonLayout, numElements, vertexShaderBuffer-&gt;GetBufferPointer(), vertexShaderBuffer-&gt;GetBufferSize(), &amp;layout_);</div>
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> {</div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to create input layout&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span> }</div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> </div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span> <span class="comment">// Release the vertex shader buffer and pixel shader buffer since they are no longer needed.</span></div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span> vertexShaderBuffer-&gt;Release();</div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> vertexShaderBuffer = 0;</div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span> </div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span> pixelShaderBuffer-&gt;Release();</div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span> pixelShaderBuffer = 0;</div>
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span> </div>
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span> <span class="comment">// Create a texture sampler state description.</span></div>
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> samplerDesc.Filter = D3D11_FILTER_MIN_MAG_MIP_LINEAR;</div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span> samplerDesc.AddressU = D3D11_TEXTURE_ADDRESS_WRAP;</div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span> samplerDesc.AddressV = D3D11_TEXTURE_ADDRESS_WRAP;</div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> samplerDesc.AddressW = D3D11_TEXTURE_ADDRESS_WRAP;</div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span> samplerDesc.MipLODBias = 0.0f;</div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span> samplerDesc.MaxAnisotropy = 1;</div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span> samplerDesc.ComparisonFunc = D3D11_COMPARISON_ALWAYS;</div>
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno"> 214</span> samplerDesc.BorderColor[0] = 0;</div>
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"> 215</span> samplerDesc.BorderColor[1] = 0;</div>
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno"> 216</span> samplerDesc.BorderColor[2] = 0;</div>
<div class="line"><a id="l00217" name="l00217"></a><span class="lineno"> 217</span> samplerDesc.BorderColor[3] = 0;</div>
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"> 218</span> samplerDesc.MinLOD = 0;</div>
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"> 219</span> samplerDesc.MaxLOD = D3D11_FLOAT32_MAX;</div>
<div class="line"><a id="l00220" name="l00220"></a><span class="lineno"> 220</span> </div>
<div class="line"><a id="l00221" name="l00221"></a><span class="lineno"> 221</span> <span class="comment">// Create the texture sampler state.</span></div>
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno"> 222</span> result = device-&gt;CreateSamplerState(&amp;samplerDesc, &amp;sample_state_);</div>
<div class="line"><a id="l00223" name="l00223"></a><span class="lineno"> 223</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"> 224</span> {</div>
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to create sampler state&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00226" name="l00226"></a><span class="lineno"> 226</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00227" name="l00227"></a><span class="lineno"> 227</span> }</div>
<div class="line"><a id="l00228" name="l00228"></a><span class="lineno"> 228</span> </div>
<div class="line"><a id="l00229" name="l00229"></a><span class="lineno"> 229</span> <span class="comment">// Setup the description of the dynamic matrix constant buffer that is in the vertex shader.</span></div>
<div class="line"><a id="l00230" name="l00230"></a><span class="lineno"> 230</span> matrixBufferDesc.Usage = D3D11_USAGE_DYNAMIC;</div>
<div class="line"><a id="l00231" name="l00231"></a><span class="lineno"> 231</span> matrixBufferDesc.ByteWidth = <span class="keyword">sizeof</span>(matrix_buffer_type);</div>
<div class="line"><a id="l00232" name="l00232"></a><span class="lineno"> 232</span> matrixBufferDesc.BindFlags = D3D11_BIND_CONSTANT_BUFFER;</div>
<div class="line"><a id="l00233" name="l00233"></a><span class="lineno"> 233</span> matrixBufferDesc.CPUAccessFlags = D3D11_CPU_ACCESS_WRITE;</div>
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"> 234</span> matrixBufferDesc.MiscFlags = 0;</div>
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno"> 235</span> matrixBufferDesc.StructureByteStride = 0;</div>
<div class="line"><a id="l00236" name="l00236"></a><span class="lineno"> 236</span> </div>
<div class="line"><a id="l00237" name="l00237"></a><span class="lineno"> 237</span> <span class="comment">// Create the constant buffer pointer so we can access the vertex shader constant buffer from within this class.</span></div>
<div class="line"><a id="l00238" name="l00238"></a><span class="lineno"> 238</span> result = device-&gt;CreateBuffer(&amp;matrixBufferDesc, NULL, &amp;matrix_buffer_);</div>
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno"> 239</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"> 240</span> {</div>
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"> 241</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to create matrix buffer&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno"> 242</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"> 243</span> }</div>
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno"> 244</span> </div>
<div class="line"><a id="l00245" name="l00245"></a><span class="lineno"> 245</span> <span class="comment">// Setup the description of the dynamic sunlight constant buffer that is in the pixel shader.</span></div>
<div class="line"><a id="l00246" name="l00246"></a><span class="lineno"> 246</span> sunlightBufferDesc.Usage = D3D11_USAGE_DYNAMIC;</div>
<div class="line"><a id="l00247" name="l00247"></a><span class="lineno"> 247</span> sunlightBufferDesc.ByteWidth = <span class="keyword">sizeof</span>(sun_light_buffer_type);</div>
<div class="line"><a id="l00248" name="l00248"></a><span class="lineno"> 248</span> sunlightBufferDesc.BindFlags = D3D11_BIND_CONSTANT_BUFFER;</div>
<div class="line"><a id="l00249" name="l00249"></a><span class="lineno"> 249</span> sunlightBufferDesc.CPUAccessFlags = D3D11_CPU_ACCESS_WRITE;</div>
<div class="line"><a id="l00250" name="l00250"></a><span class="lineno"> 250</span> sunlightBufferDesc.MiscFlags = 0;</div>
<div class="line"><a id="l00251" name="l00251"></a><span class="lineno"> 251</span> sunlightBufferDesc.StructureByteStride = 0;</div>
<div class="line"><a id="l00252" name="l00252"></a><span class="lineno"> 252</span> </div>
<div class="line"><a id="l00253" name="l00253"></a><span class="lineno"> 253</span> <span class="comment">// Create the constant buffer pointer so we can access the pixel shader constant buffer from within this class.</span></div>
<div class="line"><a id="l00254" name="l00254"></a><span class="lineno"> 254</span> result = device-&gt;CreateBuffer(&amp;sunlightBufferDesc, NULL, &amp;sunlight_buffer_);</div>
<div class="line"><a id="l00255" name="l00255"></a><span class="lineno"> 255</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><a id="l00256" name="l00256"></a><span class="lineno"> 256</span> {</div>
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno"> 257</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to create sunlight buffer&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><a id="l00258" name="l00258"></a><span class="lineno"> 258</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00259" name="l00259"></a><span class="lineno"> 259</span> }</div>
<div class="line"><a id="l00260" name="l00260"></a><span class="lineno"> 260</span> </div>
<div class="line"><a id="l00261" name="l00261"></a><span class="lineno"> 261</span> Logger::Get().Log(<span class="stringliteral">&quot;Shader initialized&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><a id="l00262" name="l00262"></a><span class="lineno"> 262</span> </div>
<div class="line"><a id="l00263" name="l00263"></a><span class="lineno"> 263</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00264" name="l00264"></a><span class="lineno"> 264</span>}</div>
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno"> 265</span> </div>
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span> </div>
<div class="line"><a id="l00267" name="l00267"></a><span class="lineno"> 267</span> </div>
<div class="line"><a id="l00268" name="l00268"></a><span class="lineno"> 268</span> </div>
<div class="line"><a id="l00269" name="l00269"></a><span class="lineno"> 269</span><span class="keywordtype">void</span> celshade_class::shutdown_shader()</div>
<div class="line"><a id="l00270" name="l00270"></a><span class="lineno"> 270</span>{</div>
<div class="line"><a id="l00271" name="l00271"></a><span class="lineno"> 271</span> Logger::Get().Log(<span class="stringliteral">&quot;Shutting down SunLightShaderClass&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00272" name="l00272"></a><span class="lineno"> 272</span> </div>
<div class="line"><a id="l00273" name="l00273"></a><span class="lineno"> 273</span> <span class="comment">// Release the light constant buffers.</span></div>
<div class="line"><a id="l00274" name="l00274"></a><span class="lineno"> 274</span> <span class="keywordflow">if</span> (sunlight_color_buffer_)</div>
<div class="line"><a id="l00275" name="l00275"></a><span class="lineno"> 275</span> {</div>
<div class="line"><a id="l00276" name="l00276"></a><span class="lineno"> 276</span> sunlight_color_buffer_-&gt;Release();</div>
<div class="line"><a id="l00277" name="l00277"></a><span class="lineno"> 277</span> sunlight_color_buffer_ = 0;</div>
<div class="line"><a id="l00278" name="l00278"></a><span class="lineno"> 278</span> }</div>
<div class="line"><a id="l00279" name="l00279"></a><span class="lineno"> 279</span> </div>
<div class="line"><a id="l00280" name="l00280"></a><span class="lineno"> 280</span> <span class="keywordflow">if</span> (sunlight_position_buffer_)</div>
<div class="line"><a id="l00281" name="l00281"></a><span class="lineno"> 281</span> {</div>
<div class="line"><a id="l00282" name="l00282"></a><span class="lineno"> 282</span> sunlight_position_buffer_-&gt;Release();</div>
<div class="line"><a id="l00283" name="l00283"></a><span class="lineno"> 283</span> sunlight_position_buffer_ = 0;</div>
<div class="line"><a id="l00284" name="l00284"></a><span class="lineno"> 284</span> }</div>
<div class="line"><a id="l00285" name="l00285"></a><span class="lineno"> 285</span> </div>
<div class="line"><a id="l00286" name="l00286"></a><span class="lineno"> 286</span> <span class="comment">// Release the light constant buffer.</span></div>
<div class="line"><a id="l00287" name="l00287"></a><span class="lineno"> 287</span> <span class="keywordflow">if</span> (sunlight_buffer_)</div>
<div class="line"><a id="l00288" name="l00288"></a><span class="lineno"> 288</span> {</div>
<div class="line"><a id="l00289" name="l00289"></a><span class="lineno"> 289</span> sunlight_buffer_-&gt;Release();</div>
<div class="line"><a id="l00290" name="l00290"></a><span class="lineno"> 290</span> sunlight_buffer_ = 0;</div>
<div class="line"><a id="l00291" name="l00291"></a><span class="lineno"> 291</span> }</div>
<div class="line"><a id="l00292" name="l00292"></a><span class="lineno"> 292</span> </div>
<div class="line"><a id="l00293" name="l00293"></a><span class="lineno"> 293</span> <span class="comment">// Release the camera constant buffer.</span></div>
<div class="line"><a id="l00294" name="l00294"></a><span class="lineno"> 294</span> <span class="keywordflow">if</span> (camera_buffer_)</div>
<div class="line"><a id="l00295" name="l00295"></a><span class="lineno"> 295</span> {</div>
<div class="line"><a id="l00296" name="l00296"></a><span class="lineno"> 296</span> camera_buffer_-&gt;Release();</div>
<div class="line"><a id="l00297" name="l00297"></a><span class="lineno"> 297</span> camera_buffer_ = 0;</div>
<div class="line"><a id="l00298" name="l00298"></a><span class="lineno"> 298</span> }</div>
<div class="line"><a id="l00299" name="l00299"></a><span class="lineno"> 299</span> </div>
<div class="line"><a id="l00300" name="l00300"></a><span class="lineno"> 300</span> <span class="comment">// Release the matrix constant buffer.</span></div>
<div class="line"><a id="l00301" name="l00301"></a><span class="lineno"> 301</span> <span class="keywordflow">if</span> (matrix_buffer_)</div>
<div class="line"><a id="l00302" name="l00302"></a><span class="lineno"> 302</span> {</div>
<div class="line"><a id="l00303" name="l00303"></a><span class="lineno"> 303</span> matrix_buffer_-&gt;Release();</div>
<div class="line"><a id="l00304" name="l00304"></a><span class="lineno"> 304</span> matrix_buffer_ = 0;</div>
<div class="line"><a id="l00305" name="l00305"></a><span class="lineno"> 305</span> }</div>
<div class="line"><a id="l00306" name="l00306"></a><span class="lineno"> 306</span> </div>
<div class="line"><a id="l00307" name="l00307"></a><span class="lineno"> 307</span> <span class="comment">// Release the sampler state.</span></div>
<div class="line"><a id="l00308" name="l00308"></a><span class="lineno"> 308</span> <span class="keywordflow">if</span> (sample_state_)</div>
<div class="line"><a id="l00309" name="l00309"></a><span class="lineno"> 309</span> {</div>
<div class="line"><a id="l00310" name="l00310"></a><span class="lineno"> 310</span> sample_state_-&gt;Release();</div>
<div class="line"><a id="l00311" name="l00311"></a><span class="lineno"> 311</span> sample_state_ = 0;</div>
<div class="line"><a id="l00312" name="l00312"></a><span class="lineno"> 312</span> }</div>
<div class="line"><a id="l00313" name="l00313"></a><span class="lineno"> 313</span> </div>
<div class="line"><a id="l00314" name="l00314"></a><span class="lineno"> 314</span> <span class="comment">// Release the layout.</span></div>
<div class="line"><a id="l00315" name="l00315"></a><span class="lineno"> 315</span> <span class="keywordflow">if</span> (layout_)</div>
<div class="line"><a id="l00316" name="l00316"></a><span class="lineno"> 316</span> {</div>
<div class="line"><a id="l00317" name="l00317"></a><span class="lineno"> 317</span> layout_-&gt;Release();</div>
<div class="line"><a id="l00318" name="l00318"></a><span class="lineno"> 318</span> layout_ = 0;</div>
<div class="line"><a id="l00319" name="l00319"></a><span class="lineno"> 319</span> }</div>
<div class="line"><a id="l00320" name="l00320"></a><span class="lineno"> 320</span> </div>
<div class="line"><a id="l00321" name="l00321"></a><span class="lineno"> 321</span> <span class="comment">// Release the pixel shader.</span></div>
<div class="line"><a id="l00322" name="l00322"></a><span class="lineno"> 322</span> <span class="keywordflow">if</span> (pixel_shader_)</div>
<div class="line"><a id="l00323" name="l00323"></a><span class="lineno"> 323</span> {</div>
<div class="line"><a id="l00324" name="l00324"></a><span class="lineno"> 324</span> pixel_shader_-&gt;Release();</div>
<div class="line"><a id="l00325" name="l00325"></a><span class="lineno"> 325</span> pixel_shader_ = 0;</div>
<div class="line"><a id="l00326" name="l00326"></a><span class="lineno"> 326</span> }</div>
<div class="line"><a id="l00327" name="l00327"></a><span class="lineno"> 327</span> </div>
<div class="line"><a id="l00328" name="l00328"></a><span class="lineno"> 328</span> <span class="comment">// Release the vertex shader.</span></div>
<div class="line"><a id="l00329" name="l00329"></a><span class="lineno"> 329</span> <span class="keywordflow">if</span> (vertex_shader_)</div>
<div class="line"><a id="l00330" name="l00330"></a><span class="lineno"> 330</span> {</div>
<div class="line"><a id="l00331" name="l00331"></a><span class="lineno"> 331</span> vertex_shader_-&gt;Release();</div>
<div class="line"><a id="l00332" name="l00332"></a><span class="lineno"> 332</span> vertex_shader_ = 0;</div>
<div class="line"><a id="l00333" name="l00333"></a><span class="lineno"> 333</span> }</div>
<div class="line"><a id="l00334" name="l00334"></a><span class="lineno"> 334</span> </div>
<div class="line"><a id="l00335" name="l00335"></a><span class="lineno"> 335</span> Logger::Get().Log(<span class="stringliteral">&quot;SunLightShaderClass shut down&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Shutdown);</div>
<div class="line"><a id="l00336" name="l00336"></a><span class="lineno"> 336</span> </div>
<div class="line"><a id="l00337" name="l00337"></a><span class="lineno"> 337</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00338" name="l00338"></a><span class="lineno"> 338</span>}</div>
<div class="line"><a id="l00339" name="l00339"></a><span class="lineno"> 339</span> </div>
<div class="line"><a id="l00340" name="l00340"></a><span class="lineno"> 340</span> </div>
<div class="line"><a id="l00341" name="l00341"></a><span class="lineno"> 341</span><span class="keywordtype">void</span> celshade_class::output_shader_error_message(ID3D10Blob* errorMessage, HWND hwnd, WCHAR* shaderFilename)</div>
<div class="line"><a id="l00342" name="l00342"></a><span class="lineno"> 342</span>{</div>
<div class="line"><a id="l00343" name="l00343"></a><span class="lineno"> 343</span> <span class="keywordtype">char</span>* compileErrors;</div>
<div class="line"><a id="l00344" name="l00344"></a><span class="lineno"> 344</span> <span class="keywordtype">unsigned</span> __int64 bufferSize, i;</div>
<div class="line"><a id="l00345" name="l00345"></a><span class="lineno"> 345</span> ofstream fout;</div>
<div class="line"><a id="l00346" name="l00346"></a><span class="lineno"> 346</span> </div>
<div class="line"><a id="l00347" name="l00347"></a><span class="lineno"> 347</span> </div>
<div class="line"><a id="l00348" name="l00348"></a><span class="lineno"> 348</span> <span class="comment">// Get a pointer to the error message text buffer.</span></div>
<div class="line"><a id="l00349" name="l00349"></a><span class="lineno"> 349</span> compileErrors = (<span class="keywordtype">char</span>*)(errorMessage-&gt;GetBufferPointer());</div>
<div class="line"><a id="l00350" name="l00350"></a><span class="lineno"> 350</span> </div>
<div class="line"><a id="l00351" name="l00351"></a><span class="lineno"> 351</span> <span class="comment">// Get the length of the message.</span></div>
<div class="line"><a id="l00352" name="l00352"></a><span class="lineno"> 352</span> bufferSize = errorMessage-&gt;GetBufferSize();</div>
<div class="line"><a id="l00353" name="l00353"></a><span class="lineno"> 353</span> </div>
<div class="line"><a id="l00354" name="l00354"></a><span class="lineno"> 354</span> <span class="comment">// Open a file to write the error message to.</span></div>
<div class="line"><a id="l00355" name="l00355"></a><span class="lineno"> 355</span> fout.open(<span class="stringliteral">&quot;shader-error.txt&quot;</span>);</div>
<div class="line"><a id="l00356" name="l00356"></a><span class="lineno"> 356</span> </div>
<div class="line"><a id="l00357" name="l00357"></a><span class="lineno"> 357</span> <span class="comment">// Write out the error message.</span></div>
<div class="line"><a id="l00358" name="l00358"></a><span class="lineno"> 358</span> <span class="keywordflow">for</span> (i = 0; i &lt; bufferSize; i++)</div>
<div class="line"><a id="l00359" name="l00359"></a><span class="lineno"> 359</span> {</div>
<div class="line"><a id="l00360" name="l00360"></a><span class="lineno"> 360</span> fout &lt;&lt; compileErrors[i];</div>
<div class="line"><a id="l00361" name="l00361"></a><span class="lineno"> 361</span> }</div>
<div class="line"><a id="l00362" name="l00362"></a><span class="lineno"> 362</span> </div>
<div class="line"><a id="l00363" name="l00363"></a><span class="lineno"> 363</span> <span class="comment">// Close the file.</span></div>
<div class="line"><a id="l00364" name="l00364"></a><span class="lineno"> 364</span> fout.close();</div>
<div class="line"><a id="l00365" name="l00365"></a><span class="lineno"> 365</span> </div>
<div class="line"><a id="l00366" name="l00366"></a><span class="lineno"> 366</span> <span class="comment">// Release the error message.</span></div>
<div class="line"><a id="l00367" name="l00367"></a><span class="lineno"> 367</span> errorMessage-&gt;Release();</div>
<div class="line"><a id="l00368" name="l00368"></a><span class="lineno"> 368</span> errorMessage = 0;</div>
<div class="line"><a id="l00369" name="l00369"></a><span class="lineno"> 369</span> </div>
<div class="line"><a id="l00370" name="l00370"></a><span class="lineno"> 370</span> <span class="comment">// Pop a message up on the screen to notify the user to check the text file for compile errors.</span></div>
<div class="line"><a id="l00371" name="l00371"></a><span class="lineno"> 371</span> MessageBox(hwnd, L<span class="stringliteral">&quot;Error compiling shader. Check shader-error.txt for message.&quot;</span>, shaderFilename, MB_OK);</div>
<div class="line"><a id="l00372" name="l00372"></a><span class="lineno"> 372</span> </div>
<div class="line"><a id="l00373" name="l00373"></a><span class="lineno"> 373</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00374" name="l00374"></a><span class="lineno"> 374</span>}</div>
<div class="line"><a id="l00375" name="l00375"></a><span class="lineno"> 375</span> </div>
<div class="line"><a id="l00376" name="l00376"></a><span class="lineno"> 376</span> </div>
<div class="line"><a id="l00377" name="l00377"></a><span class="lineno"> 377</span><span class="keywordtype">bool</span> celshade_class::set_shader_parameters(</div>
<div class="line"><a id="l00378" name="l00378"></a><span class="lineno"> 378</span> ID3D11DeviceContext* device_context,</div>
<div class="line"><a id="l00379" name="l00379"></a><span class="lineno"> 379</span> XMMATRIX world_matrix,</div>
<div class="line"><a id="l00380" name="l00380"></a><span class="lineno"> 380</span> XMMATRIX view_matrix,</div>
<div class="line"><a id="l00381" name="l00381"></a><span class="lineno"> 381</span> XMMATRIX projection_matrix,</div>
<div class="line"><a id="l00382" name="l00382"></a><span class="lineno"> 382</span> ID3D11ShaderResourceView* texture,</div>
<div class="line"><a id="l00383" name="l00383"></a><span class="lineno"> 383</span> XMFLOAT4 ambient_color,</div>
<div class="line"><a id="l00384" name="l00384"></a><span class="lineno"> 384</span> XMFLOAT4 diffuse_color,</div>
<div class="line"><a id="l00385" name="l00385"></a><span class="lineno"> 385</span> XMFLOAT3 light_direction,</div>
<div class="line"><a id="l00386" name="l00386"></a><span class="lineno"> 386</span> <span class="keywordtype">float</span> sun_intensity</div>
<div class="line"><a id="l00387" name="l00387"></a><span class="lineno"> 387</span> )</div>
<div class="line"><a id="l00388" name="l00388"></a><span class="lineno"> 388</span>{</div>
<div class="line"><a id="l00389" name="l00389"></a><span class="lineno"> 389</span> HRESULT result;</div>
<div class="line"><a id="l00390" name="l00390"></a><span class="lineno"> 390</span> D3D11_MAPPED_SUBRESOURCE mappedResource;</div>
<div class="line"><a id="l00391" name="l00391"></a><span class="lineno"> 391</span> matrix_buffer_type* dataPtr;</div>
<div class="line"><a id="l00392" name="l00392"></a><span class="lineno"> 392</span> camera_buffer_type* dataPtr2;</div>
<div class="line"><a id="l00393" name="l00393"></a><span class="lineno"> 393</span> sun_light_buffer_type* dataPtr3;</div>
<div class="line"><a id="l00394" name="l00394"></a><span class="lineno"> 394</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> bufferNumber;</div>
<div class="line"><a id="l00395" name="l00395"></a><span class="lineno"> 395</span> </div>
<div class="line"><a id="l00396" name="l00396"></a><span class="lineno"> 396</span> <span class="comment">// Transpose the matrices to prepare them for the shader.</span></div>
<div class="line"><a id="l00397" name="l00397"></a><span class="lineno"> 397</span> world_matrix = XMMatrixTranspose(world_matrix);</div>
<div class="line"><a id="l00398" name="l00398"></a><span class="lineno"> 398</span> view_matrix = XMMatrixTranspose(view_matrix);</div>
<div class="line"><a id="l00399" name="l00399"></a><span class="lineno"> 399</span> projection_matrix = XMMatrixTranspose(projection_matrix);</div>
<div class="line"><a id="l00400" name="l00400"></a><span class="lineno"> 400</span> </div>
<div class="line"><a id="l00401" name="l00401"></a><span class="lineno"> 401</span> <span class="comment">// Lock the constant buffer so it can be written to.</span></div>
<div class="line"><a id="l00402" name="l00402"></a><span class="lineno"> 402</span> result = device_context-&gt;Map(matrix_buffer_, 0, D3D11_MAP_WRITE_DISCARD, 0, &amp;mappedResource);</div>
<div class="line"><a id="l00403" name="l00403"></a><span class="lineno"> 403</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><a id="l00404" name="l00404"></a><span class="lineno"> 404</span> {</div>
<div class="line"><a id="l00405" name="l00405"></a><span class="lineno"> 405</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00406" name="l00406"></a><span class="lineno"> 406</span> }</div>
<div class="line"><a id="l00407" name="l00407"></a><span class="lineno"> 407</span> </div>
<div class="line"><a id="l00408" name="l00408"></a><span class="lineno"> 408</span> <span class="comment">// Get a pointer to the data in the constant buffer.</span></div>
<div class="line"><a id="l00409" name="l00409"></a><span class="lineno"> 409</span> dataPtr = (matrix_buffer_type*)mappedResource.pData;</div>
<div class="line"><a id="l00410" name="l00410"></a><span class="lineno"> 410</span> </div>
<div class="line"><a id="l00411" name="l00411"></a><span class="lineno"> 411</span> <span class="comment">// Copy the matrices into the constant buffer.</span></div>
<div class="line"><a id="l00412" name="l00412"></a><span class="lineno"> 412</span> dataPtr-&gt;world = world_matrix;</div>
<div class="line"><a id="l00413" name="l00413"></a><span class="lineno"> 413</span> dataPtr-&gt;view = view_matrix;</div>
<div class="line"><a id="l00414" name="l00414"></a><span class="lineno"> 414</span> dataPtr-&gt;projection = projection_matrix;</div>
<div class="line"><a id="l00415" name="l00415"></a><span class="lineno"> 415</span> </div>
<div class="line"><a id="l00416" name="l00416"></a><span class="lineno"> 416</span> <span class="comment">// Unlock the constant buffer.</span></div>
<div class="line"><a id="l00417" name="l00417"></a><span class="lineno"> 417</span> device_context-&gt;Unmap(matrix_buffer_, 0);</div>
<div class="line"><a id="l00418" name="l00418"></a><span class="lineno"> 418</span> </div>
<div class="line"><a id="l00419" name="l00419"></a><span class="lineno"> 419</span> <span class="comment">// Set the position of the constant buffer in the vertex shader.</span></div>
<div class="line"><a id="l00420" name="l00420"></a><span class="lineno"> 420</span> bufferNumber = 0;</div>
<div class="line"><a id="l00421" name="l00421"></a><span class="lineno"> 421</span> </div>
<div class="line"><a id="l00422" name="l00422"></a><span class="lineno"> 422</span> <span class="comment">// Finally set the constant buffer in the vertex shader with the updated values.</span></div>
<div class="line"><a id="l00423" name="l00423"></a><span class="lineno"> 423</span> device_context-&gt;VSSetConstantBuffers(bufferNumber, 1, &amp;matrix_buffer_);</div>
<div class="line"><a id="l00424" name="l00424"></a><span class="lineno"> 424</span> </div>
<div class="line"><a id="l00425" name="l00425"></a><span class="lineno"> 425</span> <span class="comment">// Lock the sunlight constant buffer so it can be written to.</span></div>
<div class="line"><a id="l00426" name="l00426"></a><span class="lineno"> 426</span> result = device_context-&gt;Map(sunlight_buffer_, 0, D3D11_MAP_WRITE_DISCARD, 0, &amp;mappedResource);</div>
<div class="line"><a id="l00427" name="l00427"></a><span class="lineno"> 427</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><a id="l00428" name="l00428"></a><span class="lineno"> 428</span> {</div>
<div class="line"><a id="l00429" name="l00429"></a><span class="lineno"> 429</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a id="l00430" name="l00430"></a><span class="lineno"> 430</span> }</div>
<div class="line"><a id="l00431" name="l00431"></a><span class="lineno"> 431</span> </div>
<div class="line"><a id="l00432" name="l00432"></a><span class="lineno"> 432</span> <span class="comment">// Get a pointer to the data in the constant buffer.</span></div>
<div class="line"><a id="l00433" name="l00433"></a><span class="lineno"> 433</span> dataPtr3 = (sun_light_buffer_type*)mappedResource.pData;</div>
<div class="line"><a id="l00434" name="l00434"></a><span class="lineno"> 434</span> </div>
<div class="line"><a id="l00435" name="l00435"></a><span class="lineno"> 435</span> <span class="comment">// Copy the lighting variables into the constant buffer.</span></div>
<div class="line"><a id="l00436" name="l00436"></a><span class="lineno"> 436</span> dataPtr3-&gt;ambient_color = ambient_color;</div>
<div class="line"><a id="l00437" name="l00437"></a><span class="lineno"> 437</span> dataPtr3-&gt;diffuse_color = diffuse_color;</div>
<div class="line"><a id="l00438" name="l00438"></a><span class="lineno"> 438</span> dataPtr3-&gt;sun_direction = light_direction;</div>
<div class="line"><a id="l00439" name="l00439"></a><span class="lineno"> 439</span> dataPtr3-&gt;intensity = sun_intensity;</div>
<div class="line"><a id="l00440" name="l00440"></a><span class="lineno"> 440</span> </div>
<div class="line"><a id="l00441" name="l00441"></a><span class="lineno"> 441</span> <span class="comment">// Unlock the constant buffer.</span></div>
<div class="line"><a id="l00442" name="l00442"></a><span class="lineno"> 442</span> device_context-&gt;Unmap(sunlight_buffer_, 0);</div>
<div class="line"><a id="l00443" name="l00443"></a><span class="lineno"> 443</span> </div>
<div class="line"><a id="l00444" name="l00444"></a><span class="lineno"> 444</span> <span class="comment">// Set the position of the sunlight constant buffer in the pixel shader.</span></div>
<div class="line"><a id="l00445" name="l00445"></a><span class="lineno"> 445</span> bufferNumber = 0;</div>
<div class="line"><a id="l00446" name="l00446"></a><span class="lineno"> 446</span> </div>
<div class="line"><a id="l00447" name="l00447"></a><span class="lineno"> 447</span> <span class="comment">// Finally set the sunlight constant buffer in the pixel shader with the updated values.</span></div>
<div class="line"><a id="l00448" name="l00448"></a><span class="lineno"> 448</span> device_context-&gt;PSSetConstantBuffers(bufferNumber, 1, &amp;sunlight_buffer_);</div>
<div class="line"><a id="l00449" name="l00449"></a><span class="lineno"> 449</span> </div>
<div class="line"><a id="l00450" name="l00450"></a><span class="lineno"> 450</span> <span class="comment">// Set shader texture resource in the pixel shader.</span></div>
<div class="line"><a id="l00451" name="l00451"></a><span class="lineno"> 451</span> device_context-&gt;PSSetShaderResources(0, 1, &amp;texture);</div>
<div class="line"><a id="l00452" name="l00452"></a><span class="lineno"> 452</span> </div>
<div class="line"><a id="l00453" name="l00453"></a><span class="lineno"> 453</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a id="l00454" name="l00454"></a><span class="lineno"> 454</span>}</div>
<div class="line"><a id="l00455" name="l00455"></a><span class="lineno"> 455</span> </div>
<div class="line"><a id="l00456" name="l00456"></a><span class="lineno"> 456</span><span class="keywordtype">void</span> celshade_class::render_shader(ID3D11DeviceContext* deviceContext, <span class="keywordtype">int</span> indexCount)</div>
<div class="line"><a id="l00457" name="l00457"></a><span class="lineno"> 457</span>{</div>
<div class="line"><a id="l00458" name="l00458"></a><span class="lineno"> 458</span> <span class="comment">// Set the vertex input layout.</span></div>
<div class="line"><a id="l00459" name="l00459"></a><span class="lineno"> 459</span> deviceContext-&gt;IASetInputLayout(layout_);</div>
<div class="line"><a id="l00460" name="l00460"></a><span class="lineno"> 460</span> </div>
<div class="line"><a id="l00461" name="l00461"></a><span class="lineno"> 461</span> <span class="comment">// Set the vertex and pixel shaders that will be used to render this triangle.</span></div>
<div class="line"><a id="l00462" name="l00462"></a><span class="lineno"> 462</span> deviceContext-&gt;VSSetShader(vertex_shader_, NULL, 0);</div>
<div class="line"><a id="l00463" name="l00463"></a><span class="lineno"> 463</span> deviceContext-&gt;PSSetShader(pixel_shader_, NULL, 0);</div>
<div class="line"><a id="l00464" name="l00464"></a><span class="lineno"> 464</span> </div>
<div class="line"><a id="l00465" name="l00465"></a><span class="lineno"> 465</span> <span class="comment">// Set the sampler state in the pixel shader.</span></div>
<div class="line"><a id="l00466" name="l00466"></a><span class="lineno"> 466</span> deviceContext-&gt;PSSetSamplers(0, 1, &amp;sample_state_);</div>
<div class="line"><a id="l00467" name="l00467"></a><span class="lineno"> 467</span> </div>
<div class="line"><a id="l00468" name="l00468"></a><span class="lineno"> 468</span> <span class="comment">// render the triangle.</span></div>
<div class="line"><a id="l00469" name="l00469"></a><span class="lineno"> 469</span> deviceContext-&gt;DrawIndexed(indexCount, 0, 0);</div>
<div class="line"><a id="l00470" name="l00470"></a><span class="lineno"> 470</span> </div>
<div class="line"><a id="l00471" name="l00471"></a><span class="lineno"> 471</span> <span class="keywordflow">return</span>;</div>
<div class="line"><a id="l00472" name="l00472"></a><span class="lineno"> 472</span>}</div>
<div class="ttc" id="aclasscelshade__class_html"><div class="ttname"><a href="classcelshade__class.html">celshade_class</a></div><div class="ttdef"><b>Definition</b> <a href="celshade__class_8h_source.html#l00011">celshade_class.h:12</a></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_f4a881938f04d9c04de7741e8b9c813b.html">enginecustom</a></li><li class="navelem"><a class="el" href="dir_4288ac3ffb2af5f572fd6fdc04a1176b.html">src</a></li><li class="navelem"><a class="el" href="dir_9f969fb6181399983524402442d3614f.html">src</a></li><li class="navelem"><a class="el" href="dir_b9b5903ed1b60456b17bbae9b6f189f3.html">shader</a></li><li class="navelem"><b>celshade_class.cpp</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,200 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: enginecustom/src/inc/shader/celshade_class.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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('celshade__class_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">celshade_class.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#pragma once</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span> </div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="preprocessor">#include &quot;Logger.h&quot;</span></div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include &lt;d3d11.h&gt;</span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#include &lt;d3dcompiler.h&gt;</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="preprocessor">#include &lt;directxmath.h&gt;</span></div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#include &lt;fstream&gt;</span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="keyword">using namespace </span>DirectX;</div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="keyword">using namespace </span>std;</div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span> </div>
<div class="foldopen" id="foldopen00011" data-start="{" data-end="};">
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"><a class="line" href="classcelshade__class.html"> 11</a></span><span class="keyword">class </span><a class="code hl_class" href="classcelshade__class.html">celshade_class</a></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span>{</div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span> private :</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span> <span class="keyword">struct </span>matrix_buffer_type</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> {</div>
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span> XMMATRIX world;</div>
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span> XMMATRIX view;</div>
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span> XMMATRIX projection;</div>
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span> };</div>
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span> </div>
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span> <span class="keyword">struct </span>camera_buffer_type</div>
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> {</div>
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> XMFLOAT3 cameraPosition;</div>
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> <span class="keywordtype">float</span> padding;</div>
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span> };</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"> 28</span> <span class="keyword">struct </span>sun_light_buffer_type</div>
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span> {</div>
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span> XMFLOAT4 diffuse_color;</div>
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> XMFLOAT4 ambient_color;</div>
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> XMFLOAT3 sun_direction;</div>
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span> <span class="keywordtype">float</span> intensity;</div>
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span> };</div>
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> </div>
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span> </div>
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span>public :</div>
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span> <a class="code hl_class" href="classcelshade__class.html">celshade_class</a>();</div>
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> <a class="code hl_class" href="classcelshade__class.html">celshade_class</a>(<span class="keyword">const</span> <a class="code hl_class" href="classcelshade__class.html">celshade_class</a>&amp;);</div>
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span> <a class="code hl_class" href="classcelshade__class.html">~celshade_class</a>();</div>
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span> </div>
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> <span class="keywordtype">bool</span> initialize(ID3D11Device*, HWND);</div>
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span> <span class="keywordtype">void</span> shutdown();</div>
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> <span class="keywordtype">bool</span> render(</div>
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> ID3D11DeviceContext* device_context,</div>
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span> <span class="keywordtype">int</span> index_count,</div>
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span> XMMATRIX world_matrix,</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> XMMATRIX view_matrix, XMMATRIX</div>
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span> projection_matrix,</div>
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span> ID3D11ShaderResourceView* texture,</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> XMFLOAT4 diffuse_color,</div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span> XMFLOAT4 ambient_color,</div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"> 53</span> XMFLOAT3 sun_direction,</div>
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"> 54</span> <span class="keywordtype">float</span> intensity</div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> );</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> </div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> <span class="keywordtype">bool</span> initialize_shader(ID3D11Device*, HWND, WCHAR*, WCHAR*);</div>
<div class="line"><a id="l00059" name="l00059"></a><span class="lineno"> 59</span> <span class="keywordtype">void</span> shutdown_shader();</div>
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"> 60</span> <span class="keywordtype">void</span> output_shader_error_message(ID3D10Blob*, HWND, WCHAR*);</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> </div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="keywordtype">bool</span> set_shader_parameters(</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> ID3D11DeviceContext* device_context,</div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> XMMATRIX world_matrix,</div>
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> XMMATRIX view_matrix,</div>
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> XMMATRIX projection_matrix,</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> ID3D11ShaderResourceView* texture,</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> XMFLOAT4 ambient_color,</div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> XMFLOAT4 diffuse_color,</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> XMFLOAT3 light_direction,</div>
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span> <span class="keywordtype">float</span> sun_intensity</div>
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"> 72</span> );</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <span class="keywordtype">void</span> render_shader(ID3D11DeviceContext*, <span class="keywordtype">int</span>);</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> </div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span> ID3D11VertexShader* vertex_shader_;</div>
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span> ID3D11PixelShader* pixel_shader_;</div>
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span> ID3D11InputLayout* layout_;</div>
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span> ID3D11SamplerState* sample_state_;</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> ID3D11Buffer* matrix_buffer_;</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> ID3D11Buffer* camera_buffer_;</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> ID3D11Buffer* sunlight_buffer_;</div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> ID3D11Buffer* sunlight_color_buffer_;</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> ID3D11Buffer* sunlight_position_buffer_;</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span>};</div>
</div>
<div class="ttc" id="aclasscelshade__class_html"><div class="ttname"><a href="classcelshade__class.html">celshade_class</a></div><div class="ttdef"><b>Definition</b> <a href="#l00011">celshade_class.h:12</a></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_f4a881938f04d9c04de7741e8b9c813b.html">enginecustom</a></li><li class="navelem"><a class="el" href="dir_4288ac3ffb2af5f572fd6fdc04a1176b.html">src</a></li><li class="navelem"><a class="el" href="dir_fa382d1760f3c58d964524ef7c4d69c1.html">inc</a></li><li class="navelem"><a class="el" href="dir_a77fd64253ed7da2e528f6b352f899d7.html">shader</a></li><li class="navelem"><b>celshade_class.h</b></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,122 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('class_frustum_class.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">FrustumClass Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="class_frustum_class.html">FrustumClass</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>CheckCube</b>(float, float, float, float) (defined in <a class="el" href="class_frustum_class.html">FrustumClass</a>)</td><td class="entry"><a class="el" href="class_frustum_class.html">FrustumClass</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>CheckPoint</b>(float, float, float) (defined in <a class="el" href="class_frustum_class.html">FrustumClass</a>)</td><td class="entry"><a class="el" href="class_frustum_class.html">FrustumClass</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>CheckRectangle</b>(float, float, float, float, float, float) (defined in <a class="el" href="class_frustum_class.html">FrustumClass</a>)</td><td class="entry"><a class="el" href="class_frustum_class.html">FrustumClass</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>CheckSphere</b>(float, float, float, float) (defined in <a class="el" href="class_frustum_class.html">FrustumClass</a>)</td><td class="entry"><a class="el" href="class_frustum_class.html">FrustumClass</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ConstructFrustum</b>(XMMATRIX, XMMATRIX, float) (defined in <a class="el" href="class_frustum_class.html">FrustumClass</a>)</td><td class="entry"><a class="el" href="class_frustum_class.html">FrustumClass</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>FrustumClass</b>() (defined in <a class="el" href="class_frustum_class.html">FrustumClass</a>)</td><td class="entry"><a class="el" href="class_frustum_class.html">FrustumClass</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>FrustumClass</b>(const FrustumClass &amp;) (defined in <a class="el" href="class_frustum_class.html">FrustumClass</a>)</td><td class="entry"><a class="el" href="class_frustum_class.html">FrustumClass</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~FrustumClass</b>() (defined in <a class="el" href="class_frustum_class.html">FrustumClass</a>)</td><td class="entry"><a class="el" href="class_frustum_class.html">FrustumClass</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,637 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: FrustumClass Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('class_frustum_class.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="class_frustum_class-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">FrustumClass Class Reference</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a3e4fb03cda7e5382639522186908d673" id="r_a3e4fb03cda7e5382639522186908d673"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3e4fb03cda7e5382639522186908d673">FrustumClass</a> (const <a class="el" href="class_frustum_class.html">FrustumClass</a> &amp;)</td></tr>
<tr class="separator:a3e4fb03cda7e5382639522186908d673"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adeaf533105109b2a56940f8692aab123" id="r_adeaf533105109b2a56940f8692aab123"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#adeaf533105109b2a56940f8692aab123">ConstructFrustum</a> (XMMATRIX, XMMATRIX, float)</td></tr>
<tr class="separator:adeaf533105109b2a56940f8692aab123"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a61f780ff4f06d82d0d466f12f8cbbe76" id="r_a61f780ff4f06d82d0d466f12f8cbbe76"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a61f780ff4f06d82d0d466f12f8cbbe76">CheckPoint</a> (float, float, float)</td></tr>
<tr class="separator:a61f780ff4f06d82d0d466f12f8cbbe76"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a066f37260b949abb5d0fefd06c0c6817" id="r_a066f37260b949abb5d0fefd06c0c6817"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a066f37260b949abb5d0fefd06c0c6817">CheckCube</a> (float, float, float, float)</td></tr>
<tr class="separator:a066f37260b949abb5d0fefd06c0c6817"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7806a6d95944f6794d90cd941d7860b2" id="r_a7806a6d95944f6794d90cd941d7860b2"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a7806a6d95944f6794d90cd941d7860b2">CheckSphere</a> (float, float, float, float)</td></tr>
<tr class="separator:a7806a6d95944f6794d90cd941d7860b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a36ef6fb28871b148f1b17be30de2a084" id="r_a36ef6fb28871b148f1b17be30de2a084"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a36ef6fb28871b148f1b17be30de2a084">CheckRectangle</a> (float, float, float, float, float, float)</td></tr>
<tr class="separator:a36ef6fb28871b148f1b17be30de2a084"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="frustumclass_8h_source.html#l00015">15</a> of file <a class="el" href="frustumclass_8h_source.html">frustumclass.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a62130bf46eceff05f1fd7362d826a518" name="a62130bf46eceff05f1fd7362d826a518"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a62130bf46eceff05f1fd7362d826a518">&#9670;&#160;</a></span>FrustumClass() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">FrustumClass::FrustumClass </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="frustumclass_8cpp_source.html#l00004">4</a> of file <a class="el" href="frustumclass_8cpp_source.html">frustumclass.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 5</span>{</div>
<div class="line"><span class="lineno"> 6</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a3e4fb03cda7e5382639522186908d673" name="a3e4fb03cda7e5382639522186908d673"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3e4fb03cda7e5382639522186908d673">&#9670;&#160;</a></span>FrustumClass() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">FrustumClass::FrustumClass </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="class_frustum_class.html">FrustumClass</a> &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="frustumclass_8cpp_source.html#l00009">9</a> of file <a class="el" href="frustumclass_8cpp_source.html">frustumclass.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 10</span>{</div>
<div class="line"><span class="lineno"> 11</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ad109f05c5a62469d444de601de6caa72" name="ad109f05c5a62469d444de601de6caa72"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad109f05c5a62469d444de601de6caa72">&#9670;&#160;</a></span>~FrustumClass()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">FrustumClass::~FrustumClass </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="frustumclass_8cpp_source.html#l00014">14</a> of file <a class="el" href="frustumclass_8cpp_source.html">frustumclass.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 15</span>{</div>
<div class="line"><span class="lineno"> 16</span>}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a066f37260b949abb5d0fefd06c0c6817" name="a066f37260b949abb5d0fefd06c0c6817"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a066f37260b949abb5d0fefd06c0c6817">&#9670;&#160;</a></span>CheckCube()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool FrustumClass::CheckCube </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>xCenter</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>yCenter</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>zCenter</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>radius</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="frustumclass_8cpp_source.html#l00140">140</a> of file <a class="el" href="frustumclass_8cpp_source.html">frustumclass.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 141</span>{</div>
<div class="line"><span class="lineno"> 142</span> <span class="keywordtype">int</span> i;</div>
<div class="line"><span class="lineno"> 143</span> </div>
<div class="line"><span class="lineno"> 144</span> </div>
<div class="line"><span class="lineno"> 145</span> <span class="comment">// Check if any one point of the cube is in the view frustum.</span></div>
<div class="line"><span class="lineno"> 146</span> <span class="keywordflow">for</span> (i = 0; i &lt; 6; i++)</div>
<div class="line"><span class="lineno"> 147</span> {</div>
<div class="line"><span class="lineno"> 148</span> <span class="keywordflow">if</span> (m_planes[i].x * (xCenter - radius) +</div>
<div class="line"><span class="lineno"> 149</span> m_planes[i].y * (yCenter - radius) +</div>
<div class="line"><span class="lineno"> 150</span> m_planes[i].z * (zCenter - radius) + m_planes[i].w &gt;= 0.0f)</div>
<div class="line"><span class="lineno"> 151</span> {</div>
<div class="line"><span class="lineno"> 152</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 153</span> }</div>
<div class="line"><span class="lineno"> 154</span> </div>
<div class="line"><span class="lineno"> 155</span> <span class="keywordflow">if</span> (m_planes[i].x * (xCenter + radius) +</div>
<div class="line"><span class="lineno"> 156</span> m_planes[i].y * (yCenter - radius) +</div>
<div class="line"><span class="lineno"> 157</span> m_planes[i].z * (zCenter - radius) + m_planes[i].w &gt;= 0.0f)</div>
<div class="line"><span class="lineno"> 158</span> {</div>
<div class="line"><span class="lineno"> 159</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 160</span> }</div>
<div class="line"><span class="lineno"> 161</span> </div>
<div class="line"><span class="lineno"> 162</span> <span class="keywordflow">if</span> (m_planes[i].x * (xCenter - radius) +</div>
<div class="line"><span class="lineno"> 163</span> m_planes[i].y * (yCenter + radius) +</div>
<div class="line"><span class="lineno"> 164</span> m_planes[i].z * (zCenter - radius) + m_planes[i].w &gt;= 0.0f)</div>
<div class="line"><span class="lineno"> 165</span> {</div>
<div class="line"><span class="lineno"> 166</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 167</span> }</div>
<div class="line"><span class="lineno"> 168</span> </div>
<div class="line"><span class="lineno"> 169</span> <span class="keywordflow">if</span> (m_planes[i].x * (xCenter + radius) +</div>
<div class="line"><span class="lineno"> 170</span> m_planes[i].y * (yCenter + radius) +</div>
<div class="line"><span class="lineno"> 171</span> m_planes[i].z * (zCenter - radius) + m_planes[i].w &gt;= 0.0f)</div>
<div class="line"><span class="lineno"> 172</span> {</div>
<div class="line"><span class="lineno"> 173</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 174</span> }</div>
<div class="line"><span class="lineno"> 175</span> </div>
<div class="line"><span class="lineno"> 176</span> <span class="keywordflow">if</span> (m_planes[i].x * (xCenter - radius) +</div>
<div class="line"><span class="lineno"> 177</span> m_planes[i].y * (yCenter - radius) +</div>
<div class="line"><span class="lineno"> 178</span> m_planes[i].z * (zCenter + radius) + m_planes[i].w &gt;= 0.0f)</div>
<div class="line"><span class="lineno"> 179</span> {</div>
<div class="line"><span class="lineno"> 180</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 181</span> }</div>
<div class="line"><span class="lineno"> 182</span> </div>
<div class="line"><span class="lineno"> 183</span> <span class="keywordflow">if</span> (m_planes[i].x * (xCenter + radius) +</div>
<div class="line"><span class="lineno"> 184</span> m_planes[i].y * (yCenter - radius) +</div>
<div class="line"><span class="lineno"> 185</span> m_planes[i].z * (zCenter + radius) + m_planes[i].w &gt;= 0.0f)</div>
<div class="line"><span class="lineno"> 186</span> {</div>
<div class="line"><span class="lineno"> 187</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 188</span> }</div>
<div class="line"><span class="lineno"> 189</span> </div>
<div class="line"><span class="lineno"> 190</span> <span class="keywordflow">if</span> (m_planes[i].x * (xCenter - radius) +</div>
<div class="line"><span class="lineno"> 191</span> m_planes[i].y * (yCenter + radius) +</div>
<div class="line"><span class="lineno"> 192</span> m_planes[i].z * (zCenter + radius) + m_planes[i].w &gt;= 0.0f)</div>
<div class="line"><span class="lineno"> 193</span> {</div>
<div class="line"><span class="lineno"> 194</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 195</span> }</div>
<div class="line"><span class="lineno"> 196</span> </div>
<div class="line"><span class="lineno"> 197</span> <span class="keywordflow">if</span> (m_planes[i].x * (xCenter + radius) +</div>
<div class="line"><span class="lineno"> 198</span> m_planes[i].y * (yCenter + radius) +</div>
<div class="line"><span class="lineno"> 199</span> m_planes[i].z * (zCenter + radius) + m_planes[i].w &gt;= 0.0f)</div>
<div class="line"><span class="lineno"> 200</span> {</div>
<div class="line"><span class="lineno"> 201</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 202</span> }</div>
<div class="line"><span class="lineno"> 203</span> </div>
<div class="line"><span class="lineno"> 204</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 205</span> }</div>
<div class="line"><span class="lineno"> 206</span> </div>
<div class="line"><span class="lineno"> 207</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 208</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a61f780ff4f06d82d0d466f12f8cbbe76" name="a61f780ff4f06d82d0d466f12f8cbbe76"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a61f780ff4f06d82d0d466f12f8cbbe76">&#9670;&#160;</a></span>CheckPoint()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool FrustumClass::CheckPoint </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>x</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>y</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>z</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="frustumclass_8cpp_source.html#l00123">123</a> of file <a class="el" href="frustumclass_8cpp_source.html">frustumclass.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 124</span>{</div>
<div class="line"><span class="lineno"> 125</span> <span class="keywordtype">int</span> i;</div>
<div class="line"><span class="lineno"> 126</span> </div>
<div class="line"><span class="lineno"> 127</span> </div>
<div class="line"><span class="lineno"> 128</span> <span class="comment">// Check if the point is inside all six planes of the view frustum.</span></div>
<div class="line"><span class="lineno"> 129</span> <span class="keywordflow">for</span> (i = 0; i &lt; 6; i++)</div>
<div class="line"><span class="lineno"> 130</span> {</div>
<div class="line"><span class="lineno"> 131</span> <span class="keywordflow">if</span> (((m_planes[i].x * x) + (m_planes[i].y * y) + (m_planes[i].z * z) + m_planes[i].w) &lt; 0.0f)</div>
<div class="line"><span class="lineno"> 132</span> {</div>
<div class="line"><span class="lineno"> 133</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 134</span> }</div>
<div class="line"><span class="lineno"> 135</span> }</div>
<div class="line"><span class="lineno"> 136</span> </div>
<div class="line"><span class="lineno"> 137</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 138</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a36ef6fb28871b148f1b17be30de2a084" name="a36ef6fb28871b148f1b17be30de2a084"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a36ef6fb28871b148f1b17be30de2a084">&#9670;&#160;</a></span>CheckRectangle()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool FrustumClass::CheckRectangle </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>xCenter</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>yCenter</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>zCenter</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>xSize</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>ySize</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>zSize</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="frustumclass_8cpp_source.html#l00227">227</a> of file <a class="el" href="frustumclass_8cpp_source.html">frustumclass.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 228</span>{</div>
<div class="line"><span class="lineno"> 229</span> <span class="keywordtype">int</span> i;</div>
<div class="line"><span class="lineno"> 230</span> </div>
<div class="line"><span class="lineno"> 231</span> </div>
<div class="line"><span class="lineno"> 232</span> <span class="comment">// Check if any of the 6 planes of the rectangle are inside the view frustum.</span></div>
<div class="line"><span class="lineno"> 233</span> <span class="keywordflow">for</span> (i = 0; i &lt; 6; i++)</div>
<div class="line"><span class="lineno"> 234</span> {</div>
<div class="line"><span class="lineno"> 235</span> <span class="keywordflow">if</span> (m_planes[i].x * (xCenter - xSize) +</div>
<div class="line"><span class="lineno"> 236</span> m_planes[i].y * (yCenter - ySize) +</div>
<div class="line"><span class="lineno"> 237</span> m_planes[i].z * (zCenter - zSize) + m_planes[i].w &gt;= 0.0f)</div>
<div class="line"><span class="lineno"> 238</span> {</div>
<div class="line"><span class="lineno"> 239</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 240</span> }</div>
<div class="line"><span class="lineno"> 241</span> </div>
<div class="line"><span class="lineno"> 242</span> <span class="keywordflow">if</span> (m_planes[i].x * (xCenter + xSize) +</div>
<div class="line"><span class="lineno"> 243</span> m_planes[i].y * (yCenter - ySize) +</div>
<div class="line"><span class="lineno"> 244</span> m_planes[i].z * (zCenter - zSize) + m_planes[i].w &gt;= 0.0f)</div>
<div class="line"><span class="lineno"> 245</span> {</div>
<div class="line"><span class="lineno"> 246</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 247</span> }</div>
<div class="line"><span class="lineno"> 248</span> </div>
<div class="line"><span class="lineno"> 249</span> <span class="keywordflow">if</span> (m_planes[i].x * (xCenter - xSize) +</div>
<div class="line"><span class="lineno"> 250</span> m_planes[i].y * (yCenter + ySize) +</div>
<div class="line"><span class="lineno"> 251</span> m_planes[i].z * (zCenter - zSize) + m_planes[i].w &gt;= 0.0f)</div>
<div class="line"><span class="lineno"> 252</span> {</div>
<div class="line"><span class="lineno"> 253</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 254</span> }</div>
<div class="line"><span class="lineno"> 255</span> </div>
<div class="line"><span class="lineno"> 256</span> <span class="keywordflow">if</span> (m_planes[i].x * (xCenter - xSize) +</div>
<div class="line"><span class="lineno"> 257</span> m_planes[i].y * (yCenter - ySize) +</div>
<div class="line"><span class="lineno"> 258</span> m_planes[i].z * (zCenter + zSize) + m_planes[i].w &gt;= 0.0f)</div>
<div class="line"><span class="lineno"> 259</span> {</div>
<div class="line"><span class="lineno"> 260</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 261</span> }</div>
<div class="line"><span class="lineno"> 262</span> </div>
<div class="line"><span class="lineno"> 263</span> <span class="keywordflow">if</span> (m_planes[i].x * (xCenter + xSize) +</div>
<div class="line"><span class="lineno"> 264</span> m_planes[i].y * (yCenter + ySize) +</div>
<div class="line"><span class="lineno"> 265</span> m_planes[i].z * (zCenter - zSize) + m_planes[i].w &gt;= 0.0f)</div>
<div class="line"><span class="lineno"> 266</span> {</div>
<div class="line"><span class="lineno"> 267</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 268</span> }</div>
<div class="line"><span class="lineno"> 269</span> </div>
<div class="line"><span class="lineno"> 270</span> <span class="keywordflow">if</span> (m_planes[i].x * (xCenter + xSize) +</div>
<div class="line"><span class="lineno"> 271</span> m_planes[i].y * (yCenter - ySize) +</div>
<div class="line"><span class="lineno"> 272</span> m_planes[i].z * (zCenter + zSize) + m_planes[i].w &gt;= 0.0f)</div>
<div class="line"><span class="lineno"> 273</span> {</div>
<div class="line"><span class="lineno"> 274</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 275</span> }</div>
<div class="line"><span class="lineno"> 276</span> </div>
<div class="line"><span class="lineno"> 277</span> <span class="keywordflow">if</span> (m_planes[i].x * (xCenter - xSize) +</div>
<div class="line"><span class="lineno"> 278</span> m_planes[i].y * (yCenter + ySize) +</div>
<div class="line"><span class="lineno"> 279</span> m_planes[i].z * (zCenter + zSize) + m_planes[i].w &gt;= 0.0f)</div>
<div class="line"><span class="lineno"> 280</span> {</div>
<div class="line"><span class="lineno"> 281</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 282</span> }</div>
<div class="line"><span class="lineno"> 283</span> </div>
<div class="line"><span class="lineno"> 284</span> <span class="keywordflow">if</span> (m_planes[i].x * (xCenter + xSize) +</div>
<div class="line"><span class="lineno"> 285</span> m_planes[i].y * (yCenter + ySize) +</div>
<div class="line"><span class="lineno"> 286</span> m_planes[i].z * (zCenter + zSize) + m_planes[i].w &gt;= 0.0f)</div>
<div class="line"><span class="lineno"> 287</span> {</div>
<div class="line"><span class="lineno"> 288</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 289</span> }</div>
<div class="line"><span class="lineno"> 290</span> </div>
<div class="line"><span class="lineno"> 291</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 292</span> }</div>
<div class="line"><span class="lineno"> 293</span> </div>
<div class="line"><span class="lineno"> 294</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 295</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a7806a6d95944f6794d90cd941d7860b2" name="a7806a6d95944f6794d90cd941d7860b2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7806a6d95944f6794d90cd941d7860b2">&#9670;&#160;</a></span>CheckSphere()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool FrustumClass::CheckSphere </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>xCenter</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>yCenter</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>zCenter</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>radius</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="frustumclass_8cpp_source.html#l00210">210</a> of file <a class="el" href="frustumclass_8cpp_source.html">frustumclass.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 211</span>{</div>
<div class="line"><span class="lineno"> 212</span> <span class="keywordtype">int</span> i;</div>
<div class="line"><span class="lineno"> 213</span> </div>
<div class="line"><span class="lineno"> 214</span> </div>
<div class="line"><span class="lineno"> 215</span> <span class="comment">// Check if the radius of the sphere is inside the view frustum.</span></div>
<div class="line"><span class="lineno"> 216</span> <span class="keywordflow">for</span> (i = 0; i &lt; 6; i++)</div>
<div class="line"><span class="lineno"> 217</span> {</div>
<div class="line"><span class="lineno"> 218</span> <span class="keywordflow">if</span> (((m_planes[i].x * xCenter) + (m_planes[i].y * yCenter) + (m_planes[i].z * zCenter) + m_planes[i].w) &lt; -radius)</div>
<div class="line"><span class="lineno"> 219</span> {</div>
<div class="line"><span class="lineno"> 220</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 221</span> }</div>
<div class="line"><span class="lineno"> 222</span> }</div>
<div class="line"><span class="lineno"> 223</span> </div>
<div class="line"><span class="lineno"> 224</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 225</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="adeaf533105109b2a56940f8692aab123" name="adeaf533105109b2a56940f8692aab123"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adeaf533105109b2a56940f8692aab123">&#9670;&#160;</a></span>ConstructFrustum()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void FrustumClass::ConstructFrustum </td>
<td>(</td>
<td class="paramtype">XMMATRIX</td> <td class="paramname"><span class="paramname"><em>viewMatrix</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">XMMATRIX</td> <td class="paramname"><span class="paramname"><em>projectionMatrix</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>screenDepth</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="frustumclass_8cpp_source.html#l00018">18</a> of file <a class="el" href="frustumclass_8cpp_source.html">frustumclass.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 19</span>{</div>
<div class="line"><span class="lineno"> 20</span> XMMATRIX finalMatrix;</div>
<div class="line"><span class="lineno"> 21</span> XMFLOAT4X4 projMatrix, matrix;</div>
<div class="line"><span class="lineno"> 22</span> <span class="keywordtype">float</span> zMinimum, r, t;</div>
<div class="line"><span class="lineno"> 23</span> </div>
<div class="line"><span class="lineno"> 24</span> <span class="comment">// Load the projection matrix into a XMFLOAT4X4 structure.</span></div>
<div class="line"><span class="lineno"> 25</span> XMStoreFloat4x4(&amp;projMatrix, projectionMatrix);</div>
<div class="line"><span class="lineno"> 26</span> </div>
<div class="line"><span class="lineno"> 27</span> <span class="comment">// Calculate the minimum Z distance in the frustum.</span></div>
<div class="line"><span class="lineno"> 28</span> zMinimum = -projMatrix._43 / projMatrix._33;</div>
<div class="line"><span class="lineno"> 29</span> r = screenDepth / (screenDepth - zMinimum);</div>
<div class="line"><span class="lineno"> 30</span> projMatrix._33 = r;</div>
<div class="line"><span class="lineno"> 31</span> projMatrix._43 = -r * zMinimum;</div>
<div class="line"><span class="lineno"> 32</span> </div>
<div class="line"><span class="lineno"> 33</span> <span class="comment">// Load the updated XMFLOAT4X4 back into the original projection matrix.</span></div>
<div class="line"><span class="lineno"> 34</span> projectionMatrix = XMLoadFloat4x4(&amp;projMatrix);</div>
<div class="line"><span class="lineno"> 35</span> </div>
<div class="line"><span class="lineno"> 36</span> <span class="comment">// Create the frustum matrix from the view matrix and updated projection matrix.</span></div>
<div class="line"><span class="lineno"> 37</span> finalMatrix = XMMatrixMultiply(viewMatrix, projectionMatrix);</div>
<div class="line"><span class="lineno"> 38</span> </div>
<div class="line"><span class="lineno"> 39</span> <span class="comment">// Load the final matrix into a XMFLOAT4X4 structure.</span></div>
<div class="line"><span class="lineno"> 40</span> XMStoreFloat4x4(&amp;matrix, finalMatrix);</div>
<div class="line"><span class="lineno"> 41</span> </div>
<div class="line"><span class="lineno"> 42</span> <span class="comment">// Get the near plane of the frustum.</span></div>
<div class="line"><span class="lineno"> 43</span> m_planes[0].x = matrix._13;</div>
<div class="line"><span class="lineno"> 44</span> m_planes[0].y = matrix._23;</div>
<div class="line"><span class="lineno"> 45</span> m_planes[0].z = matrix._33;</div>
<div class="line"><span class="lineno"> 46</span> m_planes[0].w = matrix._43;</div>
<div class="line"><span class="lineno"> 47</span> </div>
<div class="line"><span class="lineno"> 48</span> <span class="comment">// Normalize it.</span></div>
<div class="line"><span class="lineno"> 49</span> t = (float)sqrt((m_planes[0].x * m_planes[0].x) + (m_planes[0].y * m_planes[0].y) + (m_planes[0].z * m_planes[0].z));</div>
<div class="line"><span class="lineno"> 50</span> m_planes[0].x /= t;</div>
<div class="line"><span class="lineno"> 51</span> m_planes[0].y /= t;</div>
<div class="line"><span class="lineno"> 52</span> m_planes[0].z /= t;</div>
<div class="line"><span class="lineno"> 53</span> m_planes[0].w /= t;</div>
<div class="line"><span class="lineno"> 54</span> </div>
<div class="line"><span class="lineno"> 55</span> <span class="comment">// Calculate the far plane of frustum.</span></div>
<div class="line"><span class="lineno"> 56</span> m_planes[1].x = matrix._14 - matrix._13;</div>
<div class="line"><span class="lineno"> 57</span> m_planes[1].y = matrix._24 - matrix._23;</div>
<div class="line"><span class="lineno"> 58</span> m_planes[1].z = matrix._34 - matrix._33;</div>
<div class="line"><span class="lineno"> 59</span> m_planes[1].w = matrix._44 - matrix._43;</div>
<div class="line"><span class="lineno"> 60</span> </div>
<div class="line"><span class="lineno"> 61</span> <span class="comment">// Normalize it.</span></div>
<div class="line"><span class="lineno"> 62</span> t = (float)sqrt((m_planes[1].x * m_planes[1].x) + (m_planes[1].y * m_planes[1].y) + (m_planes[1].z * m_planes[1].z));</div>
<div class="line"><span class="lineno"> 63</span> m_planes[1].x /= t;</div>
<div class="line"><span class="lineno"> 64</span> m_planes[1].y /= t;</div>
<div class="line"><span class="lineno"> 65</span> m_planes[1].z /= t;</div>
<div class="line"><span class="lineno"> 66</span> m_planes[1].w /= t;</div>
<div class="line"><span class="lineno"> 67</span> </div>
<div class="line"><span class="lineno"> 68</span> <span class="comment">// Calculate the left plane of frustum.</span></div>
<div class="line"><span class="lineno"> 69</span> m_planes[2].x = matrix._14 + matrix._11;</div>
<div class="line"><span class="lineno"> 70</span> m_planes[2].y = matrix._24 + matrix._21;</div>
<div class="line"><span class="lineno"> 71</span> m_planes[2].z = matrix._34 + matrix._31;</div>
<div class="line"><span class="lineno"> 72</span> m_planes[2].w = matrix._44 + matrix._41;</div>
<div class="line"><span class="lineno"> 73</span> </div>
<div class="line"><span class="lineno"> 74</span> <span class="comment">// Normalize it.</span></div>
<div class="line"><span class="lineno"> 75</span> t = (float)sqrt((m_planes[2].x * m_planes[2].x) + (m_planes[2].y * m_planes[2].y) + (m_planes[2].z * m_planes[2].z));</div>
<div class="line"><span class="lineno"> 76</span> m_planes[2].x /= t;</div>
<div class="line"><span class="lineno"> 77</span> m_planes[2].y /= t;</div>
<div class="line"><span class="lineno"> 78</span> m_planes[2].z /= t;</div>
<div class="line"><span class="lineno"> 79</span> m_planes[2].w /= t;</div>
<div class="line"><span class="lineno"> 80</span> </div>
<div class="line"><span class="lineno"> 81</span> <span class="comment">// Calculate the right plane of frustum.</span></div>
<div class="line"><span class="lineno"> 82</span> m_planes[3].x = matrix._14 - matrix._11;</div>
<div class="line"><span class="lineno"> 83</span> m_planes[3].y = matrix._24 - matrix._21;</div>
<div class="line"><span class="lineno"> 84</span> m_planes[3].z = matrix._34 - matrix._31;</div>
<div class="line"><span class="lineno"> 85</span> m_planes[3].w = matrix._44 - matrix._41;</div>
<div class="line"><span class="lineno"> 86</span> </div>
<div class="line"><span class="lineno"> 87</span> <span class="comment">// Normalize it.</span></div>
<div class="line"><span class="lineno"> 88</span> t = (float)sqrt((m_planes[3].x * m_planes[3].x) + (m_planes[3].y * m_planes[3].y) + (m_planes[3].z * m_planes[3].z));</div>
<div class="line"><span class="lineno"> 89</span> m_planes[3].x /= t;</div>
<div class="line"><span class="lineno"> 90</span> m_planes[3].y /= t;</div>
<div class="line"><span class="lineno"> 91</span> m_planes[3].z /= t;</div>
<div class="line"><span class="lineno"> 92</span> m_planes[3].w /= t;</div>
<div class="line"><span class="lineno"> 93</span> </div>
<div class="line"><span class="lineno"> 94</span> <span class="comment">// Calculate the top plane of frustum.</span></div>
<div class="line"><span class="lineno"> 95</span> m_planes[4].x = matrix._14 - matrix._12;</div>
<div class="line"><span class="lineno"> 96</span> m_planes[4].y = matrix._24 - matrix._22;</div>
<div class="line"><span class="lineno"> 97</span> m_planes[4].z = matrix._34 - matrix._32;</div>
<div class="line"><span class="lineno"> 98</span> m_planes[4].w = matrix._44 - matrix._42;</div>
<div class="line"><span class="lineno"> 99</span> </div>
<div class="line"><span class="lineno"> 100</span> <span class="comment">// Normalize it.</span></div>
<div class="line"><span class="lineno"> 101</span> t = (float)sqrt((m_planes[4].x * m_planes[4].x) + (m_planes[4].y * m_planes[4].y) + (m_planes[4].z * m_planes[4].z));</div>
<div class="line"><span class="lineno"> 102</span> m_planes[4].x /= t;</div>
<div class="line"><span class="lineno"> 103</span> m_planes[4].y /= t;</div>
<div class="line"><span class="lineno"> 104</span> m_planes[4].z /= t;</div>
<div class="line"><span class="lineno"> 105</span> m_planes[4].w /= t;</div>
<div class="line"><span class="lineno"> 106</span> </div>
<div class="line"><span class="lineno"> 107</span> <span class="comment">// Calculate the bottom plane of frustum.</span></div>
<div class="line"><span class="lineno"> 108</span> m_planes[5].x = matrix._14 + matrix._12;</div>
<div class="line"><span class="lineno"> 109</span> m_planes[5].y = matrix._24 + matrix._22;</div>
<div class="line"><span class="lineno"> 110</span> m_planes[5].z = matrix._34 + matrix._32;</div>
<div class="line"><span class="lineno"> 111</span> m_planes[5].w = matrix._44 + matrix._42;</div>
<div class="line"><span class="lineno"> 112</span> </div>
<div class="line"><span class="lineno"> 113</span> <span class="comment">// Normalize it.</span></div>
<div class="line"><span class="lineno"> 114</span> t = (float)sqrt((m_planes[5].x * m_planes[5].x) + (m_planes[5].y * m_planes[5].y) + (m_planes[5].z * m_planes[5].z));</div>
<div class="line"><span class="lineno"> 115</span> m_planes[5].x /= t;</div>
<div class="line"><span class="lineno"> 116</span> m_planes[5].y /= t;</div>
<div class="line"><span class="lineno"> 117</span> m_planes[5].z /= t;</div>
<div class="line"><span class="lineno"> 118</span> m_planes[5].w /= t;</div>
<div class="line"><span class="lineno"> 119</span> </div>
<div class="line"><span class="lineno"> 120</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 121</span>}</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>enginecustom/src/inc/system/<a class="el" href="frustumclass_8h_source.html">frustumclass.h</a></li>
<li>enginecustom/src/src/system/<a class="el" href="frustumclass_8cpp_source.html">frustumclass.cpp</a></li>
</ul>
</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="class_frustum_class.html">FrustumClass</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,127 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('class_logger.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">Logger Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="class_logger.html">Logger</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Get</b>() (defined in <a class="el" href="class_logger.html">Logger</a>)</td><td class="entry"><a class="el" href="class_logger.html">Logger</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>GetLogBuffer</b>() const (defined in <a class="el" href="class_logger.html">Logger</a>)</td><td class="entry"><a class="el" href="class_logger.html">Logger</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetLogLevelInfo</b>(LogLevel level) (defined in <a class="el" href="class_logger.html">Logger</a>)</td><td class="entry"><a class="el" href="class_logger.html">Logger</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>Log</b>(const std::string &amp;message, const std::string &amp;fileName, int lineNumber, LogLevel level=LogLevel::Info) (defined in <a class="el" href="class_logger.html">Logger</a>)</td><td class="entry"><a class="el" href="class_logger.html">Logger</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Log</b>(const std::string &amp;message, LogLevel level) (defined in <a class="el" href="class_logger.html">Logger</a>)</td><td class="entry"><a class="el" href="class_logger.html">Logger</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>Logger</b>(Logger const &amp;)=delete (defined in <a class="el" href="class_logger.html">Logger</a>)</td><td class="entry"><a class="el" href="class_logger.html">Logger</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Logger</b>() (defined in <a class="el" href="class_logger.html">Logger</a>)</td><td class="entry"><a class="el" href="class_logger.html">Logger</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>LogLevel</b> enum name (defined in <a class="el" href="class_logger.html">Logger</a>)</td><td class="entry"><a class="el" href="class_logger.html">Logger</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>LogLevelCount</b> (defined in <a class="el" href="class_logger.html">Logger</a>)</td><td class="entry"><a class="el" href="class_logger.html">Logger</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>m_disabledLogLevels</b> (defined in <a class="el" href="class_logger.html">Logger</a>)</td><td class="entry"><a class="el" href="class_logger.html">Logger</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_logFilePath</b> (defined in <a class="el" href="class_logger.html">Logger</a>)</td><td class="entry"><a class="el" href="class_logger.html">Logger</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>ManageLogFiles</b>(const std::string &amp;directoryPath) (defined in <a class="el" href="class_logger.html">Logger</a>)</td><td class="entry"><a class="el" href="class_logger.html">Logger</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(Logger const &amp;)=delete (defined in <a class="el" href="class_logger.html">Logger</a>)</td><td class="entry"><a class="el" href="class_logger.html">Logger</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,652 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Logger Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('class_logger.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="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="#pub-static-attribs">Static Public Attributes</a> &#124;
<a href="class_logger-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">Logger Class Reference</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_logger_1_1_log_entry.html">LogEntry</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_logger_1_1_log_level_info.html">LogLevelInfo</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:ac744681e23720966b5f430ec2060da36" id="r_ac744681e23720966b5f430ec2060da36"><td class="memItemLeft" align="right" valign="top">enum class &#160;</td><td class="memItemRight" valign="bottom"><b>LogLevel</b> { <br />
&#160;&#160;<b>Info</b>
, <b>Warning</b>
, <b>Error</b>
, <b>Shutdown</b>
, <br />
&#160;&#160;<b>Initialize</b>
, <b>Update</b>
, <b>Render</b>
, <b>Input</b>
, <br />
&#160;&#160;<b>Physics</b>
, <b>Audio</b>
, <b>Network</b>
, <b>Scripting</b>
, <br />
&#160;&#160;<b>AI</b>
, <b>Resource</b>
, <b>Memory</b>
, <b>Debug</b>
, <br />
&#160;&#160;<b>Count</b>
<br />
}</td></tr>
<tr class="separator:ac744681e23720966b5f430ec2060da36"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a0d21ab21689125fbb5e91584e4f37baa" id="r_a0d21ab21689125fbb5e91584e4f37baa"><td class="memItemLeft" align="right" valign="top"><a id="a0d21ab21689125fbb5e91584e4f37baa" name="a0d21ab21689125fbb5e91584e4f37baa"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>Logger</b> (<a class="el" href="class_logger.html">Logger</a> const &amp;)=delete</td></tr>
<tr class="separator:a0d21ab21689125fbb5e91584e4f37baa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae14ecca1071f841760f40b5a1398580c" id="r_ae14ecca1071f841760f40b5a1398580c"><td class="memItemLeft" align="right" valign="top"><a id="ae14ecca1071f841760f40b5a1398580c" name="ae14ecca1071f841760f40b5a1398580c"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (<a class="el" href="class_logger.html">Logger</a> const &amp;)=delete</td></tr>
<tr class="separator:ae14ecca1071f841760f40b5a1398580c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a94f47ba0ef38ea7bcf1056f64d2645e4" id="r_a94f47ba0ef38ea7bcf1056f64d2645e4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a94f47ba0ef38ea7bcf1056f64d2645e4">Log</a> (const std::string &amp;message, const std::string &amp;fileName, int lineNumber, LogLevel level=LogLevel::Info)</td></tr>
<tr class="separator:a94f47ba0ef38ea7bcf1056f64d2645e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac9b431db882705fe2f33687938874676" id="r_ac9b431db882705fe2f33687938874676"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac9b431db882705fe2f33687938874676">Log</a> (const std::string &amp;message, LogLevel level)</td></tr>
<tr class="separator:ac9b431db882705fe2f33687938874676"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0fc50378d880b648733da39e61fa51e3" id="r_a0fc50378d880b648733da39e61fa51e3"><td class="memItemLeft" align="right" valign="top">const std::deque&lt; <a class="el" href="struct_logger_1_1_log_entry.html">LogEntry</a> &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0fc50378d880b648733da39e61fa51e3">GetLogBuffer</a> () const</td></tr>
<tr class="separator:a0fc50378d880b648733da39e61fa51e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62b3e15fa3c170e5090a846fd0e9283e" id="r_a62b3e15fa3c170e5090a846fd0e9283e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a62b3e15fa3c170e5090a846fd0e9283e">ManageLogFiles</a> (const std::string &amp;directoryPath)</td></tr>
<tr class="separator:a62b3e15fa3c170e5090a846fd0e9283e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a08e3e1b899767a6d833136c9fb4f15c2" id="r_a08e3e1b899767a6d833136c9fb4f15c2"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="class_logger.html">Logger</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a08e3e1b899767a6d833136c9fb4f15c2">Get</a> ()</td></tr>
<tr class="separator:a08e3e1b899767a6d833136c9fb4f15c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a44f087518b3a028018146b07b2bc8e3b" id="r_a44f087518b3a028018146b07b2bc8e3b"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="struct_logger_1_1_log_level_info.html">LogLevelInfo</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a44f087518b3a028018146b07b2bc8e3b">GetLogLevelInfo</a> (LogLevel level)</td></tr>
<tr class="separator:a44f087518b3a028018146b07b2bc8e3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:acf4389b1b0b850181d3674f3527fc1cd" id="r_acf4389b1b0b850181d3674f3527fc1cd"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#acf4389b1b0b850181d3674f3527fc1cd">m_disabledLogLevels</a> [LogLevelCount]</td></tr>
<tr class="separator:acf4389b1b0b850181d3674f3527fc1cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72080e328dfb167d4ba1162c2f82811f" id="r_a72080e328dfb167d4ba1162c2f82811f"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a72080e328dfb167d4ba1162c2f82811f">m_logFilePath</a></td></tr>
<tr class="separator:a72080e328dfb167d4ba1162c2f82811f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-attribs" name="pub-static-attribs"></a>
Static Public Attributes</h2></td></tr>
<tr class="memitem:a03b2af65e61167f66d3c68f904206206" id="r_a03b2af65e61167f66d3c68f904206206"><td class="memItemLeft" align="right" valign="top">static constexpr int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a03b2af65e61167f66d3c68f904206206">LogLevelCount</a> = static_cast&lt;int&gt;(LogLevel::Count)</td></tr>
<tr class="separator:a03b2af65e61167f66d3c68f904206206"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="_logger_8h_source.html#l00013">13</a> of file <a class="el" href="_logger_8h_source.html">Logger.h</a>.</p>
</div><h2 class="groupheader">Member Enumeration Documentation</h2>
<a id="ac744681e23720966b5f430ec2060da36" name="ac744681e23720966b5f430ec2060da36"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac744681e23720966b5f430ec2060da36">&#9670;&#160;</a></span>LogLevel</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">enum class Logger::LogLevel</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">strong</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_logger_8h_source.html#l00026">26</a> of file <a class="el" href="_logger_8h_source.html">Logger.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 27</span> {</div>
<div class="line"><span class="lineno"> 28</span> Info,</div>
<div class="line"><span class="lineno"> 29</span> Warning,</div>
<div class="line"><span class="lineno"> 30</span> Error,</div>
<div class="line"><span class="lineno"> 31</span> Shutdown,</div>
<div class="line"><span class="lineno"> 32</span> Initialize,</div>
<div class="line"><span class="lineno"> 33</span> Update,</div>
<div class="line"><span class="lineno"> 34</span> Render,</div>
<div class="line"><span class="lineno"> 35</span> Input,</div>
<div class="line"><span class="lineno"> 36</span> Physics,</div>
<div class="line"><span class="lineno"> 37</span> Audio,</div>
<div class="line"><span class="lineno"> 38</span> Network,</div>
<div class="line"><span class="lineno"> 39</span> Scripting,</div>
<div class="line"><span class="lineno"> 40</span> AI,</div>
<div class="line"><span class="lineno"> 41</span> Resource,</div>
<div class="line"><span class="lineno"> 42</span> Memory,</div>
<div class="line"><span class="lineno"> 43</span> Debug,</div>
<div class="line"><span class="lineno"> 44</span> Count <span class="comment">// Do not use this, it&#39;s just to get the number of log levels it must at the end</span></div>
<div class="line"><span class="lineno"> 45</span> };</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="abc41bfb031d896170c7675fa96a6b30c" name="abc41bfb031d896170c7675fa96a6b30c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abc41bfb031d896170c7675fa96a6b30c">&#9670;&#160;</a></span>Logger()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Logger::Logger </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_logger_8h_source.html#l00087">87</a> of file <a class="el" href="_logger_8h_source.html">Logger.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 88</span> {</div>
<div class="line"><span class="lineno"> 89</span> <span class="keywordtype">char</span>* appdata = <span class="keyword">nullptr</span>;</div>
<div class="line"><span class="lineno"> 90</span> <span class="keywordtype">size_t</span> len;</div>
<div class="line"><span class="lineno"> 91</span> _dupenv_s(&amp;appdata, &amp;len, <span class="stringliteral">&quot;APPDATA&quot;</span>);</div>
<div class="line"><span class="lineno"> 92</span> <span class="keywordflow">if</span> (appdata == <span class="keyword">nullptr</span>)</div>
<div class="line"><span class="lineno"> 93</span> {</div>
<div class="line"><span class="lineno"> 94</span> m_appdataPath = <span class="stringliteral">&quot;log.log&quot;</span>;</div>
<div class="line"><span class="lineno"> 95</span> }</div>
<div class="line"><span class="lineno"> 96</span> <span class="keywordflow">else</span></div>
<div class="line"><span class="lineno"> 97</span> {</div>
<div class="line"><span class="lineno"> 98</span> m_appdataPath = appdata;</div>
<div class="line"><span class="lineno"> 99</span> }</div>
<div class="line"><span class="lineno"> 100</span> free(appdata);</div>
<div class="line"><span class="lineno"> 101</span> std::string directoryPath = m_appdataPath + <span class="stringliteral">&quot;\\Khaotic Engine&quot;</span>;</div>
<div class="line"><span class="lineno"> 102</span> CreateDirectoryA(directoryPath.c_str(), NULL);</div>
<div class="line"><span class="lineno"> 103</span> </div>
<div class="line"><span class="lineno"> 104</span> ManageLogFiles(directoryPath);</div>
<div class="line"><span class="lineno"> 105</span> </div>
<div class="line"><span class="lineno"> 106</span> m_logFilePath = directoryPath + <span class="stringliteral">&quot;\\&quot;</span> + m_logFileName;</div>
<div class="line"><span class="lineno"> 107</span> </div>
<div class="line"><span class="lineno"> 108</span> <span class="comment">// Enable only the Error warning and shutdown log levels</span></div>
<div class="line"><span class="lineno"> 109</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; LogLevelCount; i++)</div>
<div class="line"><span class="lineno"> 110</span> {</div>
<div class="line"><span class="lineno"> 111</span> m_disabledLogLevels[i] = <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 112</span> </div>
<div class="line"><span class="lineno"> 113</span> <span class="keywordflow">if</span> (i == <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(LogLevel::Error) || i == <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(LogLevel::Warning) || i == <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(LogLevel::Shutdown))</div>
<div class="line"><span class="lineno"> 114</span> {</div>
<div class="line"><span class="lineno"> 115</span> m_disabledLogLevels[i] = <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 116</span> </div>
<div class="line"><span class="lineno"> 117</span> }</div>
<div class="line"><span class="lineno"> 118</span> }</div>
<div class="line"><span class="lineno"> 119</span> </div>
<div class="line"><span class="lineno"> 120</span> }</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a08e3e1b899767a6d833136c9fb4f15c2" name="a08e3e1b899767a6d833136c9fb4f15c2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a08e3e1b899767a6d833136c9fb4f15c2">&#9670;&#160;</a></span>Get()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static <a class="el" href="class_logger.html">Logger</a> &amp; Logger::Get </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_logger_8h_source.html#l00017">17</a> of file <a class="el" href="_logger_8h_source.html">Logger.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 18</span> {</div>
<div class="line"><span class="lineno"> 19</span> <span class="keyword">static</span> <a class="code hl_class" href="class_logger.html">Logger</a> instance;</div>
<div class="line"><span class="lineno"> 20</span> <span class="keywordflow">return</span> instance;</div>
<div class="line"><span class="lineno"> 21</span> }</div>
<div class="ttc" id="aclass_logger_html"><div class="ttname"><a href="class_logger.html">Logger</a></div><div class="ttdef"><b>Definition</b> <a href="_logger_8h_source.html#l00013">Logger.h:14</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a0fc50378d880b648733da39e61fa51e3" name="a0fc50378d880b648733da39e61fa51e3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0fc50378d880b648733da39e61fa51e3">&#9670;&#160;</a></span>GetLogBuffer()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const std::deque&lt; <a class="el" href="struct_logger_1_1_log_entry.html">LogEntry</a> &gt; &amp; Logger::GetLogBuffer </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_logger_8h_source.html#l00172">172</a> of file <a class="el" href="_logger_8h_source.html">Logger.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 172</span>{ <span class="keywordflow">return</span> logBuffer; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a44f087518b3a028018146b07b2bc8e3b" name="a44f087518b3a028018146b07b2bc8e3b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a44f087518b3a028018146b07b2bc8e3b">&#9670;&#160;</a></span>GetLogLevelInfo()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static const <a class="el" href="struct_logger_1_1_log_level_info.html">LogLevelInfo</a> Logger::GetLogLevelInfo </td>
<td>(</td>
<td class="paramtype">LogLevel</td> <td class="paramname"><span class="paramname"><em>level</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_logger_8h_source.html#l00063">63</a> of file <a class="el" href="_logger_8h_source.html">Logger.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 64</span> {</div>
<div class="line"><span class="lineno"> 65</span> <span class="keywordflow">switch</span> (level)</div>
<div class="line"><span class="lineno"> 66</span> {</div>
<div class="line"><span class="lineno"> 67</span> <span class="keywordflow">case</span> LogLevel::Info: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Info&quot;</span>, 0, ImVec4(0.0f, 1.0f, 0.0f, 1.0f) };</div>
<div class="line"><span class="lineno"> 68</span> <span class="keywordflow">case</span> LogLevel::Warning: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Warning&quot;</span>, 1, ImVec4(1.0f, 1.0f, 0.0f, 1.0f) };</div>
<div class="line"><span class="lineno"> 69</span> <span class="keywordflow">case</span> LogLevel::Error: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Error&quot;</span>, 2, ImVec4(1.0f, 0.0f, 0.0f, 1.0f) };</div>
<div class="line"><span class="lineno"> 70</span> <span class="keywordflow">case</span> LogLevel::Shutdown: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;shutdown&quot;</span>, 3, ImVec4(0.5f, 0.0f, 0.0f, 1.0f) };</div>
<div class="line"><span class="lineno"> 71</span> <span class="keywordflow">case</span> LogLevel::Initialize: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;initialize&quot;</span>, 4, ImVec4(0.0f, 1.0f, 1.0f, 1.0f) };</div>
<div class="line"><span class="lineno"> 72</span> <span class="keywordflow">case</span> LogLevel::Update: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Update&quot;</span>, 5, ImVec4(1.0f, 0.0f, 1.0f, 1.0f) };</div>
<div class="line"><span class="lineno"> 73</span> <span class="keywordflow">case</span> LogLevel::Render: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;render&quot;</span>, 6, ImVec4(1.0f, 1.0f, 1.0f, 1.0f) };</div>
<div class="line"><span class="lineno"> 74</span> <span class="keywordflow">case</span> LogLevel::Input: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Input&quot;</span>, 7, ImVec4(0.5f, 0.5f, 0.5f, 1.0f) };</div>
<div class="line"><span class="lineno"> 75</span> <span class="keywordflow">case</span> LogLevel::Physics: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;physics&quot;</span>, 8, ImVec4(0.5f, 0.5f, 0.5f, 1.0f) };</div>
<div class="line"><span class="lineno"> 76</span> <span class="keywordflow">case</span> LogLevel::Audio: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Audio&quot;</span>, 9, ImVec4(0.5f, 0.5f, 0.5f, 1.0f) };</div>
<div class="line"><span class="lineno"> 77</span> <span class="keywordflow">case</span> LogLevel::Network: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Network&quot;</span>, 10, ImVec4(0.5f, 0.5f, 0.5f, 1.0f) };</div>
<div class="line"><span class="lineno"> 78</span> <span class="keywordflow">case</span> LogLevel::Scripting: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Scripting&quot;</span>, 11, ImVec4(0.5f, 0.5f, 0.5f, 1.0f) };</div>
<div class="line"><span class="lineno"> 79</span> <span class="keywordflow">case</span> LogLevel::AI: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;AI&quot;</span>, 12, ImVec4(0.5f, 0.5f, 0.5f, 1.0f) };</div>
<div class="line"><span class="lineno"> 80</span> <span class="keywordflow">case</span> LogLevel::Resource: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Resource&quot;</span>, 13, ImVec4(0.5f, 0.5f, 0.5f, 1.0f) };</div>
<div class="line"><span class="lineno"> 81</span> <span class="keywordflow">case</span> LogLevel::Memory: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Memory&quot;</span>, 14, ImVec4(0.5f, 0.5f, 0.5f, 1.0f) };</div>
<div class="line"><span class="lineno"> 82</span> <span class="keywordflow">case</span> LogLevel::Debug: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Debug&quot;</span>, 15, ImVec4(0.5f, 0.5f, 0.5f, 1.0f) };</div>
<div class="line"><span class="lineno"> 83</span> <span class="keywordflow">default</span>: <span class="keywordflow">return</span> LogLevelInfo{ <span class="stringliteral">&quot;Unknown&quot;</span>, 16, ImVec4(1.0f, 1.0f, 1.0f, 1.0f) };</div>
<div class="line"><span class="lineno"> 84</span> }</div>
<div class="line"><span class="lineno"> 85</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a94f47ba0ef38ea7bcf1056f64d2645e4" name="a94f47ba0ef38ea7bcf1056f64d2645e4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a94f47ba0ef38ea7bcf1056f64d2645e4">&#9670;&#160;</a></span>Log() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void Logger::Log </td>
<td>(</td>
<td class="paramtype">const std::string &amp;</td> <td class="paramname"><span class="paramname"><em>message</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::string &amp;</td> <td class="paramname"><span class="paramname"><em>fileName</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>lineNumber</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">LogLevel</td> <td class="paramname"><span class="paramname"><em>level</em></span><span class="paramdefsep"> = </span><span class="paramdefval">LogLevel::Info</span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_logger_8h_source.html#l00123">123</a> of file <a class="el" href="_logger_8h_source.html">Logger.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 124</span> {</div>
<div class="line"><span class="lineno"> 125</span> </div>
<div class="line"><span class="lineno"> 126</span> <span class="keyword">auto</span> now = std::chrono::system_clock::now();</div>
<div class="line"><span class="lineno"> 127</span> <span class="keyword">auto</span> in_time_t = std::chrono::system_clock::to_time_t(now);</div>
<div class="line"><span class="lineno"> 128</span> </div>
<div class="line"><span class="lineno"> 129</span> std::tm buf;</div>
<div class="line"><span class="lineno"> 130</span> localtime_s(&amp;buf, &amp;in_time_t);</div>
<div class="line"><span class="lineno"> 131</span> </div>
<div class="line"><span class="lineno"> 132</span> <span class="comment">// Obtenez les millisecondes à partir de maintenant</span></div>
<div class="line"><span class="lineno"> 133</span> <span class="keyword">auto</span> ms = std::chrono::duration_cast&lt;std::chrono::milliseconds&gt;(now.time_since_epoch()) % 1000;</div>
<div class="line"><span class="lineno"> 134</span> </div>
<div class="line"><span class="lineno"> 135</span> <span class="comment">// Utilisez LogLevelToString pour obtenir la chaîne de caractères du niveau de log</span></div>
<div class="line"><span class="lineno"> 136</span> std::string levelStr = GetLogLevelInfo(level).name;</div>
<div class="line"><span class="lineno"> 137</span> </div>
<div class="line"><span class="lineno"> 138</span> std::stringstream ss;</div>
<div class="line"><span class="lineno"> 139</span> ss &lt;&lt; <span class="stringliteral">&quot;[&quot;</span> &lt;&lt; std::put_time(&amp;buf, <span class="stringliteral">&quot;%Y-%m-%d&quot;</span>) &lt;&lt; <span class="stringliteral">&quot;] &quot;</span></div>
<div class="line"><span class="lineno"> 140</span> &lt;&lt; <span class="stringliteral">&quot;[&quot;</span> &lt;&lt; std::put_time(&amp;buf, <span class="stringliteral">&quot;%X&quot;</span>) &lt;&lt; <span class="stringliteral">&quot;.&quot;</span> &lt;&lt; std::setfill(<span class="charliteral">&#39;0&#39;</span>) &lt;&lt; std::setw(3) &lt;&lt; ms.count() &lt;&lt; <span class="stringliteral">&quot;] &quot;</span></div>
<div class="line"><span class="lineno"> 141</span> &lt;&lt; <span class="stringliteral">&quot;[&quot;</span> &lt;&lt; levelStr &lt;&lt; <span class="stringliteral">&quot;] &quot;</span></div>
<div class="line"><span class="lineno"> 142</span> &lt;&lt; <span class="stringliteral">&quot;[&quot;</span> &lt;&lt; fileName &lt;&lt; <span class="stringliteral">&quot;:&quot;</span> &lt;&lt; lineNumber &lt;&lt; <span class="stringliteral">&quot;] &quot;</span></div>
<div class="line"><span class="lineno"> 143</span> &lt;&lt; message;</div>
<div class="line"><span class="lineno"> 144</span> </div>
<div class="line"><span class="lineno"> 145</span> Log(ss.str(), level);</div>
<div class="line"><span class="lineno"> 146</span> </div>
<div class="line"><span class="lineno"> 147</span> std::ofstream file(m_logFilePath, std::ios::app);</div>
<div class="line"><span class="lineno"> 148</span> <span class="keywordflow">if</span> (file.is_open())</div>
<div class="line"><span class="lineno"> 149</span> {</div>
<div class="line"><span class="lineno"> 150</span> file &lt;&lt; ss.str() &lt;&lt; std::endl;</div>
<div class="line"><span class="lineno"> 151</span> file.close();</div>
<div class="line"><span class="lineno"> 152</span> }</div>
<div class="line"><span class="lineno"> 153</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="ac9b431db882705fe2f33687938874676" name="ac9b431db882705fe2f33687938874676"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac9b431db882705fe2f33687938874676">&#9670;&#160;</a></span>Log() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void Logger::Log </td>
<td>(</td>
<td class="paramtype">const std::string &amp;</td> <td class="paramname"><span class="paramname"><em>message</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">LogLevel</td> <td class="paramname"><span class="paramname"><em>level</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_logger_8h_source.html#l00156">156</a> of file <a class="el" href="_logger_8h_source.html">Logger.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 157</span> {</div>
<div class="line"><span class="lineno"> 158</span> </div>
<div class="line"><span class="lineno"> 159</span> <span class="comment">// Si le niveau de log est désactivé, ne faites rien</span></div>
<div class="line"><span class="lineno"> 160</span> <span class="keywordflow">if</span> (m_disabledLogLevels[GetLogLevelInfo(level).value])</div>
<div class="line"><span class="lineno"> 161</span> {</div>
<div class="line"><span class="lineno"> 162</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 163</span> }</div>
<div class="line"><span class="lineno"> 164</span> </div>
<div class="line"><span class="lineno"> 165</span> <span class="keywordflow">if</span> (logBuffer.size() &gt;= logBufferSize)</div>
<div class="line"><span class="lineno"> 166</span> {</div>
<div class="line"><span class="lineno"> 167</span> logBuffer.pop_front();</div>
<div class="line"><span class="lineno"> 168</span> }</div>
<div class="line"><span class="lineno"> 169</span> logBuffer.push_back({ message, level });</div>
<div class="line"><span class="lineno"> 170</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a62b3e15fa3c170e5090a846fd0e9283e" name="a62b3e15fa3c170e5090a846fd0e9283e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a62b3e15fa3c170e5090a846fd0e9283e">&#9670;&#160;</a></span>ManageLogFiles()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void Logger::ManageLogFiles </td>
<td>(</td>
<td class="paramtype">const std::string &amp;</td> <td class="paramname"><span class="paramname"><em>directoryPath</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_logger_8h_source.html#l00174">174</a> of file <a class="el" href="_logger_8h_source.html">Logger.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 175</span> {</div>
<div class="line"><span class="lineno"> 176</span> std::vector&lt;std::filesystem::path&gt; logFiles;</div>
<div class="line"><span class="lineno"> 177</span> </div>
<div class="line"><span class="lineno"> 178</span> <span class="comment">// Parcourez tous les fichiers dans le dossier</span></div>
<div class="line"><span class="lineno"> 179</span> <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span>&amp; entry : std::filesystem::directory_iterator(directoryPath))</div>
<div class="line"><span class="lineno"> 180</span> {</div>
<div class="line"><span class="lineno"> 181</span> <span class="comment">// Si le fichier est un fichier de log, ajoutez-le à la liste</span></div>
<div class="line"><span class="lineno"> 182</span> <span class="keywordflow">if</span> (entry.path().extension() == <span class="stringliteral">&quot;.log&quot;</span>)</div>
<div class="line"><span class="lineno"> 183</span> {</div>
<div class="line"><span class="lineno"> 184</span> logFiles.push_back(entry.path());</div>
<div class="line"><span class="lineno"> 185</span> }</div>
<div class="line"><span class="lineno"> 186</span> }</div>
<div class="line"><span class="lineno"> 187</span> </div>
<div class="line"><span class="lineno"> 188</span> <span class="comment">// Si nous avons plus de trois fichiers de log, supprimez le plus ancien</span></div>
<div class="line"><span class="lineno"> 189</span> <span class="keywordflow">while</span> (logFiles.size() &gt;= 3)</div>
<div class="line"><span class="lineno"> 190</span> {</div>
<div class="line"><span class="lineno"> 191</span> <span class="comment">// Triez les fichiers par date de modification, le plus ancien en premier</span></div>
<div class="line"><span class="lineno"> 192</span> std::sort(logFiles.begin(), logFiles.end(), [](<span class="keyword">const</span> std::filesystem::path&amp; a, <span class="keyword">const</span> std::filesystem::path&amp; b)</div>
<div class="line"><span class="lineno"> 193</span> {</div>
<div class="line"><span class="lineno"> 194</span> return std::filesystem::last_write_time(a) &lt; std::filesystem::last_write_time(b);</div>
<div class="line"><span class="lineno"> 195</span> });</div>
<div class="line"><span class="lineno"> 196</span> </div>
<div class="line"><span class="lineno"> 197</span> <span class="comment">// Supprimez le fichier le plus ancien</span></div>
<div class="line"><span class="lineno"> 198</span> std::filesystem::remove(logFiles[0]);</div>
<div class="line"><span class="lineno"> 199</span> </div>
<div class="line"><span class="lineno"> 200</span> <span class="comment">// Supprimez-le de la liste</span></div>
<div class="line"><span class="lineno"> 201</span> logFiles.erase(logFiles.begin());</div>
<div class="line"><span class="lineno"> 202</span> }</div>
<div class="line"><span class="lineno"> 203</span> </div>
<div class="line"><span class="lineno"> 204</span> <span class="comment">// Créez un nouveau fichier de log pour cette exécution</span></div>
<div class="line"><span class="lineno"> 205</span> <span class="keyword">auto</span> now = std::chrono::system_clock::now();</div>
<div class="line"><span class="lineno"> 206</span> <span class="keyword">auto</span> in_time_t = std::chrono::system_clock::to_time_t(now);</div>
<div class="line"><span class="lineno"> 207</span> std::tm buf;</div>
<div class="line"><span class="lineno"> 208</span> localtime_s(&amp;buf, &amp;in_time_t);</div>
<div class="line"><span class="lineno"> 209</span> </div>
<div class="line"><span class="lineno"> 210</span> std::stringstream ss;</div>
<div class="line"><span class="lineno"> 211</span> ss &lt;&lt; <span class="stringliteral">&quot;Khaotic_log_&quot;</span> &lt;&lt; std::put_time(&amp;buf, <span class="stringliteral">&quot;%Y_%m_%d_%Hh%Mm%Ss&quot;</span>) &lt;&lt; <span class="stringliteral">&quot;.log&quot;</span>;</div>
<div class="line"><span class="lineno"> 212</span> m_logFileName = ss.str();</div>
<div class="line"><span class="lineno"> 213</span> }</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a03b2af65e61167f66d3c68f904206206" name="a03b2af65e61167f66d3c68f904206206"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a03b2af65e61167f66d3c68f904206206">&#9670;&#160;</a></span>LogLevelCount</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int Logger::LogLevelCount = static_cast&lt;int&gt;(LogLevel::Count)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span><span class="mlabel">constexpr</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_logger_8h_source.html#l00048">48</a> of file <a class="el" href="_logger_8h_source.html">Logger.h</a>.</p>
</div>
</div>
<a id="acf4389b1b0b850181d3674f3527fc1cd" name="acf4389b1b0b850181d3674f3527fc1cd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acf4389b1b0b850181d3674f3527fc1cd">&#9670;&#160;</a></span>m_disabledLogLevels</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool Logger::m_disabledLogLevels[LogLevelCount]</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_logger_8h_source.html#l00215">215</a> of file <a class="el" href="_logger_8h_source.html">Logger.h</a>.</p>
</div>
</div>
<a id="a72080e328dfb167d4ba1162c2f82811f" name="a72080e328dfb167d4ba1162c2f82811f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a72080e328dfb167d4ba1162c2f82811f">&#9670;&#160;</a></span>m_logFilePath</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string Logger::m_logFilePath</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_logger_8h_source.html#l00216">216</a> of file <a class="el" href="_logger_8h_source.html">Logger.h</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>enginecustom/src/inc/system/<a class="el" href="_logger_8h_source.html">Logger.h</a></li>
</ul>
</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="class_logger.html">Logger</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,5 @@
var class_logger =
[
[ "LogEntry", "struct_logger_1_1_log_entry.html", null ],
[ "LogLevelInfo", "struct_logger_1_1_log_level_info.html", null ]
];

View File

@ -0,0 +1,121 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('class_model_list_class.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">ModelListClass Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="class_model_list_class.html">ModelListClass</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetData</b>(int, float &amp;, float &amp;, float &amp;) (defined in <a class="el" href="class_model_list_class.html">ModelListClass</a>)</td><td class="entry"><a class="el" href="class_model_list_class.html">ModelListClass</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>GetModelCount</b>() (defined in <a class="el" href="class_model_list_class.html">ModelListClass</a>)</td><td class="entry"><a class="el" href="class_model_list_class.html">ModelListClass</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Initialize</b>(int) (defined in <a class="el" href="class_model_list_class.html">ModelListClass</a>)</td><td class="entry"><a class="el" href="class_model_list_class.html">ModelListClass</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>ModelListClass</b>() (defined in <a class="el" href="class_model_list_class.html">ModelListClass</a>)</td><td class="entry"><a class="el" href="class_model_list_class.html">ModelListClass</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ModelListClass</b>(const ModelListClass &amp;) (defined in <a class="el" href="class_model_list_class.html">ModelListClass</a>)</td><td class="entry"><a class="el" href="class_model_list_class.html">ModelListClass</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>Shutdown</b>() (defined in <a class="el" href="class_model_list_class.html">ModelListClass</a>)</td><td class="entry"><a class="el" href="class_model_list_class.html">ModelListClass</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~ModelListClass</b>() (defined in <a class="el" href="class_model_list_class.html">ModelListClass</a>)</td><td class="entry"><a class="el" href="class_model_list_class.html">ModelListClass</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,335 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: ModelListClass Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('class_model_list_class.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="class_model_list_class-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">ModelListClass Class Reference</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:abb41d82c8c9b1b3f3bff8ba1c49cd354" id="r_abb41d82c8c9b1b3f3bff8ba1c49cd354"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abb41d82c8c9b1b3f3bff8ba1c49cd354">ModelListClass</a> (const <a class="el" href="class_model_list_class.html">ModelListClass</a> &amp;)</td></tr>
<tr class="separator:abb41d82c8c9b1b3f3bff8ba1c49cd354"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac15a9d28578724481f7d6360c4425ad5" id="r_ac15a9d28578724481f7d6360c4425ad5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac15a9d28578724481f7d6360c4425ad5">Initialize</a> (int)</td></tr>
<tr class="separator:ac15a9d28578724481f7d6360c4425ad5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a66c1618fb5701843e0b422af4b5178a8" id="r_a66c1618fb5701843e0b422af4b5178a8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a66c1618fb5701843e0b422af4b5178a8">Shutdown</a> ()</td></tr>
<tr class="separator:a66c1618fb5701843e0b422af4b5178a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5192c3a769afe0a1900b791176745859" id="r_a5192c3a769afe0a1900b791176745859"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5192c3a769afe0a1900b791176745859">GetModelCount</a> ()</td></tr>
<tr class="separator:a5192c3a769afe0a1900b791176745859"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9ac84e8be10f288b154e3add1709b9d3" id="r_a9ac84e8be10f288b154e3add1709b9d3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9ac84e8be10f288b154e3add1709b9d3">GetData</a> (int, float &amp;, float &amp;, float &amp;)</td></tr>
<tr class="separator:a9ac84e8be10f288b154e3add1709b9d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="_modellistclass_8h_source.html#l00015">15</a> of file <a class="el" href="_modellistclass_8h_source.html">Modellistclass.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a4479d11dad4537030fc97241908bf983" name="a4479d11dad4537030fc97241908bf983"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4479d11dad4537030fc97241908bf983">&#9670;&#160;</a></span>ModelListClass() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ModelListClass::ModelListClass </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_modellistclass_8cpp_source.html#l00004">4</a> of file <a class="el" href="_modellistclass_8cpp_source.html">Modellistclass.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 5</span>{</div>
<div class="line"><span class="lineno"> 6</span> m_ModelInfoList = 0;</div>
<div class="line"><span class="lineno"> 7</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="abb41d82c8c9b1b3f3bff8ba1c49cd354" name="abb41d82c8c9b1b3f3bff8ba1c49cd354"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abb41d82c8c9b1b3f3bff8ba1c49cd354">&#9670;&#160;</a></span>ModelListClass() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ModelListClass::ModelListClass </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="class_model_list_class.html">ModelListClass</a> &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_modellistclass_8cpp_source.html#l00010">10</a> of file <a class="el" href="_modellistclass_8cpp_source.html">Modellistclass.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 11</span>{</div>
<div class="line"><span class="lineno"> 12</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ae848f3697fa778a8cf2e3b00599d2a85" name="ae848f3697fa778a8cf2e3b00599d2a85"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae848f3697fa778a8cf2e3b00599d2a85">&#9670;&#160;</a></span>~ModelListClass()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ModelListClass::~ModelListClass </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_modellistclass_8cpp_source.html#l00015">15</a> of file <a class="el" href="_modellistclass_8cpp_source.html">Modellistclass.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 16</span>{</div>
<div class="line"><span class="lineno"> 17</span>}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a9ac84e8be10f288b154e3add1709b9d3" name="a9ac84e8be10f288b154e3add1709b9d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9ac84e8be10f288b154e3add1709b9d3">&#9670;&#160;</a></span>GetData()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ModelListClass::GetData </td>
<td>(</td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>index</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float &amp;</td> <td class="paramname"><span class="paramname"><em>positionX</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float &amp;</td> <td class="paramname"><span class="paramname"><em>positionY</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float &amp;</td> <td class="paramname"><span class="paramname"><em>positionZ</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_modellistclass_8cpp_source.html#l00063">63</a> of file <a class="el" href="_modellistclass_8cpp_source.html">Modellistclass.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 64</span>{</div>
<div class="line"><span class="lineno"> 65</span> positionX = m_ModelInfoList[index].positionX;</div>
<div class="line"><span class="lineno"> 66</span> positionY = m_ModelInfoList[index].positionY;</div>
<div class="line"><span class="lineno"> 67</span> positionZ = m_ModelInfoList[index].positionZ;</div>
<div class="line"><span class="lineno"> 68</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 69</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a5192c3a769afe0a1900b791176745859" name="a5192c3a769afe0a1900b791176745859"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5192c3a769afe0a1900b791176745859">&#9670;&#160;</a></span>GetModelCount()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int ModelListClass::GetModelCount </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_modellistclass_8cpp_source.html#l00058">58</a> of file <a class="el" href="_modellistclass_8cpp_source.html">Modellistclass.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 59</span>{</div>
<div class="line"><span class="lineno"> 60</span> <span class="keywordflow">return</span> m_modelCount;</div>
<div class="line"><span class="lineno"> 61</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ac15a9d28578724481f7d6360c4425ad5" name="ac15a9d28578724481f7d6360c4425ad5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac15a9d28578724481f7d6360c4425ad5">&#9670;&#160;</a></span>Initialize()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ModelListClass::Initialize </td>
<td>(</td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>numModels</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_modellistclass_8cpp_source.html#l00020">20</a> of file <a class="el" href="_modellistclass_8cpp_source.html">Modellistclass.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 21</span>{</div>
<div class="line"><span class="lineno"> 22</span> </div>
<div class="line"><span class="lineno"> 23</span> <span class="keywordtype">int</span> i;</div>
<div class="line"><span class="lineno"> 24</span> </div>
<div class="line"><span class="lineno"> 25</span> <span class="comment">// Store the number of models.</span></div>
<div class="line"><span class="lineno"> 26</span> m_modelCount = numModels;</div>
<div class="line"><span class="lineno"> 27</span> </div>
<div class="line"><span class="lineno"> 28</span> <span class="comment">// Create a list array of the model information.</span></div>
<div class="line"><span class="lineno"> 29</span> m_ModelInfoList = <span class="keyword">new</span> ModelInfoType[m_modelCount];</div>
<div class="line"><span class="lineno"> 30</span> </div>
<div class="line"><span class="lineno"> 31</span> <span class="comment">// Seed the random generator with the current time.</span></div>
<div class="line"><span class="lineno"> 32</span> srand((<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>)time(NULL));</div>
<div class="line"><span class="lineno"> 33</span> </div>
<div class="line"><span class="lineno"> 34</span> <span class="comment">// Go through all the models and randomly generate the position.</span></div>
<div class="line"><span class="lineno"> 35</span> <span class="keywordflow">for</span> (i = 0; i &lt; m_modelCount; i++)</div>
<div class="line"><span class="lineno"> 36</span> {</div>
<div class="line"><span class="lineno"> 37</span> <span class="comment">// Generate a random position in front of the viewer for the mode.</span></div>
<div class="line"><span class="lineno"> 38</span> m_ModelInfoList[i].positionX = (((float)rand() - (float)rand()) / RAND_MAX) * 10.0f;</div>
<div class="line"><span class="lineno"> 39</span> m_ModelInfoList[i].positionY = (((float)rand() - (float)rand()) / RAND_MAX) * 10.0f;</div>
<div class="line"><span class="lineno"> 40</span> m_ModelInfoList[i].positionZ = ((((float)rand() - (float)rand()) / RAND_MAX) * 10.0f) + 5.0f;</div>
<div class="line"><span class="lineno"> 41</span> }</div>
<div class="line"><span class="lineno"> 42</span> </div>
<div class="line"><span class="lineno"> 43</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 44</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a66c1618fb5701843e0b422af4b5178a8" name="a66c1618fb5701843e0b422af4b5178a8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a66c1618fb5701843e0b422af4b5178a8">&#9670;&#160;</a></span>Shutdown()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ModelListClass::Shutdown </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_modellistclass_8cpp_source.html#l00046">46</a> of file <a class="el" href="_modellistclass_8cpp_source.html">Modellistclass.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 47</span>{</div>
<div class="line"><span class="lineno"> 48</span> <span class="comment">// Release the model information list.</span></div>
<div class="line"><span class="lineno"> 49</span> <span class="keywordflow">if</span> (m_ModelInfoList)</div>
<div class="line"><span class="lineno"> 50</span> {</div>
<div class="line"><span class="lineno"> 51</span> <span class="keyword">delete</span>[] m_ModelInfoList;</div>
<div class="line"><span class="lineno"> 52</span> m_ModelInfoList = 0;</div>
<div class="line"><span class="lineno"> 53</span> }</div>
<div class="line"><span class="lineno"> 54</span> </div>
<div class="line"><span class="lineno"> 55</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 56</span>}</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>enginecustom/src/inc/system/<a class="el" href="_modellistclass_8h_source.html">Modellistclass.h</a></li>
<li>enginecustom/src/src/system/<a class="el" href="_modellistclass_8cpp_source.html">Modellistclass.cpp</a></li>
</ul>
</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="class_model_list_class.html">ModelListClass</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,120 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('class_skybox.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">Skybox Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="class_skybox.html">Skybox</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ConstructSkybox</b>(application_class *app) (defined in <a class="el" href="class_skybox.html">Skybox</a>)</td><td class="entry"><a class="el" href="class_skybox.html">Skybox</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>Initialize</b>(d_3d_class *d3dClassRef) (defined in <a class="el" href="class_skybox.html">Skybox</a>)</td><td class="entry"><a class="el" href="class_skybox.html">Skybox</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Skybox</b>() (defined in <a class="el" href="class_skybox.html">Skybox</a>)</td><td class="entry"><a class="el" href="class_skybox.html">Skybox</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>textures</b> (defined in <a class="el" href="class_skybox.html">Skybox</a>)</td><td class="entry"><a class="el" href="class_skybox.html">Skybox</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>translations</b> (defined in <a class="el" href="class_skybox.html">Skybox</a>)</td><td class="entry"><a class="el" href="class_skybox.html">Skybox</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~Skybox</b>() (defined in <a class="el" href="class_skybox.html">Skybox</a>)</td><td class="entry"><a class="el" href="class_skybox.html">Skybox</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,308 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Skybox Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('class_skybox.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="class_skybox-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">Skybox Class Reference</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:af048306ba3fc893e485393452e8af429" id="r_af048306ba3fc893e485393452e8af429"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af048306ba3fc893e485393452e8af429">Initialize</a> (<a class="el" href="classd__3d__class.html">d_3d_class</a> *d3dClassRef)</td></tr>
<tr class="separator:af048306ba3fc893e485393452e8af429"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a583a0753edede891759ecb62cf82a86f" id="r_a583a0753edede891759ecb62cf82a86f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classobject.html">object</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a583a0753edede891759ecb62cf82a86f">ConstructSkybox</a> (<a class="el" href="classapplication__class.html">application_class</a> *app)</td></tr>
<tr class="separator:a583a0753edede891759ecb62cf82a86f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a262dc36cc61d999b57e39a0299e092d1" id="r_a262dc36cc61d999b57e39a0299e092d1"><td class="memItemLeft" align="right" valign="top">std::vector&lt; ID3D11ShaderResourceView * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a262dc36cc61d999b57e39a0299e092d1">textures</a></td></tr>
<tr class="separator:a262dc36cc61d999b57e39a0299e092d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad8fe8dad8c458bb335763a411cd20c2c" id="r_ad8fe8dad8c458bb335763a411cd20c2c"><td class="memItemLeft" align="right" valign="top">std::vector&lt; XMMATRIX &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad8fe8dad8c458bb335763a411cd20c2c">translations</a></td></tr>
<tr class="separator:ad8fe8dad8c458bb335763a411cd20c2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="_skybox_8h_source.html#l00007">7</a> of file <a class="el" href="_skybox_8h_source.html">Skybox.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a77a92db4492ed94ed4bd101b05ffb1f4" name="a77a92db4492ed94ed4bd101b05ffb1f4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a77a92db4492ed94ed4bd101b05ffb1f4">&#9670;&#160;</a></span>Skybox()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">Skybox::Skybox </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_skybox_8cpp_source.html#l00003">3</a> of file <a class="el" href="_skybox_8cpp_source.html">Skybox.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 4</span>{</div>
<div class="line"><span class="lineno"> 5</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a62ad4c6b4b1965a0a6d8536a50d4c090" name="a62ad4c6b4b1965a0a6d8536a50d4c090"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a62ad4c6b4b1965a0a6d8536a50d4c090">&#9670;&#160;</a></span>~Skybox()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">Skybox::~Skybox </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_skybox_8cpp_source.html#l00007">7</a> of file <a class="el" href="_skybox_8cpp_source.html">Skybox.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 8</span>{</div>
<div class="line"><span class="lineno"> 9</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; texture : textures)</div>
<div class="line"><span class="lineno"> 10</span> {</div>
<div class="line"><span class="lineno"> 11</span> <span class="keywordflow">if</span> (texture)</div>
<div class="line"><span class="lineno"> 12</span> {</div>
<div class="line"><span class="lineno"> 13</span> texture-&gt;Release();</div>
<div class="line"><span class="lineno"> 14</span> texture = <span class="keyword">nullptr</span>;</div>
<div class="line"><span class="lineno"> 15</span> }</div>
<div class="line"><span class="lineno"> 16</span> }</div>
<div class="line"><span class="lineno"> 17</span> textures.clear();</div>
<div class="line"><span class="lineno"> 18</span> translations.clear();</div>
<div class="line"><span class="lineno"> 19</span>}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a583a0753edede891759ecb62cf82a86f" name="a583a0753edede891759ecb62cf82a86f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a583a0753edede891759ecb62cf82a86f">&#9670;&#160;</a></span>ConstructSkybox()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classobject.html">object</a> * Skybox::ConstructSkybox </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classapplication__class.html">application_class</a> *</td> <td class="paramname"><span class="paramname"><em>app</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_skybox_8cpp_source.html#l00026">26</a> of file <a class="el" href="_skybox_8cpp_source.html">Skybox.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 27</span>{</div>
<div class="line"><span class="lineno"> 28</span> Logger::Get().Log(<span class="stringliteral">&quot;Construct skybox&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><span class="lineno"> 29</span> </div>
<div class="line"><span class="lineno"> 30</span> <span class="keywordtype">char</span> modelFilename[128];</div>
<div class="line"><span class="lineno"> 31</span> strcpy_s(modelFilename, <span class="stringliteral">&quot;assets/Model/OBJ/skysphere.obj&quot;</span>);</div>
<div class="line"><span class="lineno"> 32</span> </div>
<div class="line"><span class="lineno"> 33</span> std::vector&lt;std::wstring&gt; skyboxTextures = {</div>
<div class="line"><span class="lineno"> 34</span> L<span class="stringliteral">&quot;assets/Skybox/skybox.png&quot;</span>,</div>
<div class="line"><span class="lineno"> 35</span> };</div>
<div class="line"><span class="lineno"> 36</span> </div>
<div class="line"><span class="lineno"> 37</span> <a class="code hl_struct" href="struct_texture_container.html">TextureContainer</a> SkyboxTextures;</div>
<div class="line"><span class="lineno"> 38</span> </div>
<div class="line"><span class="lineno"> 39</span> <span class="comment">// Load the textures</span></div>
<div class="line"><span class="lineno"> 40</span> <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span>&amp; textureFilename : skyboxTextures)</div>
<div class="line"><span class="lineno"> 41</span> {</div>
<div class="line"><span class="lineno"> 42</span> ID3D11ShaderResourceView* texture = <span class="keyword">nullptr</span>;</div>
<div class="line"><span class="lineno"> 43</span> HRESULT result = DirectX::CreateWICTextureFromFile(m_d3dClassRef-&gt;get_device(), m_d3dClassRef-&gt;get_device_context(), textureFilename.c_str(), <span class="keyword">nullptr</span>, &amp;texture);</div>
<div class="line"><span class="lineno"> 44</span> <span class="keywordflow">if</span> (FAILED(result))</div>
<div class="line"><span class="lineno"> 45</span> {</div>
<div class="line"><span class="lineno"> 46</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to load texture: &quot;</span> + std::string(textureFilename.begin(), textureFilename.end()), __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 47</span> <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div>
<div class="line"><span class="lineno"> 48</span> }</div>
<div class="line"><span class="lineno"> 49</span> SkyboxTextures.diffuse.push_back(texture);</div>
<div class="line"><span class="lineno"> 50</span> </div>
<div class="line"><span class="lineno"> 51</span> }</div>
<div class="line"><span class="lineno"> 52</span> </div>
<div class="line"><span class="lineno"> 53</span> <span class="comment">// Create the model object</span></div>
<div class="line"><span class="lineno"> 54</span> m_Skybox = <span class="keyword">new</span> <a class="code hl_class" href="classobject.html">object</a>(*app);</div>
<div class="line"><span class="lineno"> 55</span> HRESULT result = m_Skybox-&gt;Initialize(m_d3dClassRef-&gt;get_device(), m_d3dClassRef-&gt;get_device_context(), modelFilename, SkyboxTextures);</div>
<div class="line"><span class="lineno"> 56</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><span class="lineno"> 57</span> {</div>
<div class="line"><span class="lineno"> 58</span> Logger::Get().Log(<span class="stringliteral">&quot;Could not initialize the skybox model object&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 59</span> <span class="keyword">delete</span> m_Skybox;</div>
<div class="line"><span class="lineno"> 60</span> <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div>
<div class="line"><span class="lineno"> 61</span> }</div>
<div class="line"><span class="lineno"> 62</span> m_Skybox-&gt;SetTranslateMatrix(XMMatrixTranslation(0.0f, 0.0f, 0.0f)); <span class="comment">// Set the initial translation of the skybox</span></div>
<div class="line"><span class="lineno"> 63</span> m_Skybox-&gt;SetActiveShader(ShaderType::SKYBOX);</div>
<div class="line"><span class="lineno"> 64</span> </div>
<div class="line"><span class="lineno"> 65</span> <span class="keywordflow">return</span> m_Skybox; <span class="comment">// Return the constructed skybox object</span></div>
<div class="line"><span class="lineno"> 66</span>}</div>
<div class="ttc" id="aclassobject_html"><div class="ttname"><a href="classobject.html">object</a></div><div class="ttdef"><b>Definition</b> <a href="object_8h_source.html#l00029">object.h:30</a></div></div>
<div class="ttc" id="astruct_texture_container_html"><div class="ttname"><a href="struct_texture_container.html">TextureContainer</a></div><div class="ttdef"><b>Definition</b> <a href="model__class_8h_source.html#l00033">model_class.h:34</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="af048306ba3fc893e485393452e8af429" name="af048306ba3fc893e485393452e8af429"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af048306ba3fc893e485393452e8af429">&#9670;&#160;</a></span>Initialize()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void Skybox::Initialize </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classd__3d__class.html">d_3d_class</a> *</td> <td class="paramname"><span class="paramname"><em>d3dClassRef</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_skybox_8cpp_source.html#l00021">21</a> of file <a class="el" href="_skybox_8cpp_source.html">Skybox.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 22</span>{</div>
<div class="line"><span class="lineno"> 23</span> m_d3dClassRef = d3dClassRef;</div>
<div class="line"><span class="lineno"> 24</span>}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a262dc36cc61d999b57e39a0299e092d1" name="a262dc36cc61d999b57e39a0299e092d1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a262dc36cc61d999b57e39a0299e092d1">&#9670;&#160;</a></span>textures</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;ID3D11ShaderResourceView*&gt; Skybox::textures</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_skybox_8h_source.html#l00021">21</a> of file <a class="el" href="_skybox_8h_source.html">Skybox.h</a>.</p>
</div>
</div>
<a id="ad8fe8dad8c458bb335763a411cd20c2c" name="ad8fe8dad8c458bb335763a411cd20c2c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad8fe8dad8c458bb335763a411cd20c2c">&#9670;&#160;</a></span>translations</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::vector&lt;XMMATRIX&gt; Skybox::translations</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_skybox_8h_source.html#l00022">22</a> of file <a class="el" href="_skybox_8h_source.html">Skybox.h</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>enginecustom/src/inc/system/<a class="el" href="_skybox_8h_source.html">Skybox.h</a></li>
<li>enginecustom/src/src/system/<a class="el" href="_skybox_8cpp_source.html">Skybox.cpp</a></li>
</ul>
</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="class_skybox.html">Skybox</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,120 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classalpha__map__shader__class.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">alpha_map_shader_class Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classalpha__map__shader__class.html">alpha_map_shader_class</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>alpha_map_shader_class</b>() (defined in <a class="el" href="classalpha__map__shader__class.html">alpha_map_shader_class</a>)</td><td class="entry"><a class="el" href="classalpha__map__shader__class.html">alpha_map_shader_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>alpha_map_shader_class</b>(const alpha_map_shader_class &amp;) (defined in <a class="el" href="classalpha__map__shader__class.html">alpha_map_shader_class</a>)</td><td class="entry"><a class="el" href="classalpha__map__shader__class.html">alpha_map_shader_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>initialize</b>(ID3D11Device *, HWND) (defined in <a class="el" href="classalpha__map__shader__class.html">alpha_map_shader_class</a>)</td><td class="entry"><a class="el" href="classalpha__map__shader__class.html">alpha_map_shader_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>render</b>(ID3D11DeviceContext *, int, XMMATRIX, XMMATRIX, XMMATRIX, ID3D11ShaderResourceView *, ID3D11ShaderResourceView *, ID3D11ShaderResourceView *) (defined in <a class="el" href="classalpha__map__shader__class.html">alpha_map_shader_class</a>)</td><td class="entry"><a class="el" href="classalpha__map__shader__class.html">alpha_map_shader_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>shutdown</b>() (defined in <a class="el" href="classalpha__map__shader__class.html">alpha_map_shader_class</a>)</td><td class="entry"><a class="el" href="classalpha__map__shader__class.html">alpha_map_shader_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~alpha_map_shader_class</b>() (defined in <a class="el" href="classalpha__map__shader__class.html">alpha_map_shader_class</a>)</td><td class="entry"><a class="el" href="classalpha__map__shader__class.html">alpha_map_shader_class</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,356 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: alpha_map_shader_class Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classalpha__map__shader__class.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classalpha__map__shader__class-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">alpha_map_shader_class Class Reference</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:acccd65f5625eb53eabb20efa1f956440" id="r_acccd65f5625eb53eabb20efa1f956440"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#acccd65f5625eb53eabb20efa1f956440">alpha_map_shader_class</a> (const <a class="el" href="classalpha__map__shader__class.html">alpha_map_shader_class</a> &amp;)</td></tr>
<tr class="separator:acccd65f5625eb53eabb20efa1f956440"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd43ecd52ccf266fee08e9d3bdf8b26a" id="r_afd43ecd52ccf266fee08e9d3bdf8b26a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#afd43ecd52ccf266fee08e9d3bdf8b26a">initialize</a> (ID3D11Device *, HWND)</td></tr>
<tr class="separator:afd43ecd52ccf266fee08e9d3bdf8b26a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a315cf37f8c0a3df5846e1467031fad8e" id="r_a315cf37f8c0a3df5846e1467031fad8e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a315cf37f8c0a3df5846e1467031fad8e">shutdown</a> ()</td></tr>
<tr class="separator:a315cf37f8c0a3df5846e1467031fad8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a105f32e5f23ac01b5693d77c69089ddd" id="r_a105f32e5f23ac01b5693d77c69089ddd"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a105f32e5f23ac01b5693d77c69089ddd">render</a> (ID3D11DeviceContext *, int, XMMATRIX, XMMATRIX, XMMATRIX, ID3D11ShaderResourceView *, ID3D11ShaderResourceView *, ID3D11ShaderResourceView *)</td></tr>
<tr class="separator:a105f32e5f23ac01b5693d77c69089ddd"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="alpha__map__shader__class_8h_source.html#l00020">20</a> of file <a class="el" href="alpha__map__shader__class_8h_source.html">alpha_map_shader_class.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a549d204dc60d0813c7cc87df16e78a2d" name="a549d204dc60d0813c7cc87df16e78a2d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a549d204dc60d0813c7cc87df16e78a2d">&#9670;&#160;</a></span>alpha_map_shader_class() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">alpha_map_shader_class::alpha_map_shader_class </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="alpha__map__shader__class_8cpp_source.html#l00004">4</a> of file <a class="el" href="alpha__map__shader__class_8cpp_source.html">alpha_map_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 5</span>{</div>
<div class="line"><span class="lineno"> 6</span> vertex_shader_ = 0;</div>
<div class="line"><span class="lineno"> 7</span> pixel_shader_ = 0;</div>
<div class="line"><span class="lineno"> 8</span> layout_ = 0;</div>
<div class="line"><span class="lineno"> 9</span> matrix_buffer_ = 0;</div>
<div class="line"><span class="lineno"> 10</span> sample_state_ = 0;</div>
<div class="line"><span class="lineno"> 11</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="acccd65f5625eb53eabb20efa1f956440" name="acccd65f5625eb53eabb20efa1f956440"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acccd65f5625eb53eabb20efa1f956440">&#9670;&#160;</a></span>alpha_map_shader_class() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">alpha_map_shader_class::alpha_map_shader_class </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classalpha__map__shader__class.html">alpha_map_shader_class</a> &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="alpha__map__shader__class_8cpp_source.html#l00014">14</a> of file <a class="el" href="alpha__map__shader__class_8cpp_source.html">alpha_map_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 15</span>{</div>
<div class="line"><span class="lineno"> 16</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ad577dc05ba6d8a0220cc95878345b38c" name="ad577dc05ba6d8a0220cc95878345b38c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad577dc05ba6d8a0220cc95878345b38c">&#9670;&#160;</a></span>~alpha_map_shader_class()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">alpha_map_shader_class::~alpha_map_shader_class </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="alpha__map__shader__class_8cpp_source.html#l00019">19</a> of file <a class="el" href="alpha__map__shader__class_8cpp_source.html">alpha_map_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 20</span>{</div>
<div class="line"><span class="lineno"> 21</span>}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="afd43ecd52ccf266fee08e9d3bdf8b26a" name="afd43ecd52ccf266fee08e9d3bdf8b26a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afd43ecd52ccf266fee08e9d3bdf8b26a">&#9670;&#160;</a></span>initialize()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool alpha_map_shader_class::initialize </td>
<td>(</td>
<td class="paramtype">ID3D11Device *</td> <td class="paramname"><span class="paramname"><em>device</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">HWND</td> <td class="paramname"><span class="paramname"><em>hwnd</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="alpha__map__shader__class_8cpp_source.html#l00024">24</a> of file <a class="el" href="alpha__map__shader__class_8cpp_source.html">alpha_map_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 25</span>{</div>
<div class="line"><span class="lineno"> 26</span> Logger::Get().Log(<span class="stringliteral">&quot;Initializing alpha_map_shader_class&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><span class="lineno"> 27</span> </div>
<div class="line"><span class="lineno"> 28</span> <span class="keywordtype">bool</span> result;</div>
<div class="line"><span class="lineno"> 29</span> <span class="keywordtype">wchar_t</span> vsFilename[128];</div>
<div class="line"><span class="lineno"> 30</span> <span class="keywordtype">wchar_t</span> psFilename[128];</div>
<div class="line"><span class="lineno"> 31</span> <span class="keywordtype">int</span> error;</div>
<div class="line"><span class="lineno"> 32</span> </div>
<div class="line"><span class="lineno"> 33</span> <span class="comment">// Set the filename of the vertex shader.</span></div>
<div class="line"><span class="lineno"> 34</span> error = wcscpy_s(vsFilename, 128, L<span class="stringliteral">&quot;src/hlsl/alphamap.vs&quot;</span>);</div>
<div class="line"><span class="lineno"> 35</span> <span class="keywordflow">if</span> (error != 0)</div>
<div class="line"><span class="lineno"> 36</span> {</div>
<div class="line"><span class="lineno"> 37</span> Logger::Get().Log(<span class="stringliteral">&quot;Error copying string &quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 38</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 39</span> }</div>
<div class="line"><span class="lineno"> 40</span> </div>
<div class="line"><span class="lineno"> 41</span> <span class="comment">// Set the filename of the pixel shader.</span></div>
<div class="line"><span class="lineno"> 42</span> error = wcscpy_s(psFilename, 128, L<span class="stringliteral">&quot;src/hlsl/alphamap.ps&quot;</span>);</div>
<div class="line"><span class="lineno"> 43</span> <span class="keywordflow">if</span> (error != 0)</div>
<div class="line"><span class="lineno"> 44</span> {</div>
<div class="line"><span class="lineno"> 45</span> Logger::Get().Log(<span class="stringliteral">&quot;Error copying string&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 46</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 47</span> }</div>
<div class="line"><span class="lineno"> 48</span> </div>
<div class="line"><span class="lineno"> 49</span> <span class="comment">// initialize the vertex and pixel shaders.</span></div>
<div class="line"><span class="lineno"> 50</span> result = initialize_shader(device, hwnd, vsFilename, psFilename);</div>
<div class="line"><span class="lineno"> 51</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><span class="lineno"> 52</span> {</div>
<div class="line"><span class="lineno"> 53</span> Logger::Get().Log(<span class="stringliteral">&quot;Error initializing shader&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 54</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 55</span> }</div>
<div class="line"><span class="lineno"> 56</span> </div>
<div class="line"><span class="lineno"> 57</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 58</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a105f32e5f23ac01b5693d77c69089ddd" name="a105f32e5f23ac01b5693d77c69089ddd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a105f32e5f23ac01b5693d77c69089ddd">&#9670;&#160;</a></span>render()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool alpha_map_shader_class::render </td>
<td>(</td>
<td class="paramtype">ID3D11DeviceContext *</td> <td class="paramname"><span class="paramname"><em>deviceContext</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>indexCount</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">XMMATRIX</td> <td class="paramname"><span class="paramname"><em>worldMatrix</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">XMMATRIX</td> <td class="paramname"><span class="paramname"><em>viewMatrix</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">XMMATRIX</td> <td class="paramname"><span class="paramname"><em>projectionMatrix</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">ID3D11ShaderResourceView *</td> <td class="paramname"><span class="paramname"><em>texture1</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">ID3D11ShaderResourceView *</td> <td class="paramname"><span class="paramname"><em>texture2</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">ID3D11ShaderResourceView *</td> <td class="paramname"><span class="paramname"><em>texture3</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="alpha__map__shader__class_8cpp_source.html#l00070">70</a> of file <a class="el" href="alpha__map__shader__class_8cpp_source.html">alpha_map_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 72</span>{</div>
<div class="line"><span class="lineno"> 73</span> <span class="keywordtype">bool</span> result;</div>
<div class="line"><span class="lineno"> 74</span> </div>
<div class="line"><span class="lineno"> 75</span> </div>
<div class="line"><span class="lineno"> 76</span> <span class="comment">// Set the shader parameters that it will use for rendering.</span></div>
<div class="line"><span class="lineno"> 77</span> result = set_shader_parameters(deviceContext, worldMatrix, viewMatrix, projectionMatrix, texture1, texture2, texture3);</div>
<div class="line"><span class="lineno"> 78</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><span class="lineno"> 79</span> {</div>
<div class="line"><span class="lineno"> 80</span> Logger::Get().Log(<span class="stringliteral">&quot;Error setting shader parameters&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 81</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 82</span> }</div>
<div class="line"><span class="lineno"> 83</span> </div>
<div class="line"><span class="lineno"> 84</span> <span class="comment">// Now render the prepared buffers with the shader.</span></div>
<div class="line"><span class="lineno"> 85</span> render_shader(deviceContext, indexCount);</div>
<div class="line"><span class="lineno"> 86</span> </div>
<div class="line"><span class="lineno"> 87</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 88</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a315cf37f8c0a3df5846e1467031fad8e" name="a315cf37f8c0a3df5846e1467031fad8e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a315cf37f8c0a3df5846e1467031fad8e">&#9670;&#160;</a></span>shutdown()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void alpha_map_shader_class::shutdown </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="alpha__map__shader__class_8cpp_source.html#l00061">61</a> of file <a class="el" href="alpha__map__shader__class_8cpp_source.html">alpha_map_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 62</span>{</div>
<div class="line"><span class="lineno"> 63</span> <span class="comment">// shutdown the vertex and pixel shaders as well as the related objects.</span></div>
<div class="line"><span class="lineno"> 64</span> shutdown_shader();</div>
<div class="line"><span class="lineno"> 65</span> </div>
<div class="line"><span class="lineno"> 66</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 67</span>}</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>enginecustom/src/inc/shader/<a class="el" href="alpha__map__shader__class_8h_source.html">alpha_map_shader_class.h</a></li>
<li>enginecustom/src/src/shader/<a class="el" href="alpha__map__shader__class_8cpp_source.html">alpha_map_shader_class.cpp</a></li>
</ul>
</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="classalpha__map__shader__class.html">alpha_map_shader_class</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,181 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classapplication__class.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">application_class Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classapplication__class.html">application_class</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#aaa09afdc106fb3f82788c42272811657">add_cube</a>()</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#a9a39dfe69bca6fe96a339ab47b2f0539">add_kobject</a>(std::wstring &amp;filepath)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#ab3b678dde613c8568a2124482ed45a73">application_class</a>()</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#a7b959a12a5574b263556937f1c94e255">construct_frustum</a>()</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#a7b0482e4b79a4c3bf32e1f40ccb48678">create_big_cube</a>(int side_count)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#a5ade90e873b7b6a31c148672dd0305cb">delete_entity_by_id</a>(int entity_id)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#a69bce73916e1180493ac74030dbb77ba">delete_terrain</a>()</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#a0d9b9cbfbe1a2efa52606fcbbdfb40ca">frame</a>(input_class *)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#aca20ad22e0c95f5404e3c47a11317025">generate_terrain</a>()</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#a1bbbc70e5a68278f410e9b2b93942230">get_aspect_ratio</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#a0e7b21b1421fd52bb3740fb25f26e4a7">get_back_buffer_srv</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#abf98d275e281e99e54a68d3b53ba7b94">get_can_fixed_update</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_direct_3d</b>() (defined in <a class="el" href="classapplication__class.html">application_class</a>)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#ab6487040a8f3f90c62eaaeec09504071">get_entity_manager</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#a8a2103b81e5a5f73ebce656b96467ee3">get_fps</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#a29f11f9f0ab0f41af7b1b657d9310209">get_frustum</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#aa271ce1d2803a5a1fcd9becad215ecb0">get_frustum_tolerance</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#a692f521b7d27a89a95848dd912342c1f">get_hwnd</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#a85c04a3f2d050cb750d7986ebc7e76a5">get_light_color</a>(int index)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#a54f4915b1878fde4dc60ff26be5712ee">get_light_position</a>(int index)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#a9b1ca112e8d8fd01a7061d9a638e9f3e">get_lights</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#a6eff226c2686a261a394b1c046096c5e">get_model_cache</a>()</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#a32624a7be14230d2120de382c2c2e298">get_object_id</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#ab1924a7177c04594ec5dab7fe4c0104f">get_physics</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#a118113b8ab8ad1065b032d57150fa7dd">get_physics_tick_rate</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#a25592af930b0ee6c34d667fc0f8d69e1">get_reflection_texture</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#a8d993ac51d86d09c2b03b612ed914a74">get_refraction_texture</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#acc0c095b41d72833d974229cc64d0689">get_render_count</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#a3ec69cb088888911ab1e32490c39f3e6">get_render_texture</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#a69a84a1345d56bb8d81e7d3427ce969e">get_scene_texture</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#a468b1ed714bae99f4f2fcf7a93407bfb">get_screen_height</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#ae4bf8de77c3edaac71aaba75193c3be9">get_screen_width</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#afea1cdf2706dc45cdae0396b7948f2b0">get_should_quit</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#ad724a8b8867f487bc602406ae20e1301">get_speed</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#adfd9213758db871e03aada83dee961b3">get_stats</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#ad757f3dc7ad49b74643fca7947889ed6">get_sun_light</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#afe1ff7bf39935cae054c8f3743e923e1">get_terrain_entity_count</a>()</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#aa79efde57fb87b64bf95b47ee87c3bff">get_vsync</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#a2f6b5156b585944bb912d93fa1595af2">get_w_folder</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#a3c76d728525b1ee4558a41383f9f2217">get_window_size</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#a3be4f6532857c72283450ce43907f309">initialize</a>(int screen_width, int screen_height, HWND hwdn, bool is_vulkan)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#aac1577a0fe08e8007980b6b1778da478">is_windowed</a>() const</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#aa583e172e6a2d45cb9b4841634b9eea4">physics_thread_function</a>()</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#aa0a44059eae0a8df0cb65a7962d598ed">set_can_fixed_update</a>(bool can_fixed_update)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#a1bdce1b8c5a23cd60dd35c441a670601">set_cel_shading</a>(const bool enable)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>set_direct_3d</b>(d_3d_class *direct_3d) (defined in <a class="el" href="classapplication__class.html">application_class</a>)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#abd47278db9d786b80833c787900c145b">set_frustum</a>(const frustum &amp;frustum)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#a2f41c2a8f5f18aca2859b02e804c7a1a">set_frustum_tolerance</a>(const float frustum_tolerance)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#a40392869f0ff57982fef8098dd3354fe">set_hwnd</a>(HWND hwnd)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#a79b165193754e7361b0a467f5e70c72b">set_light_color</a>(int index, XMVECTOR color)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#a1715fe1c06659636399b60e859e6b2ae">set_light_position</a>(int index, XMVECTOR position)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#ae586e8e9431b6d6168c335a9ae0f08ca">set_object_id</a>(int object_id)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#a4ead7c7ba402fb9619000d201c0cf95f">set_path</a>(WCHAR *path)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#a8b03fc0a380762e268606262914e55a8">set_physics_tick_rate</a>(int physics_tick_rate)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#a1f607939202c0cb805df935eb38dabe7">set_render_count</a>(const int render_count)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#ae5ed92985e95d9f34a152cae2d7345d7">set_screen_height</a>(int screen_height)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#aca66fefd8c7c473e2700a69f13a4cb6b">set_screen_width</a>(int screen_width)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#a96068cd56a5bb2ed0c02db3b70272be2">set_should_quit</a>(const bool should_quit)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#a7b1a11759ecc6b80542c7f4f3cf4e8e9">set_speed</a>(const float speed)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#a642858510be15dc3d2890ccc5f6df31f">set_vsync</a>(bool vsync)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#a5dbf967cc3d2a08b07c13b6aa44fafe1">set_w_folder</a>(const std::filesystem::path &amp;w_folder)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#ab0418282e11e00cebb3a63747384a24b">set_window_size</a>(const ImVec2 size)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classapplication__class.html#a7faa4a3a5150086acaec8bc223a4bf7e">set_windowed</a>(bool windowed)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#af2ef20892819f21303002a0f3005e73d">shutdown</a>()</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>textures</b> (defined in <a class="el" href="classapplication__class.html">application_class</a>)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classapplication__class.html#aa453b06f65ab6344907f0c65670de202">update_stats_after_modification</a>()</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~application_class</b>() (defined in <a class="el" href="classapplication__class.html">application_class</a>)</td><td class="entry"><a class="el" href="classapplication__class.html">application_class</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,66 @@
var classapplication__class =
[
[ "application_class", "classapplication__class.html#ab3b678dde613c8568a2124482ed45a73", null ],
[ "add_cube", "classapplication__class.html#aaa09afdc106fb3f82788c42272811657", null ],
[ "add_kobject", "classapplication__class.html#a9a39dfe69bca6fe96a339ab47b2f0539", null ],
[ "construct_frustum", "classapplication__class.html#a7b959a12a5574b263556937f1c94e255", null ],
[ "create_big_cube", "classapplication__class.html#a7b0482e4b79a4c3bf32e1f40ccb48678", null ],
[ "delete_entity_by_id", "classapplication__class.html#a5ade90e873b7b6a31c148672dd0305cb", null ],
[ "delete_terrain", "classapplication__class.html#a69bce73916e1180493ac74030dbb77ba", null ],
[ "frame", "classapplication__class.html#a0d9b9cbfbe1a2efa52606fcbbdfb40ca", null ],
[ "generate_terrain", "classapplication__class.html#aca20ad22e0c95f5404e3c47a11317025", null ],
[ "get_aspect_ratio", "classapplication__class.html#a1bbbc70e5a68278f410e9b2b93942230", null ],
[ "get_back_buffer_srv", "classapplication__class.html#a0e7b21b1421fd52bb3740fb25f26e4a7", null ],
[ "get_can_fixed_update", "classapplication__class.html#abf98d275e281e99e54a68d3b53ba7b94", null ],
[ "get_entity_manager", "classapplication__class.html#ab6487040a8f3f90c62eaaeec09504071", null ],
[ "get_fps", "classapplication__class.html#a8a2103b81e5a5f73ebce656b96467ee3", null ],
[ "get_frustum", "classapplication__class.html#a29f11f9f0ab0f41af7b1b657d9310209", null ],
[ "get_frustum_tolerance", "classapplication__class.html#aa271ce1d2803a5a1fcd9becad215ecb0", null ],
[ "get_hwnd", "classapplication__class.html#a692f521b7d27a89a95848dd912342c1f", null ],
[ "get_light_color", "classapplication__class.html#a85c04a3f2d050cb750d7986ebc7e76a5", null ],
[ "get_light_position", "classapplication__class.html#a54f4915b1878fde4dc60ff26be5712ee", null ],
[ "get_lights", "classapplication__class.html#a9b1ca112e8d8fd01a7061d9a638e9f3e", null ],
[ "get_model_cache", "classapplication__class.html#a6eff226c2686a261a394b1c046096c5e", null ],
[ "get_object_id", "classapplication__class.html#a32624a7be14230d2120de382c2c2e298", null ],
[ "get_physics", "classapplication__class.html#ab1924a7177c04594ec5dab7fe4c0104f", null ],
[ "get_physics_tick_rate", "classapplication__class.html#a118113b8ab8ad1065b032d57150fa7dd", null ],
[ "get_reflection_texture", "classapplication__class.html#a25592af930b0ee6c34d667fc0f8d69e1", null ],
[ "get_refraction_texture", "classapplication__class.html#a8d993ac51d86d09c2b03b612ed914a74", null ],
[ "get_render_count", "classapplication__class.html#acc0c095b41d72833d974229cc64d0689", null ],
[ "get_render_texture", "classapplication__class.html#a3ec69cb088888911ab1e32490c39f3e6", null ],
[ "get_scene_texture", "classapplication__class.html#a69a84a1345d56bb8d81e7d3427ce969e", null ],
[ "get_screen_height", "classapplication__class.html#a468b1ed714bae99f4f2fcf7a93407bfb", null ],
[ "get_screen_width", "classapplication__class.html#ae4bf8de77c3edaac71aaba75193c3be9", null ],
[ "get_should_quit", "classapplication__class.html#afea1cdf2706dc45cdae0396b7948f2b0", null ],
[ "get_speed", "classapplication__class.html#ad724a8b8867f487bc602406ae20e1301", null ],
[ "get_stats", "classapplication__class.html#adfd9213758db871e03aada83dee961b3", null ],
[ "get_sun_light", "classapplication__class.html#ad757f3dc7ad49b74643fca7947889ed6", null ],
[ "get_terrain_entity_count", "classapplication__class.html#afe1ff7bf39935cae054c8f3743e923e1", null ],
[ "get_vsync", "classapplication__class.html#aa79efde57fb87b64bf95b47ee87c3bff", null ],
[ "get_w_folder", "classapplication__class.html#a2f6b5156b585944bb912d93fa1595af2", null ],
[ "get_window_size", "classapplication__class.html#a3c76d728525b1ee4558a41383f9f2217", null ],
[ "initialize", "classapplication__class.html#a3be4f6532857c72283450ce43907f309", null ],
[ "is_windowed", "classapplication__class.html#aac1577a0fe08e8007980b6b1778da478", null ],
[ "physics_thread_function", "classapplication__class.html#aa583e172e6a2d45cb9b4841634b9eea4", null ],
[ "set_can_fixed_update", "classapplication__class.html#aa0a44059eae0a8df0cb65a7962d598ed", null ],
[ "set_cel_shading", "classapplication__class.html#a1bdce1b8c5a23cd60dd35c441a670601", null ],
[ "set_frustum", "classapplication__class.html#abd47278db9d786b80833c787900c145b", null ],
[ "set_frustum_tolerance", "classapplication__class.html#a2f41c2a8f5f18aca2859b02e804c7a1a", null ],
[ "set_hwnd", "classapplication__class.html#a40392869f0ff57982fef8098dd3354fe", null ],
[ "set_light_color", "classapplication__class.html#a79b165193754e7361b0a467f5e70c72b", null ],
[ "set_light_position", "classapplication__class.html#a1715fe1c06659636399b60e859e6b2ae", null ],
[ "set_object_id", "classapplication__class.html#ae586e8e9431b6d6168c335a9ae0f08ca", null ],
[ "set_path", "classapplication__class.html#a4ead7c7ba402fb9619000d201c0cf95f", null ],
[ "set_physics_tick_rate", "classapplication__class.html#a8b03fc0a380762e268606262914e55a8", null ],
[ "set_render_count", "classapplication__class.html#a1f607939202c0cb805df935eb38dabe7", null ],
[ "set_screen_height", "classapplication__class.html#ae5ed92985e95d9f34a152cae2d7345d7", null ],
[ "set_screen_width", "classapplication__class.html#aca66fefd8c7c473e2700a69f13a4cb6b", null ],
[ "set_should_quit", "classapplication__class.html#a96068cd56a5bb2ed0c02db3b70272be2", null ],
[ "set_speed", "classapplication__class.html#a7b1a11759ecc6b80542c7f4f3cf4e8e9", null ],
[ "set_vsync", "classapplication__class.html#a642858510be15dc3d2890ccc5f6df31f", null ],
[ "set_w_folder", "classapplication__class.html#a5dbf967cc3d2a08b07c13b6aa44fafe1", null ],
[ "set_window_size", "classapplication__class.html#ab0418282e11e00cebb3a63747384a24b", null ],
[ "set_windowed", "classapplication__class.html#a7faa4a3a5150086acaec8bc223a4bf7e", null ],
[ "shutdown", "classapplication__class.html#af2ef20892819f21303002a0f3005e73d", null ],
[ "update_stats_after_modification", "classapplication__class.html#aa453b06f65ab6344907f0c65670de202", null ]
];

View File

@ -0,0 +1,123 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classbitmap__class.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">bitmap_class Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classbitmap__class.html">bitmap_class</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>bitmap_class</b>() (defined in <a class="el" href="classbitmap__class.html">bitmap_class</a>)</td><td class="entry"><a class="el" href="classbitmap__class.html">bitmap_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>bitmap_class</b>(const bitmap_class &amp;) (defined in <a class="el" href="classbitmap__class.html">bitmap_class</a>)</td><td class="entry"><a class="el" href="classbitmap__class.html">bitmap_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_index_count</b>() (defined in <a class="el" href="classbitmap__class.html">bitmap_class</a>)</td><td class="entry"><a class="el" href="classbitmap__class.html">bitmap_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>get_texture</b>() (defined in <a class="el" href="classbitmap__class.html">bitmap_class</a>)</td><td class="entry"><a class="el" href="classbitmap__class.html">bitmap_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>initialize</b>(ID3D11Device *, ID3D11DeviceContext *, int, int, char *, int, int) (defined in <a class="el" href="classbitmap__class.html">bitmap_class</a>)</td><td class="entry"><a class="el" href="classbitmap__class.html">bitmap_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>render</b>(ID3D11DeviceContext *) (defined in <a class="el" href="classbitmap__class.html">bitmap_class</a>)</td><td class="entry"><a class="el" href="classbitmap__class.html">bitmap_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_render_location</b>(int, int) (defined in <a class="el" href="classbitmap__class.html">bitmap_class</a>)</td><td class="entry"><a class="el" href="classbitmap__class.html">bitmap_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>shutdown</b>() (defined in <a class="el" href="classbitmap__class.html">bitmap_class</a>)</td><td class="entry"><a class="el" href="classbitmap__class.html">bitmap_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~bitmap_class</b>() (defined in <a class="el" href="classbitmap__class.html">bitmap_class</a>)</td><td class="entry"><a class="el" href="classbitmap__class.html">bitmap_class</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,425 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: bitmap_class Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classbitmap__class.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classbitmap__class-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">bitmap_class Class Reference</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a8796993d083f190288fd05e2846aec42" id="r_a8796993d083f190288fd05e2846aec42"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8796993d083f190288fd05e2846aec42">bitmap_class</a> (const <a class="el" href="classbitmap__class.html">bitmap_class</a> &amp;)</td></tr>
<tr class="separator:a8796993d083f190288fd05e2846aec42"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a949df6bc6e76c4b0eb69077d1ae98030" id="r_a949df6bc6e76c4b0eb69077d1ae98030"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a949df6bc6e76c4b0eb69077d1ae98030">initialize</a> (ID3D11Device *, ID3D11DeviceContext *, int, int, char *, int, int)</td></tr>
<tr class="separator:a949df6bc6e76c4b0eb69077d1ae98030"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a695b4543a2dd5550a209650f2e12b33f" id="r_a695b4543a2dd5550a209650f2e12b33f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a695b4543a2dd5550a209650f2e12b33f">shutdown</a> ()</td></tr>
<tr class="separator:a695b4543a2dd5550a209650f2e12b33f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a64532d58343b738d076f85439e25e151" id="r_a64532d58343b738d076f85439e25e151"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a64532d58343b738d076f85439e25e151">render</a> (ID3D11DeviceContext *)</td></tr>
<tr class="separator:a64532d58343b738d076f85439e25e151"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9028a2668a9af6de85dda3c9453f664f" id="r_a9028a2668a9af6de85dda3c9453f664f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9028a2668a9af6de85dda3c9453f664f">get_index_count</a> ()</td></tr>
<tr class="separator:a9028a2668a9af6de85dda3c9453f664f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af70754920b1d80e970fc582d3b43ef13" id="r_af70754920b1d80e970fc582d3b43ef13"><td class="memItemLeft" align="right" valign="top">ID3D11ShaderResourceView *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af70754920b1d80e970fc582d3b43ef13">get_texture</a> ()</td></tr>
<tr class="separator:af70754920b1d80e970fc582d3b43ef13"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa30ea105bd4c6267021efd39d8b3a9ae" id="r_aa30ea105bd4c6267021efd39d8b3a9ae"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa30ea105bd4c6267021efd39d8b3a9ae">set_render_location</a> (int, int)</td></tr>
<tr class="separator:aa30ea105bd4c6267021efd39d8b3a9ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="bitmap__class_8h_source.html#l00021">21</a> of file <a class="el" href="bitmap__class_8h_source.html">bitmap_class.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a01f46958b20d157f9935da16d9eba2a6" name="a01f46958b20d157f9935da16d9eba2a6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a01f46958b20d157f9935da16d9eba2a6">&#9670;&#160;</a></span>bitmap_class() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bitmap_class::bitmap_class </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="bitmap__class_8cpp_source.html#l00003">3</a> of file <a class="el" href="bitmap__class_8cpp_source.html">bitmap_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 4</span>{</div>
<div class="line"><span class="lineno"> 5</span> vertex_buffer_ = 0;</div>
<div class="line"><span class="lineno"> 6</span> index_buffer_ = 0;</div>
<div class="line"><span class="lineno"> 7</span> texture_ = 0;</div>
<div class="line"><span class="lineno"> 8</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a8796993d083f190288fd05e2846aec42" name="a8796993d083f190288fd05e2846aec42"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8796993d083f190288fd05e2846aec42">&#9670;&#160;</a></span>bitmap_class() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bitmap_class::bitmap_class </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classbitmap__class.html">bitmap_class</a> &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="bitmap__class_8cpp_source.html#l00011">11</a> of file <a class="el" href="bitmap__class_8cpp_source.html">bitmap_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 12</span>{</div>
<div class="line"><span class="lineno"> 13</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="aadd231c4dbd0282a2b8d6d45330f7f41" name="aadd231c4dbd0282a2b8d6d45330f7f41"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aadd231c4dbd0282a2b8d6d45330f7f41">&#9670;&#160;</a></span>~bitmap_class()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bitmap_class::~bitmap_class </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="bitmap__class_8cpp_source.html#l00016">16</a> of file <a class="el" href="bitmap__class_8cpp_source.html">bitmap_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 17</span>{</div>
<div class="line"><span class="lineno"> 18</span>}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a9028a2668a9af6de85dda3c9453f664f" name="a9028a2668a9af6de85dda3c9453f664f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9028a2668a9af6de85dda3c9453f664f">&#9670;&#160;</a></span>get_index_count()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int bitmap_class::get_index_count </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="bitmap__class_8cpp_source.html#l00086">86</a> of file <a class="el" href="bitmap__class_8cpp_source.html">bitmap_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 87</span>{</div>
<div class="line"><span class="lineno"> 88</span> <span class="keywordflow">return</span> index_count_;</div>
<div class="line"><span class="lineno"> 89</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="af70754920b1d80e970fc582d3b43ef13" name="af70754920b1d80e970fc582d3b43ef13"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af70754920b1d80e970fc582d3b43ef13">&#9670;&#160;</a></span>get_texture()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ID3D11ShaderResourceView * bitmap_class::get_texture </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="bitmap__class_8cpp_source.html#l00091">91</a> of file <a class="el" href="bitmap__class_8cpp_source.html">bitmap_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 92</span>{</div>
<div class="line"><span class="lineno"> 93</span> <span class="keywordflow">return</span> texture_-&gt;GetTexture();</div>
<div class="line"><span class="lineno"> 94</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a949df6bc6e76c4b0eb69077d1ae98030" name="a949df6bc6e76c4b0eb69077d1ae98030"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a949df6bc6e76c4b0eb69077d1ae98030">&#9670;&#160;</a></span>initialize()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool bitmap_class::initialize </td>
<td>(</td>
<td class="paramtype">ID3D11Device *</td> <td class="paramname"><span class="paramname"><em>device</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">ID3D11DeviceContext *</td> <td class="paramname"><span class="paramname"><em>deviceContext</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>screenWidth</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>screenHeight</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char *</td> <td class="paramname"><span class="paramname"><em>textureFilename</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>renderX</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>renderY</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="bitmap__class_8cpp_source.html#l00021">21</a> of file <a class="el" href="bitmap__class_8cpp_source.html">bitmap_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 22</span>{</div>
<div class="line"><span class="lineno"> 23</span> Logger::Get().Log(<span class="stringliteral">&quot;Initializing bitmap class&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><span class="lineno"> 24</span> </div>
<div class="line"><span class="lineno"> 25</span> <span class="keywordtype">bool</span> result;</div>
<div class="line"><span class="lineno"> 26</span> </div>
<div class="line"><span class="lineno"> 27</span> <span class="comment">// Store the screen size.</span></div>
<div class="line"><span class="lineno"> 28</span> screen_width_ = screenWidth;</div>
<div class="line"><span class="lineno"> 29</span> screen_height_ = screenHeight;</div>
<div class="line"><span class="lineno"> 30</span> </div>
<div class="line"><span class="lineno"> 31</span> <span class="comment">// Store where the bitmap should be rendered to.</span></div>
<div class="line"><span class="lineno"> 32</span> render_x_ = renderX;</div>
<div class="line"><span class="lineno"> 33</span> render_y_ = renderY;</div>
<div class="line"><span class="lineno"> 34</span> </div>
<div class="line"><span class="lineno"> 35</span> <span class="comment">// initialize the vertex and index buffer that hold the geometry for the bitmap quad.</span></div>
<div class="line"><span class="lineno"> 36</span> result = initialize_buffers(device);</div>
<div class="line"><span class="lineno"> 37</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><span class="lineno"> 38</span> {</div>
<div class="line"><span class="lineno"> 39</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to initialize buffers&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 40</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 41</span> }</div>
<div class="line"><span class="lineno"> 42</span> </div>
<div class="line"><span class="lineno"> 43</span> <span class="comment">// Load the texture for this bitmap.</span></div>
<div class="line"><span class="lineno"> 44</span> result = load_texture(device, deviceContext, textureFilename);</div>
<div class="line"><span class="lineno"> 45</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><span class="lineno"> 46</span> {</div>
<div class="line"><span class="lineno"> 47</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to load texture&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 48</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 49</span> }</div>
<div class="line"><span class="lineno"> 50</span> </div>
<div class="line"><span class="lineno"> 51</span> Logger::Get().Log(<span class="stringliteral">&quot;Bitmap class initialized&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><span class="lineno"> 52</span> </div>
<div class="line"><span class="lineno"> 53</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 54</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a64532d58343b738d076f85439e25e151" name="a64532d58343b738d076f85439e25e151"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a64532d58343b738d076f85439e25e151">&#9670;&#160;</a></span>render()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool bitmap_class::render </td>
<td>(</td>
<td class="paramtype">ID3D11DeviceContext *</td> <td class="paramname"><span class="paramname"><em>deviceContext</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="bitmap__class_8cpp_source.html#l00067">67</a> of file <a class="el" href="bitmap__class_8cpp_source.html">bitmap_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 68</span>{</div>
<div class="line"><span class="lineno"> 69</span> <span class="keywordtype">bool</span> result;</div>
<div class="line"><span class="lineno"> 70</span> </div>
<div class="line"><span class="lineno"> 71</span> </div>
<div class="line"><span class="lineno"> 72</span> <span class="comment">// Update the buffers if the position of the bitmap has changed from its original position.</span></div>
<div class="line"><span class="lineno"> 73</span> result = update_buffers(deviceContext);</div>
<div class="line"><span class="lineno"> 74</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><span class="lineno"> 75</span> {</div>
<div class="line"><span class="lineno"> 76</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to update buffers&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 77</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 78</span> }</div>
<div class="line"><span class="lineno"> 79</span> </div>
<div class="line"><span class="lineno"> 80</span> <span class="comment">// Put the vertex and index buffers on the graphics pipeline to prepare them for drawing.</span></div>
<div class="line"><span class="lineno"> 81</span> render_buffers(deviceContext);</div>
<div class="line"><span class="lineno"> 82</span> </div>
<div class="line"><span class="lineno"> 83</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 84</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="aa30ea105bd4c6267021efd39d8b3a9ae" name="aa30ea105bd4c6267021efd39d8b3a9ae"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa30ea105bd4c6267021efd39d8b3a9ae">&#9670;&#160;</a></span>set_render_location()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void bitmap_class::set_render_location </td>
<td>(</td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>x</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>y</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="bitmap__class_8cpp_source.html#l00356">356</a> of file <a class="el" href="bitmap__class_8cpp_source.html">bitmap_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 357</span>{</div>
<div class="line"><span class="lineno"> 358</span> render_x_ = x;</div>
<div class="line"><span class="lineno"> 359</span> render_y_ = y;</div>
<div class="line"><span class="lineno"> 360</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 361</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a695b4543a2dd5550a209650f2e12b33f" name="a695b4543a2dd5550a209650f2e12b33f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a695b4543a2dd5550a209650f2e12b33f">&#9670;&#160;</a></span>shutdown()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void bitmap_class::shutdown </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="bitmap__class_8cpp_source.html#l00056">56</a> of file <a class="el" href="bitmap__class_8cpp_source.html">bitmap_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 57</span>{</div>
<div class="line"><span class="lineno"> 58</span> <span class="comment">// Release the bitmap texture.</span></div>
<div class="line"><span class="lineno"> 59</span> release_texture();</div>
<div class="line"><span class="lineno"> 60</span> </div>
<div class="line"><span class="lineno"> 61</span> <span class="comment">// Release the vertex and index buffers.</span></div>
<div class="line"><span class="lineno"> 62</span> shutdown_buffers();</div>
<div class="line"><span class="lineno"> 63</span> </div>
<div class="line"><span class="lineno"> 64</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 65</span>}</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>enginecustom/src/inc/system/<a class="el" href="bitmap__class_8h_source.html">bitmap_class.h</a></li>
<li>enginecustom/src/src/system/<a class="el" href="bitmap__class_8cpp_source.html">bitmap_class.cpp</a></li>
</ul>
</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="classbitmap__class.html">bitmap_class</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,125 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classcamera__class.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">camera_class Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classcamera__class.html">camera_class</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>camera_class</b>() (defined in <a class="el" href="classcamera__class.html">camera_class</a>)</td><td class="entry"><a class="el" href="classcamera__class.html">camera_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>camera_class</b>(const camera_class &amp;) (defined in <a class="el" href="classcamera__class.html">camera_class</a>)</td><td class="entry"><a class="el" href="classcamera__class.html">camera_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_position</b>() (defined in <a class="el" href="classcamera__class.html">camera_class</a>)</td><td class="entry"><a class="el" href="classcamera__class.html">camera_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>get_reflection_view_matrix</b>(XMMATRIX &amp;) const (defined in <a class="el" href="classcamera__class.html">camera_class</a>)</td><td class="entry"><a class="el" href="classcamera__class.html">camera_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_rotation</b>() (defined in <a class="el" href="classcamera__class.html">camera_class</a>)</td><td class="entry"><a class="el" href="classcamera__class.html">camera_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>get_view_matrix</b>(XMMATRIX &amp;view_matrix) const (defined in <a class="el" href="classcamera__class.html">camera_class</a>)</td><td class="entry"><a class="el" href="classcamera__class.html">camera_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>render</b>() (defined in <a class="el" href="classcamera__class.html">camera_class</a>)</td><td class="entry"><a class="el" href="classcamera__class.html">camera_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>render_reflection</b>(float) (defined in <a class="el" href="classcamera__class.html">camera_class</a>)</td><td class="entry"><a class="el" href="classcamera__class.html">camera_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_position</b>(float, float, float) (defined in <a class="el" href="classcamera__class.html">camera_class</a>)</td><td class="entry"><a class="el" href="classcamera__class.html">camera_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>set_rotation</b>(float, float, float) (defined in <a class="el" href="classcamera__class.html">camera_class</a>)</td><td class="entry"><a class="el" href="classcamera__class.html">camera_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~camera_class</b>() (defined in <a class="el" href="classcamera__class.html">camera_class</a>)</td><td class="entry"><a class="el" href="classcamera__class.html">camera_class</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,514 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: camera_class Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classcamera__class.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classcamera__class-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">camera_class Class Reference</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ad2cfbf1c511ff8dbfdf413be52076621" id="r_ad2cfbf1c511ff8dbfdf413be52076621"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad2cfbf1c511ff8dbfdf413be52076621">camera_class</a> (const <a class="el" href="classcamera__class.html">camera_class</a> &amp;)</td></tr>
<tr class="separator:ad2cfbf1c511ff8dbfdf413be52076621"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4b9ac7f98297d2007abd1ed3d326d381" id="r_a4b9ac7f98297d2007abd1ed3d326d381"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4b9ac7f98297d2007abd1ed3d326d381">set_position</a> (float, float, float)</td></tr>
<tr class="separator:a4b9ac7f98297d2007abd1ed3d326d381"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a410c4bbfd5ba10d0785f5ac9178f9b3f" id="r_a410c4bbfd5ba10d0785f5ac9178f9b3f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a410c4bbfd5ba10d0785f5ac9178f9b3f">set_rotation</a> (float, float, float)</td></tr>
<tr class="separator:a410c4bbfd5ba10d0785f5ac9178f9b3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af416c69abe70579751cd404cba8bf388" id="r_af416c69abe70579751cd404cba8bf388"><td class="memItemLeft" align="right" valign="top">XMFLOAT3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af416c69abe70579751cd404cba8bf388">get_position</a> ()</td></tr>
<tr class="separator:af416c69abe70579751cd404cba8bf388"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8073c109a536d48478257a3e1e889cd" id="r_aa8073c109a536d48478257a3e1e889cd"><td class="memItemLeft" align="right" valign="top">XMFLOAT3&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa8073c109a536d48478257a3e1e889cd">get_rotation</a> ()</td></tr>
<tr class="separator:aa8073c109a536d48478257a3e1e889cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0820187f209f9628e6b2a8af34d71057" id="r_a0820187f209f9628e6b2a8af34d71057"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0820187f209f9628e6b2a8af34d71057">render</a> ()</td></tr>
<tr class="separator:a0820187f209f9628e6b2a8af34d71057"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac17736821f337ce7fd52b9857095de68" id="r_ac17736821f337ce7fd52b9857095de68"><td class="memItemLeft" align="right" valign="top">XMMATRIX&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac17736821f337ce7fd52b9857095de68">get_view_matrix</a> (XMMATRIX &amp;view_matrix) const</td></tr>
<tr class="separator:ac17736821f337ce7fd52b9857095de68"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58b36223405de07000d108129c998075" id="r_a58b36223405de07000d108129c998075"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a58b36223405de07000d108129c998075">render_reflection</a> (float)</td></tr>
<tr class="separator:a58b36223405de07000d108129c998075"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac4d85cc166aec75e54528dc9dee8a075" id="r_ac4d85cc166aec75e54528dc9dee8a075"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac4d85cc166aec75e54528dc9dee8a075">get_reflection_view_matrix</a> (XMMATRIX &amp;) const</td></tr>
<tr class="separator:ac4d85cc166aec75e54528dc9dee8a075"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="camera__class_8h_source.html#l00018">18</a> of file <a class="el" href="camera__class_8h_source.html">camera_class.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="ac18562f9e46ca033440ba9df2d180e20" name="ac18562f9e46ca033440ba9df2d180e20"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac18562f9e46ca033440ba9df2d180e20">&#9670;&#160;</a></span>camera_class() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">camera_class::camera_class </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="camera__class_8cpp_source.html#l00006">6</a> of file <a class="el" href="camera__class_8cpp_source.html">camera_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 7</span>{</div>
<div class="line"><span class="lineno"> 8</span> position_x_ = 0.0f;</div>
<div class="line"><span class="lineno"> 9</span> position_y_ = 0.0f;</div>
<div class="line"><span class="lineno"> 10</span> position_z_ = 0.0f;</div>
<div class="line"><span class="lineno"> 11</span> </div>
<div class="line"><span class="lineno"> 12</span> rotation_x_ = 0.0f;</div>
<div class="line"><span class="lineno"> 13</span> rotation_y_ = 0.0f;</div>
<div class="line"><span class="lineno"> 14</span> rotation_z_ = 0.0f;</div>
<div class="line"><span class="lineno"> 15</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ad2cfbf1c511ff8dbfdf413be52076621" name="ad2cfbf1c511ff8dbfdf413be52076621"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad2cfbf1c511ff8dbfdf413be52076621">&#9670;&#160;</a></span>camera_class() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">camera_class::camera_class </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classcamera__class.html">camera_class</a> &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="camera__class_8cpp_source.html#l00018">18</a> of file <a class="el" href="camera__class_8cpp_source.html">camera_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 19</span>{</div>
<div class="line"><span class="lineno"> 20</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="abc411f8ee950139a041d88192f9711ed" name="abc411f8ee950139a041d88192f9711ed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abc411f8ee950139a041d88192f9711ed">&#9670;&#160;</a></span>~camera_class()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">camera_class::~camera_class </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="camera__class_8cpp_source.html#l00023">23</a> of file <a class="el" href="camera__class_8cpp_source.html">camera_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 24</span>{</div>
<div class="line"><span class="lineno"> 25</span>}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="af416c69abe70579751cd404cba8bf388" name="af416c69abe70579751cd404cba8bf388"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af416c69abe70579751cd404cba8bf388">&#9670;&#160;</a></span>get_position()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">XMFLOAT3 camera_class::get_position </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="camera__class_8cpp_source.html#l00044">44</a> of file <a class="el" href="camera__class_8cpp_source.html">camera_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 45</span>{</div>
<div class="line"><span class="lineno"> 46</span> <span class="keywordflow">return</span> XMFLOAT3(position_x_, position_y_, position_z_);</div>
<div class="line"><span class="lineno"> 47</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ac4d85cc166aec75e54528dc9dee8a075" name="ac4d85cc166aec75e54528dc9dee8a075"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac4d85cc166aec75e54528dc9dee8a075">&#9670;&#160;</a></span>get_reflection_view_matrix()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void camera_class::get_reflection_view_matrix </td>
<td>(</td>
<td class="paramtype">XMMATRIX &amp;</td> <td class="paramname"><span class="paramname"><em>reflectionViewMatrix</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="camera__class_8cpp_source.html#l00167">167</a> of file <a class="el" href="camera__class_8cpp_source.html">camera_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 168</span>{</div>
<div class="line"><span class="lineno"> 169</span> reflectionViewMatrix = reflection_view_matrix_;</div>
<div class="line"><span class="lineno"> 170</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 171</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="aa8073c109a536d48478257a3e1e889cd" name="aa8073c109a536d48478257a3e1e889cd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa8073c109a536d48478257a3e1e889cd">&#9670;&#160;</a></span>get_rotation()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">XMFLOAT3 camera_class::get_rotation </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="camera__class_8cpp_source.html#l00050">50</a> of file <a class="el" href="camera__class_8cpp_source.html">camera_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 51</span>{</div>
<div class="line"><span class="lineno"> 52</span> <span class="keywordflow">return</span> XMFLOAT3(rotation_x_, rotation_y_, rotation_z_);</div>
<div class="line"><span class="lineno"> 53</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ac17736821f337ce7fd52b9857095de68" name="ac17736821f337ce7fd52b9857095de68"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac17736821f337ce7fd52b9857095de68">&#9670;&#160;</a></span>get_view_matrix()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">XMMATRIX camera_class::get_view_matrix </td>
<td>(</td>
<td class="paramtype">XMMATRIX &amp;</td> <td class="paramname"><span class="paramname"><em>view_matrix</em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="camera__class_8cpp_source.html#l00108">108</a> of file <a class="el" href="camera__class_8cpp_source.html">camera_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 109</span>{</div>
<div class="line"><span class="lineno"> 110</span> view_matrix = view_matrix_;</div>
<div class="line"><span class="lineno"> 111</span> <span class="keywordflow">return</span> view_matrix;</div>
<div class="line"><span class="lineno"> 112</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a0820187f209f9628e6b2a8af34d71057" name="a0820187f209f9628e6b2a8af34d71057"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0820187f209f9628e6b2a8af34d71057">&#9670;&#160;</a></span>render()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void camera_class::render </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="camera__class_8cpp_source.html#l00055">55</a> of file <a class="el" href="camera__class_8cpp_source.html">camera_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 56</span>{</div>
<div class="line"><span class="lineno"> 57</span> XMFLOAT3 up, position, lookAt;</div>
<div class="line"><span class="lineno"> 58</span> XMVECTOR upVector, positionVector, lookAtVector;</div>
<div class="line"><span class="lineno"> 59</span> <span class="keywordtype">float</span> yaw, pitch, roll;</div>
<div class="line"><span class="lineno"> 60</span> XMMATRIX rotationMatrix;</div>
<div class="line"><span class="lineno"> 61</span> </div>
<div class="line"><span class="lineno"> 62</span> </div>
<div class="line"><span class="lineno"> 63</span> <span class="comment">// Setup the vector that points upwards.</span></div>
<div class="line"><span class="lineno"> 64</span> up.x = 0.0f;</div>
<div class="line"><span class="lineno"> 65</span> up.y = 1.0f;</div>
<div class="line"><span class="lineno"> 66</span> up.z = 0.0f;</div>
<div class="line"><span class="lineno"> 67</span> </div>
<div class="line"><span class="lineno"> 68</span> <span class="comment">// Load it into a XMVECTOR structure.</span></div>
<div class="line"><span class="lineno"> 69</span> upVector = XMLoadFloat3(&amp;up);</div>
<div class="line"><span class="lineno"> 70</span> </div>
<div class="line"><span class="lineno"> 71</span> <span class="comment">// Setup the position of the camera in the world.</span></div>
<div class="line"><span class="lineno"> 72</span> position.x = position_x_;</div>
<div class="line"><span class="lineno"> 73</span> position.y = position_y_;</div>
<div class="line"><span class="lineno"> 74</span> position.z = position_z_;</div>
<div class="line"><span class="lineno"> 75</span> </div>
<div class="line"><span class="lineno"> 76</span> <span class="comment">// Load it into a XMVECTOR structure.</span></div>
<div class="line"><span class="lineno"> 77</span> positionVector = XMLoadFloat3(&amp;position);</div>
<div class="line"><span class="lineno"> 78</span> </div>
<div class="line"><span class="lineno"> 79</span> <span class="comment">// Setup where the camera is looking by default.</span></div>
<div class="line"><span class="lineno"> 80</span> lookAt.x = 0.0f;</div>
<div class="line"><span class="lineno"> 81</span> lookAt.y = 0.0f;</div>
<div class="line"><span class="lineno"> 82</span> lookAt.z = 1.0f;</div>
<div class="line"><span class="lineno"> 83</span> </div>
<div class="line"><span class="lineno"> 84</span> <span class="comment">// Load it into a XMVECTOR structure.</span></div>
<div class="line"><span class="lineno"> 85</span> lookAtVector = XMLoadFloat3(&amp;lookAt);</div>
<div class="line"><span class="lineno"> 86</span> </div>
<div class="line"><span class="lineno"> 87</span> <span class="comment">// Set the yaw (Y axis), pitch (X axis), and roll (Z axis) rotations in radians.</span></div>
<div class="line"><span class="lineno"> 88</span> pitch = rotation_x_ * 0.0174532925f;</div>
<div class="line"><span class="lineno"> 89</span> yaw = rotation_y_ * 0.0174532925f;</div>
<div class="line"><span class="lineno"> 90</span> roll = rotation_z_ * 0.0174532925f;</div>
<div class="line"><span class="lineno"> 91</span> </div>
<div class="line"><span class="lineno"> 92</span> <span class="comment">// Create the rotation matrix from the yaw, pitch, and roll values.</span></div>
<div class="line"><span class="lineno"> 93</span> rotationMatrix = XMMatrixRotationRollPitchYaw(pitch, yaw, roll);</div>
<div class="line"><span class="lineno"> 94</span> </div>
<div class="line"><span class="lineno"> 95</span> <span class="comment">// Transform the lookAt and up vector by the rotation matrix so the view is correctly rotated at the origin.</span></div>
<div class="line"><span class="lineno"> 96</span> lookAtVector = XMVector3TransformCoord(lookAtVector, rotationMatrix);</div>
<div class="line"><span class="lineno"> 97</span> upVector = XMVector3TransformCoord(upVector, rotationMatrix);</div>
<div class="line"><span class="lineno"> 98</span> </div>
<div class="line"><span class="lineno"> 99</span> <span class="comment">// Translate the rotated camera position to the location of the viewer.</span></div>
<div class="line"><span class="lineno"> 100</span> lookAtVector = XMVectorAdd(positionVector, lookAtVector);</div>
<div class="line"><span class="lineno"> 101</span> </div>
<div class="line"><span class="lineno"> 102</span> <span class="comment">// Finally create the view matrix from the three updated vectors.</span></div>
<div class="line"><span class="lineno"> 103</span> view_matrix_ = XMMatrixLookAtLH(positionVector, lookAtVector, upVector);</div>
<div class="line"><span class="lineno"> 104</span> </div>
<div class="line"><span class="lineno"> 105</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 106</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a58b36223405de07000d108129c998075" name="a58b36223405de07000d108129c998075"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a58b36223405de07000d108129c998075">&#9670;&#160;</a></span>render_reflection()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void camera_class::render_reflection </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>height</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="camera__class_8cpp_source.html#l00114">114</a> of file <a class="el" href="camera__class_8cpp_source.html">camera_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 115</span>{</div>
<div class="line"><span class="lineno"> 116</span> XMFLOAT3 up, position, lookAt;</div>
<div class="line"><span class="lineno"> 117</span> XMVECTOR upVector, positionVector, lookAtVector;</div>
<div class="line"><span class="lineno"> 118</span> <span class="keywordtype">float</span> yaw, pitch, roll;</div>
<div class="line"><span class="lineno"> 119</span> XMMATRIX rotationMatrix;</div>
<div class="line"><span class="lineno"> 120</span> </div>
<div class="line"><span class="lineno"> 121</span> </div>
<div class="line"><span class="lineno"> 122</span> <span class="comment">// Setup the vector that points upwards.</span></div>
<div class="line"><span class="lineno"> 123</span> up.x = 0.0f;</div>
<div class="line"><span class="lineno"> 124</span> up.y = 1.0f;</div>
<div class="line"><span class="lineno"> 125</span> up.z = 0.0f;</div>
<div class="line"><span class="lineno"> 126</span> </div>
<div class="line"><span class="lineno"> 127</span> <span class="comment">// Load it into a XMVECTOR structure.</span></div>
<div class="line"><span class="lineno"> 128</span> upVector = XMLoadFloat3(&amp;up);</div>
<div class="line"><span class="lineno"> 129</span> </div>
<div class="line"><span class="lineno"> 130</span> <span class="comment">// Setup the position of the camera in the world.</span></div>
<div class="line"><span class="lineno"> 131</span> position.x = position_x_;</div>
<div class="line"><span class="lineno"> 132</span> position.y = -position_y_ + (height * 2.0f);</div>
<div class="line"><span class="lineno"> 133</span> position.z = position_z_;</div>
<div class="line"><span class="lineno"> 134</span> </div>
<div class="line"><span class="lineno"> 135</span> <span class="comment">// Load it into a XMVECTOR structure.</span></div>
<div class="line"><span class="lineno"> 136</span> positionVector = XMLoadFloat3(&amp;position);</div>
<div class="line"><span class="lineno"> 137</span> </div>
<div class="line"><span class="lineno"> 138</span> <span class="comment">// Setup where the camera is looking by default.</span></div>
<div class="line"><span class="lineno"> 139</span> lookAt.x = 0.0f;</div>
<div class="line"><span class="lineno"> 140</span> lookAt.y = 0.0f;</div>
<div class="line"><span class="lineno"> 141</span> lookAt.z = 1.0f;</div>
<div class="line"><span class="lineno"> 142</span> </div>
<div class="line"><span class="lineno"> 143</span> <span class="comment">// Load it into a XMVECTOR structure.</span></div>
<div class="line"><span class="lineno"> 144</span> lookAtVector = XMLoadFloat3(&amp;lookAt);</div>
<div class="line"><span class="lineno"> 145</span> </div>
<div class="line"><span class="lineno"> 146</span> <span class="comment">// Set the yaw (Y axis), pitch (X axis), and roll (Z axis) rotations in radians.</span></div>
<div class="line"><span class="lineno"> 147</span> pitch = (-1.0f * rotation_x_) * 0.0174532925f; <span class="comment">// Invert for reflection</span></div>
<div class="line"><span class="lineno"> 148</span> yaw = rotation_y_ * 0.0174532925f;</div>
<div class="line"><span class="lineno"> 149</span> roll = rotation_z_ * 0.0174532925f;</div>
<div class="line"><span class="lineno"> 150</span> </div>
<div class="line"><span class="lineno"> 151</span> <span class="comment">// Create the rotation matrix from the yaw, pitch, and roll values.</span></div>
<div class="line"><span class="lineno"> 152</span> rotationMatrix = XMMatrixRotationRollPitchYaw(pitch, yaw, roll);</div>
<div class="line"><span class="lineno"> 153</span> </div>
<div class="line"><span class="lineno"> 154</span> <span class="comment">// Transform the lookAt and up vector by the rotation matrix so the view is correctly rotated at the origin.</span></div>
<div class="line"><span class="lineno"> 155</span> lookAtVector = XMVector3TransformCoord(lookAtVector, rotationMatrix);</div>
<div class="line"><span class="lineno"> 156</span> upVector = XMVector3TransformCoord(upVector, rotationMatrix);</div>
<div class="line"><span class="lineno"> 157</span> </div>
<div class="line"><span class="lineno"> 158</span> <span class="comment">// Translate the rotated camera position to the location of the viewer.</span></div>
<div class="line"><span class="lineno"> 159</span> lookAtVector = XMVectorAdd(positionVector, lookAtVector);</div>
<div class="line"><span class="lineno"> 160</span> </div>
<div class="line"><span class="lineno"> 161</span> <span class="comment">// Finally create the view matrix from the three updated vectors.</span></div>
<div class="line"><span class="lineno"> 162</span> reflection_view_matrix_ = XMMatrixLookAtLH(positionVector, lookAtVector, upVector);</div>
<div class="line"><span class="lineno"> 163</span> </div>
<div class="line"><span class="lineno"> 164</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 165</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a4b9ac7f98297d2007abd1ed3d326d381" name="a4b9ac7f98297d2007abd1ed3d326d381"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4b9ac7f98297d2007abd1ed3d326d381">&#9670;&#160;</a></span>set_position()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void camera_class::set_position </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>x</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>y</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>z</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="camera__class_8cpp_source.html#l00027">27</a> of file <a class="el" href="camera__class_8cpp_source.html">camera_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 28</span>{</div>
<div class="line"><span class="lineno"> 29</span> position_x_ = x;</div>
<div class="line"><span class="lineno"> 30</span> position_y_ = y;</div>
<div class="line"><span class="lineno"> 31</span> position_z_ = z;</div>
<div class="line"><span class="lineno"> 32</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 33</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a410c4bbfd5ba10d0785f5ac9178f9b3f" name="a410c4bbfd5ba10d0785f5ac9178f9b3f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a410c4bbfd5ba10d0785f5ac9178f9b3f">&#9670;&#160;</a></span>set_rotation()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void camera_class::set_rotation </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>x</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>y</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>z</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="camera__class_8cpp_source.html#l00036">36</a> of file <a class="el" href="camera__class_8cpp_source.html">camera_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 37</span>{</div>
<div class="line"><span class="lineno"> 38</span> rotation_x_ = x;</div>
<div class="line"><span class="lineno"> 39</span> rotation_y_ = y;</div>
<div class="line"><span class="lineno"> 40</span> rotation_z_ = z;</div>
<div class="line"><span class="lineno"> 41</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 42</span>}</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>enginecustom/src/inc/system/<a class="el" href="camera__class_8h_source.html">camera_class.h</a></li>
<li>enginecustom/src/src/system/<a class="el" href="camera__class_8cpp_source.html">camera_class.cpp</a></li>
</ul>
</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="classcamera__class.html">camera_class</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,120 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classcelshade__class.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">celshade_class Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classcelshade__class.html">celshade_class</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>celshade_class</b>() (defined in <a class="el" href="classcelshade__class.html">celshade_class</a>)</td><td class="entry"><a class="el" href="classcelshade__class.html">celshade_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>celshade_class</b>(const celshade_class &amp;) (defined in <a class="el" href="classcelshade__class.html">celshade_class</a>)</td><td class="entry"><a class="el" href="classcelshade__class.html">celshade_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>initialize</b>(ID3D11Device *, HWND) (defined in <a class="el" href="classcelshade__class.html">celshade_class</a>)</td><td class="entry"><a class="el" href="classcelshade__class.html">celshade_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>render</b>(ID3D11DeviceContext *device_context, int index_count, XMMATRIX world_matrix, XMMATRIX view_matrix, XMMATRIX projection_matrix, ID3D11ShaderResourceView *texture, XMFLOAT4 diffuse_color, XMFLOAT4 ambient_color, XMFLOAT3 sun_direction, float intensity) (defined in <a class="el" href="classcelshade__class.html">celshade_class</a>)</td><td class="entry"><a class="el" href="classcelshade__class.html">celshade_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>shutdown</b>() (defined in <a class="el" href="classcelshade__class.html">celshade_class</a>)</td><td class="entry"><a class="el" href="classcelshade__class.html">celshade_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~celshade_class</b>() (defined in <a class="el" href="classcelshade__class.html">celshade_class</a>)</td><td class="entry"><a class="el" href="classcelshade__class.html">celshade_class</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,371 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: celshade_class Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classcelshade__class.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classcelshade__class-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">celshade_class Class Reference</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a26b79d6e20db98b4e8d419956969bd8c" id="r_a26b79d6e20db98b4e8d419956969bd8c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a26b79d6e20db98b4e8d419956969bd8c">celshade_class</a> (const <a class="el" href="classcelshade__class.html">celshade_class</a> &amp;)</td></tr>
<tr class="separator:a26b79d6e20db98b4e8d419956969bd8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a050b96759e66d683783a1d6269621f99" id="r_a050b96759e66d683783a1d6269621f99"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a050b96759e66d683783a1d6269621f99">initialize</a> (ID3D11Device *, HWND)</td></tr>
<tr class="separator:a050b96759e66d683783a1d6269621f99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aebaa18b5ee81fe3d2250e2a5f1349545" id="r_aebaa18b5ee81fe3d2250e2a5f1349545"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aebaa18b5ee81fe3d2250e2a5f1349545">shutdown</a> ()</td></tr>
<tr class="separator:aebaa18b5ee81fe3d2250e2a5f1349545"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad22b0e03b10059a9f577ead43ec2417" id="r_aad22b0e03b10059a9f577ead43ec2417"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aad22b0e03b10059a9f577ead43ec2417">render</a> (ID3D11DeviceContext *device_context, int index_count, XMMATRIX world_matrix, XMMATRIX view_matrix, XMMATRIX projection_matrix, ID3D11ShaderResourceView *texture, XMFLOAT4 diffuse_color, XMFLOAT4 ambient_color, XMFLOAT3 sun_direction, float intensity)</td></tr>
<tr class="separator:aad22b0e03b10059a9f577ead43ec2417"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="celshade__class_8h_source.html#l00011">11</a> of file <a class="el" href="celshade__class_8h_source.html">celshade_class.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a56bde1a1cf55514531819a2549a28846" name="a56bde1a1cf55514531819a2549a28846"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a56bde1a1cf55514531819a2549a28846">&#9670;&#160;</a></span>celshade_class() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">celshade_class::celshade_class </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="celshade__class_8cpp_source.html#l00007">7</a> of file <a class="el" href="celshade__class_8cpp_source.html">celshade_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 8</span>{</div>
<div class="line"><span class="lineno"> 9</span> vertex_shader_ = 0;</div>
<div class="line"><span class="lineno"> 10</span> pixel_shader_ = 0;</div>
<div class="line"><span class="lineno"> 11</span> layout_ = 0;</div>
<div class="line"><span class="lineno"> 12</span> sample_state_ = 0;</div>
<div class="line"><span class="lineno"> 13</span> matrix_buffer_ = 0;</div>
<div class="line"><span class="lineno"> 14</span> camera_buffer_ = 0;</div>
<div class="line"><span class="lineno"> 15</span> sunlight_buffer_ = 0;</div>
<div class="line"><span class="lineno"> 16</span> sunlight_color_buffer_ = 0;</div>
<div class="line"><span class="lineno"> 17</span> sunlight_position_buffer_ = 0;</div>
<div class="line"><span class="lineno"> 18</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a26b79d6e20db98b4e8d419956969bd8c" name="a26b79d6e20db98b4e8d419956969bd8c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a26b79d6e20db98b4e8d419956969bd8c">&#9670;&#160;</a></span>celshade_class() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">celshade_class::celshade_class </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classcelshade__class.html">celshade_class</a> &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="celshade__class_8cpp_source.html#l00021">21</a> of file <a class="el" href="celshade__class_8cpp_source.html">celshade_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 22</span>{</div>
<div class="line"><span class="lineno"> 23</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a707ee82ecbbe603079bbad19225a874e" name="a707ee82ecbbe603079bbad19225a874e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a707ee82ecbbe603079bbad19225a874e">&#9670;&#160;</a></span>~celshade_class()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">celshade_class::~celshade_class </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="celshade__class_8cpp_source.html#l00026">26</a> of file <a class="el" href="celshade__class_8cpp_source.html">celshade_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 27</span>{</div>
<div class="line"><span class="lineno"> 28</span>}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a050b96759e66d683783a1d6269621f99" name="a050b96759e66d683783a1d6269621f99"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a050b96759e66d683783a1d6269621f99">&#9670;&#160;</a></span>initialize()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool celshade_class::initialize </td>
<td>(</td>
<td class="paramtype">ID3D11Device *</td> <td class="paramname"><span class="paramname"><em>device</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">HWND</td> <td class="paramname"><span class="paramname"><em>hwnd</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="celshade__class_8cpp_source.html#l00031">31</a> of file <a class="el" href="celshade__class_8cpp_source.html">celshade_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 32</span>{</div>
<div class="line"><span class="lineno"> 33</span> Logger::Get().Log(<span class="stringliteral">&quot;Initializing LightShaderClass&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><span class="lineno"> 34</span> </div>
<div class="line"><span class="lineno"> 35</span> <span class="keywordtype">wchar_t</span> vsFilename[128];</div>
<div class="line"><span class="lineno"> 36</span> <span class="keywordtype">wchar_t</span> psFilename[128];</div>
<div class="line"><span class="lineno"> 37</span> <span class="keywordtype">int</span> error;</div>
<div class="line"><span class="lineno"> 38</span> <span class="keywordtype">bool</span> result;</div>
<div class="line"><span class="lineno"> 39</span> </div>
<div class="line"><span class="lineno"> 40</span> <span class="comment">// Set the filename of the vertex shader.</span></div>
<div class="line"><span class="lineno"> 41</span> error = wcscpy_s(vsFilename, 128, L<span class="stringliteral">&quot;src/hlsl/celshading.vs&quot;</span>);</div>
<div class="line"><span class="lineno"> 42</span> <span class="keywordflow">if</span> (error != 0)</div>
<div class="line"><span class="lineno"> 43</span> {</div>
<div class="line"><span class="lineno"> 44</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to copy string&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 45</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 46</span> }</div>
<div class="line"><span class="lineno"> 47</span> </div>
<div class="line"><span class="lineno"> 48</span> <span class="comment">// Set the filename of the pixel shader.</span></div>
<div class="line"><span class="lineno"> 49</span> error = wcscpy_s(psFilename, 128, L<span class="stringliteral">&quot;src/hlsl/celshading.ps&quot;</span>);</div>
<div class="line"><span class="lineno"> 50</span> <span class="keywordflow">if</span> (error != 0)</div>
<div class="line"><span class="lineno"> 51</span> {</div>
<div class="line"><span class="lineno"> 52</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to copy string&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 53</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 54</span> }</div>
<div class="line"><span class="lineno"> 55</span> <span class="comment">// initialize the vertex and pixel shaders.</span></div>
<div class="line"><span class="lineno"> 56</span> result = initialize_shader(device, hwnd, vsFilename, psFilename);</div>
<div class="line"><span class="lineno"> 57</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><span class="lineno"> 58</span> {</div>
<div class="line"><span class="lineno"> 59</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to initialize shader&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 60</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 61</span> }</div>
<div class="line"><span class="lineno"> 62</span> </div>
<div class="line"><span class="lineno"> 63</span> Logger::Get().Log(<span class="stringliteral">&quot;SunLightShaderClass initialized&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><span class="lineno"> 64</span> </div>
<div class="line"><span class="lineno"> 65</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 66</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="aad22b0e03b10059a9f577ead43ec2417" name="aad22b0e03b10059a9f577ead43ec2417"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aad22b0e03b10059a9f577ead43ec2417">&#9670;&#160;</a></span>render()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool celshade_class::render </td>
<td>(</td>
<td class="paramtype">ID3D11DeviceContext *</td> <td class="paramname"><span class="paramname"><em>device_context</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>index_count</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">XMMATRIX</td> <td class="paramname"><span class="paramname"><em>world_matrix</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">XMMATRIX</td> <td class="paramname"><span class="paramname"><em>view_matrix</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">XMMATRIX</td> <td class="paramname"><span class="paramname"><em>projection_matrix</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">ID3D11ShaderResourceView *</td> <td class="paramname"><span class="paramname"><em>texture</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">XMFLOAT4</td> <td class="paramname"><span class="paramname"><em>diffuse_color</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">XMFLOAT4</td> <td class="paramname"><span class="paramname"><em>ambient_color</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">XMFLOAT3</td> <td class="paramname"><span class="paramname"><em>sun_direction</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>intensity</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="celshade__class_8cpp_source.html#l00077">77</a> of file <a class="el" href="celshade__class_8cpp_source.html">celshade_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 79</span>{</div>
<div class="line"><span class="lineno"> 80</span> <span class="keywordtype">bool</span> result;</div>
<div class="line"><span class="lineno"> 81</span> </div>
<div class="line"><span class="lineno"> 82</span> </div>
<div class="line"><span class="lineno"> 83</span> <span class="comment">// Set the shader parameters that it will use for rendering.</span></div>
<div class="line"><span class="lineno"> 84</span> result = set_shader_parameters(deviceContext, world_matrix, view_matrix, projection_matrix, texture, diffuse_color, ambient_color, sun_direction, sunIntensity);</div>
<div class="line"><span class="lineno"> 85</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><span class="lineno"> 86</span> {</div>
<div class="line"><span class="lineno"> 87</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to set shader parameters&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 88</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 89</span> }</div>
<div class="line"><span class="lineno"> 90</span> </div>
<div class="line"><span class="lineno"> 91</span> <span class="comment">// Now render the prepared buffers with the shader.</span></div>
<div class="line"><span class="lineno"> 92</span> render_shader(deviceContext, index_count);</div>
<div class="line"><span class="lineno"> 93</span> </div>
<div class="line"><span class="lineno"> 94</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 95</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="aebaa18b5ee81fe3d2250e2a5f1349545" name="aebaa18b5ee81fe3d2250e2a5f1349545"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aebaa18b5ee81fe3d2250e2a5f1349545">&#9670;&#160;</a></span>shutdown()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void celshade_class::shutdown </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="celshade__class_8cpp_source.html#l00069">69</a> of file <a class="el" href="celshade__class_8cpp_source.html">celshade_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 70</span>{</div>
<div class="line"><span class="lineno"> 71</span> <span class="comment">// shutdown the vertex and pixel shaders as well as the related objects.</span></div>
<div class="line"><span class="lineno"> 72</span> shutdown_shader();</div>
<div class="line"><span class="lineno"> 73</span> </div>
<div class="line"><span class="lineno"> 74</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 75</span>}</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>enginecustom/src/inc/shader/<a class="el" href="celshade__class_8h_source.html">celshade_class.h</a></li>
<li>enginecustom/src/src/shader/<a class="el" href="celshade__class_8cpp_source.html">celshade_class.cpp</a></li>
</ul>
</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="classcelshade__class.html">celshade_class</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,120 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classcolor__shader__class.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">color_shader_class Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classcolor__shader__class.html">color_shader_class</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>color_shader_class</b>() (defined in <a class="el" href="classcolor__shader__class.html">color_shader_class</a>)</td><td class="entry"><a class="el" href="classcolor__shader__class.html">color_shader_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>color_shader_class</b>(const color_shader_class &amp;) (defined in <a class="el" href="classcolor__shader__class.html">color_shader_class</a>)</td><td class="entry"><a class="el" href="classcolor__shader__class.html">color_shader_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>initialize</b>(ID3D11Device *, HWND) (defined in <a class="el" href="classcolor__shader__class.html">color_shader_class</a>)</td><td class="entry"><a class="el" href="classcolor__shader__class.html">color_shader_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>render</b>(ID3D11DeviceContext *, int, XMMATRIX, XMMATRIX, XMMATRIX) (defined in <a class="el" href="classcolor__shader__class.html">color_shader_class</a>)</td><td class="entry"><a class="el" href="classcolor__shader__class.html">color_shader_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>shutdown</b>() (defined in <a class="el" href="classcolor__shader__class.html">color_shader_class</a>)</td><td class="entry"><a class="el" href="classcolor__shader__class.html">color_shader_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~color_shader_class</b>() (defined in <a class="el" href="classcolor__shader__class.html">color_shader_class</a>)</td><td class="entry"><a class="el" href="classcolor__shader__class.html">color_shader_class</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,343 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: color_shader_class Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classcolor__shader__class.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classcolor__shader__class-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">color_shader_class Class Reference</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a9e514a2c6ea721ea94c43ec50c7c1e2b" id="r_a9e514a2c6ea721ea94c43ec50c7c1e2b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9e514a2c6ea721ea94c43ec50c7c1e2b">color_shader_class</a> (const <a class="el" href="classcolor__shader__class.html">color_shader_class</a> &amp;)</td></tr>
<tr class="separator:a9e514a2c6ea721ea94c43ec50c7c1e2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3123cef2e59f263e1cf93add3208cad" id="r_ae3123cef2e59f263e1cf93add3208cad"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae3123cef2e59f263e1cf93add3208cad">initialize</a> (ID3D11Device *, HWND)</td></tr>
<tr class="separator:ae3123cef2e59f263e1cf93add3208cad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1caee96b7b9d8fe17851bffdc0d91d31" id="r_a1caee96b7b9d8fe17851bffdc0d91d31"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1caee96b7b9d8fe17851bffdc0d91d31">shutdown</a> ()</td></tr>
<tr class="separator:a1caee96b7b9d8fe17851bffdc0d91d31"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a92a0458d236ffb853f821655aa7cbf73" id="r_a92a0458d236ffb853f821655aa7cbf73"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a92a0458d236ffb853f821655aa7cbf73">render</a> (ID3D11DeviceContext *, int, XMMATRIX, XMMATRIX, XMMATRIX)</td></tr>
<tr class="separator:a92a0458d236ffb853f821655aa7cbf73"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="color__shader__class_8h_source.html#l00023">23</a> of file <a class="el" href="color__shader__class_8h_source.html">color_shader_class.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a6cf4327e301c2c60cbf4b0e0f7cf3329" name="a6cf4327e301c2c60cbf4b0e0f7cf3329"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6cf4327e301c2c60cbf4b0e0f7cf3329">&#9670;&#160;</a></span>color_shader_class() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">color_shader_class::color_shader_class </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="color__shader__class_8cpp_source.html#l00006">6</a> of file <a class="el" href="color__shader__class_8cpp_source.html">color_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 7</span>{</div>
<div class="line"><span class="lineno"> 8</span> vertex_shader_ = 0;</div>
<div class="line"><span class="lineno"> 9</span> pixel_shader_ = 0;</div>
<div class="line"><span class="lineno"> 10</span> layout_ = 0;</div>
<div class="line"><span class="lineno"> 11</span> matrix_buffer_ = 0;</div>
<div class="line"><span class="lineno"> 12</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a9e514a2c6ea721ea94c43ec50c7c1e2b" name="a9e514a2c6ea721ea94c43ec50c7c1e2b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9e514a2c6ea721ea94c43ec50c7c1e2b">&#9670;&#160;</a></span>color_shader_class() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">color_shader_class::color_shader_class </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classcolor__shader__class.html">color_shader_class</a> &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="color__shader__class_8cpp_source.html#l00015">15</a> of file <a class="el" href="color__shader__class_8cpp_source.html">color_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 16</span>{</div>
<div class="line"><span class="lineno"> 17</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a9aeae6e329244ab3e393b116419f0a64" name="a9aeae6e329244ab3e393b116419f0a64"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9aeae6e329244ab3e393b116419f0a64">&#9670;&#160;</a></span>~color_shader_class()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">color_shader_class::~color_shader_class </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="color__shader__class_8cpp_source.html#l00020">20</a> of file <a class="el" href="color__shader__class_8cpp_source.html">color_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 21</span>{</div>
<div class="line"><span class="lineno"> 22</span>}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="ae3123cef2e59f263e1cf93add3208cad" name="ae3123cef2e59f263e1cf93add3208cad"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae3123cef2e59f263e1cf93add3208cad">&#9670;&#160;</a></span>initialize()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool color_shader_class::initialize </td>
<td>(</td>
<td class="paramtype">ID3D11Device *</td> <td class="paramname"><span class="paramname"><em>device</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">HWND</td> <td class="paramname"><span class="paramname"><em>hwnd</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="color__shader__class_8cpp_source.html#l00024">24</a> of file <a class="el" href="color__shader__class_8cpp_source.html">color_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 25</span>{</div>
<div class="line"><span class="lineno"> 26</span> Logger::Get().Log(<span class="stringliteral">&quot;Initializing color_shader_class&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><span class="lineno"> 27</span> </div>
<div class="line"><span class="lineno"> 28</span> <span class="keywordtype">bool</span> result;</div>
<div class="line"><span class="lineno"> 29</span> <span class="keywordtype">wchar_t</span> vsFilename[128];</div>
<div class="line"><span class="lineno"> 30</span> <span class="keywordtype">wchar_t</span> psFilename[128];</div>
<div class="line"><span class="lineno"> 31</span> <span class="keywordtype">int</span> error;</div>
<div class="line"><span class="lineno"> 32</span> </div>
<div class="line"><span class="lineno"> 33</span> </div>
<div class="line"><span class="lineno"> 34</span> <span class="comment">// Set the filename of the vertex shader.</span></div>
<div class="line"><span class="lineno"> 35</span> error = wcscpy_s(vsFilename, 128, L<span class="stringliteral">&quot;src/hlsl/Color.vs&quot;</span>);</div>
<div class="line"><span class="lineno"> 36</span> <span class="keywordflow">if</span> (error != 0)</div>
<div class="line"><span class="lineno"> 37</span> {</div>
<div class="line"><span class="lineno"> 38</span> Logger::Get().Log(<span class="stringliteral">&quot;Error copying string&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 39</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 40</span> }</div>
<div class="line"><span class="lineno"> 41</span> </div>
<div class="line"><span class="lineno"> 42</span> <span class="comment">// Set the filename of the pixel shader.</span></div>
<div class="line"><span class="lineno"> 43</span> error = wcscpy_s(psFilename, 128, L<span class="stringliteral">&quot;src/hlsl/Color.ps&quot;</span>);</div>
<div class="line"><span class="lineno"> 44</span> <span class="keywordflow">if</span> (error != 0)</div>
<div class="line"><span class="lineno"> 45</span> {</div>
<div class="line"><span class="lineno"> 46</span> Logger::Get().Log(<span class="stringliteral">&quot;Error copying string&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 47</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 48</span> }</div>
<div class="line"><span class="lineno"> 49</span> </div>
<div class="line"><span class="lineno"> 50</span> <span class="comment">// initialize the vertex and pixel shaders.</span></div>
<div class="line"><span class="lineno"> 51</span> result = initialize_shader(device, hwnd, vsFilename, psFilename);</div>
<div class="line"><span class="lineno"> 52</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><span class="lineno"> 53</span> {</div>
<div class="line"><span class="lineno"> 54</span> Logger::Get().Log(<span class="stringliteral">&quot;Error initializing shader&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 55</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 56</span> }</div>
<div class="line"><span class="lineno"> 57</span> </div>
<div class="line"><span class="lineno"> 58</span> Logger::Get().Log(<span class="stringliteral">&quot;color_shader_class initialized&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><span class="lineno"> 59</span> </div>
<div class="line"><span class="lineno"> 60</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 61</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a92a0458d236ffb853f821655aa7cbf73" name="a92a0458d236ffb853f821655aa7cbf73"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a92a0458d236ffb853f821655aa7cbf73">&#9670;&#160;</a></span>render()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool color_shader_class::render </td>
<td>(</td>
<td class="paramtype">ID3D11DeviceContext *</td> <td class="paramname"><span class="paramname"><em>deviceContext</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>indexCount</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">XMMATRIX</td> <td class="paramname"><span class="paramname"><em>worldMatrix</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">XMMATRIX</td> <td class="paramname"><span class="paramname"><em>viewMatrix</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">XMMATRIX</td> <td class="paramname"><span class="paramname"><em>projectionMatrix</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="color__shader__class_8cpp_source.html#l00071">71</a> of file <a class="el" href="color__shader__class_8cpp_source.html">color_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 73</span>{</div>
<div class="line"><span class="lineno"> 74</span> <span class="keywordtype">bool</span> result;</div>
<div class="line"><span class="lineno"> 75</span> </div>
<div class="line"><span class="lineno"> 76</span> </div>
<div class="line"><span class="lineno"> 77</span> <span class="comment">// Set the shader parameters that it will use for rendering.</span></div>
<div class="line"><span class="lineno"> 78</span> result = set_shader_parameters(deviceContext, worldMatrix, viewMatrix, projectionMatrix);</div>
<div class="line"><span class="lineno"> 79</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><span class="lineno"> 80</span> {</div>
<div class="line"><span class="lineno"> 81</span> Logger::Get().Log(<span class="stringliteral">&quot;Error setting shader parameters&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 82</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 83</span> }</div>
<div class="line"><span class="lineno"> 84</span> </div>
<div class="line"><span class="lineno"> 85</span> <span class="comment">// Now render the prepared buffers with the shader.</span></div>
<div class="line"><span class="lineno"> 86</span> render_shader(deviceContext, indexCount);</div>
<div class="line"><span class="lineno"> 87</span> </div>
<div class="line"><span class="lineno"> 88</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 89</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a1caee96b7b9d8fe17851bffdc0d91d31" name="a1caee96b7b9d8fe17851bffdc0d91d31"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1caee96b7b9d8fe17851bffdc0d91d31">&#9670;&#160;</a></span>shutdown()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void color_shader_class::shutdown </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="color__shader__class_8cpp_source.html#l00063">63</a> of file <a class="el" href="color__shader__class_8cpp_source.html">color_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 64</span>{</div>
<div class="line"><span class="lineno"> 65</span> <span class="comment">// shutdown the vertex and pixel shaders as well as the related objects.</span></div>
<div class="line"><span class="lineno"> 66</span> shutdown_shader();</div>
<div class="line"><span class="lineno"> 67</span> </div>
<div class="line"><span class="lineno"> 68</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 69</span>}</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>enginecustom/src/inc/shader/<a class="el" href="color__shader__class_8h_source.html">color_shader_class.h</a></li>
<li>enginecustom/src/src/shader/<a class="el" href="color__shader__class_8cpp_source.html">color_shader_class.cpp</a></li>
</ul>
</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="classcolor__shader__class.html">color_shader_class</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,139 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classd__3d__class.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">d_3d_class Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classd__3d__class.html">d_3d_class</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>begin_scene</b>(float, float, float, float) (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>d_3d_class</b>() (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>d_3d_class</b>(const d_3d_class &amp;) (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>disable_alpha_blending</b>() (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>enable_alpha_blending</b>() (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>end_scene</b>() (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_device</b>() (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>get_device_context</b>() (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_ortho_matrix</b>() const (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>get_projection_matrix</b>() const (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_swap_chain</b>() (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>get_video_card_info</b>(char *, int &amp;) (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_world_matrix</b>() const (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>initialize</b>(int, int, bool, HWND, bool, float, float) (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>release_resources</b>() (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>reset_resources</b>(int newWidth, int newHeight) (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>reset_viewport</b>() (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>resize_swap_chain</b>(int, int) (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_back_buffer_render_target</b>() (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>set_vsync</b>(bool vsync) (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>shutdown</b>() (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>swap_chain</b> (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>turn_z_buffer_off</b>() (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>turn_z_buffer_on</b>() (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~d_3d_class</b>() (defined in <a class="el" href="classd__3d__class.html">d_3d_class</a>)</td><td class="entry"><a class="el" href="classd__3d__class.html">d_3d_class</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,120 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classdepth__shader__class.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">depth_shader_class Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classdepth__shader__class.html">depth_shader_class</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>depth_shader_class</b>() (defined in <a class="el" href="classdepth__shader__class.html">depth_shader_class</a>)</td><td class="entry"><a class="el" href="classdepth__shader__class.html">depth_shader_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>depth_shader_class</b>(const depth_shader_class &amp;) (defined in <a class="el" href="classdepth__shader__class.html">depth_shader_class</a>)</td><td class="entry"><a class="el" href="classdepth__shader__class.html">depth_shader_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>initialize</b>(ID3D11Device *, HWND) (defined in <a class="el" href="classdepth__shader__class.html">depth_shader_class</a>)</td><td class="entry"><a class="el" href="classdepth__shader__class.html">depth_shader_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>render</b>(ID3D11DeviceContext *, int, XMMATRIX, XMMATRIX, XMMATRIX, ID3D11ShaderResourceView *) (defined in <a class="el" href="classdepth__shader__class.html">depth_shader_class</a>)</td><td class="entry"><a class="el" href="classdepth__shader__class.html">depth_shader_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>shutdown</b>() (defined in <a class="el" href="classdepth__shader__class.html">depth_shader_class</a>)</td><td class="entry"><a class="el" href="classdepth__shader__class.html">depth_shader_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~depth_shader_class</b>() (defined in <a class="el" href="classdepth__shader__class.html">depth_shader_class</a>)</td><td class="entry"><a class="el" href="classdepth__shader__class.html">depth_shader_class</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,347 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: depth_shader_class Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classdepth__shader__class.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classdepth__shader__class-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">depth_shader_class Class Reference</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ad892aa6019dccbfb5c655071c21346d6" id="r_ad892aa6019dccbfb5c655071c21346d6"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad892aa6019dccbfb5c655071c21346d6">depth_shader_class</a> (const <a class="el" href="classdepth__shader__class.html">depth_shader_class</a> &amp;)</td></tr>
<tr class="separator:ad892aa6019dccbfb5c655071c21346d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac00b827665aea3e3daeac20c9e28a37" id="r_aac00b827665aea3e3daeac20c9e28a37"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aac00b827665aea3e3daeac20c9e28a37">initialize</a> (ID3D11Device *, HWND)</td></tr>
<tr class="separator:aac00b827665aea3e3daeac20c9e28a37"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25254dd4d620ed4d30562a626cea84cd" id="r_a25254dd4d620ed4d30562a626cea84cd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a25254dd4d620ed4d30562a626cea84cd">shutdown</a> ()</td></tr>
<tr class="separator:a25254dd4d620ed4d30562a626cea84cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad389591265f38ebbfcbead07f7d172e4" id="r_ad389591265f38ebbfcbead07f7d172e4"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad389591265f38ebbfcbead07f7d172e4">render</a> (ID3D11DeviceContext *, int, XMMATRIX, XMMATRIX, XMMATRIX, ID3D11ShaderResourceView *)</td></tr>
<tr class="separator:ad389591265f38ebbfcbead07f7d172e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="depth__shader__class_8h_source.html#l00020">20</a> of file <a class="el" href="depth__shader__class_8h_source.html">depth_shader_class.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="aca516cf30105a9e4b34d8bd75b24b0c8" name="aca516cf30105a9e4b34d8bd75b24b0c8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aca516cf30105a9e4b34d8bd75b24b0c8">&#9670;&#160;</a></span>depth_shader_class() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">depth_shader_class::depth_shader_class </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="depth__shader__class_8cpp_source.html#l00004">4</a> of file <a class="el" href="depth__shader__class_8cpp_source.html">depth_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 5</span>{</div>
<div class="line"><span class="lineno"> 6</span> vertex_shader_ = 0;</div>
<div class="line"><span class="lineno"> 7</span> pixel_shader_ = 0;</div>
<div class="line"><span class="lineno"> 8</span> layout_ = 0;</div>
<div class="line"><span class="lineno"> 9</span> matrix_buffer_ = 0;</div>
<div class="line"><span class="lineno"> 10</span> sample_state_ = 0;</div>
<div class="line"><span class="lineno"> 11</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ad892aa6019dccbfb5c655071c21346d6" name="ad892aa6019dccbfb5c655071c21346d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad892aa6019dccbfb5c655071c21346d6">&#9670;&#160;</a></span>depth_shader_class() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">depth_shader_class::depth_shader_class </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdepth__shader__class.html">depth_shader_class</a> &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="depth__shader__class_8cpp_source.html#l00014">14</a> of file <a class="el" href="depth__shader__class_8cpp_source.html">depth_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 15</span>{</div>
<div class="line"><span class="lineno"> 16</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ad7ea23eccc4abbec241f64eefc378a01" name="ad7ea23eccc4abbec241f64eefc378a01"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad7ea23eccc4abbec241f64eefc378a01">&#9670;&#160;</a></span>~depth_shader_class()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">depth_shader_class::~depth_shader_class </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="depth__shader__class_8cpp_source.html#l00019">19</a> of file <a class="el" href="depth__shader__class_8cpp_source.html">depth_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 20</span>{</div>
<div class="line"><span class="lineno"> 21</span>}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="aac00b827665aea3e3daeac20c9e28a37" name="aac00b827665aea3e3daeac20c9e28a37"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aac00b827665aea3e3daeac20c9e28a37">&#9670;&#160;</a></span>initialize()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool depth_shader_class::initialize </td>
<td>(</td>
<td class="paramtype">ID3D11Device *</td> <td class="paramname"><span class="paramname"><em>device</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">HWND</td> <td class="paramname"><span class="paramname"><em>hwnd</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="depth__shader__class_8cpp_source.html#l00024">24</a> of file <a class="el" href="depth__shader__class_8cpp_source.html">depth_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 25</span>{</div>
<div class="line"><span class="lineno"> 26</span> Logger::Get().Log(<span class="stringliteral">&quot;Initializing texture shader&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><span class="lineno"> 27</span> </div>
<div class="line"><span class="lineno"> 28</span> <span class="keywordtype">bool</span> result;</div>
<div class="line"><span class="lineno"> 29</span> <span class="keywordtype">wchar_t</span> vsFilename[128];</div>
<div class="line"><span class="lineno"> 30</span> <span class="keywordtype">wchar_t</span> psFilename[128];</div>
<div class="line"><span class="lineno"> 31</span> <span class="keywordtype">int</span> error;</div>
<div class="line"><span class="lineno"> 32</span> <span class="comment">// Set the filename of the vertex shader.</span></div>
<div class="line"><span class="lineno"> 33</span> error = wcscpy_s(vsFilename, 128, L<span class="stringliteral">&quot;src/hlsl/depth.vs&quot;</span>);</div>
<div class="line"><span class="lineno"> 34</span> <span class="keywordflow">if</span> (error != 0)</div>
<div class="line"><span class="lineno"> 35</span> {</div>
<div class="line"><span class="lineno"> 36</span> Logger::Get().Log(<span class="stringliteral">&quot;Error copying stirng&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 37</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 38</span> }</div>
<div class="line"><span class="lineno"> 39</span> </div>
<div class="line"><span class="lineno"> 40</span> <span class="comment">// Set the filename of the pixel shader.</span></div>
<div class="line"><span class="lineno"> 41</span> error = wcscpy_s(psFilename, 128, L<span class="stringliteral">&quot;src/hlsl/depth.ps&quot;</span>);</div>
<div class="line"><span class="lineno"> 42</span> <span class="keywordflow">if</span> (error != 0)</div>
<div class="line"><span class="lineno"> 43</span> {</div>
<div class="line"><span class="lineno"> 44</span> Logger::Get().Log(<span class="stringliteral">&quot;Error copying stirng&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 45</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 46</span> }</div>
<div class="line"><span class="lineno"> 47</span> </div>
<div class="line"><span class="lineno"> 48</span> <span class="comment">// initialize the vertex and pixel shaders.</span></div>
<div class="line"><span class="lineno"> 49</span> result = initialize_shader(device, hwnd, vsFilename, psFilename);</div>
<div class="line"><span class="lineno"> 50</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><span class="lineno"> 51</span> {</div>
<div class="line"><span class="lineno"> 52</span> Logger::Get().Log(<span class="stringliteral">&quot;Error initializing shader&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 53</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 54</span> }</div>
<div class="line"><span class="lineno"> 55</span> </div>
<div class="line"><span class="lineno"> 56</span> Logger::Get().Log(<span class="stringliteral">&quot;Texture shader initialized&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><span class="lineno"> 57</span> </div>
<div class="line"><span class="lineno"> 58</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 59</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ad389591265f38ebbfcbead07f7d172e4" name="ad389591265f38ebbfcbead07f7d172e4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad389591265f38ebbfcbead07f7d172e4">&#9670;&#160;</a></span>render()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool depth_shader_class::render </td>
<td>(</td>
<td class="paramtype">ID3D11DeviceContext *</td> <td class="paramname"><span class="paramname"><em>deviceContext</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>indexCount</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">XMMATRIX</td> <td class="paramname"><span class="paramname"><em>worldMatrix</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">XMMATRIX</td> <td class="paramname"><span class="paramname"><em>viewMatrix</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">XMMATRIX</td> <td class="paramname"><span class="paramname"><em>projectionMatrix</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">ID3D11ShaderResourceView *</td> <td class="paramname"><span class="paramname"><em>texture</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="depth__shader__class_8cpp_source.html#l00069">69</a> of file <a class="el" href="depth__shader__class_8cpp_source.html">depth_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 71</span>{</div>
<div class="line"><span class="lineno"> 72</span> <span class="keywordtype">bool</span> result;</div>
<div class="line"><span class="lineno"> 73</span> </div>
<div class="line"><span class="lineno"> 74</span> </div>
<div class="line"><span class="lineno"> 75</span> <span class="comment">// Set the shader parameters that it will use for rendering.</span></div>
<div class="line"><span class="lineno"> 76</span> result = set_shader_parameters(deviceContext, worldMatrix, viewMatrix, projectionMatrix, texture);</div>
<div class="line"><span class="lineno"> 77</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><span class="lineno"> 78</span> {</div>
<div class="line"><span class="lineno"> 79</span> Logger::Get().Log(<span class="stringliteral">&quot;Error setting shader parameters&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 80</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 81</span> }</div>
<div class="line"><span class="lineno"> 82</span> </div>
<div class="line"><span class="lineno"> 83</span> <span class="comment">// Now render the prepared buffers with the shader.</span></div>
<div class="line"><span class="lineno"> 84</span> render_shader(deviceContext, indexCount);</div>
<div class="line"><span class="lineno"> 85</span> </div>
<div class="line"><span class="lineno"> 86</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 87</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a25254dd4d620ed4d30562a626cea84cd" name="a25254dd4d620ed4d30562a626cea84cd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a25254dd4d620ed4d30562a626cea84cd">&#9670;&#160;</a></span>shutdown()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void depth_shader_class::shutdown </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="depth__shader__class_8cpp_source.html#l00061">61</a> of file <a class="el" href="depth__shader__class_8cpp_source.html">depth_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 62</span>{</div>
<div class="line"><span class="lineno"> 63</span> <span class="comment">// shutdown the vertex and pixel shaders as well as the related objects.</span></div>
<div class="line"><span class="lineno"> 64</span> shutdown_shader();</div>
<div class="line"><span class="lineno"> 65</span> </div>
<div class="line"><span class="lineno"> 66</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 67</span>}</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>enginecustom/src/inc/shader/<a class="el" href="depth__shader__class_8h_source.html">depth_shader_class.h</a></li>
<li>enginecustom/src/src/shader/<a class="el" href="depth__shader__class_8cpp_source.html">depth_shader_class.cpp</a></li>
</ul>
</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="classdepth__shader__class.html">depth_shader_class</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,121 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classdisplay__plane__class.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">display_plane_class Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classdisplay__plane__class.html">display_plane_class</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>display_plane_class</b>() (defined in <a class="el" href="classdisplay__plane__class.html">display_plane_class</a>)</td><td class="entry"><a class="el" href="classdisplay__plane__class.html">display_plane_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>display_plane_class</b>(const display_plane_class &amp;) (defined in <a class="el" href="classdisplay__plane__class.html">display_plane_class</a>)</td><td class="entry"><a class="el" href="classdisplay__plane__class.html">display_plane_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetIndexCount</b>() (defined in <a class="el" href="classdisplay__plane__class.html">display_plane_class</a>)</td><td class="entry"><a class="el" href="classdisplay__plane__class.html">display_plane_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>Initialize</b>(ID3D11Device *, float, float) (defined in <a class="el" href="classdisplay__plane__class.html">display_plane_class</a>)</td><td class="entry"><a class="el" href="classdisplay__plane__class.html">display_plane_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Render</b>(ID3D11DeviceContext *) (defined in <a class="el" href="classdisplay__plane__class.html">display_plane_class</a>)</td><td class="entry"><a class="el" href="classdisplay__plane__class.html">display_plane_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>Shutdown</b>() (defined in <a class="el" href="classdisplay__plane__class.html">display_plane_class</a>)</td><td class="entry"><a class="el" href="classdisplay__plane__class.html">display_plane_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~display_plane_class</b>() (defined in <a class="el" href="classdisplay__plane__class.html">display_plane_class</a>)</td><td class="entry"><a class="el" href="classdisplay__plane__class.html">display_plane_class</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,318 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: display_plane_class Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classdisplay__plane__class.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classdisplay__plane__class-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">display_plane_class Class Reference</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ad7a6b3fa5bd4fc1f43c8fe2dd97705c4" id="r_ad7a6b3fa5bd4fc1f43c8fe2dd97705c4"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad7a6b3fa5bd4fc1f43c8fe2dd97705c4">display_plane_class</a> (const <a class="el" href="classdisplay__plane__class.html">display_plane_class</a> &amp;)</td></tr>
<tr class="separator:ad7a6b3fa5bd4fc1f43c8fe2dd97705c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab01495127063d2a63b9459dc84c5127d" id="r_ab01495127063d2a63b9459dc84c5127d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab01495127063d2a63b9459dc84c5127d">Initialize</a> (ID3D11Device *, float, float)</td></tr>
<tr class="separator:ab01495127063d2a63b9459dc84c5127d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b860200e1b54dd39dac5f94efc06517" id="r_a1b860200e1b54dd39dac5f94efc06517"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1b860200e1b54dd39dac5f94efc06517">Shutdown</a> ()</td></tr>
<tr class="separator:a1b860200e1b54dd39dac5f94efc06517"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa1adcd3f517c41a647a497e2e21743c8" id="r_aa1adcd3f517c41a647a497e2e21743c8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa1adcd3f517c41a647a497e2e21743c8">Render</a> (ID3D11DeviceContext *)</td></tr>
<tr class="separator:aa1adcd3f517c41a647a497e2e21743c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae48f5166d28bf63827f25c619955bd49" id="r_ae48f5166d28bf63827f25c619955bd49"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae48f5166d28bf63827f25c619955bd49">GetIndexCount</a> ()</td></tr>
<tr class="separator:ae48f5166d28bf63827f25c619955bd49"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="display__plane__class_8h_source.html#l00014">14</a> of file <a class="el" href="display__plane__class_8h_source.html">display_plane_class.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="ae98df4247851ffbd71e9c85cb2fc720e" name="ae98df4247851ffbd71e9c85cb2fc720e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae98df4247851ffbd71e9c85cb2fc720e">&#9670;&#160;</a></span>display_plane_class() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">display_plane_class::display_plane_class </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="display__plane__class_8cpp_source.html#l00004">4</a> of file <a class="el" href="display__plane__class_8cpp_source.html">display_plane_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 5</span>{</div>
<div class="line"><span class="lineno"> 6</span> m_vertexBuffer = 0;</div>
<div class="line"><span class="lineno"> 7</span> m_indexBuffer = 0;</div>
<div class="line"><span class="lineno"> 8</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ad7a6b3fa5bd4fc1f43c8fe2dd97705c4" name="ad7a6b3fa5bd4fc1f43c8fe2dd97705c4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad7a6b3fa5bd4fc1f43c8fe2dd97705c4">&#9670;&#160;</a></span>display_plane_class() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">display_plane_class::display_plane_class </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classdisplay__plane__class.html">display_plane_class</a> &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="display__plane__class_8cpp_source.html#l00011">11</a> of file <a class="el" href="display__plane__class_8cpp_source.html">display_plane_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 12</span>{</div>
<div class="line"><span class="lineno"> 13</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a1945d20d4d1455f0fc12220d54f9c615" name="a1945d20d4d1455f0fc12220d54f9c615"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1945d20d4d1455f0fc12220d54f9c615">&#9670;&#160;</a></span>~display_plane_class()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">display_plane_class::~display_plane_class </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="display__plane__class_8cpp_source.html#l00016">16</a> of file <a class="el" href="display__plane__class_8cpp_source.html">display_plane_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 17</span>{</div>
<div class="line"><span class="lineno"> 18</span>}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="ae48f5166d28bf63827f25c619955bd49" name="ae48f5166d28bf63827f25c619955bd49"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae48f5166d28bf63827f25c619955bd49">&#9670;&#160;</a></span>GetIndexCount()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int display_plane_class::GetIndexCount </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="display__plane__class_8cpp_source.html#l00056">56</a> of file <a class="el" href="display__plane__class_8cpp_source.html">display_plane_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 57</span>{</div>
<div class="line"><span class="lineno"> 58</span> <span class="keywordflow">return</span> m_indexCount;</div>
<div class="line"><span class="lineno"> 59</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ab01495127063d2a63b9459dc84c5127d" name="ab01495127063d2a63b9459dc84c5127d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab01495127063d2a63b9459dc84c5127d">&#9670;&#160;</a></span>Initialize()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool display_plane_class::Initialize </td>
<td>(</td>
<td class="paramtype">ID3D11Device *</td> <td class="paramname"><span class="paramname"><em>device</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>width</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>height</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="display__plane__class_8cpp_source.html#l00020">20</a> of file <a class="el" href="display__plane__class_8cpp_source.html">display_plane_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 21</span>{</div>
<div class="line"><span class="lineno"> 22</span> Logger::Get().Log(<span class="stringliteral">&quot;Initializing display_plane_class, width: &quot;</span> + std::to_string(width) + <span class="stringliteral">&quot;, height: &quot;</span> + std::to_string(height), __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><span class="lineno"> 23</span> <span class="keywordtype">bool</span> result;</div>
<div class="line"><span class="lineno"> 24</span> </div>
<div class="line"><span class="lineno"> 25</span> </div>
<div class="line"><span class="lineno"> 26</span> <span class="comment">// initialize the vertex and index buffer that hold the geometry for the button.</span></div>
<div class="line"><span class="lineno"> 27</span> result = InitializeBuffers(device, width, height);</div>
<div class="line"><span class="lineno"> 28</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><span class="lineno"> 29</span> {</div>
<div class="line"><span class="lineno"> 30</span> Logger::Get().Log(<span class="stringliteral">&quot;Could not initialize buffers&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 31</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 32</span> }</div>
<div class="line"><span class="lineno"> 33</span> </div>
<div class="line"><span class="lineno"> 34</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 35</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="aa1adcd3f517c41a647a497e2e21743c8" name="aa1adcd3f517c41a647a497e2e21743c8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa1adcd3f517c41a647a497e2e21743c8">&#9670;&#160;</a></span>Render()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void display_plane_class::Render </td>
<td>(</td>
<td class="paramtype">ID3D11DeviceContext *</td> <td class="paramname"><span class="paramname"><em>deviceContext</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="display__plane__class_8cpp_source.html#l00047">47</a> of file <a class="el" href="display__plane__class_8cpp_source.html">display_plane_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 48</span>{</div>
<div class="line"><span class="lineno"> 49</span> <span class="comment">// Put the vertex and index buffers on the graphics pipeline to prepare them for drawing.</span></div>
<div class="line"><span class="lineno"> 50</span> RenderBuffers(deviceContext);</div>
<div class="line"><span class="lineno"> 51</span> </div>
<div class="line"><span class="lineno"> 52</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 53</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a1b860200e1b54dd39dac5f94efc06517" name="a1b860200e1b54dd39dac5f94efc06517"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1b860200e1b54dd39dac5f94efc06517">&#9670;&#160;</a></span>Shutdown()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void display_plane_class::Shutdown </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="display__plane__class_8cpp_source.html#l00038">38</a> of file <a class="el" href="display__plane__class_8cpp_source.html">display_plane_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 39</span>{</div>
<div class="line"><span class="lineno"> 40</span> <span class="comment">// Release the vertex and index buffers.</span></div>
<div class="line"><span class="lineno"> 41</span> ShutdownBuffers();</div>
<div class="line"><span class="lineno"> 42</span> </div>
<div class="line"><span class="lineno"> 43</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 44</span>}</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>enginecustom/src/inc/system/<a class="el" href="display__plane__class_8h_source.html">display_plane_class.h</a></li>
<li>enginecustom/src/src/system/<a class="el" href="display__plane__class_8cpp_source.html">display_plane_class.cpp</a></li>
</ul>
</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="classdisplay__plane__class.html">display_plane_class</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,122 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classecs_1_1_component.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">ecs::Component Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classecs_1_1_component.html">ecs::Component</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Component</b>()=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>Component</b>(const Component &amp;)=delete (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Component</b>(Component &amp;&amp;)=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_component.html#a9372874f51e5f63584d65fc378d39459">Initialize</a>()</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(const Component &amp;)=delete (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>operator=</b>(Component &amp;&amp;)=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_component.html#a59c0f739c4ff19227e27ed7b9f6352e0">Update</a>(float deltaTime)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~Component</b>()=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,223 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: ecs::Component Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classecs_1_1_component.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classecs_1_1_component-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">ecs::Component Class Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Inheritance diagram for ecs::Component:</div>
<div class="dyncontent">
<div class="center">
<img src="classecs_1_1_component.png" usemap="#ecs::Component_map" alt=""/>
<map id="ecs::Component_map" name="ecs::Component_map">
<area href="classecs_1_1_identity_component.html" alt="ecs::IdentityComponent" shape="rect" coords="0,56,161,80"/>
<area href="classecs_1_1_model_path_component.html" alt="ecs::ModelPathComponent" shape="rect" coords="171,56,332,80"/>
<area href="classecs_1_1_physics_component.html" alt="ecs::PhysicsComponent" shape="rect" coords="342,56,503,80"/>
<area href="classecs_1_1_render_component.html" alt="ecs::RenderComponent" shape="rect" coords="513,56,674,80"/>
<area href="classecs_1_1_shader_component.html" alt="ecs::ShaderComponent" shape="rect" coords="684,56,845,80"/>
<area href="classecs_1_1_transform_component.html" alt="ecs::TransformComponent" shape="rect" coords="855,56,1016,80"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a8dbee43fa54890ad07145aa1160b0b09" id="r_a8dbee43fa54890ad07145aa1160b0b09"><td class="memItemLeft" align="right" valign="top"><a id="a8dbee43fa54890ad07145aa1160b0b09" name="a8dbee43fa54890ad07145aa1160b0b09"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>Component</b> (const <a class="el" href="classecs_1_1_component.html">Component</a> &amp;)=delete</td></tr>
<tr class="separator:a8dbee43fa54890ad07145aa1160b0b09"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34000da33471994c2550e416505026ad" id="r_a34000da33471994c2550e416505026ad"><td class="memItemLeft" align="right" valign="top"><a id="a34000da33471994c2550e416505026ad" name="a34000da33471994c2550e416505026ad"></a>
<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classecs_1_1_component.html">Component</a> &amp;)=delete</td></tr>
<tr class="separator:a34000da33471994c2550e416505026ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a213cfa3482dca1ffc458b9cf020b4814" id="r_a213cfa3482dca1ffc458b9cf020b4814"><td class="memItemLeft" align="right" valign="top"><a id="a213cfa3482dca1ffc458b9cf020b4814" name="a213cfa3482dca1ffc458b9cf020b4814"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>Component</b> (<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&amp;)=default</td></tr>
<tr class="separator:a213cfa3482dca1ffc458b9cf020b4814"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8089d7e43f9ac2a6eedd3b0598c46694" id="r_a8089d7e43f9ac2a6eedd3b0598c46694"><td class="memItemLeft" align="right" valign="top"><a id="a8089d7e43f9ac2a6eedd3b0598c46694" name="a8089d7e43f9ac2a6eedd3b0598c46694"></a>
<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&amp;)=default</td></tr>
<tr class="separator:a8089d7e43f9ac2a6eedd3b0598c46694"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9372874f51e5f63584d65fc378d39459" id="r_a9372874f51e5f63584d65fc378d39459"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9372874f51e5f63584d65fc378d39459">Initialize</a> ()</td></tr>
<tr class="separator:a9372874f51e5f63584d65fc378d39459"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59c0f739c4ff19227e27ed7b9f6352e0" id="r_a59c0f739c4ff19227e27ed7b9f6352e0"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a59c0f739c4ff19227e27ed7b9f6352e0">Update</a> (float deltaTime)</td></tr>
<tr class="separator:a59c0f739c4ff19227e27ed7b9f6352e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="component_8h_source.html#l00012">12</a> of file <a class="el" href="component_8h_source.html">component.h</a>.</p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a9372874f51e5f63584d65fc378d39459" name="a9372874f51e5f63584d65fc378d39459"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9372874f51e5f63584d65fc378d39459">&#9670;&#160;</a></span>Initialize()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void ecs::Component::Initialize </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Virtual function to initialize the component. </p>
<p>Reimplemented in <a class="el" href="classecs_1_1_identity_component.html#a04b2bb43ccf6c4842704f30463033b3b">ecs::IdentityComponent</a>, <a class="el" href="classecs_1_1_model_path_component.html#a8819a3be58b6748ced6763a598e2f7f8">ecs::ModelPathComponent</a>, <a class="el" href="classecs_1_1_physics_component.html#ab58952fc61030f1047beb2d6dbec82cf">ecs::PhysicsComponent</a>, <a class="el" href="classecs_1_1_render_component.html#aa92950c4ebad0379f626493bda1a79bb">ecs::RenderComponent</a>, and <a class="el" href="classecs_1_1_shader_component.html#a69a5ca163458465936525b14270fe46e">ecs::ShaderComponent</a>.</p>
<p class="definition">Definition at line <a class="el" href="component_8h_source.html#l00028">28</a> of file <a class="el" href="component_8h_source.html">component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 28</span>{}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a59c0f739c4ff19227e27ed7b9f6352e0" name="a59c0f739c4ff19227e27ed7b9f6352e0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a59c0f739c4ff19227e27ed7b9f6352e0">&#9670;&#160;</a></span>Update()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void ecs::Component::Update </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>deltaTime</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Virtual function to update the component. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">deltaTime</td><td>Time since the last update. </td></tr>
</table>
</dd>
</dl>
<p>Reimplemented in <a class="el" href="classecs_1_1_model_path_component.html#a64d1c1fa22bb222e6c85f5312ea8795b">ecs::ModelPathComponent</a>, <a class="el" href="classecs_1_1_physics_component.html#a83aaa878464b8ef2dbc0e7a927689d79">ecs::PhysicsComponent</a>, <a class="el" href="classecs_1_1_render_component.html#a6cfff9944a89629f5f7a7d1451446f0d">ecs::RenderComponent</a>, and <a class="el" href="classecs_1_1_shader_component.html#a2ebc1ef592626fc729884677c771ccbf">ecs::ShaderComponent</a>.</p>
<p class="definition">Definition at line <a class="el" href="component_8h_source.html#l00034">34</a> of file <a class="el" href="component_8h_source.html">component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 34</span>{}</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>enginecustom/src/inc/system/ecs/<a class="el" href="component_8h_source.html">component.h</a></li>
</ul>
</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="namespaceecs.html">ecs</a></li><li class="navelem"><a class="el" href="classecs_1_1_component.html">Component</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,5 @@
var classecs_1_1_component =
[
[ "Initialize", "classecs_1_1_component.html#a9372874f51e5f63584d65fc378d39459", null ],
[ "Update", "classecs_1_1_component.html#a59c0f739c4ff19227e27ed7b9f6352e0", null ]
];

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@ -0,0 +1,126 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classecs_1_1_entity.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">ecs::Entity Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classecs_1_1_entity.html">ecs::Entity</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_entity.html#a240b05cecbe32a6222082f3b4a789a98">AddComponent</a>(Args &amp;&amp;... args)</td><td class="entry"><a class="el" href="classecs_1_1_entity.html">ecs::Entity</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_entity.html#aa505e8d9a076bd37b83e319c33a8fb3e">Entity</a>(EntityID id)</td><td class="entry"><a class="el" href="classecs_1_1_entity.html">ecs::Entity</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_entity.html#a1cace49b2034c62e076d8e5354a1e15f">Entity</a>(const Entity &amp;)=delete</td><td class="entry"><a class="el" href="classecs_1_1_entity.html">ecs::Entity</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_entity.html#a318d92a576baeaf8d684fd9ee400ebe8">Entity</a>(Entity &amp;&amp;)=default</td><td class="entry"><a class="el" href="classecs_1_1_entity.html">ecs::Entity</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_entity.html#a1debe96608ed65b741812a9340c52220">GetComponent</a>()</td><td class="entry"><a class="el" href="classecs_1_1_entity.html">ecs::Entity</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_entity.html#a9fab84a0393816b3a911588fc1f7121a">GetID</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_entity.html">ecs::Entity</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_entity.html#a29deb83cc77c7c2466d0f76f7b340869">HasComponent</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_entity.html">ecs::Entity</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>operator=</b>(const Entity &amp;)=delete (defined in <a class="el" href="classecs_1_1_entity.html">ecs::Entity</a>)</td><td class="entry"><a class="el" href="classecs_1_1_entity.html">ecs::Entity</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(Entity &amp;&amp;)=default (defined in <a class="el" href="classecs_1_1_entity.html">ecs::Entity</a>)</td><td class="entry"><a class="el" href="classecs_1_1_entity.html">ecs::Entity</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_entity.html#a87fe0ec023ff9df7bcfff0eb13a90bb7">RemoveComponent</a>()</td><td class="entry"><a class="el" href="classecs_1_1_entity.html">ecs::Entity</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_entity.html#a239d0855906f8c66371d7d1fa895a11f">UpdateComponents</a>(float deltaTime)</td><td class="entry"><a class="el" href="classecs_1_1_entity.html">ecs::Entity</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~Entity</b>()=default (defined in <a class="el" href="classecs_1_1_entity.html">ecs::Entity</a>)</td><td class="entry"><a class="el" href="classecs_1_1_entity.html">ecs::Entity</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,501 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: ecs::Entity Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classecs_1_1_entity.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classecs_1_1_entity-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">ecs::Entity Class Reference</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:aa505e8d9a076bd37b83e319c33a8fb3e" id="r_aa505e8d9a076bd37b83e319c33a8fb3e"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa505e8d9a076bd37b83e319c33a8fb3e">Entity</a> (<a class="el" href="namespaceecs.html#af256e267ca18f2601f8e804fd95e9358">EntityID</a> id)</td></tr>
<tr class="separator:aa505e8d9a076bd37b83e319c33a8fb3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1cace49b2034c62e076d8e5354a1e15f" id="r_a1cace49b2034c62e076d8e5354a1e15f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1cace49b2034c62e076d8e5354a1e15f">Entity</a> (const <a class="el" href="classecs_1_1_entity.html">Entity</a> &amp;)=delete</td></tr>
<tr class="separator:a1cace49b2034c62e076d8e5354a1e15f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5bd59cabe7c8c51043b00b356c1984e4" id="r_a5bd59cabe7c8c51043b00b356c1984e4"><td class="memItemLeft" align="right" valign="top"><a id="a5bd59cabe7c8c51043b00b356c1984e4" name="a5bd59cabe7c8c51043b00b356c1984e4"></a>
<a class="el" href="classecs_1_1_entity.html">Entity</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classecs_1_1_entity.html">Entity</a> &amp;)=delete</td></tr>
<tr class="separator:a5bd59cabe7c8c51043b00b356c1984e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a318d92a576baeaf8d684fd9ee400ebe8" id="r_a318d92a576baeaf8d684fd9ee400ebe8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a318d92a576baeaf8d684fd9ee400ebe8">Entity</a> (<a class="el" href="classecs_1_1_entity.html">Entity</a> &amp;&amp;)=default</td></tr>
<tr class="separator:a318d92a576baeaf8d684fd9ee400ebe8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a48a1caf075057339ecf0d3637e942875" id="r_a48a1caf075057339ecf0d3637e942875"><td class="memItemLeft" align="right" valign="top"><a id="a48a1caf075057339ecf0d3637e942875" name="a48a1caf075057339ecf0d3637e942875"></a>
<a class="el" href="classecs_1_1_entity.html">Entity</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (<a class="el" href="classecs_1_1_entity.html">Entity</a> &amp;&amp;)=default</td></tr>
<tr class="separator:a48a1caf075057339ecf0d3637e942875"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9fab84a0393816b3a911588fc1f7121a" id="r_a9fab84a0393816b3a911588fc1f7121a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceecs.html#af256e267ca18f2601f8e804fd95e9358">EntityID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9fab84a0393816b3a911588fc1f7121a">GetID</a> () const</td></tr>
<tr class="separator:a9fab84a0393816b3a911588fc1f7121a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a240b05cecbe32a6222082f3b4a789a98" id="r_a240b05cecbe32a6222082f3b4a789a98"><td class="memTemplParams" colspan="2">template&lt;typename T , typename... Args&gt; </td></tr>
<tr class="memitem:a240b05cecbe32a6222082f3b4a789a98"><td class="memTemplItemLeft" align="right" valign="top">std::shared_ptr&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a240b05cecbe32a6222082f3b4a789a98">AddComponent</a> (Args &amp;&amp;... args)</td></tr>
<tr class="separator:a240b05cecbe32a6222082f3b4a789a98"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1debe96608ed65b741812a9340c52220" id="r_a1debe96608ed65b741812a9340c52220"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:a1debe96608ed65b741812a9340c52220"><td class="memTemplItemLeft" align="right" valign="top">std::shared_ptr&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a1debe96608ed65b741812a9340c52220">GetComponent</a> ()</td></tr>
<tr class="separator:a1debe96608ed65b741812a9340c52220"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a29deb83cc77c7c2466d0f76f7b340869" id="r_a29deb83cc77c7c2466d0f76f7b340869"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:a29deb83cc77c7c2466d0f76f7b340869"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a29deb83cc77c7c2466d0f76f7b340869">HasComponent</a> () const</td></tr>
<tr class="separator:a29deb83cc77c7c2466d0f76f7b340869"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a87fe0ec023ff9df7bcfff0eb13a90bb7" id="r_a87fe0ec023ff9df7bcfff0eb13a90bb7"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:a87fe0ec023ff9df7bcfff0eb13a90bb7"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a87fe0ec023ff9df7bcfff0eb13a90bb7">RemoveComponent</a> ()</td></tr>
<tr class="separator:a87fe0ec023ff9df7bcfff0eb13a90bb7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a239d0855906f8c66371d7d1fa895a11f" id="r_a239d0855906f8c66371d7d1fa895a11f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a239d0855906f8c66371d7d1fa895a11f">UpdateComponents</a> (float deltaTime)</td></tr>
<tr class="separator:a239d0855906f8c66371d7d1fa895a11f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="entity_8h_source.html#l00015">15</a> of file <a class="el" href="entity_8h_source.html">entity.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="aa505e8d9a076bd37b83e319c33a8fb3e" name="aa505e8d9a076bd37b83e319c33a8fb3e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa505e8d9a076bd37b83e319c33a8fb3e">&#9670;&#160;</a></span>Entity() <span class="overload">[1/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ecs::Entity::Entity </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespaceecs.html#af256e267ca18f2601f8e804fd95e9358">EntityID</a></td> <td class="paramname"><span class="paramname"><em>id</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Builder for an <a class="el" href="classecs_1_1_entity.html">Entity</a> with a unique ID. </p>
<p class="definition">Definition at line <a class="el" href="entity_8h_source.html#l00020">20</a> of file <a class="el" href="entity_8h_source.html">entity.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 20</span>: m_ID(<span class="keywordtype">id</span>) {}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a1cace49b2034c62e076d8e5354a1e15f" name="a1cace49b2034c62e076d8e5354a1e15f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1cace49b2034c62e076d8e5354a1e15f">&#9670;&#160;</a></span>Entity() <span class="overload">[2/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ecs::Entity::Entity </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classecs_1_1_entity.html">Entity</a> &amp;</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">delete</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>No copy constructor or assignment operator to prevent copying. </p>
</div>
</div>
<a id="a318d92a576baeaf8d684fd9ee400ebe8" name="a318d92a576baeaf8d684fd9ee400ebe8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a318d92a576baeaf8d684fd9ee400ebe8">&#9670;&#160;</a></span>Entity() <span class="overload">[3/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ecs::Entity::Entity </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classecs_1_1_entity.html">Entity</a> &amp;&amp;</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">default</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Move constructor and assignment operator to allow moving entities. </p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a240b05cecbe32a6222082f3b4a789a98" name="a240b05cecbe32a6222082f3b4a789a98"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a240b05cecbe32a6222082f3b4a789a98">&#9670;&#160;</a></span>AddComponent()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T , typename... Args&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::shared_ptr&lt; T &gt; ecs::Entity::AddComponent </td>
<td>(</td>
<td class="paramtype">Args &amp;&amp;...</td> <td class="paramname"><span class="paramname"><em>args</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Add a component of type T to the entity. If the component already exists, it returns the existing component. </p><dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">T</td><td></td></tr>
</table>
</dd>
</dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">args</td><td>Arguments to construct the component. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A shared pointer to the added or existing component. </dd></dl>
<p class="definition">Definition at line <a class="el" href="entity_8h_source.html#l00049">49</a> of file <a class="el" href="entity_8h_source.html">entity.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 49</span> {</div>
<div class="line"><span class="lineno"> 50</span> <span class="keyword">static_assert</span>(std::is_base_of&lt;Component, T&gt;::value, <span class="stringliteral">&quot;T must derive from Component&quot;</span>);</div>
<div class="line"><span class="lineno"> 51</span> </div>
<div class="line"><span class="lineno"> 52</span> <a class="code hl_typedef" href="namespaceecs.html#a94d754c47297d56ce57eb14784809efc">ComponentTypeID</a> typeID = <a class="code hl_function" href="namespaceecs.html#ae98a9f77225416bebd93a559a68a92eb">GetComponentTypeID&lt;T&gt;</a>();</div>
<div class="line"><span class="lineno"> 53</span> </div>
<div class="line"><span class="lineno"> 54</span> <span class="comment">// Vérifier si le composant existe déjà</span></div>
<div class="line"><span class="lineno"> 55</span> <span class="keywordflow">if</span> (m_Components.find(typeID) != m_Components.end()) {</div>
<div class="line"><span class="lineno"> 56</span> <span class="keywordflow">return</span> std::static_pointer_cast&lt;T&gt;(m_Components[typeID]);</div>
<div class="line"><span class="lineno"> 57</span> }</div>
<div class="line"><span class="lineno"> 58</span> </div>
<div class="line"><span class="lineno"> 59</span> <span class="comment">// Créer et ajouter le composant</span></div>
<div class="line"><span class="lineno"> 60</span> <span class="keyword">auto</span> component = std::make_shared&lt;T&gt;(std::forward&lt;Args&gt;(args)...);</div>
<div class="line"><span class="lineno"> 61</span> m_Components[typeID] = component;</div>
<div class="line"><span class="lineno"> 62</span> </div>
<div class="line"><span class="lineno"> 63</span> <span class="comment">// Initialiser le composant</span></div>
<div class="line"><span class="lineno"> 64</span> component-&gt;Initialize();</div>
<div class="line"><span class="lineno"> 65</span> </div>
<div class="line"><span class="lineno"> 66</span> <span class="keywordflow">return</span> component;</div>
<div class="line"><span class="lineno"> 67</span> }</div>
<div class="ttc" id="anamespaceecs_html_a94d754c47297d56ce57eb14784809efc"><div class="ttname"><a href="namespaceecs.html#a94d754c47297d56ce57eb14784809efc">ecs::ComponentTypeID</a></div><div class="ttdeci">std::type_index ComponentTypeID</div><div class="ttdef"><b>Definition</b> <a href="component_8h_source.html#l00048">component.h:48</a></div></div>
<div class="ttc" id="anamespaceecs_html_ae98a9f77225416bebd93a559a68a92eb"><div class="ttname"><a href="namespaceecs.html#ae98a9f77225416bebd93a559a68a92eb">ecs::GetComponentTypeID</a></div><div class="ttdeci">ComponentTypeID GetComponentTypeID()</div><div class="ttdef"><b>Definition</b> <a href="component_8h_source.html#l00054">component.h:54</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a1debe96608ed65b741812a9340c52220" name="a1debe96608ed65b741812a9340c52220"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1debe96608ed65b741812a9340c52220">&#9670;&#160;</a></span>GetComponent()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::shared_ptr&lt; T &gt; ecs::Entity::GetComponent </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get a component of type T from the entity. </p><dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">T</td><td></td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A shared pointer to the component if it exists, nullptr otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="entity_8h_source.html#l00075">75</a> of file <a class="el" href="entity_8h_source.html">entity.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 75</span> {</div>
<div class="line"><span class="lineno"> 76</span> <span class="keyword">static_assert</span>(std::is_base_of&lt;Component, T&gt;::value, <span class="stringliteral">&quot;T must derive from Component&quot;</span>);</div>
<div class="line"><span class="lineno"> 77</span> </div>
<div class="line"><span class="lineno"> 78</span> <a class="code hl_typedef" href="namespaceecs.html#a94d754c47297d56ce57eb14784809efc">ComponentTypeID</a> typeID = <a class="code hl_function" href="namespaceecs.html#ae98a9f77225416bebd93a559a68a92eb">GetComponentTypeID&lt;T&gt;</a>();</div>
<div class="line"><span class="lineno"> 79</span> </div>
<div class="line"><span class="lineno"> 80</span> <span class="keyword">auto</span> it = m_Components.find(typeID);</div>
<div class="line"><span class="lineno"> 81</span> <span class="keywordflow">if</span> (it != m_Components.end()) {</div>
<div class="line"><span class="lineno"> 82</span> <span class="keywordflow">return</span> std::static_pointer_cast&lt;T&gt;(it-&gt;second);</div>
<div class="line"><span class="lineno"> 83</span> }</div>
<div class="line"><span class="lineno"> 84</span> </div>
<div class="line"><span class="lineno"> 85</span> <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div>
<div class="line"><span class="lineno"> 86</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a9fab84a0393816b3a911588fc1f7121a" name="a9fab84a0393816b3a911588fc1f7121a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9fab84a0393816b3a911588fc1f7121a">&#9670;&#160;</a></span>GetID()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceecs.html#af256e267ca18f2601f8e804fd95e9358">EntityID</a> ecs::Entity::GetID </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the unique identifier for the entity. </p><dl class="section return"><dt>Returns</dt><dd>The unique ID of the entity. </dd></dl>
<p class="definition">Definition at line <a class="el" href="entity_8h_source.html#l00039">39</a> of file <a class="el" href="entity_8h_source.html">entity.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 39</span>{ <span class="keywordflow">return</span> m_ID; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a29deb83cc77c7c2466d0f76f7b340869" name="a29deb83cc77c7c2466d0f76f7b340869"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a29deb83cc77c7c2466d0f76f7b340869">&#9670;&#160;</a></span>HasComponent()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ecs::Entity::HasComponent </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Check if the entity has a component of type T. </p><dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">T</td><td></td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if the entity has the component, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="entity_8h_source.html#l00094">94</a> of file <a class="el" href="entity_8h_source.html">entity.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 94</span> {</div>
<div class="line"><span class="lineno"> 95</span> <span class="keyword">static_assert</span>(std::is_base_of&lt;Component, T&gt;::value, <span class="stringliteral">&quot;T must derive from Component&quot;</span>);</div>
<div class="line"><span class="lineno"> 96</span> </div>
<div class="line"><span class="lineno"> 97</span> <a class="code hl_typedef" href="namespaceecs.html#a94d754c47297d56ce57eb14784809efc">ComponentTypeID</a> typeID = <a class="code hl_function" href="namespaceecs.html#ae98a9f77225416bebd93a559a68a92eb">GetComponentTypeID&lt;T&gt;</a>();</div>
<div class="line"><span class="lineno"> 98</span> <span class="keywordflow">return</span> m_Components.find(typeID) != m_Components.end();</div>
<div class="line"><span class="lineno"> 99</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a87fe0ec023ff9df7bcfff0eb13a90bb7" name="a87fe0ec023ff9df7bcfff0eb13a90bb7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a87fe0ec023ff9df7bcfff0eb13a90bb7">&#9670;&#160;</a></span>RemoveComponent()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::Entity::RemoveComponent </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Remove a component of type T from the entity. </p><dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">T</td><td></td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="entity_8h_source.html#l00106">106</a> of file <a class="el" href="entity_8h_source.html">entity.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 106</span> {</div>
<div class="line"><span class="lineno"> 107</span> <span class="keyword">static_assert</span>(std::is_base_of&lt;Component, T&gt;::value, <span class="stringliteral">&quot;T must derive from Component&quot;</span>);</div>
<div class="line"><span class="lineno"> 108</span> </div>
<div class="line"><span class="lineno"> 109</span> <a class="code hl_typedef" href="namespaceecs.html#a94d754c47297d56ce57eb14784809efc">ComponentTypeID</a> typeID = <a class="code hl_function" href="namespaceecs.html#ae98a9f77225416bebd93a559a68a92eb">GetComponentTypeID&lt;T&gt;</a>();</div>
<div class="line"><span class="lineno"> 110</span> <span class="keyword">auto</span> it = m_Components.find(typeID);</div>
<div class="line"><span class="lineno"> 111</span> </div>
<div class="line"><span class="lineno"> 112</span> <span class="keywordflow">if</span> (it != m_Components.end()) {</div>
<div class="line"><span class="lineno"> 113</span> m_Components.erase(it);</div>
<div class="line"><span class="lineno"> 114</span> }</div>
<div class="line"><span class="lineno"> 115</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a239d0855906f8c66371d7d1fa895a11f" name="a239d0855906f8c66371d7d1fa895a11f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a239d0855906f8c66371d7d1fa895a11f">&#9670;&#160;</a></span>UpdateComponents()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::Entity::UpdateComponents </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>deltaTime</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Update all components of the entity. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">deltaTime</td><td></td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="entity_8h_source.html#l00121">121</a> of file <a class="el" href="entity_8h_source.html">entity.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 121</span> {</div>
<div class="line"><span class="lineno"> 122</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; [typeID, component] : m_Components) {</div>
<div class="line"><span class="lineno"> 123</span> component-&gt;Update(deltaTime);</div>
<div class="line"><span class="lineno"> 124</span> }</div>
<div class="line"><span class="lineno"> 125</span> }</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>enginecustom/src/inc/system/ecs/<a class="el" href="entity_8h_source.html">entity.h</a></li>
</ul>
</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="namespaceecs.html">ecs</a></li><li class="navelem"><a class="el" href="classecs_1_1_entity.html">Entity</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,12 @@
var classecs_1_1_entity =
[
[ "Entity", "classecs_1_1_entity.html#aa505e8d9a076bd37b83e319c33a8fb3e", null ],
[ "Entity", "classecs_1_1_entity.html#a1cace49b2034c62e076d8e5354a1e15f", null ],
[ "Entity", "classecs_1_1_entity.html#a318d92a576baeaf8d684fd9ee400ebe8", null ],
[ "AddComponent", "classecs_1_1_entity.html#a240b05cecbe32a6222082f3b4a789a98", null ],
[ "GetComponent", "classecs_1_1_entity.html#a1debe96608ed65b741812a9340c52220", null ],
[ "GetID", "classecs_1_1_entity.html#a9fab84a0393816b3a911588fc1f7121a", null ],
[ "HasComponent", "classecs_1_1_entity.html#a29deb83cc77c7c2466d0f76f7b340869", null ],
[ "RemoveComponent", "classecs_1_1_entity.html#a87fe0ec023ff9df7bcfff0eb13a90bb7", null ],
[ "UpdateComponents", "classecs_1_1_entity.html#a239d0855906f8c66371d7d1fa895a11f", null ]
];

View File

@ -0,0 +1,124 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classecs_1_1_entity_manager.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">ecs::EntityManager Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classecs_1_1_entity_manager.html">ecs::EntityManager</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_entity_manager.html#a6c31a8b7c0a01e473566fd801db91a55">Clear</a>()</td><td class="entry"><a class="el" href="classecs_1_1_entity_manager.html">ecs::EntityManager</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_entity_manager.html#a696dcb2fd36215b0a9214880d21033a2">CreateEntity</a>()</td><td class="entry"><a class="el" href="classecs_1_1_entity_manager.html">ecs::EntityManager</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_entity_manager.html#a4cb0da19e3a95b7cb1390843882176a9">DestroyEntity</a>(EntityID id)</td><td class="entry"><a class="el" href="classecs_1_1_entity_manager.html">ecs::EntityManager</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_entity_manager.html#acba3847d62f7cd79e22d5ffa490c1f53">EntityManager</a>()</td><td class="entry"><a class="el" href="classecs_1_1_entity_manager.html">ecs::EntityManager</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_entity_manager.html#ad4116858dc1c324cdd558e5ac6c7f21b">GetAllEntities</a>()</td><td class="entry"><a class="el" href="classecs_1_1_entity_manager.html">ecs::EntityManager</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_entity_manager.html#a42887acde34ab3d1cd13c0396b053d72">GetEntitiesWithComponent</a>()</td><td class="entry"><a class="el" href="classecs_1_1_entity_manager.html">ecs::EntityManager</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_entity_manager.html#a79acf6578756702d83d509dbf1fce0d8">GetEntity</a>(EntityID id)</td><td class="entry"><a class="el" href="classecs_1_1_entity_manager.html">ecs::EntityManager</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_entity_manager.html#ad84a022bfad4f381179c1e007d7c9c8a">GetEntityCount</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_entity_manager.html">ecs::EntityManager</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_entity_manager.html#aac0b39f03cc669d8bc8f3073daa2079c">UpdateEntities</a>(float deltaTime)</td><td class="entry"><a class="el" href="classecs_1_1_entity_manager.html">ecs::EntityManager</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~EntityManager</b>()=default (defined in <a class="el" href="classecs_1_1_entity_manager.html">ecs::EntityManager</a>)</td><td class="entry"><a class="el" href="classecs_1_1_entity_manager.html">ecs::EntityManager</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,496 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: ecs::EntityManager Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classecs_1_1_entity_manager.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classecs_1_1_entity_manager-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">ecs::EntityManager Class Reference</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:acba3847d62f7cd79e22d5ffa490c1f53" id="r_acba3847d62f7cd79e22d5ffa490c1f53"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#acba3847d62f7cd79e22d5ffa490c1f53">EntityManager</a> ()</td></tr>
<tr class="memdesc:acba3847d62f7cd79e22d5ffa490c1f53"><td class="mdescLeft">&#160;</td><td class="mdescRight">Type pour l'ID d'une entité. <br /></td></tr>
<tr class="separator:acba3847d62f7cd79e22d5ffa490c1f53"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a696dcb2fd36215b0a9214880d21033a2" id="r_a696dcb2fd36215b0a9214880d21033a2"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="classecs_1_1_entity.html">Entity</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a696dcb2fd36215b0a9214880d21033a2">CreateEntity</a> ()</td></tr>
<tr class="separator:a696dcb2fd36215b0a9214880d21033a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4cb0da19e3a95b7cb1390843882176a9" id="r_a4cb0da19e3a95b7cb1390843882176a9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4cb0da19e3a95b7cb1390843882176a9">DestroyEntity</a> (<a class="el" href="namespaceecs.html#af256e267ca18f2601f8e804fd95e9358">EntityID</a> id)</td></tr>
<tr class="separator:a4cb0da19e3a95b7cb1390843882176a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79acf6578756702d83d509dbf1fce0d8" id="r_a79acf6578756702d83d509dbf1fce0d8"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="classecs_1_1_entity.html">Entity</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a79acf6578756702d83d509dbf1fce0d8">GetEntity</a> (<a class="el" href="namespaceecs.html#af256e267ca18f2601f8e804fd95e9358">EntityID</a> id)</td></tr>
<tr class="separator:a79acf6578756702d83d509dbf1fce0d8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac0b39f03cc669d8bc8f3073daa2079c" id="r_aac0b39f03cc669d8bc8f3073daa2079c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aac0b39f03cc669d8bc8f3073daa2079c">UpdateEntities</a> (float deltaTime)</td></tr>
<tr class="separator:aac0b39f03cc669d8bc8f3073daa2079c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad4116858dc1c324cdd558e5ac6c7f21b" id="r_ad4116858dc1c324cdd558e5ac6c7f21b"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::shared_ptr&lt; <a class="el" href="classecs_1_1_entity.html">Entity</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad4116858dc1c324cdd558e5ac6c7f21b">GetAllEntities</a> ()</td></tr>
<tr class="separator:ad4116858dc1c324cdd558e5ac6c7f21b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42887acde34ab3d1cd13c0396b053d72" id="r_a42887acde34ab3d1cd13c0396b053d72"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:a42887acde34ab3d1cd13c0396b053d72"><td class="memTemplItemLeft" align="right" valign="top">std::vector&lt; std::shared_ptr&lt; <a class="el" href="classecs_1_1_entity.html">Entity</a> &gt; &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a42887acde34ab3d1cd13c0396b053d72">GetEntitiesWithComponent</a> ()</td></tr>
<tr class="separator:a42887acde34ab3d1cd13c0396b053d72"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad84a022bfad4f381179c1e007d7c9c8a" id="r_ad84a022bfad4f381179c1e007d7c9c8a"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad84a022bfad4f381179c1e007d7c9c8a">GetEntityCount</a> () const</td></tr>
<tr class="separator:ad84a022bfad4f381179c1e007d7c9c8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6c31a8b7c0a01e473566fd801db91a55" id="r_a6c31a8b7c0a01e473566fd801db91a55"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6c31a8b7c0a01e473566fd801db91a55">Clear</a> ()</td></tr>
<tr class="separator:a6c31a8b7c0a01e473566fd801db91a55"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="entity__manager_8h_source.html#l00009">9</a> of file <a class="el" href="entity__manager_8h_source.html">entity_manager.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="acba3847d62f7cd79e22d5ffa490c1f53" name="acba3847d62f7cd79e22d5ffa490c1f53"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acba3847d62f7cd79e22d5ffa490c1f53">&#9670;&#160;</a></span>EntityManager()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ecs::EntityManager::EntityManager </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Type pour l'ID d'une entité. </p>
<p class="definition">Definition at line <a class="el" href="entity__manager_8h_source.html#l00015">15</a> of file <a class="el" href="entity__manager_8h_source.html">entity_manager.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 15</span>: m_NextEntityID(0) {}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a6c31a8b7c0a01e473566fd801db91a55" name="a6c31a8b7c0a01e473566fd801db91a55"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6c31a8b7c0a01e473566fd801db91a55">&#9670;&#160;</a></span>Clear()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::EntityManager::Clear </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Clear all entities and reset the <a class="el" href="classecs_1_1_entity_manager.html">EntityManager</a>. This will remove all entities and free their IDs for future use. </p>
<p class="definition">Definition at line <a class="el" href="entity__manager_8h_source.html#l00121">121</a> of file <a class="el" href="entity__manager_8h_source.html">entity_manager.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 121</span> {</div>
<div class="line"><span class="lineno"> 122</span> m_Entities.clear();</div>
<div class="line"><span class="lineno"> 123</span> </div>
<div class="line"><span class="lineno"> 124</span> <span class="comment">// Vider la file des IDs libres</span></div>
<div class="line"><span class="lineno"> 125</span> std::queue&lt;EntityID&gt; empty;</div>
<div class="line"><span class="lineno"> 126</span> std::swap(m_FreeIDs, empty);</div>
<div class="line"><span class="lineno"> 127</span> </div>
<div class="line"><span class="lineno"> 128</span> m_NextEntityID = 0;</div>
<div class="line"><span class="lineno"> 129</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a696dcb2fd36215b0a9214880d21033a2" name="a696dcb2fd36215b0a9214880d21033a2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a696dcb2fd36215b0a9214880d21033a2">&#9670;&#160;</a></span>CreateEntity()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::shared_ptr&lt; <a class="el" href="classecs_1_1_entity.html">Entity</a> &gt; ecs::EntityManager::CreateEntity </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Create a new entity. </p><dl class="section return"><dt>Returns</dt><dd>A shared pointer to the newly created entity. </dd></dl>
<p class="definition">Definition at line <a class="el" href="entity__manager_8h_source.html#l00022">22</a> of file <a class="el" href="entity__manager_8h_source.html">entity_manager.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 22</span> {</div>
<div class="line"><span class="lineno"> 23</span> <a class="code hl_typedef" href="namespaceecs.html#af256e267ca18f2601f8e804fd95e9358">EntityID</a> id;</div>
<div class="line"><span class="lineno"> 24</span> </div>
<div class="line"><span class="lineno"> 25</span> <span class="comment">// Réutiliser les IDs des entités supprimées si possible</span></div>
<div class="line"><span class="lineno"> 26</span> <span class="keywordflow">if</span> (!m_FreeIDs.empty()) {</div>
<div class="line"><span class="lineno"> 27</span> <span class="keywordtype">id</span> = m_FreeIDs.front();</div>
<div class="line"><span class="lineno"> 28</span> m_FreeIDs.pop();</div>
<div class="line"><span class="lineno"> 29</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><span class="lineno"> 30</span> <span class="keywordtype">id</span> = m_NextEntityID++;</div>
<div class="line"><span class="lineno"> 31</span> }</div>
<div class="line"><span class="lineno"> 32</span> </div>
<div class="line"><span class="lineno"> 33</span> <span class="keyword">auto</span> entity = std::make_shared&lt;Entity&gt;(<span class="keywordtype">id</span>);</div>
<div class="line"><span class="lineno"> 34</span> m_Entities[id] = entity;</div>
<div class="line"><span class="lineno"> 35</span> </div>
<div class="line"><span class="lineno"> 36</span> <span class="keywordflow">return</span> entity;</div>
<div class="line"><span class="lineno"> 37</span> }</div>
<div class="ttc" id="anamespaceecs_html_af256e267ca18f2601f8e804fd95e9358"><div class="ttname"><a href="namespaceecs.html#af256e267ca18f2601f8e804fd95e9358">ecs::EntityID</a></div><div class="ttdeci">uint32_t EntityID</div><div class="ttdef"><b>Definition</b> <a href="entity_8h_source.html#l00013">entity.h:13</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a4cb0da19e3a95b7cb1390843882176a9" name="a4cb0da19e3a95b7cb1390843882176a9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4cb0da19e3a95b7cb1390843882176a9">&#9670;&#160;</a></span>DestroyEntity()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::EntityManager::DestroyEntity </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespaceecs.html#af256e267ca18f2601f8e804fd95e9358">EntityID</a></td> <td class="paramname"><span class="paramname"><em>id</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Destroy an entity by its ID and recycle its ID for future use. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">id</td><td>The ID of the entity to destroy. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="entity__manager_8h_source.html#l00043">43</a> of file <a class="el" href="entity__manager_8h_source.html">entity_manager.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 43</span> {</div>
<div class="line"><span class="lineno"> 44</span> <span class="keyword">auto</span> it = m_Entities.find(<span class="keywordtype">id</span>);</div>
<div class="line"><span class="lineno"> 45</span> <span class="keywordflow">if</span> (it != m_Entities.end()) {</div>
<div class="line"><span class="lineno"> 46</span> m_Entities.erase(it);</div>
<div class="line"><span class="lineno"> 47</span> m_FreeIDs.push(<span class="keywordtype">id</span>); <span class="comment">// Recycler l&#39;ID</span></div>
<div class="line"><span class="lineno"> 48</span> }</div>
<div class="line"><span class="lineno"> 49</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="ad4116858dc1c324cdd558e5ac6c7f21b" name="ad4116858dc1c324cdd558e5ac6c7f21b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad4116858dc1c324cdd558e5ac6c7f21b">&#9670;&#160;</a></span>GetAllEntities()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::vector&lt; std::shared_ptr&lt; <a class="el" href="classecs_1_1_entity.html">Entity</a> &gt; &gt; ecs::EntityManager::GetAllEntities </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get all entities managed by the <a class="el" href="classecs_1_1_entity_manager.html">EntityManager</a>. </p><dl class="section return"><dt>Returns</dt><dd>A vector of shared pointers to all entities. </dd></dl>
<p class="definition">Definition at line <a class="el" href="entity__manager_8h_source.html#l00078">78</a> of file <a class="el" href="entity__manager_8h_source.html">entity_manager.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 78</span> {</div>
<div class="line"><span class="lineno"> 79</span> std::vector&lt;std::shared_ptr&lt;Entity&gt;&gt; result;</div>
<div class="line"><span class="lineno"> 80</span> result.reserve(m_Entities.size());</div>
<div class="line"><span class="lineno"> 81</span> </div>
<div class="line"><span class="lineno"> 82</span> <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span>&amp; [<span class="keywordtype">id</span>, entity] : m_Entities) {</div>
<div class="line"><span class="lineno"> 83</span> result.push_back(entity);</div>
<div class="line"><span class="lineno"> 84</span> }</div>
<div class="line"><span class="lineno"> 85</span> </div>
<div class="line"><span class="lineno"> 86</span> <span class="keywordflow">return</span> result;</div>
<div class="line"><span class="lineno"> 87</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a42887acde34ab3d1cd13c0396b053d72" name="a42887acde34ab3d1cd13c0396b053d72"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a42887acde34ab3d1cd13c0396b053d72">&#9670;&#160;</a></span>GetEntitiesWithComponent()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::vector&lt; std::shared_ptr&lt; <a class="el" href="classecs_1_1_entity.html">Entity</a> &gt; &gt; ecs::EntityManager::GetEntitiesWithComponent </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get all entities that have a specific component type. </p><dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">T</td><td>The component type to filter entities by. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A vector of shared pointers to entities that have the specified component. </dd></dl>
<p class="definition">Definition at line <a class="el" href="entity__manager_8h_source.html#l00095">95</a> of file <a class="el" href="entity__manager_8h_source.html">entity_manager.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 95</span> {</div>
<div class="line"><span class="lineno"> 96</span> <span class="keyword">static_assert</span>(std::is_base_of&lt;Component, T&gt;::value, <span class="stringliteral">&quot;T must derive from Component&quot;</span>);</div>
<div class="line"><span class="lineno"> 97</span> </div>
<div class="line"><span class="lineno"> 98</span> std::vector&lt;std::shared_ptr&lt;Entity&gt;&gt; result;</div>
<div class="line"><span class="lineno"> 99</span> </div>
<div class="line"><span class="lineno"> 100</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; [<span class="keywordtype">id</span>, entity] : m_Entities) {</div>
<div class="line"><span class="lineno"> 101</span> <span class="keywordflow">if</span> (entity-&gt;HasComponent&lt;T&gt;()) {</div>
<div class="line"><span class="lineno"> 102</span> result.push_back(entity);</div>
<div class="line"><span class="lineno"> 103</span> }</div>
<div class="line"><span class="lineno"> 104</span> }</div>
<div class="line"><span class="lineno"> 105</span> </div>
<div class="line"><span class="lineno"> 106</span> <span class="keywordflow">return</span> result;</div>
<div class="line"><span class="lineno"> 107</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a79acf6578756702d83d509dbf1fce0d8" name="a79acf6578756702d83d509dbf1fce0d8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a79acf6578756702d83d509dbf1fce0d8">&#9670;&#160;</a></span>GetEntity()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::shared_ptr&lt; <a class="el" href="classecs_1_1_entity.html">Entity</a> &gt; ecs::EntityManager::GetEntity </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespaceecs.html#af256e267ca18f2601f8e804fd95e9358">EntityID</a></td> <td class="paramname"><span class="paramname"><em>id</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get an entity by its ID. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">id</td><td>The ID of the entity to retrieve. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A shared pointer to the entity, or nullptr if it does not exist. </dd></dl>
<p class="definition">Definition at line <a class="el" href="entity__manager_8h_source.html#l00056">56</a> of file <a class="el" href="entity__manager_8h_source.html">entity_manager.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 56</span> {</div>
<div class="line"><span class="lineno"> 57</span> <span class="keyword">auto</span> it = m_Entities.find(<span class="keywordtype">id</span>);</div>
<div class="line"><span class="lineno"> 58</span> <span class="keywordflow">if</span> (it != m_Entities.end()) {</div>
<div class="line"><span class="lineno"> 59</span> <span class="keywordflow">return</span> it-&gt;second;</div>
<div class="line"><span class="lineno"> 60</span> }</div>
<div class="line"><span class="lineno"> 61</span> <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div>
<div class="line"><span class="lineno"> 62</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="ad84a022bfad4f381179c1e007d7c9c8a" name="ad84a022bfad4f381179c1e007d7c9c8a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad84a022bfad4f381179c1e007d7c9c8a">&#9670;&#160;</a></span>GetEntityCount()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t ecs::EntityManager::GetEntityCount </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the total number of entities managed by the <a class="el" href="classecs_1_1_entity_manager.html">EntityManager</a>. </p><dl class="section return"><dt>Returns</dt><dd>The count of entities. </dd></dl>
<p class="definition">Definition at line <a class="el" href="entity__manager_8h_source.html#l00113">113</a> of file <a class="el" href="entity__manager_8h_source.html">entity_manager.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 113</span> {</div>
<div class="line"><span class="lineno"> 114</span> <span class="keywordflow">return</span> m_Entities.size();</div>
<div class="line"><span class="lineno"> 115</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="aac0b39f03cc669d8bc8f3073daa2079c" name="aac0b39f03cc669d8bc8f3073daa2079c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aac0b39f03cc669d8bc8f3073daa2079c">&#9670;&#160;</a></span>UpdateEntities()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::EntityManager::UpdateEntities </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>deltaTime</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Update all entities by calling their UpdateComponents method. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">deltaTime</td><td>The time elapsed since the last update. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="entity__manager_8h_source.html#l00068">68</a> of file <a class="el" href="entity__manager_8h_source.html">entity_manager.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 68</span> {</div>
<div class="line"><span class="lineno"> 69</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; [<span class="keywordtype">id</span>, entity] : m_Entities) {</div>
<div class="line"><span class="lineno"> 70</span> entity-&gt;UpdateComponents(deltaTime);</div>
<div class="line"><span class="lineno"> 71</span> }</div>
<div class="line"><span class="lineno"> 72</span> }</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>enginecustom/src/inc/system/ecs/<a class="el" href="entity__manager_8h_source.html">entity_manager.h</a></li>
</ul>
</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="namespaceecs.html">ecs</a></li><li class="navelem"><a class="el" href="classecs_1_1_entity_manager.html">EntityManager</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,12 @@
var classecs_1_1_entity_manager =
[
[ "EntityManager", "classecs_1_1_entity_manager.html#acba3847d62f7cd79e22d5ffa490c1f53", null ],
[ "Clear", "classecs_1_1_entity_manager.html#a6c31a8b7c0a01e473566fd801db91a55", null ],
[ "CreateEntity", "classecs_1_1_entity_manager.html#a696dcb2fd36215b0a9214880d21033a2", null ],
[ "DestroyEntity", "classecs_1_1_entity_manager.html#a4cb0da19e3a95b7cb1390843882176a9", null ],
[ "GetAllEntities", "classecs_1_1_entity_manager.html#ad4116858dc1c324cdd558e5ac6c7f21b", null ],
[ "GetEntitiesWithComponent", "classecs_1_1_entity_manager.html#a42887acde34ab3d1cd13c0396b053d72", null ],
[ "GetEntity", "classecs_1_1_entity_manager.html#a79acf6578756702d83d509dbf1fce0d8", null ],
[ "GetEntityCount", "classecs_1_1_entity_manager.html#ad84a022bfad4f381179c1e007d7c9c8a", null ],
[ "UpdateEntities", "classecs_1_1_entity_manager.html#aac0b39f03cc669d8bc8f3073daa2079c", null ]
];

View File

@ -0,0 +1,134 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classecs_1_1_identity_component.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">ecs::IdentityComponent Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classecs_1_1_identity_component.html">ecs::IdentityComponent</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Component</b>()=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>Component</b>(const Component &amp;)=delete (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Component</b>(Component &amp;&amp;)=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_identity_component.html#af7fcece7aaa148512ba153d1d3a4cc1c">GetId</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_identity_component.html">ecs::IdentityComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_identity_component.html#a6f97e89a74db7fda99f144c66c17935f">GetName</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_identity_component.html">ecs::IdentityComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_identity_component.html#abc33d5a325706c7c115b88fd9635a4cd">GetType</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_identity_component.html">ecs::IdentityComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_identity_component.html#a253122e10cbe22c42831d250d48a8316">IdentityComponent</a>()</td><td class="entry"><a class="el" href="classecs_1_1_identity_component.html">ecs::IdentityComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>IdentityComponent</b>(int id) (defined in <a class="el" href="classecs_1_1_identity_component.html">ecs::IdentityComponent</a>)</td><td class="entry"><a class="el" href="classecs_1_1_identity_component.html">ecs::IdentityComponent</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>IdentityComponent</b>(int id, const std::string &amp;name) (defined in <a class="el" href="classecs_1_1_identity_component.html">ecs::IdentityComponent</a>)</td><td class="entry"><a class="el" href="classecs_1_1_identity_component.html">ecs::IdentityComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_identity_component.html#a04b2bb43ccf6c4842704f30463033b3b">Initialize</a>() override</td><td class="entry"><a class="el" href="classecs_1_1_identity_component.html">ecs::IdentityComponent</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_identity_component.html#a46f22b04d81b17bea5807d5b9d32b328">ObjectTypeToString</a>(ObjectType type)</td><td class="entry"><a class="el" href="classecs_1_1_identity_component.html">ecs::IdentityComponent</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>operator=</b>(const Component &amp;)=delete (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(Component &amp;&amp;)=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_identity_component.html#a69797f6d9f9926293d2e0b4e84e3bbb3">SetId</a>(int id)</td><td class="entry"><a class="el" href="classecs_1_1_identity_component.html">ecs::IdentityComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_identity_component.html#aa04b3e5f2e40271ba50dfd35c3217013">SetName</a>(const std::string &amp;name)</td><td class="entry"><a class="el" href="classecs_1_1_identity_component.html">ecs::IdentityComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_identity_component.html#a7cbca5e7e2c877b45c900df4660c0e35">SetType</a>(ObjectType type)</td><td class="entry"><a class="el" href="classecs_1_1_identity_component.html">ecs::IdentityComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_identity_component.html#a9a92b2a27ec5399096a3ad196d2dec3f">StringToObjectType</a>(const std::string &amp;str)</td><td class="entry"><a class="el" href="classecs_1_1_identity_component.html">ecs::IdentityComponent</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_component.html#a59c0f739c4ff19227e27ed7b9f6352e0">Update</a>(float deltaTime)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~Component</b>()=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~IdentityComponent</b>()=default (defined in <a class="el" href="classecs_1_1_identity_component.html">ecs::IdentityComponent</a>)</td><td class="entry"><a class="el" href="classecs_1_1_identity_component.html">ecs::IdentityComponent</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,570 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: ecs::IdentityComponent Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classecs_1_1_identity_component.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="classecs_1_1_identity_component-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">ecs::IdentityComponent Class Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Inheritance diagram for ecs::IdentityComponent:</div>
<div class="dyncontent">
<div class="center">
<img src="classecs_1_1_identity_component.png" usemap="#ecs::IdentityComponent_map" alt=""/>
<map id="ecs::IdentityComponent_map" name="ecs::IdentityComponent_map">
<area href="classecs_1_1_component.html" alt="ecs::Component" shape="rect" coords="0,0,141,24"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a253122e10cbe22c42831d250d48a8316" id="r_a253122e10cbe22c42831d250d48a8316"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a253122e10cbe22c42831d250d48a8316">IdentityComponent</a> ()</td></tr>
<tr class="separator:a253122e10cbe22c42831d250d48a8316"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a99226afd520c616f5f2a04074e076acc" id="r_a99226afd520c616f5f2a04074e076acc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a99226afd520c616f5f2a04074e076acc">IdentityComponent</a> (int id)</td></tr>
<tr class="separator:a99226afd520c616f5f2a04074e076acc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2dd90b29ef25585a52f93383b8e00632" id="r_a2dd90b29ef25585a52f93383b8e00632"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2dd90b29ef25585a52f93383b8e00632">IdentityComponent</a> (int id, const std::string &amp;name)</td></tr>
<tr class="separator:a2dd90b29ef25585a52f93383b8e00632"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a04b2bb43ccf6c4842704f30463033b3b" id="r_a04b2bb43ccf6c4842704f30463033b3b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a04b2bb43ccf6c4842704f30463033b3b">Initialize</a> () override</td></tr>
<tr class="separator:a04b2bb43ccf6c4842704f30463033b3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7fcece7aaa148512ba153d1d3a4cc1c" id="r_af7fcece7aaa148512ba153d1d3a4cc1c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af7fcece7aaa148512ba153d1d3a4cc1c">GetId</a> () const</td></tr>
<tr class="separator:af7fcece7aaa148512ba153d1d3a4cc1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69797f6d9f9926293d2e0b4e84e3bbb3" id="r_a69797f6d9f9926293d2e0b4e84e3bbb3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a69797f6d9f9926293d2e0b4e84e3bbb3">SetId</a> (int id)</td></tr>
<tr class="separator:a69797f6d9f9926293d2e0b4e84e3bbb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6f97e89a74db7fda99f144c66c17935f" id="r_a6f97e89a74db7fda99f144c66c17935f"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6f97e89a74db7fda99f144c66c17935f">GetName</a> () const</td></tr>
<tr class="separator:a6f97e89a74db7fda99f144c66c17935f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa04b3e5f2e40271ba50dfd35c3217013" id="r_aa04b3e5f2e40271ba50dfd35c3217013"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa04b3e5f2e40271ba50dfd35c3217013">SetName</a> (const std::string &amp;name)</td></tr>
<tr class="separator:aa04b3e5f2e40271ba50dfd35c3217013"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc33d5a325706c7c115b88fd9635a4cd" id="r_abc33d5a325706c7c115b88fd9635a4cd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceecs.html#ab36dd172176a3da5558233694cbad4ae">ObjectType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abc33d5a325706c7c115b88fd9635a4cd">GetType</a> () const</td></tr>
<tr class="separator:abc33d5a325706c7c115b88fd9635a4cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7cbca5e7e2c877b45c900df4660c0e35" id="r_a7cbca5e7e2c877b45c900df4660c0e35"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a7cbca5e7e2c877b45c900df4660c0e35">SetType</a> (<a class="el" href="namespaceecs.html#ab36dd172176a3da5558233694cbad4ae">ObjectType</a> type)</td></tr>
<tr class="separator:a7cbca5e7e2c877b45c900df4660c0e35"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classecs_1_1_component"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_classecs_1_1_component')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classecs_1_1_component.html">ecs::Component</a></td></tr>
<tr class="memitem:a8dbee43fa54890ad07145aa1160b0b09 inherit pub_methods_classecs_1_1_component" id="r_a8dbee43fa54890ad07145aa1160b0b09"><td class="memItemLeft" align="right" valign="top">
&#160;</td><td class="memItemRight" valign="bottom"><b>Component</b> (const <a class="el" href="classecs_1_1_component.html">Component</a> &amp;)=delete</td></tr>
<tr class="separator:a8dbee43fa54890ad07145aa1160b0b09 inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34000da33471994c2550e416505026ad inherit pub_methods_classecs_1_1_component" id="r_a34000da33471994c2550e416505026ad"><td class="memItemLeft" align="right" valign="top">
<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classecs_1_1_component.html">Component</a> &amp;)=delete</td></tr>
<tr class="separator:a34000da33471994c2550e416505026ad inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a213cfa3482dca1ffc458b9cf020b4814 inherit pub_methods_classecs_1_1_component" id="r_a213cfa3482dca1ffc458b9cf020b4814"><td class="memItemLeft" align="right" valign="top">
&#160;</td><td class="memItemRight" valign="bottom"><b>Component</b> (<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&amp;)=default</td></tr>
<tr class="separator:a213cfa3482dca1ffc458b9cf020b4814 inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8089d7e43f9ac2a6eedd3b0598c46694 inherit pub_methods_classecs_1_1_component" id="r_a8089d7e43f9ac2a6eedd3b0598c46694"><td class="memItemLeft" align="right" valign="top">
<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&amp;)=default</td></tr>
<tr class="separator:a8089d7e43f9ac2a6eedd3b0598c46694 inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59c0f739c4ff19227e27ed7b9f6352e0 inherit pub_methods_classecs_1_1_component" id="r_a59c0f739c4ff19227e27ed7b9f6352e0"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classecs_1_1_component.html#a59c0f739c4ff19227e27ed7b9f6352e0">Update</a> (float deltaTime)</td></tr>
<tr class="separator:a59c0f739c4ff19227e27ed7b9f6352e0 inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a46f22b04d81b17bea5807d5b9d32b328" id="r_a46f22b04d81b17bea5807d5b9d32b328"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a46f22b04d81b17bea5807d5b9d32b328">ObjectTypeToString</a> (<a class="el" href="namespaceecs.html#ab36dd172176a3da5558233694cbad4ae">ObjectType</a> type)</td></tr>
<tr class="separator:a46f22b04d81b17bea5807d5b9d32b328"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9a92b2a27ec5399096a3ad196d2dec3f" id="r_a9a92b2a27ec5399096a3ad196d2dec3f"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="namespaceecs.html#ab36dd172176a3da5558233694cbad4ae">ObjectType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9a92b2a27ec5399096a3ad196d2dec3f">StringToObjectType</a> (const std::string &amp;str)</td></tr>
<tr class="separator:a9a92b2a27ec5399096a3ad196d2dec3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="identity__component_8h_source.html#l00018">18</a> of file <a class="el" href="identity__component_8h_source.html">identity_component.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a253122e10cbe22c42831d250d48a8316" name="a253122e10cbe22c42831d250d48a8316"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a253122e10cbe22c42831d250d48a8316">&#9670;&#160;</a></span>IdentityComponent() <span class="overload">[1/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ecs::IdentityComponent::IdentityComponent </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Builder for the <a class="el" href="classecs_1_1_identity_component.html">IdentityComponent</a> class. </p>
<p class="definition">Definition at line <a class="el" href="identity__component_8h_source.html#l00023">23</a> of file <a class="el" href="identity__component_8h_source.html">identity_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 23</span>: m_id(0), m_type(ObjectType::Unknown) {}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a99226afd520c616f5f2a04074e076acc" name="a99226afd520c616f5f2a04074e076acc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a99226afd520c616f5f2a04074e076acc">&#9670;&#160;</a></span>IdentityComponent() <span class="overload">[2/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ecs::IdentityComponent::IdentityComponent </td>
<td>(</td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>id</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="identity__component_8h_source.html#l00024">24</a> of file <a class="el" href="identity__component_8h_source.html">identity_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 24</span>: m_id(<span class="keywordtype">id</span>), m_type(ObjectType::Unknown) {}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a2dd90b29ef25585a52f93383b8e00632" name="a2dd90b29ef25585a52f93383b8e00632"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2dd90b29ef25585a52f93383b8e00632">&#9670;&#160;</a></span>IdentityComponent() <span class="overload">[3/3]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ecs::IdentityComponent::IdentityComponent </td>
<td>(</td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>id</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::string &amp;</td> <td class="paramname"><span class="paramname"><em>name</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="identity__component_8h_source.html#l00025">25</a> of file <a class="el" href="identity__component_8h_source.html">identity_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 25</span>: m_id(<span class="keywordtype">id</span>), m_name(name), m_type(ObjectType::Unknown) {}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="af7fcece7aaa148512ba153d1d3a4cc1c" name="af7fcece7aaa148512ba153d1d3a4cc1c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af7fcece7aaa148512ba153d1d3a4cc1c">&#9670;&#160;</a></span>GetId()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int ecs::IdentityComponent::GetId </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the ID stored by the component. </p><dl class="section return"><dt>Returns</dt><dd>The ID as an int. </dd></dl>
<p class="definition">Definition at line <a class="el" href="identity__component_8h_source.html#l00040">40</a> of file <a class="el" href="identity__component_8h_source.html">identity_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 40</span>{ <span class="keywordflow">return</span> m_id; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a6f97e89a74db7fda99f144c66c17935f" name="a6f97e89a74db7fda99f144c66c17935f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6f97e89a74db7fda99f144c66c17935f">&#9670;&#160;</a></span>GetName()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const std::string &amp; ecs::IdentityComponent::GetName </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the name of the object. </p><dl class="section return"><dt>Returns</dt><dd>The name as a string. </dd></dl>
<p class="definition">Definition at line <a class="el" href="identity__component_8h_source.html#l00051">51</a> of file <a class="el" href="identity__component_8h_source.html">identity_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 51</span>{ <span class="keywordflow">return</span> m_name; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="abc33d5a325706c7c115b88fd9635a4cd" name="abc33d5a325706c7c115b88fd9635a4cd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abc33d5a325706c7c115b88fd9635a4cd">&#9670;&#160;</a></span>GetType()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceecs.html#ab36dd172176a3da5558233694cbad4ae">ObjectType</a> ecs::IdentityComponent::GetType </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the type of the object. </p><dl class="section return"><dt>Returns</dt><dd>The type as an ObjectType enum. </dd></dl>
<p class="definition">Definition at line <a class="el" href="identity__component_8h_source.html#l00062">62</a> of file <a class="el" href="identity__component_8h_source.html">identity_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 62</span>{ <span class="keywordflow">return</span> m_type; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a04b2bb43ccf6c4842704f30463033b3b" name="a04b2bb43ccf6c4842704f30463033b3b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a04b2bb43ccf6c4842704f30463033b3b">&#9670;&#160;</a></span>Initialize()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::IdentityComponent::Initialize </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Initialize the component. This method is called when the component is added to an entity. It can be used to set up initial values or perform any necessary setup. </p>
<p>Reimplemented from <a class="el" href="classecs_1_1_component.html#a9372874f51e5f63584d65fc378d39459">ecs::Component</a>.</p>
<p class="definition">Definition at line <a class="el" href="identity__component_8h_source.html#l00033">33</a> of file <a class="el" href="identity__component_8h_source.html">identity_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 33</span>{}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a46f22b04d81b17bea5807d5b9d32b328" name="a46f22b04d81b17bea5807d5b9d32b328"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a46f22b04d81b17bea5807d5b9d32b328">&#9670;&#160;</a></span>ObjectTypeToString()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static std::string ecs::IdentityComponent::ObjectTypeToString </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespaceecs.html#ab36dd172176a3da5558233694cbad4ae">ObjectType</a></td> <td class="paramname"><span class="paramname"><em>type</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Convert an ObjectType to a string representation. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">type</td><td>The ObjectType to convert. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A string representation of the ObjectType. </dd></dl>
<p class="definition">Definition at line <a class="el" href="identity__component_8h_source.html#l00074">74</a> of file <a class="el" href="identity__component_8h_source.html">identity_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 74</span> {</div>
<div class="line"><span class="lineno"> 75</span> <span class="keywordflow">switch</span> (type) {</div>
<div class="line"><span class="lineno"> 76</span> <span class="keywordflow">case</span> ObjectType::Cube: <span class="keywordflow">return</span> <span class="stringliteral">&quot;Cube&quot;</span>;</div>
<div class="line"><span class="lineno"> 77</span> <span class="keywordflow">case</span> ObjectType::Sphere: <span class="keywordflow">return</span> <span class="stringliteral">&quot;Sphere&quot;</span>;</div>
<div class="line"><span class="lineno"> 78</span> <span class="keywordflow">case</span> ObjectType::Terrain: <span class="keywordflow">return</span> <span class="stringliteral">&quot;Terrain&quot;</span>;</div>
<div class="line"><span class="lineno"> 79</span> <span class="keywordflow">default</span>: <span class="keywordflow">return</span> <span class="stringliteral">&quot;Unknown&quot;</span>;</div>
<div class="line"><span class="lineno"> 80</span> }</div>
<div class="line"><span class="lineno"> 81</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a69797f6d9f9926293d2e0b4e84e3bbb3" name="a69797f6d9f9926293d2e0b4e84e3bbb3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a69797f6d9f9926293d2e0b4e84e3bbb3">&#9670;&#160;</a></span>SetId()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::IdentityComponent::SetId </td>
<td>(</td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>id</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the ID for the component. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">id</td><td>The ID to set. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="identity__component_8h_source.html#l00045">45</a> of file <a class="el" href="identity__component_8h_source.html">identity_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 45</span>{ m_id = id; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="aa04b3e5f2e40271ba50dfd35c3217013" name="aa04b3e5f2e40271ba50dfd35c3217013"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa04b3e5f2e40271ba50dfd35c3217013">&#9670;&#160;</a></span>SetName()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::IdentityComponent::SetName </td>
<td>(</td>
<td class="paramtype">const std::string &amp;</td> <td class="paramname"><span class="paramname"><em>name</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the name of the object. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">name</td><td>The name to set. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="identity__component_8h_source.html#l00056">56</a> of file <a class="el" href="identity__component_8h_source.html">identity_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 56</span>{ m_name = name; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a7cbca5e7e2c877b45c900df4660c0e35" name="a7cbca5e7e2c877b45c900df4660c0e35"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7cbca5e7e2c877b45c900df4660c0e35">&#9670;&#160;</a></span>SetType()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::IdentityComponent::SetType </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespaceecs.html#ab36dd172176a3da5558233694cbad4ae">ObjectType</a></td> <td class="paramname"><span class="paramname"><em>type</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the type of the object. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">type</td><td>The type to set as an ObjectType enum. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="identity__component_8h_source.html#l00067">67</a> of file <a class="el" href="identity__component_8h_source.html">identity_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 67</span>{ m_type = type; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a9a92b2a27ec5399096a3ad196d2dec3f" name="a9a92b2a27ec5399096a3ad196d2dec3f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9a92b2a27ec5399096a3ad196d2dec3f">&#9670;&#160;</a></span>StringToObjectType()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static <a class="el" href="namespaceecs.html#ab36dd172176a3da5558233694cbad4ae">ObjectType</a> ecs::IdentityComponent::StringToObjectType </td>
<td>(</td>
<td class="paramtype">const std::string &amp;</td> <td class="paramname"><span class="paramname"><em>str</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Convert a string representation to an ObjectType. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">str</td><td>The string to convert. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The corresponding ObjectType, or Unknown if the string does not match any type. </dd></dl>
<p class="definition">Definition at line <a class="el" href="identity__component_8h_source.html#l00088">88</a> of file <a class="el" href="identity__component_8h_source.html">identity_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 88</span> {</div>
<div class="line"><span class="lineno"> 89</span> <span class="keywordflow">if</span> (str == <span class="stringliteral">&quot;Cube&quot;</span>) <span class="keywordflow">return</span> ObjectType::Cube;</div>
<div class="line"><span class="lineno"> 90</span> <span class="keywordflow">if</span> (str == <span class="stringliteral">&quot;Sphere&quot;</span>) <span class="keywordflow">return</span> ObjectType::Sphere;</div>
<div class="line"><span class="lineno"> 91</span> <span class="keywordflow">if</span> (str == <span class="stringliteral">&quot;Terrain&quot;</span>) <span class="keywordflow">return</span> ObjectType::Terrain;</div>
<div class="line"><span class="lineno"> 92</span> <span class="keywordflow">return</span> ObjectType::Unknown;</div>
<div class="line"><span class="lineno"> 93</span> }</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>enginecustom/src/inc/system/ecs/components/<a class="el" href="identity__component_8h_source.html">identity_component.h</a></li>
</ul>
</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="namespaceecs.html">ecs</a></li><li class="navelem"><a class="el" href="classecs_1_1_identity_component.html">IdentityComponent</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,11 @@
var classecs_1_1_identity_component =
[
[ "IdentityComponent", "classecs_1_1_identity_component.html#a253122e10cbe22c42831d250d48a8316", null ],
[ "GetId", "classecs_1_1_identity_component.html#af7fcece7aaa148512ba153d1d3a4cc1c", null ],
[ "GetName", "classecs_1_1_identity_component.html#a6f97e89a74db7fda99f144c66c17935f", null ],
[ "GetType", "classecs_1_1_identity_component.html#abc33d5a325706c7c115b88fd9635a4cd", null ],
[ "Initialize", "classecs_1_1_identity_component.html#a04b2bb43ccf6c4842704f30463033b3b", null ],
[ "SetId", "classecs_1_1_identity_component.html#a69797f6d9f9926293d2e0b4e84e3bbb3", null ],
[ "SetName", "classecs_1_1_identity_component.html#aa04b3e5f2e40271ba50dfd35c3217013", null ],
[ "SetType", "classecs_1_1_identity_component.html#a7cbca5e7e2c877b45c900df4660c0e35", null ]
];

Binary file not shown.

After

Width:  |  Height:  |  Size: 601 B

View File

@ -0,0 +1,127 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classecs_1_1_model_path_component.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">ecs::ModelPathComponent Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classecs_1_1_model_path_component.html">ecs::ModelPathComponent</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Component</b>()=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>Component</b>(const Component &amp;)=delete (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Component</b>(Component &amp;&amp;)=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_model_path_component.html#a7996bbc72216b56b0b26cef13acad6cc">GetPath</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_model_path_component.html">ecs::ModelPathComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_model_path_component.html#a8819a3be58b6748ced6763a598e2f7f8">Initialize</a>() override</td><td class="entry"><a class="el" href="classecs_1_1_model_path_component.html">ecs::ModelPathComponent</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>ModelPathComponent</b>()=default (defined in <a class="el" href="classecs_1_1_model_path_component.html">ecs::ModelPathComponent</a>)</td><td class="entry"><a class="el" href="classecs_1_1_model_path_component.html">ecs::ModelPathComponent</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ModelPathComponent</b>(const std::wstring &amp;path) (defined in <a class="el" href="classecs_1_1_model_path_component.html">ecs::ModelPathComponent</a>)</td><td class="entry"><a class="el" href="classecs_1_1_model_path_component.html">ecs::ModelPathComponent</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>operator=</b>(const Component &amp;)=delete (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(Component &amp;&amp;)=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_model_path_component.html#aeef7076b697463196a2ce5440ca10f89">SetPath</a>(const std::wstring &amp;path)</td><td class="entry"><a class="el" href="classecs_1_1_model_path_component.html">ecs::ModelPathComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_model_path_component.html#a64d1c1fa22bb222e6c85f5312ea8795b">Update</a>(float deltaTime) override</td><td class="entry"><a class="el" href="classecs_1_1_model_path_component.html">ecs::ModelPathComponent</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~Component</b>()=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~ModelPathComponent</b>()=default (defined in <a class="el" href="classecs_1_1_model_path_component.html">ecs::ModelPathComponent</a>)</td><td class="entry"><a class="el" href="classecs_1_1_model_path_component.html">ecs::ModelPathComponent</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,317 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: ecs::ModelPathComponent Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classecs_1_1_model_path_component.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classecs_1_1_model_path_component-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">ecs::ModelPathComponent Class Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Inheritance diagram for ecs::ModelPathComponent:</div>
<div class="dyncontent">
<div class="center">
<img src="classecs_1_1_model_path_component.png" usemap="#ecs::ModelPathComponent_map" alt=""/>
<map id="ecs::ModelPathComponent_map" name="ecs::ModelPathComponent_map">
<area href="classecs_1_1_component.html" alt="ecs::Component" shape="rect" coords="0,0,161,24"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a78cd8d3fa00775dce8e66719376a6c39" id="r_a78cd8d3fa00775dce8e66719376a6c39"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a78cd8d3fa00775dce8e66719376a6c39">ModelPathComponent</a> (const std::wstring &amp;path)</td></tr>
<tr class="separator:a78cd8d3fa00775dce8e66719376a6c39"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8819a3be58b6748ced6763a598e2f7f8" id="r_a8819a3be58b6748ced6763a598e2f7f8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8819a3be58b6748ced6763a598e2f7f8">Initialize</a> () override</td></tr>
<tr class="separator:a8819a3be58b6748ced6763a598e2f7f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a64d1c1fa22bb222e6c85f5312ea8795b" id="r_a64d1c1fa22bb222e6c85f5312ea8795b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a64d1c1fa22bb222e6c85f5312ea8795b">Update</a> (float deltaTime) override</td></tr>
<tr class="separator:a64d1c1fa22bb222e6c85f5312ea8795b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7996bbc72216b56b0b26cef13acad6cc" id="r_a7996bbc72216b56b0b26cef13acad6cc"><td class="memItemLeft" align="right" valign="top">const std::wstring &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a7996bbc72216b56b0b26cef13acad6cc">GetPath</a> () const</td></tr>
<tr class="separator:a7996bbc72216b56b0b26cef13acad6cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeef7076b697463196a2ce5440ca10f89" id="r_aeef7076b697463196a2ce5440ca10f89"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aeef7076b697463196a2ce5440ca10f89">SetPath</a> (const std::wstring &amp;path)</td></tr>
<tr class="separator:aeef7076b697463196a2ce5440ca10f89"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classecs_1_1_component"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_classecs_1_1_component')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classecs_1_1_component.html">ecs::Component</a></td></tr>
<tr class="memitem:a8dbee43fa54890ad07145aa1160b0b09 inherit pub_methods_classecs_1_1_component" id="r_a8dbee43fa54890ad07145aa1160b0b09"><td class="memItemLeft" align="right" valign="top">
&#160;</td><td class="memItemRight" valign="bottom"><b>Component</b> (const <a class="el" href="classecs_1_1_component.html">Component</a> &amp;)=delete</td></tr>
<tr class="separator:a8dbee43fa54890ad07145aa1160b0b09 inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34000da33471994c2550e416505026ad inherit pub_methods_classecs_1_1_component" id="r_a34000da33471994c2550e416505026ad"><td class="memItemLeft" align="right" valign="top">
<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classecs_1_1_component.html">Component</a> &amp;)=delete</td></tr>
<tr class="separator:a34000da33471994c2550e416505026ad inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a213cfa3482dca1ffc458b9cf020b4814 inherit pub_methods_classecs_1_1_component" id="r_a213cfa3482dca1ffc458b9cf020b4814"><td class="memItemLeft" align="right" valign="top">
&#160;</td><td class="memItemRight" valign="bottom"><b>Component</b> (<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&amp;)=default</td></tr>
<tr class="separator:a213cfa3482dca1ffc458b9cf020b4814 inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8089d7e43f9ac2a6eedd3b0598c46694 inherit pub_methods_classecs_1_1_component" id="r_a8089d7e43f9ac2a6eedd3b0598c46694"><td class="memItemLeft" align="right" valign="top">
<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&amp;)=default</td></tr>
<tr class="separator:a8089d7e43f9ac2a6eedd3b0598c46694 inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="model__path__component_8h_source.html#l00007">7</a> of file <a class="el" href="model__path__component_8h_source.html">model_path_component.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a78cd8d3fa00775dce8e66719376a6c39" name="a78cd8d3fa00775dce8e66719376a6c39"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a78cd8d3fa00775dce8e66719376a6c39">&#9670;&#160;</a></span>ModelPathComponent()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ecs::ModelPathComponent::ModelPathComponent </td>
<td>(</td>
<td class="paramtype">const std::wstring &amp;</td> <td class="paramname"><span class="paramname"><em>path</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="model__path__component_8h_source.html#l00010">10</a> of file <a class="el" href="model__path__component_8h_source.html">model_path_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 10</span>: m_path(path) {}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a7996bbc72216b56b0b26cef13acad6cc" name="a7996bbc72216b56b0b26cef13acad6cc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7996bbc72216b56b0b26cef13acad6cc">&#9670;&#160;</a></span>GetPath()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const std::wstring &amp; ecs::ModelPathComponent::GetPath </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the path of the model. </p><dl class="section return"><dt>Returns</dt><dd>The path as a std::wstring. </dd></dl>
<p class="definition">Definition at line <a class="el" href="model__path__component_8h_source.html#l00020">20</a> of file <a class="el" href="model__path__component_8h_source.html">model_path_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 20</span>{ <span class="keywordflow">return</span> m_path; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a8819a3be58b6748ced6763a598e2f7f8" name="a8819a3be58b6748ced6763a598e2f7f8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8819a3be58b6748ced6763a598e2f7f8">&#9670;&#160;</a></span>Initialize()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::ModelPathComponent::Initialize </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Virtual function to initialize the component. </p>
<p>Reimplemented from <a class="el" href="classecs_1_1_component.html#a9372874f51e5f63584d65fc378d39459">ecs::Component</a>.</p>
<p class="definition">Definition at line <a class="el" href="model__path__component_8h_source.html#l00013">13</a> of file <a class="el" href="model__path__component_8h_source.html">model_path_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 13</span>{}</div>
</div><!-- fragment -->
</div>
</div>
<a id="aeef7076b697463196a2ce5440ca10f89" name="aeef7076b697463196a2ce5440ca10f89"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeef7076b697463196a2ce5440ca10f89">&#9670;&#160;</a></span>SetPath()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::ModelPathComponent::SetPath </td>
<td>(</td>
<td class="paramtype">const std::wstring &amp;</td> <td class="paramname"><span class="paramname"><em>path</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the path of the model. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">path</td><td>The path to set as a std::wstring. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="model__path__component_8h_source.html#l00025">25</a> of file <a class="el" href="model__path__component_8h_source.html">model_path_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 25</span>{ m_path = path; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a64d1c1fa22bb222e6c85f5312ea8795b" name="a64d1c1fa22bb222e6c85f5312ea8795b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a64d1c1fa22bb222e6c85f5312ea8795b">&#9670;&#160;</a></span>Update()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::ModelPathComponent::Update </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>deltaTime</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Virtual function to update the component. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">deltaTime</td><td>Time since the last update. </td></tr>
</table>
</dd>
</dl>
<p>Reimplemented from <a class="el" href="classecs_1_1_component.html#a59c0f739c4ff19227e27ed7b9f6352e0">ecs::Component</a>.</p>
<p class="definition">Definition at line <a class="el" href="model__path__component_8h_source.html#l00014">14</a> of file <a class="el" href="model__path__component_8h_source.html">model_path_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 14</span>{}</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>enginecustom/src/inc/system/ecs/components/<a class="el" href="model__path__component_8h_source.html">model_path_component.h</a></li>
</ul>
</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="namespaceecs.html">ecs</a></li><li class="navelem"><a class="el" href="classecs_1_1_model_path_component.html">ModelPathComponent</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,7 @@
var classecs_1_1_model_path_component =
[
[ "GetPath", "classecs_1_1_model_path_component.html#a7996bbc72216b56b0b26cef13acad6cc", null ],
[ "Initialize", "classecs_1_1_model_path_component.html#a8819a3be58b6748ced6763a598e2f7f8", null ],
[ "SetPath", "classecs_1_1_model_path_component.html#aeef7076b697463196a2ce5440ca10f89", null ],
[ "Update", "classecs_1_1_model_path_component.html#a64d1c1fa22bb222e6c85f5312ea8795b", null ]
];

Binary file not shown.

After

Width:  |  Height:  |  Size: 628 B

View File

@ -0,0 +1,142 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classecs_1_1_physics_component.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">ecs::PhysicsComponent Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Component</b>()=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>Component</b>(const Component &amp;)=delete (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Component</b>(Component &amp;&amp;)=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_physics_component.html#ae40284b6a494abd2ad1d8a4bbb641117">GetAcceleration</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_physics_component.html#acb77c488322bbb5776e08fd9be5908d7">GetBoundingRadius</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_physics_component.html#acbe98be444ae347a32951435472e5a28">GetMass</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_physics_component.html#af3e592a83a8145612bea36927c222082">GetPreviousPosition</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_physics_component.html#abc1702442a7fa0915f7760b20d5a17ae">GetVelocity</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_physics_component.html#ab58952fc61030f1047beb2d6dbec82cf">Initialize</a>() override</td><td class="entry"><a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_physics_component.html#a29ed13dad5513dff62d8427e856bd74d">IsGravityEnabled</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_physics_component.html#ae3438c93efe882c97086e0f9bc2f54dd">IsGrounded</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_physics_component.html#ab1d2d882d7ff058a67d3e266257edb95">IsPhysicsEnabled</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_physics_component.html#a156fb8329b7b2434ee94ab8c03fdc6e2">LaunchObject</a>(float alpha, float initialStretch, float springConstant)</td><td class="entry"><a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>operator=</b>(const Component &amp;)=delete (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(Component &amp;&amp;)=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_physics_component.html#a13c45de519868a3e035fc8a3cb4c3da0">PhysicsComponent</a>()</td><td class="entry"><a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_physics_component.html#a462dd9f0b3452e9c98d5dea7d9959f50">SetAcceleration</a>(XMVECTOR acceleration)</td><td class="entry"><a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_physics_component.html#ab95922862da80f63814d47f8c2b69cea">SetBoundingRadius</a>(float radius)</td><td class="entry"><a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_physics_component.html#a19fa3fa510051cc0d8a0ddb21e92f9fe">SetGravityEnabled</a>(bool enabled)</td><td class="entry"><a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_physics_component.html#ab750af34ccb7fd9f2cb4cea2c7a9a253">SetGrounded</a>(bool isGrounded)</td><td class="entry"><a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_physics_component.html#af091ab5887798b0407700d4712795a0c">SetMass</a>(float mass)</td><td class="entry"><a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_physics_component.html#afb716a1474b17b0bcf1c4eb7b6f3c758">SetPhysicsEnabled</a>(bool enabled)</td><td class="entry"><a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_physics_component.html#a9fd15ccd7dfe9955116ac5d52e01a6e7">SetPreviousPosition</a>(XMVECTOR position)</td><td class="entry"><a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_physics_component.html#a93d17ee763b557489210f35b54829976">SetUpdatePositionCallback</a>(std::function&lt; void(XMVECTOR)&gt; callback)</td><td class="entry"><a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_physics_component.html#a5a4f3b4503ce9b199da87f5e11673501">SetVelocity</a>(XMVECTOR velocity)</td><td class="entry"><a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_physics_component.html#a83aaa878464b8ef2dbc0e7a927689d79">Update</a>(float deltaTime) override</td><td class="entry"><a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~Component</b>()=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~PhysicsComponent</b>()=default (defined in <a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a>)</td><td class="entry"><a class="el" href="classecs_1_1_physics_component.html">ecs::PhysicsComponent</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,930 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: ecs::PhysicsComponent Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classecs_1_1_physics_component.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classecs_1_1_physics_component-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">ecs::PhysicsComponent Class Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Inheritance diagram for ecs::PhysicsComponent:</div>
<div class="dyncontent">
<div class="center">
<img src="classecs_1_1_physics_component.png" usemap="#ecs::PhysicsComponent_map" alt=""/>
<map id="ecs::PhysicsComponent_map" name="ecs::PhysicsComponent_map">
<area href="classecs_1_1_component.html" alt="ecs::Component" shape="rect" coords="0,0,145,24"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a13c45de519868a3e035fc8a3cb4c3da0" id="r_a13c45de519868a3e035fc8a3cb4c3da0"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a13c45de519868a3e035fc8a3cb4c3da0">PhysicsComponent</a> ()</td></tr>
<tr class="separator:a13c45de519868a3e035fc8a3cb4c3da0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab58952fc61030f1047beb2d6dbec82cf" id="r_ab58952fc61030f1047beb2d6dbec82cf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab58952fc61030f1047beb2d6dbec82cf">Initialize</a> () override</td></tr>
<tr class="separator:ab58952fc61030f1047beb2d6dbec82cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a83aaa878464b8ef2dbc0e7a927689d79" id="r_a83aaa878464b8ef2dbc0e7a927689d79"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a83aaa878464b8ef2dbc0e7a927689d79">Update</a> (float deltaTime) override</td></tr>
<tr class="separator:a83aaa878464b8ef2dbc0e7a927689d79"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a156fb8329b7b2434ee94ab8c03fdc6e2" id="r_a156fb8329b7b2434ee94ab8c03fdc6e2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a156fb8329b7b2434ee94ab8c03fdc6e2">LaunchObject</a> (float alpha, float initialStretch, float springConstant)</td></tr>
<tr class="separator:a156fb8329b7b2434ee94ab8c03fdc6e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a4f3b4503ce9b199da87f5e11673501" id="r_a5a4f3b4503ce9b199da87f5e11673501"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5a4f3b4503ce9b199da87f5e11673501">SetVelocity</a> (XMVECTOR velocity)</td></tr>
<tr class="separator:a5a4f3b4503ce9b199da87f5e11673501"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a462dd9f0b3452e9c98d5dea7d9959f50" id="r_a462dd9f0b3452e9c98d5dea7d9959f50"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a462dd9f0b3452e9c98d5dea7d9959f50">SetAcceleration</a> (XMVECTOR acceleration)</td></tr>
<tr class="separator:a462dd9f0b3452e9c98d5dea7d9959f50"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af091ab5887798b0407700d4712795a0c" id="r_af091ab5887798b0407700d4712795a0c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af091ab5887798b0407700d4712795a0c">SetMass</a> (float mass)</td></tr>
<tr class="separator:af091ab5887798b0407700d4712795a0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab750af34ccb7fd9f2cb4cea2c7a9a253" id="r_ab750af34ccb7fd9f2cb4cea2c7a9a253"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab750af34ccb7fd9f2cb4cea2c7a9a253">SetGrounded</a> (bool isGrounded)</td></tr>
<tr class="separator:ab750af34ccb7fd9f2cb4cea2c7a9a253"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afb716a1474b17b0bcf1c4eb7b6f3c758" id="r_afb716a1474b17b0bcf1c4eb7b6f3c758"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#afb716a1474b17b0bcf1c4eb7b6f3c758">SetPhysicsEnabled</a> (bool enabled)</td></tr>
<tr class="separator:afb716a1474b17b0bcf1c4eb7b6f3c758"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab95922862da80f63814d47f8c2b69cea" id="r_ab95922862da80f63814d47f8c2b69cea"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab95922862da80f63814d47f8c2b69cea">SetBoundingRadius</a> (float radius)</td></tr>
<tr class="separator:ab95922862da80f63814d47f8c2b69cea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9fd15ccd7dfe9955116ac5d52e01a6e7" id="r_a9fd15ccd7dfe9955116ac5d52e01a6e7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9fd15ccd7dfe9955116ac5d52e01a6e7">SetPreviousPosition</a> (XMVECTOR position)</td></tr>
<tr class="separator:a9fd15ccd7dfe9955116ac5d52e01a6e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19fa3fa510051cc0d8a0ddb21e92f9fe" id="r_a19fa3fa510051cc0d8a0ddb21e92f9fe"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a19fa3fa510051cc0d8a0ddb21e92f9fe">SetGravityEnabled</a> (bool enabled)</td></tr>
<tr class="separator:a19fa3fa510051cc0d8a0ddb21e92f9fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a93d17ee763b557489210f35b54829976" id="r_a93d17ee763b557489210f35b54829976"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a93d17ee763b557489210f35b54829976">SetUpdatePositionCallback</a> (std::function&lt; void(XMVECTOR)&gt; callback)</td></tr>
<tr class="separator:a93d17ee763b557489210f35b54829976"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc1702442a7fa0915f7760b20d5a17ae" id="r_abc1702442a7fa0915f7760b20d5a17ae"><td class="memItemLeft" align="right" valign="top">XMVECTOR&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abc1702442a7fa0915f7760b20d5a17ae">GetVelocity</a> () const</td></tr>
<tr class="separator:abc1702442a7fa0915f7760b20d5a17ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae40284b6a494abd2ad1d8a4bbb641117" id="r_ae40284b6a494abd2ad1d8a4bbb641117"><td class="memItemLeft" align="right" valign="top">XMVECTOR&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae40284b6a494abd2ad1d8a4bbb641117">GetAcceleration</a> () const</td></tr>
<tr class="separator:ae40284b6a494abd2ad1d8a4bbb641117"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acbe98be444ae347a32951435472e5a28" id="r_acbe98be444ae347a32951435472e5a28"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#acbe98be444ae347a32951435472e5a28">GetMass</a> () const</td></tr>
<tr class="separator:acbe98be444ae347a32951435472e5a28"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3438c93efe882c97086e0f9bc2f54dd" id="r_ae3438c93efe882c97086e0f9bc2f54dd"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae3438c93efe882c97086e0f9bc2f54dd">IsGrounded</a> () const</td></tr>
<tr class="separator:ae3438c93efe882c97086e0f9bc2f54dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab1d2d882d7ff058a67d3e266257edb95" id="r_ab1d2d882d7ff058a67d3e266257edb95"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab1d2d882d7ff058a67d3e266257edb95">IsPhysicsEnabled</a> () const</td></tr>
<tr class="separator:ab1d2d882d7ff058a67d3e266257edb95"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb77c488322bbb5776e08fd9be5908d7" id="r_acb77c488322bbb5776e08fd9be5908d7"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#acb77c488322bbb5776e08fd9be5908d7">GetBoundingRadius</a> () const</td></tr>
<tr class="separator:acb77c488322bbb5776e08fd9be5908d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af3e592a83a8145612bea36927c222082" id="r_af3e592a83a8145612bea36927c222082"><td class="memItemLeft" align="right" valign="top">XMVECTOR&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af3e592a83a8145612bea36927c222082">GetPreviousPosition</a> () const</td></tr>
<tr class="separator:af3e592a83a8145612bea36927c222082"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a29ed13dad5513dff62d8427e856bd74d" id="r_a29ed13dad5513dff62d8427e856bd74d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a29ed13dad5513dff62d8427e856bd74d">IsGravityEnabled</a> () const</td></tr>
<tr class="separator:a29ed13dad5513dff62d8427e856bd74d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classecs_1_1_component"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_classecs_1_1_component')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classecs_1_1_component.html">ecs::Component</a></td></tr>
<tr class="memitem:a8dbee43fa54890ad07145aa1160b0b09 inherit pub_methods_classecs_1_1_component" id="r_a8dbee43fa54890ad07145aa1160b0b09"><td class="memItemLeft" align="right" valign="top">
&#160;</td><td class="memItemRight" valign="bottom"><b>Component</b> (const <a class="el" href="classecs_1_1_component.html">Component</a> &amp;)=delete</td></tr>
<tr class="separator:a8dbee43fa54890ad07145aa1160b0b09 inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34000da33471994c2550e416505026ad inherit pub_methods_classecs_1_1_component" id="r_a34000da33471994c2550e416505026ad"><td class="memItemLeft" align="right" valign="top">
<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classecs_1_1_component.html">Component</a> &amp;)=delete</td></tr>
<tr class="separator:a34000da33471994c2550e416505026ad inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a213cfa3482dca1ffc458b9cf020b4814 inherit pub_methods_classecs_1_1_component" id="r_a213cfa3482dca1ffc458b9cf020b4814"><td class="memItemLeft" align="right" valign="top">
&#160;</td><td class="memItemRight" valign="bottom"><b>Component</b> (<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&amp;)=default</td></tr>
<tr class="separator:a213cfa3482dca1ffc458b9cf020b4814 inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8089d7e43f9ac2a6eedd3b0598c46694 inherit pub_methods_classecs_1_1_component" id="r_a8089d7e43f9ac2a6eedd3b0598c46694"><td class="memItemLeft" align="right" valign="top">
<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&amp;)=default</td></tr>
<tr class="separator:a8089d7e43f9ac2a6eedd3b0598c46694 inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="physics__component_8h_source.html#l00009">9</a> of file <a class="el" href="physics__component_8h_source.html">physics_component.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a13c45de519868a3e035fc8a3cb4c3da0" name="a13c45de519868a3e035fc8a3cb4c3da0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a13c45de519868a3e035fc8a3cb4c3da0">&#9670;&#160;</a></span>PhysicsComponent()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ecs::PhysicsComponent::PhysicsComponent </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Builder for the <a class="el" href="classecs_1_1_physics_component.html">PhysicsComponent</a> class. Use default values for velocity, acceleration, mass, bounding radius, and grounded state. </p>
<p class="definition">Definition at line <a class="el" href="physics__component_8h_source.html#l00015">15</a> of file <a class="el" href="physics__component_8h_source.html">physics_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 15</span> {</div>
<div class="line"><span class="lineno"> 16</span> m_Velocity = XMVectorZero();</div>
<div class="line"><span class="lineno"> 17</span> m_Acceleration = XMVectorZero();</div>
<div class="line"><span class="lineno"> 18</span> m_PreviousPosition = XMVectorZero();</div>
<div class="line"><span class="lineno"> 19</span> m_Mass = 1.0f;</div>
<div class="line"><span class="lineno"> 20</span> m_BoundingRadius = 1.0f;</div>
<div class="line"><span class="lineno"> 21</span> m_IsGrounded = <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 22</span> m_IsPhysicsEnabled = <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 23</span> m_GravityEnabled = <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 24</span> }</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="ae40284b6a494abd2ad1d8a4bbb641117" name="ae40284b6a494abd2ad1d8a4bbb641117"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae40284b6a494abd2ad1d8a4bbb641117">&#9670;&#160;</a></span>GetAcceleration()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">XMVECTOR ecs::PhysicsComponent::GetAcceleration </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the current acceleration of the object. </p><dl class="section return"><dt>Returns</dt><dd>The acceleration as an XMVECTOR. </dd></dl>
<p class="definition">Definition at line <a class="el" href="physics__component_8h_source.html#l00160">160</a> of file <a class="el" href="physics__component_8h_source.html">physics_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 160</span>{ <span class="keywordflow">return</span> m_Acceleration; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="acb77c488322bbb5776e08fd9be5908d7" name="acb77c488322bbb5776e08fd9be5908d7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acb77c488322bbb5776e08fd9be5908d7">&#9670;&#160;</a></span>GetBoundingRadius()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">float ecs::PhysicsComponent::GetBoundingRadius </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the bounding radius of the object. </p><dl class="section return"><dt>Returns</dt><dd>The bounding radius as a float. </dd></dl>
<p class="definition">Definition at line <a class="el" href="physics__component_8h_source.html#l00180">180</a> of file <a class="el" href="physics__component_8h_source.html">physics_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 180</span>{ <span class="keywordflow">return</span> m_BoundingRadius; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="acbe98be444ae347a32951435472e5a28" name="acbe98be444ae347a32951435472e5a28"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acbe98be444ae347a32951435472e5a28">&#9670;&#160;</a></span>GetMass()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">float ecs::PhysicsComponent::GetMass </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the mass of the object. </p><dl class="section return"><dt>Returns</dt><dd>The mass as a float. </dd></dl>
<p class="definition">Definition at line <a class="el" href="physics__component_8h_source.html#l00165">165</a> of file <a class="el" href="physics__component_8h_source.html">physics_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 165</span>{ <span class="keywordflow">return</span> m_Mass; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="af3e592a83a8145612bea36927c222082" name="af3e592a83a8145612bea36927c222082"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af3e592a83a8145612bea36927c222082">&#9670;&#160;</a></span>GetPreviousPosition()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">XMVECTOR ecs::PhysicsComponent::GetPreviousPosition </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the previous position of the object. This is used to calculate the movement and collision detection. </p><dl class="section return"><dt>Returns</dt><dd>The previous position as an XMVECTOR. </dd></dl>
<p class="definition">Definition at line <a class="el" href="physics__component_8h_source.html#l00186">186</a> of file <a class="el" href="physics__component_8h_source.html">physics_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 186</span>{ <span class="keywordflow">return</span> m_PreviousPosition; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="abc1702442a7fa0915f7760b20d5a17ae" name="abc1702442a7fa0915f7760b20d5a17ae"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abc1702442a7fa0915f7760b20d5a17ae">&#9670;&#160;</a></span>GetVelocity()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">XMVECTOR ecs::PhysicsComponent::GetVelocity </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the current velocity of the object. </p><dl class="section return"><dt>Returns</dt><dd>The velocity as an XMVECTOR. </dd></dl>
<p class="definition">Definition at line <a class="el" href="physics__component_8h_source.html#l00155">155</a> of file <a class="el" href="physics__component_8h_source.html">physics_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 155</span>{ <span class="keywordflow">return</span> m_Velocity; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="ab58952fc61030f1047beb2d6dbec82cf" name="ab58952fc61030f1047beb2d6dbec82cf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab58952fc61030f1047beb2d6dbec82cf">&#9670;&#160;</a></span>Initialize()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::PhysicsComponent::Initialize </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Initialize the component. This method is called when the component is added to an entity. It can be used to set up initial values or perform any necessary setup. </p>
<p>Reimplemented from <a class="el" href="classecs_1_1_component.html#a9372874f51e5f63584d65fc378d39459">ecs::Component</a>.</p>
<p class="definition">Definition at line <a class="el" href="physics__component_8h_source.html#l00033">33</a> of file <a class="el" href="physics__component_8h_source.html">physics_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 33</span> {</div>
<div class="line"><span class="lineno"> 34</span> <span class="comment">// Initialisation du composant physique</span></div>
<div class="line"><span class="lineno"> 35</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a29ed13dad5513dff62d8427e856bd74d" name="a29ed13dad5513dff62d8427e856bd74d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a29ed13dad5513dff62d8427e856bd74d">&#9670;&#160;</a></span>IsGravityEnabled()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ecs::PhysicsComponent::IsGravityEnabled </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Check if gravity is enabled for the object. </p><dl class="section return"><dt>Returns</dt><dd>True if gravity is enabled, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="physics__component_8h_source.html#l00191">191</a> of file <a class="el" href="physics__component_8h_source.html">physics_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 191</span>{ <span class="keywordflow">return</span> m_GravityEnabled; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="ae3438c93efe882c97086e0f9bc2f54dd" name="ae3438c93efe882c97086e0f9bc2f54dd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae3438c93efe882c97086e0f9bc2f54dd">&#9670;&#160;</a></span>IsGrounded()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ecs::PhysicsComponent::IsGrounded </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the grounded state of the object. </p><dl class="section return"><dt>Returns</dt><dd>True if the object is grounded, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="physics__component_8h_source.html#l00170">170</a> of file <a class="el" href="physics__component_8h_source.html">physics_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 170</span>{ <span class="keywordflow">return</span> m_IsGrounded; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="ab1d2d882d7ff058a67d3e266257edb95" name="ab1d2d882d7ff058a67d3e266257edb95"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab1d2d882d7ff058a67d3e266257edb95">&#9670;&#160;</a></span>IsPhysicsEnabled()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ecs::PhysicsComponent::IsPhysicsEnabled </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Check if physics is enabled for the object. </p><dl class="section return"><dt>Returns</dt><dd>True if physics is enabled, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="physics__component_8h_source.html#l00175">175</a> of file <a class="el" href="physics__component_8h_source.html">physics_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 175</span>{ <span class="keywordflow">return</span> m_IsPhysicsEnabled; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a156fb8329b7b2434ee94ab8c03fdc6e2" name="a156fb8329b7b2434ee94ab8c03fdc6e2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a156fb8329b7b2434ee94ab8c03fdc6e2">&#9670;&#160;</a></span>LaunchObject()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::PhysicsComponent::LaunchObject </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>alpha</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>initialStretch</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>springConstant</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Launch an object with a spring-like force. This method calculates the initial velocity based on the angle, initial stretch, and spring constant.</p>
<p>This method will be removed in the future</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">alpha</td><td>The launch angle in degrees. </td></tr>
<tr><td class="paramname">initialStretch</td><td>The initial stretch of the spring. </td></tr>
<tr><td class="paramname">springConstant</td><td>The spring constant. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="physics__component_8h_source.html#l00070">70</a> of file <a class="el" href="physics__component_8h_source.html">physics_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 70</span> {</div>
<div class="line"><span class="lineno"> 71</span> <span class="comment">// Constants</span></div>
<div class="line"><span class="lineno"> 72</span> <span class="keyword">const</span> <span class="keywordtype">float</span> gravity = -9.81f;</div>
<div class="line"><span class="lineno"> 73</span> </div>
<div class="line"><span class="lineno"> 74</span> <span class="comment">// Convert alpha from degrees to radians if needed</span></div>
<div class="line"><span class="lineno"> 75</span> <span class="keywordtype">float</span> alphaRadians = alpha * (XM_PI / 180.0f);</div>
<div class="line"><span class="lineno"> 76</span> </div>
<div class="line"><span class="lineno"> 77</span> <span class="comment">// Scale factors to make the physics simulation more visible</span></div>
<div class="line"><span class="lineno"> 78</span> <span class="keywordtype">float</span> scaleFactor = 200.0f; <span class="comment">// Adjust this based on your world scale</span></div>
<div class="line"><span class="lineno"> 79</span> </div>
<div class="line"><span class="lineno"> 80</span> <span class="comment">// Calculate initial velocity magnitude</span></div>
<div class="line"><span class="lineno"> 81</span> <span class="keywordtype">float</span> velocityMagnitude = initialStretch * sqrtf(springConstant / m_Mass) * </div>
<div class="line"><span class="lineno"> 82</span> sqrtf(1.0f - powf((m_Mass * gravity * sinf(alphaRadians) / </div>
<div class="line"><span class="lineno"> 83</span> (springConstant * initialStretch)), 2.0f));</div>
<div class="line"><span class="lineno"> 84</span> </div>
<div class="line"><span class="lineno"> 85</span> <span class="comment">// Apply scale factor</span></div>
<div class="line"><span class="lineno"> 86</span> velocityMagnitude *= scaleFactor;</div>
<div class="line"><span class="lineno"> 87</span> </div>
<div class="line"><span class="lineno"> 88</span> <span class="comment">// Calculate velocity components</span></div>
<div class="line"><span class="lineno"> 89</span> XMVECTOR velocity = XMVectorSet(</div>
<div class="line"><span class="lineno"> 90</span> velocityMagnitude * cosf(alphaRadians), <span class="comment">// vx = v0 * cos(alpha)</span></div>
<div class="line"><span class="lineno"> 91</span> velocityMagnitude * sinf(alphaRadians), <span class="comment">// vy = v0 * sin(alpha)</span></div>
<div class="line"><span class="lineno"> 92</span> 0.0f, <span class="comment">// z-component (0 for 2D trajectory)</span></div>
<div class="line"><span class="lineno"> 93</span> 0.0f</div>
<div class="line"><span class="lineno"> 94</span> );</div>
<div class="line"><span class="lineno"> 95</span> </div>
<div class="line"><span class="lineno"> 96</span> <span class="comment">// Apply velocity</span></div>
<div class="line"><span class="lineno"> 97</span> <a class="code hl_function" href="#a5a4f3b4503ce9b199da87f5e11673501">SetVelocity</a>(velocity);</div>
<div class="line"><span class="lineno"> 98</span> </div>
<div class="line"><span class="lineno"> 99</span> <span class="comment">// Enable physics and reset grounded state</span></div>
<div class="line"><span class="lineno"> 100</span> <a class="code hl_function" href="#afb716a1474b17b0bcf1c4eb7b6f3c758">SetPhysicsEnabled</a>(<span class="keyword">true</span>);</div>
<div class="line"><span class="lineno"> 101</span> <a class="code hl_function" href="#ab750af34ccb7fd9f2cb4cea2c7a9a253">SetGrounded</a>(<span class="keyword">false</span>);</div>
<div class="line"><span class="lineno"> 102</span> }</div>
<div class="ttc" id="aclassecs_1_1_physics_component_html_a5a4f3b4503ce9b199da87f5e11673501"><div class="ttname"><a href="#a5a4f3b4503ce9b199da87f5e11673501">ecs::PhysicsComponent::SetVelocity</a></div><div class="ttdeci">void SetVelocity(XMVECTOR velocity)</div><div class="ttdef"><b>Definition</b> <a href="physics__component_8h_source.html#l00108">physics_component.h:108</a></div></div>
<div class="ttc" id="aclassecs_1_1_physics_component_html_ab750af34ccb7fd9f2cb4cea2c7a9a253"><div class="ttname"><a href="#ab750af34ccb7fd9f2cb4cea2c7a9a253">ecs::PhysicsComponent::SetGrounded</a></div><div class="ttdeci">void SetGrounded(bool isGrounded)</div><div class="ttdef"><b>Definition</b> <a href="physics__component_8h_source.html#l00123">physics_component.h:123</a></div></div>
<div class="ttc" id="aclassecs_1_1_physics_component_html_afb716a1474b17b0bcf1c4eb7b6f3c758"><div class="ttname"><a href="#afb716a1474b17b0bcf1c4eb7b6f3c758">ecs::PhysicsComponent::SetPhysicsEnabled</a></div><div class="ttdeci">void SetPhysicsEnabled(bool enabled)</div><div class="ttdef"><b>Definition</b> <a href="physics__component_8h_source.html#l00128">physics_component.h:128</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a462dd9f0b3452e9c98d5dea7d9959f50" name="a462dd9f0b3452e9c98d5dea7d9959f50"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a462dd9f0b3452e9c98d5dea7d9959f50">&#9670;&#160;</a></span>SetAcceleration()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::PhysicsComponent::SetAcceleration </td>
<td>(</td>
<td class="paramtype">XMVECTOR</td> <td class="paramname"><span class="paramname"><em>acceleration</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the acceleration of the object. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">acceleration</td><td></td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="physics__component_8h_source.html#l00113">113</a> of file <a class="el" href="physics__component_8h_source.html">physics_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 113</span>{ m_Acceleration = acceleration; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="ab95922862da80f63814d47f8c2b69cea" name="ab95922862da80f63814d47f8c2b69cea"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab95922862da80f63814d47f8c2b69cea">&#9670;&#160;</a></span>SetBoundingRadius()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::PhysicsComponent::SetBoundingRadius </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>radius</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the bounding radius of the object. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">radius</td><td>The bounding radius to set. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="physics__component_8h_source.html#l00133">133</a> of file <a class="el" href="physics__component_8h_source.html">physics_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 133</span>{ m_BoundingRadius = radius; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a19fa3fa510051cc0d8a0ddb21e92f9fe" name="a19fa3fa510051cc0d8a0ddb21e92f9fe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a19fa3fa510051cc0d8a0ddb21e92f9fe">&#9670;&#160;</a></span>SetGravityEnabled()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::PhysicsComponent::SetGravityEnabled </td>
<td>(</td>
<td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>enabled</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Enable or disable gravity for the object. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">enabled</td><td>True to enable gravity, false to disable. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="physics__component_8h_source.html#l00143">143</a> of file <a class="el" href="physics__component_8h_source.html">physics_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 143</span>{ m_GravityEnabled = enabled; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="ab750af34ccb7fd9f2cb4cea2c7a9a253" name="ab750af34ccb7fd9f2cb4cea2c7a9a253"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab750af34ccb7fd9f2cb4cea2c7a9a253">&#9670;&#160;</a></span>SetGrounded()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::PhysicsComponent::SetGrounded </td>
<td>(</td>
<td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>isGrounded</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the grounded state of the object. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">isGrounded</td><td>True if the object is grounded, false otherwise. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="physics__component_8h_source.html#l00123">123</a> of file <a class="el" href="physics__component_8h_source.html">physics_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 123</span>{ m_IsGrounded = isGrounded; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="af091ab5887798b0407700d4712795a0c" name="af091ab5887798b0407700d4712795a0c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af091ab5887798b0407700d4712795a0c">&#9670;&#160;</a></span>SetMass()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::PhysicsComponent::SetMass </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>mass</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the mass of the object. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">mass</td><td>The mass to set. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="physics__component_8h_source.html#l00118">118</a> of file <a class="el" href="physics__component_8h_source.html">physics_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 118</span>{ m_Mass = mass; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="afb716a1474b17b0bcf1c4eb7b6f3c758" name="afb716a1474b17b0bcf1c4eb7b6f3c758"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afb716a1474b17b0bcf1c4eb7b6f3c758">&#9670;&#160;</a></span>SetPhysicsEnabled()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::PhysicsComponent::SetPhysicsEnabled </td>
<td>(</td>
<td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>enabled</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Enable or disable physics for the object. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">enabled</td><td>True to enable physics, false to disable. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="physics__component_8h_source.html#l00128">128</a> of file <a class="el" href="physics__component_8h_source.html">physics_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 128</span>{ m_IsPhysicsEnabled = enabled; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a9fd15ccd7dfe9955116ac5d52e01a6e7" name="a9fd15ccd7dfe9955116ac5d52e01a6e7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9fd15ccd7dfe9955116ac5d52e01a6e7">&#9670;&#160;</a></span>SetPreviousPosition()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::PhysicsComponent::SetPreviousPosition </td>
<td>(</td>
<td class="paramtype">XMVECTOR</td> <td class="paramname"><span class="paramname"><em>position</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the previous position of the object. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">position</td><td>The previous position to set. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="physics__component_8h_source.html#l00138">138</a> of file <a class="el" href="physics__component_8h_source.html">physics_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 138</span>{ m_PreviousPosition = position; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a93d17ee763b557489210f35b54829976" name="a93d17ee763b557489210f35b54829976"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a93d17ee763b557489210f35b54829976">&#9670;&#160;</a></span>SetUpdatePositionCallback()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::PhysicsComponent::SetUpdatePositionCallback </td>
<td>(</td>
<td class="paramtype">std::function&lt; void(XMVECTOR)&gt;</td> <td class="paramname"><span class="paramname"><em>callback</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the callback to update the position of the object. This callback will be connected to the <a class="el" href="classecs_1_1_transform_component.html">TransformComponent</a> to update the position. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">callback</td><td>The callback function that takes an XMVECTOR as a parameter. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="physics__component_8h_source.html#l00149">149</a> of file <a class="el" href="physics__component_8h_source.html">physics_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 149</span>{ m_UpdatePositionCallback = callback; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a5a4f3b4503ce9b199da87f5e11673501" name="a5a4f3b4503ce9b199da87f5e11673501"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5a4f3b4503ce9b199da87f5e11673501">&#9670;&#160;</a></span>SetVelocity()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::PhysicsComponent::SetVelocity </td>
<td>(</td>
<td class="paramtype">XMVECTOR</td> <td class="paramname"><span class="paramname"><em>velocity</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the velocity of the object. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">velocity</td><td></td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="physics__component_8h_source.html#l00108">108</a> of file <a class="el" href="physics__component_8h_source.html">physics_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 108</span>{ m_Velocity = velocity; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a83aaa878464b8ef2dbc0e7a927689d79" name="a83aaa878464b8ef2dbc0e7a927689d79"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a83aaa878464b8ef2dbc0e7a927689d79">&#9670;&#160;</a></span>Update()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::PhysicsComponent::Update </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>deltaTime</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Update the physics component. This method is called every frame to update the physics state.</p>
<p>This method is not the final update method It will be called by the <a class="el" href="classecs_1_1_entity_manager.html">EntityManager</a>'s in the physics Thread. This is due to the fact that the physics system is not updated every frame. The physics thread is called at a fixed time step (50 FPS by default).</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">deltaTime</td><td>The time elapsed since the last frame. </td></tr>
</table>
</dd>
</dl>
<p>Reimplemented from <a class="el" href="classecs_1_1_component.html#a59c0f739c4ff19227e27ed7b9f6352e0">ecs::Component</a>.</p>
<p class="definition">Definition at line <a class="el" href="physics__component_8h_source.html#l00048">48</a> of file <a class="el" href="physics__component_8h_source.html">physics_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 48</span> {</div>
<div class="line"><span class="lineno"> 49</span> <span class="keywordflow">if</span> (!m_IsPhysicsEnabled) <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 50</span> </div>
<div class="line"><span class="lineno"> 51</span> <span class="comment">// Mise à jour de la vélocité basée sur l&#39;accélération</span></div>
<div class="line"><span class="lineno"> 52</span> m_Velocity = m_Velocity + m_Acceleration * deltaTime;</div>
<div class="line"><span class="lineno"> 53</span> </div>
<div class="line"><span class="lineno"> 54</span> <span class="comment">// Si la physique est activée et qu&#39;une fonction de mise à jour de position est définie</span></div>
<div class="line"><span class="lineno"> 55</span> <span class="keywordflow">if</span> (m_UpdatePositionCallback) {</div>
<div class="line"><span class="lineno"> 56</span> m_UpdatePositionCallback(m_Velocity * deltaTime);</div>
<div class="line"><span class="lineno"> 57</span> }</div>
<div class="line"><span class="lineno"> 58</span> }</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>enginecustom/src/inc/system/ecs/components/<a class="el" href="physics__component_8h_source.html">physics_component.h</a></li>
</ul>
</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="namespaceecs.html">ecs</a></li><li class="navelem"><a class="el" href="classecs_1_1_physics_component.html">PhysicsComponent</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,24 @@
var classecs_1_1_physics_component =
[
[ "PhysicsComponent", "classecs_1_1_physics_component.html#a13c45de519868a3e035fc8a3cb4c3da0", null ],
[ "GetAcceleration", "classecs_1_1_physics_component.html#ae40284b6a494abd2ad1d8a4bbb641117", null ],
[ "GetBoundingRadius", "classecs_1_1_physics_component.html#acb77c488322bbb5776e08fd9be5908d7", null ],
[ "GetMass", "classecs_1_1_physics_component.html#acbe98be444ae347a32951435472e5a28", null ],
[ "GetPreviousPosition", "classecs_1_1_physics_component.html#af3e592a83a8145612bea36927c222082", null ],
[ "GetVelocity", "classecs_1_1_physics_component.html#abc1702442a7fa0915f7760b20d5a17ae", null ],
[ "Initialize", "classecs_1_1_physics_component.html#ab58952fc61030f1047beb2d6dbec82cf", null ],
[ "IsGravityEnabled", "classecs_1_1_physics_component.html#a29ed13dad5513dff62d8427e856bd74d", null ],
[ "IsGrounded", "classecs_1_1_physics_component.html#ae3438c93efe882c97086e0f9bc2f54dd", null ],
[ "IsPhysicsEnabled", "classecs_1_1_physics_component.html#ab1d2d882d7ff058a67d3e266257edb95", null ],
[ "LaunchObject", "classecs_1_1_physics_component.html#a156fb8329b7b2434ee94ab8c03fdc6e2", null ],
[ "SetAcceleration", "classecs_1_1_physics_component.html#a462dd9f0b3452e9c98d5dea7d9959f50", null ],
[ "SetBoundingRadius", "classecs_1_1_physics_component.html#ab95922862da80f63814d47f8c2b69cea", null ],
[ "SetGravityEnabled", "classecs_1_1_physics_component.html#a19fa3fa510051cc0d8a0ddb21e92f9fe", null ],
[ "SetGrounded", "classecs_1_1_physics_component.html#ab750af34ccb7fd9f2cb4cea2c7a9a253", null ],
[ "SetMass", "classecs_1_1_physics_component.html#af091ab5887798b0407700d4712795a0c", null ],
[ "SetPhysicsEnabled", "classecs_1_1_physics_component.html#afb716a1474b17b0bcf1c4eb7b6f3c758", null ],
[ "SetPreviousPosition", "classecs_1_1_physics_component.html#a9fd15ccd7dfe9955116ac5d52e01a6e7", null ],
[ "SetUpdatePositionCallback", "classecs_1_1_physics_component.html#a93d17ee763b557489210f35b54829976", null ],
[ "SetVelocity", "classecs_1_1_physics_component.html#a5a4f3b4503ce9b199da87f5e11673501", null ],
[ "Update", "classecs_1_1_physics_component.html#a83aaa878464b8ef2dbc0e7a927689d79", null ]
];

Binary file not shown.

After

Width:  |  Height:  |  Size: 610 B

View File

@ -0,0 +1,136 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classecs_1_1_render_component.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">ecs::RenderComponent Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classecs_1_1_render_component.html">ecs::RenderComponent</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Component</b>()=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>Component</b>(const Component &amp;)=delete (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Component</b>(Component &amp;&amp;)=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_render_component.html#ae01aca10690322ec92899e99bf5e244e">GetIndexCount</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_render_component.html">ecs::RenderComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_render_component.html#a2797ae01f7f42594a0291529d0ec8ef0">GetModel</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_render_component.html">ecs::RenderComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_render_component.html#aa9bc77dc2ea430ec9008bda7993f766c">GetModelFilePath</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_render_component.html">ecs::RenderComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_render_component.html#a8d3c778be73e8cbb27b3ea102698a7f2">GetTexture</a>(TextureType type, int index=0)</td><td class="entry"><a class="el" href="classecs_1_1_render_component.html">ecs::RenderComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_render_component.html#aa92950c4ebad0379f626493bda1a79bb">Initialize</a>() override</td><td class="entry"><a class="el" href="classecs_1_1_render_component.html">ecs::RenderComponent</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_render_component.html#a0aeb040ec34ba3619f08269e5744597e">InitializeFromFile</a>(ID3D11Device *device, ID3D11DeviceContext *deviceContext, const char *modelFilename, TextureContainer &amp;textureContainer)</td><td class="entry"><a class="el" href="classecs_1_1_render_component.html">ecs::RenderComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_render_component.html#a5014687c529c5dd29c1689da1dd64776">InitializeWithModel</a>(std::shared_ptr&lt; model_class &gt; model)</td><td class="entry"><a class="el" href="classecs_1_1_render_component.html">ecs::RenderComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_render_component.html#ad77b9089172b2567767aac2ac05118ea">IsVisible</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_render_component.html">ecs::RenderComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_render_component.html#a64e1e92929e2384d09c31b8d2afb258d">LoadTexturesFromPath</a>(std::vector&lt; std::wstring &gt; &amp;texturePaths, TextureContainer &amp;texturesContainer, ID3D11Device *device, ID3D11DeviceContext *deviceContext)</td><td class="entry"><a class="el" href="classecs_1_1_render_component.html">ecs::RenderComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(const Component &amp;)=delete (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>operator=</b>(Component &amp;&amp;)=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_render_component.html#a61dc5966b89474a415e3d19d28760a64">Render</a>(ID3D11DeviceContext *deviceContext)</td><td class="entry"><a class="el" href="classecs_1_1_render_component.html">ecs::RenderComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_render_component.html#a9b8099cc84f4ca11f9cfca7d80081d6b">RenderComponent</a>()</td><td class="entry"><a class="el" href="classecs_1_1_render_component.html">ecs::RenderComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_render_component.html#ab3a01e06c359132815a5a35ed950a19a">SetModel</a>(std::shared_ptr&lt; model_class &gt; model)</td><td class="entry"><a class="el" href="classecs_1_1_render_component.html">ecs::RenderComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_render_component.html#acac2902002c2ca0618c41525d1584088">SetModelFilePath</a>(const std::string &amp;path)</td><td class="entry"><a class="el" href="classecs_1_1_render_component.html">ecs::RenderComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_render_component.html#ae0beed54f3cfe42213e1767da1b36d46">SetVisible</a>(bool visible)</td><td class="entry"><a class="el" href="classecs_1_1_render_component.html">ecs::RenderComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_render_component.html#a6cfff9944a89629f5f7a7d1451446f0d">Update</a>(float deltaTime) override</td><td class="entry"><a class="el" href="classecs_1_1_render_component.html">ecs::RenderComponent</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~Component</b>()=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~RenderComponent</b>()=default (defined in <a class="el" href="classecs_1_1_render_component.html">ecs::RenderComponent</a>)</td><td class="entry"><a class="el" href="classecs_1_1_render_component.html">ecs::RenderComponent</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,764 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: ecs::RenderComponent Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classecs_1_1_render_component.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classecs_1_1_render_component-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">ecs::RenderComponent Class Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Inheritance diagram for ecs::RenderComponent:</div>
<div class="dyncontent">
<div class="center">
<img src="classecs_1_1_render_component.png" usemap="#ecs::RenderComponent_map" alt=""/>
<map id="ecs::RenderComponent_map" name="ecs::RenderComponent_map">
<area href="classecs_1_1_component.html" alt="ecs::Component" shape="rect" coords="0,0,142,24"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a9b8099cc84f4ca11f9cfca7d80081d6b" id="r_a9b8099cc84f4ca11f9cfca7d80081d6b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9b8099cc84f4ca11f9cfca7d80081d6b">RenderComponent</a> ()</td></tr>
<tr class="separator:a9b8099cc84f4ca11f9cfca7d80081d6b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa92950c4ebad0379f626493bda1a79bb" id="r_aa92950c4ebad0379f626493bda1a79bb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa92950c4ebad0379f626493bda1a79bb">Initialize</a> () override</td></tr>
<tr class="separator:aa92950c4ebad0379f626493bda1a79bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6cfff9944a89629f5f7a7d1451446f0d" id="r_a6cfff9944a89629f5f7a7d1451446f0d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6cfff9944a89629f5f7a7d1451446f0d">Update</a> (float deltaTime) override</td></tr>
<tr class="separator:a6cfff9944a89629f5f7a7d1451446f0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5014687c529c5dd29c1689da1dd64776" id="r_a5014687c529c5dd29c1689da1dd64776"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5014687c529c5dd29c1689da1dd64776">InitializeWithModel</a> (std::shared_ptr&lt; <a class="el" href="classmodel__class.html">model_class</a> &gt; model)</td></tr>
<tr class="separator:a5014687c529c5dd29c1689da1dd64776"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0aeb040ec34ba3619f08269e5744597e" id="r_a0aeb040ec34ba3619f08269e5744597e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0aeb040ec34ba3619f08269e5744597e">InitializeFromFile</a> (ID3D11Device *device, ID3D11DeviceContext *deviceContext, const char *modelFilename, <a class="el" href="struct_texture_container.html">TextureContainer</a> &amp;textureContainer)</td></tr>
<tr class="separator:a0aeb040ec34ba3619f08269e5744597e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a64e1e92929e2384d09c31b8d2afb258d" id="r_a64e1e92929e2384d09c31b8d2afb258d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a64e1e92929e2384d09c31b8d2afb258d">LoadTexturesFromPath</a> (std::vector&lt; std::wstring &gt; &amp;texturePaths, <a class="el" href="struct_texture_container.html">TextureContainer</a> &amp;texturesContainer, ID3D11Device *device, ID3D11DeviceContext *deviceContext)</td></tr>
<tr class="separator:a64e1e92929e2384d09c31b8d2afb258d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2797ae01f7f42594a0291529d0ec8ef0" id="r_a2797ae01f7f42594a0291529d0ec8ef0"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="classmodel__class.html">model_class</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2797ae01f7f42594a0291529d0ec8ef0">GetModel</a> () const</td></tr>
<tr class="separator:a2797ae01f7f42594a0291529d0ec8ef0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab3a01e06c359132815a5a35ed950a19a" id="r_ab3a01e06c359132815a5a35ed950a19a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab3a01e06c359132815a5a35ed950a19a">SetModel</a> (std::shared_ptr&lt; <a class="el" href="classmodel__class.html">model_class</a> &gt; model)</td></tr>
<tr class="separator:ab3a01e06c359132815a5a35ed950a19a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa9bc77dc2ea430ec9008bda7993f766c" id="r_aa9bc77dc2ea430ec9008bda7993f766c"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa9bc77dc2ea430ec9008bda7993f766c">GetModelFilePath</a> () const</td></tr>
<tr class="separator:aa9bc77dc2ea430ec9008bda7993f766c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acac2902002c2ca0618c41525d1584088" id="r_acac2902002c2ca0618c41525d1584088"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#acac2902002c2ca0618c41525d1584088">SetModelFilePath</a> (const std::string &amp;path)</td></tr>
<tr class="separator:acac2902002c2ca0618c41525d1584088"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad77b9089172b2567767aac2ac05118ea" id="r_ad77b9089172b2567767aac2ac05118ea"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad77b9089172b2567767aac2ac05118ea">IsVisible</a> () const</td></tr>
<tr class="separator:ad77b9089172b2567767aac2ac05118ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae0beed54f3cfe42213e1767da1b36d46" id="r_ae0beed54f3cfe42213e1767da1b36d46"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae0beed54f3cfe42213e1767da1b36d46">SetVisible</a> (bool visible)</td></tr>
<tr class="separator:ae0beed54f3cfe42213e1767da1b36d46"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8d3c778be73e8cbb27b3ea102698a7f2" id="r_a8d3c778be73e8cbb27b3ea102698a7f2"><td class="memItemLeft" align="right" valign="top">ID3D11ShaderResourceView *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8d3c778be73e8cbb27b3ea102698a7f2">GetTexture</a> (<a class="el" href="namespaceecs.html#a6e9ad0276f69474fe9498437b7d1a8f2">TextureType</a> type, int index=0)</td></tr>
<tr class="separator:a8d3c778be73e8cbb27b3ea102698a7f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae01aca10690322ec92899e99bf5e244e" id="r_ae01aca10690322ec92899e99bf5e244e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae01aca10690322ec92899e99bf5e244e">GetIndexCount</a> () const</td></tr>
<tr class="separator:ae01aca10690322ec92899e99bf5e244e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a61dc5966b89474a415e3d19d28760a64" id="r_a61dc5966b89474a415e3d19d28760a64"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a61dc5966b89474a415e3d19d28760a64">Render</a> (ID3D11DeviceContext *deviceContext)</td></tr>
<tr class="separator:a61dc5966b89474a415e3d19d28760a64"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classecs_1_1_component"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_classecs_1_1_component')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classecs_1_1_component.html">ecs::Component</a></td></tr>
<tr class="memitem:a8dbee43fa54890ad07145aa1160b0b09 inherit pub_methods_classecs_1_1_component" id="r_a8dbee43fa54890ad07145aa1160b0b09"><td class="memItemLeft" align="right" valign="top">
&#160;</td><td class="memItemRight" valign="bottom"><b>Component</b> (const <a class="el" href="classecs_1_1_component.html">Component</a> &amp;)=delete</td></tr>
<tr class="separator:a8dbee43fa54890ad07145aa1160b0b09 inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34000da33471994c2550e416505026ad inherit pub_methods_classecs_1_1_component" id="r_a34000da33471994c2550e416505026ad"><td class="memItemLeft" align="right" valign="top">
<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classecs_1_1_component.html">Component</a> &amp;)=delete</td></tr>
<tr class="separator:a34000da33471994c2550e416505026ad inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a213cfa3482dca1ffc458b9cf020b4814 inherit pub_methods_classecs_1_1_component" id="r_a213cfa3482dca1ffc458b9cf020b4814"><td class="memItemLeft" align="right" valign="top">
&#160;</td><td class="memItemRight" valign="bottom"><b>Component</b> (<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&amp;)=default</td></tr>
<tr class="separator:a213cfa3482dca1ffc458b9cf020b4814 inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8089d7e43f9ac2a6eedd3b0598c46694 inherit pub_methods_classecs_1_1_component" id="r_a8089d7e43f9ac2a6eedd3b0598c46694"><td class="memItemLeft" align="right" valign="top">
<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&amp;)=default</td></tr>
<tr class="separator:a8089d7e43f9ac2a6eedd3b0598c46694 inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="render__component_8h_source.html#l00029">29</a> of file <a class="el" href="render__component_8h_source.html">render_component.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a9b8099cc84f4ca11f9cfca7d80081d6b" name="a9b8099cc84f4ca11f9cfca7d80081d6b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9b8099cc84f4ca11f9cfca7d80081d6b">&#9670;&#160;</a></span>RenderComponent()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ecs::RenderComponent::RenderComponent </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Builder for the <a class="el" href="classecs_1_1_render_component.html">RenderComponent</a> class. </p>
<p class="definition">Definition at line <a class="el" href="render__component_8h_source.html#l00034">34</a> of file <a class="el" href="render__component_8h_source.html">render_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 34</span>: m_model(<span class="keyword">nullptr</span>), m_isVisible(<span class="keyword">true</span>) {}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="ae01aca10690322ec92899e99bf5e244e" name="ae01aca10690322ec92899e99bf5e244e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae01aca10690322ec92899e99bf5e244e">&#9670;&#160;</a></span>GetIndexCount()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int ecs::RenderComponent::GetIndexCount </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the number of vertices in the model. This method retrieves the vertex count from the model. </p><dl class="section return"><dt>Returns</dt><dd>The number of vertices as an integer. </dd></dl>
<p class="definition">Definition at line <a class="el" href="render__component_8h_source.html#l00174">174</a> of file <a class="el" href="render__component_8h_source.html">render_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 174</span> {</div>
<div class="line"><span class="lineno"> 175</span> <span class="keywordflow">return</span> m_model ? m_model-&gt;GetIndexCount() : 0;</div>
<div class="line"><span class="lineno"> 176</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a2797ae01f7f42594a0291529d0ec8ef0" name="a2797ae01f7f42594a0291529d0ec8ef0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2797ae01f7f42594a0291529d0ec8ef0">&#9670;&#160;</a></span>GetModel()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::shared_ptr&lt; <a class="el" href="classmodel__class.html">model_class</a> &gt; ecs::RenderComponent::GetModel </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the model associated with this <a class="el" href="classecs_1_1_render_component.html">RenderComponent</a>. </p><dl class="section return"><dt>Returns</dt><dd>A shared pointer to the <a class="el" href="classmodel__class.html">model_class</a> instance. </dd></dl>
<p class="definition">Definition at line <a class="el" href="render__component_8h_source.html#l00113">113</a> of file <a class="el" href="render__component_8h_source.html">render_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 113</span>{ <span class="keywordflow">return</span> m_model; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="aa9bc77dc2ea430ec9008bda7993f766c" name="aa9bc77dc2ea430ec9008bda7993f766c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa9bc77dc2ea430ec9008bda7993f766c">&#9670;&#160;</a></span>GetModelFilePath()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const std::string &amp; ecs::RenderComponent::GetModelFilePath </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the file path of the model associated with this <a class="el" href="classecs_1_1_render_component.html">RenderComponent</a>. </p><dl class="section return"><dt>Returns</dt><dd>The file path as a string. </dd></dl>
<p class="definition">Definition at line <a class="el" href="render__component_8h_source.html#l00125">125</a> of file <a class="el" href="render__component_8h_source.html">render_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 125</span>{ <span class="keywordflow">return</span> m_modelFilePath; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a8d3c778be73e8cbb27b3ea102698a7f2" name="a8d3c778be73e8cbb27b3ea102698a7f2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8d3c778be73e8cbb27b3ea102698a7f2">&#9670;&#160;</a></span>GetTexture()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ID3D11ShaderResourceView * ecs::RenderComponent::GetTexture </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespaceecs.html#a6e9ad0276f69474fe9498437b7d1a8f2">TextureType</a></td> <td class="paramname"><span class="paramname"><em>type</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>index</em></span><span class="paramdefsep"> = </span><span class="paramdefval">0</span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get a texture of a specific type by index. This method retrieves the texture from the model based on the specified type and index. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">type</td><td>The type of texture to retrieve (Diffuse, Normal, Specular, Alpha). </td></tr>
<tr><td class="paramname">index</td><td>The index of the texture to retrieve (default is 0). </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A pointer to the ID3D11ShaderResourceView of the texture, or nullptr if not found. </dd></dl>
<p class="definition">Definition at line <a class="el" href="render__component_8h_source.html#l00152">152</a> of file <a class="el" href="render__component_8h_source.html">render_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 152</span> {</div>
<div class="line"><span class="lineno"> 153</span> <span class="keywordflow">if</span> (!m_model) <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div>
<div class="line"><span class="lineno"> 154</span> </div>
<div class="line"><span class="lineno"> 155</span> <span class="keywordflow">switch</span> (type) {</div>
<div class="line"><span class="lineno"> 156</span> <span class="keywordflow">case</span> TextureType::Diffuse: </div>
<div class="line"><span class="lineno"> 157</span> <span class="keywordflow">return</span> m_model-&gt;GetTexture(::TextureType::Diffuse, index);</div>
<div class="line"><span class="lineno"> 158</span> <span class="keywordflow">case</span> TextureType::Normal: </div>
<div class="line"><span class="lineno"> 159</span> <span class="keywordflow">return</span> m_model-&gt;GetTexture(::TextureType::Normal, index);</div>
<div class="line"><span class="lineno"> 160</span> <span class="keywordflow">case</span> TextureType::Specular: </div>
<div class="line"><span class="lineno"> 161</span> <span class="keywordflow">return</span> m_model-&gt;GetTexture(::TextureType::Specular, index);</div>
<div class="line"><span class="lineno"> 162</span> <span class="keywordflow">case</span> TextureType::Alpha: </div>
<div class="line"><span class="lineno"> 163</span> <span class="keywordflow">return</span> m_model-&gt;GetTexture(::TextureType::Alpha, index);</div>
<div class="line"><span class="lineno"> 164</span> <span class="keywordflow">default</span>: </div>
<div class="line"><span class="lineno"> 165</span> <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div>
<div class="line"><span class="lineno"> 166</span> }</div>
<div class="line"><span class="lineno"> 167</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="aa92950c4ebad0379f626493bda1a79bb" name="aa92950c4ebad0379f626493bda1a79bb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa92950c4ebad0379f626493bda1a79bb">&#9670;&#160;</a></span>Initialize()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::RenderComponent::Initialize </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Virtual function to initialize the component. </p>
<p>Reimplemented from <a class="el" href="classecs_1_1_component.html#a9372874f51e5f63584d65fc378d39459">ecs::Component</a>.</p>
<p class="definition">Definition at line <a class="el" href="render__component_8h_source.html#l00037">37</a> of file <a class="el" href="render__component_8h_source.html">render_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 37</span>{}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a0aeb040ec34ba3619f08269e5744597e" name="a0aeb040ec34ba3619f08269e5744597e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0aeb040ec34ba3619f08269e5744597e">&#9670;&#160;</a></span>InitializeFromFile()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ecs::RenderComponent::InitializeFromFile </td>
<td>(</td>
<td class="paramtype">ID3D11Device *</td> <td class="paramname"><span class="paramname"><em>device</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">ID3D11DeviceContext *</td> <td class="paramname"><span class="paramname"><em>deviceContext</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *</td> <td class="paramname"><span class="paramname"><em>modelFilename</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="struct_texture_container.html">TextureContainer</a> &amp;</td> <td class="paramname"><span class="paramname"><em>textureContainer</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Initialize the <a class="el" href="classecs_1_1_render_component.html">RenderComponent</a> from a model file. This method checks if the model is already cached; if not, it loads the model from the specified file. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">device</td><td>The Direct3D device used for rendering. </td></tr>
<tr><td class="paramname">deviceContext</td><td>The Direct3D device context used for rendering. </td></tr>
<tr><td class="paramname">modelFilename</td><td>The path to the model file to load. </td></tr>
<tr><td class="paramname">textureContainer</td><td>The container for textures used by the model. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if initialization was successful, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="render__component_8h_source.html#l00061">61</a> of file <a class="el" href="render__component_8h_source.html">render_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 62</span> {</div>
<div class="line"><span class="lineno"> 63</span> <span class="comment">// Vérifier si le modèle existe déjà dans le cache</span></div>
<div class="line"><span class="lineno"> 64</span> std::string filename(modelFilename);</div>
<div class="line"><span class="lineno"> 65</span> <span class="keyword">auto</span> it = g_model_cache.find(filename);</div>
<div class="line"><span class="lineno"> 66</span> <span class="keywordflow">if</span> (it != g_model_cache.end()) {</div>
<div class="line"><span class="lineno"> 67</span> m_model = it-&gt;second;</div>
<div class="line"><span class="lineno"> 68</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><span class="lineno"> 69</span> <span class="comment">// Créer un nouveau modèle</span></div>
<div class="line"><span class="lineno"> 70</span> <span class="keyword">auto</span> new_model = std::make_shared&lt;model_class&gt;();</div>
<div class="line"><span class="lineno"> 71</span> <span class="keywordflow">if</span> (!new_model-&gt;Initialize(device, deviceContext, <span class="keyword">const_cast&lt;</span><span class="keywordtype">char</span>*<span class="keyword">&gt;</span>(modelFilename), textureContainer)) {</div>
<div class="line"><span class="lineno"> 72</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 73</span> }</div>
<div class="line"><span class="lineno"> 74</span> g_model_cache[filename] = new_model;</div>
<div class="line"><span class="lineno"> 75</span> m_model = new_model;</div>
<div class="line"><span class="lineno"> 76</span> }</div>
<div class="line"><span class="lineno"> 77</span> </div>
<div class="line"><span class="lineno"> 78</span> m_modelFilePath = modelFilename;</div>
<div class="line"><span class="lineno"> 79</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 80</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a5014687c529c5dd29c1689da1dd64776" name="a5014687c529c5dd29c1689da1dd64776"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5014687c529c5dd29c1689da1dd64776">&#9670;&#160;</a></span>InitializeWithModel()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ecs::RenderComponent::InitializeWithModel </td>
<td>(</td>
<td class="paramtype">std::shared_ptr&lt; <a class="el" href="classmodel__class.html">model_class</a> &gt;</td> <td class="paramname"><span class="paramname"><em>model</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Initialize the <a class="el" href="classecs_1_1_render_component.html">RenderComponent</a> with a model. This method allows the component to be initialized with an existing model instance. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">model</td><td>A shared pointer to the <a class="el" href="classmodel__class.html">model_class</a> instance to use. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if initialization was successful, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="render__component_8h_source.html#l00046">46</a> of file <a class="el" href="render__component_8h_source.html">render_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 46</span> {</div>
<div class="line"><span class="lineno"> 47</span> <span class="keywordflow">if</span> (!model) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 48</span> m_model = model;</div>
<div class="line"><span class="lineno"> 49</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 50</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="ad77b9089172b2567767aac2ac05118ea" name="ad77b9089172b2567767aac2ac05118ea"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad77b9089172b2567767aac2ac05118ea">&#9670;&#160;</a></span>IsVisible()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ecs::RenderComponent::IsVisible </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Check if the model is currently visible. </p><dl class="section return"><dt>Returns</dt><dd>True if the model is visible, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="render__component_8h_source.html#l00137">137</a> of file <a class="el" href="render__component_8h_source.html">render_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 137</span>{ <span class="keywordflow">return</span> m_isVisible; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a64e1e92929e2384d09c31b8d2afb258d" name="a64e1e92929e2384d09c31b8d2afb258d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a64e1e92929e2384d09c31b8d2afb258d">&#9670;&#160;</a></span>LoadTexturesFromPath()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ecs::RenderComponent::LoadTexturesFromPath </td>
<td>(</td>
<td class="paramtype">std::vector&lt; std::wstring &gt; &amp;</td> <td class="paramname"><span class="paramname"><em>texturePaths</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="struct_texture_container.html">TextureContainer</a> &amp;</td> <td class="paramname"><span class="paramname"><em>texturesContainer</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">ID3D11Device *</td> <td class="paramname"><span class="paramname"><em>device</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">ID3D11DeviceContext *</td> <td class="paramname"><span class="paramname"><em>deviceContext</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Load textures from a list of file paths into the texture container. This method uses DirectX's WIC texture loader to load textures from the specified paths. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">texturePaths</td><td>A vector of file paths to the textures to load. </td></tr>
<tr><td class="paramname">texturesContainer</td><td>The container where the loaded textures will be stored. </td></tr>
<tr><td class="paramname">device</td><td>The Direct3D device used for rendering. </td></tr>
<tr><td class="paramname">deviceContext</td><td>The Direct3D device context used for rendering. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if all textures were loaded successfully, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="render__component_8h_source.html#l00091">91</a> of file <a class="el" href="render__component_8h_source.html">render_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 92</span> {</div>
<div class="line"><span class="lineno"> 93</span> HRESULT result;</div>
<div class="line"><span class="lineno"> 94</span> </div>
<div class="line"><span class="lineno"> 95</span> <span class="keywordtype">int</span> i = 0;</div>
<div class="line"><span class="lineno"> 96</span> <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keyword">auto</span>&amp; texturePath : texturePaths) {</div>
<div class="line"><span class="lineno"> 97</span> ID3D11ShaderResourceView* texture = <span class="keyword">nullptr</span>;</div>
<div class="line"><span class="lineno"> 98</span> result = DirectX::CreateWICTextureFromFile(device, deviceContext, texturePath.c_str(), <span class="keyword">nullptr</span>, &amp;texture);</div>
<div class="line"><span class="lineno"> 99</span> <span class="keywordflow">if</span> (FAILED(result)) {</div>
<div class="line"><span class="lineno"> 100</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 101</span> }</div>
<div class="line"><span class="lineno"> 102</span> texturesContainer.AssignTexture(texturesContainer, texture, texturePath, i);</div>
<div class="line"><span class="lineno"> 103</span> i++;</div>
<div class="line"><span class="lineno"> 104</span> }</div>
<div class="line"><span class="lineno"> 105</span> </div>
<div class="line"><span class="lineno"> 106</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 107</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a61dc5966b89474a415e3d19d28760a64" name="a61dc5966b89474a415e3d19d28760a64"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a61dc5966b89474a415e3d19d28760a64">&#9670;&#160;</a></span>Render()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::RenderComponent::Render </td>
<td>(</td>
<td class="paramtype">ID3D11DeviceContext *</td> <td class="paramname"><span class="paramname"><em>deviceContext</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Render the model using the provided device context. This method calls the Render method of the model if it is initialized and visible. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">deviceContext</td><td>The Direct3D device context used for rendering. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="render__component_8h_source.html#l00183">183</a> of file <a class="el" href="render__component_8h_source.html">render_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 183</span> {</div>
<div class="line"><span class="lineno"> 184</span> <span class="keywordflow">if</span> (m_model &amp;&amp; m_isVisible) {</div>
<div class="line"><span class="lineno"> 185</span> m_model-&gt;Render(deviceContext);</div>
<div class="line"><span class="lineno"> 186</span> }</div>
<div class="line"><span class="lineno"> 187</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="ab3a01e06c359132815a5a35ed950a19a" name="ab3a01e06c359132815a5a35ed950a19a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab3a01e06c359132815a5a35ed950a19a">&#9670;&#160;</a></span>SetModel()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::RenderComponent::SetModel </td>
<td>(</td>
<td class="paramtype">std::shared_ptr&lt; <a class="el" href="classmodel__class.html">model_class</a> &gt;</td> <td class="paramname"><span class="paramname"><em>model</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the model for this <a class="el" href="classecs_1_1_render_component.html">RenderComponent</a>. This method allows the component to be set with an existing model instance. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">model</td><td>A shared pointer to the <a class="el" href="classmodel__class.html">model_class</a> instance to set. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="render__component_8h_source.html#l00119">119</a> of file <a class="el" href="render__component_8h_source.html">render_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 119</span>{ m_model = model; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="acac2902002c2ca0618c41525d1584088" name="acac2902002c2ca0618c41525d1584088"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acac2902002c2ca0618c41525d1584088">&#9670;&#160;</a></span>SetModelFilePath()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::RenderComponent::SetModelFilePath </td>
<td>(</td>
<td class="paramtype">const std::string &amp;</td> <td class="paramname"><span class="paramname"><em>path</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the file path of the model for this <a class="el" href="classecs_1_1_render_component.html">RenderComponent</a>. This method allows the component to be set with a specific model file path. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">path</td><td>The file path to set as a string. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="render__component_8h_source.html#l00131">131</a> of file <a class="el" href="render__component_8h_source.html">render_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 131</span>{ m_modelFilePath = path; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="ae0beed54f3cfe42213e1767da1b36d46" name="ae0beed54f3cfe42213e1767da1b36d46"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae0beed54f3cfe42213e1767da1b36d46">&#9670;&#160;</a></span>SetVisible()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::RenderComponent::SetVisible </td>
<td>(</td>
<td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>visible</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the visibility of the model. This method allows the component to control whether the model should be rendered or not. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">visible</td><td>True to make the model visible, false to hide it. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="render__component_8h_source.html#l00143">143</a> of file <a class="el" href="render__component_8h_source.html">render_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 143</span>{ m_isVisible = visible; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a6cfff9944a89629f5f7a7d1451446f0d" name="a6cfff9944a89629f5f7a7d1451446f0d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6cfff9944a89629f5f7a7d1451446f0d">&#9670;&#160;</a></span>Update()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::RenderComponent::Update </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>deltaTime</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Virtual function to update the component. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">deltaTime</td><td>Time since the last update. </td></tr>
</table>
</dd>
</dl>
<p>Reimplemented from <a class="el" href="classecs_1_1_component.html#a59c0f739c4ff19227e27ed7b9f6352e0">ecs::Component</a>.</p>
<p class="definition">Definition at line <a class="el" href="render__component_8h_source.html#l00038">38</a> of file <a class="el" href="render__component_8h_source.html">render_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 38</span>{}</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>enginecustom/src/inc/system/ecs/components/<a class="el" href="render__component_8h_source.html">render_component.h</a></li>
</ul>
</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="namespaceecs.html">ecs</a></li><li class="navelem"><a class="el" href="classecs_1_1_render_component.html">RenderComponent</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,18 @@
var classecs_1_1_render_component =
[
[ "RenderComponent", "classecs_1_1_render_component.html#a9b8099cc84f4ca11f9cfca7d80081d6b", null ],
[ "GetIndexCount", "classecs_1_1_render_component.html#ae01aca10690322ec92899e99bf5e244e", null ],
[ "GetModel", "classecs_1_1_render_component.html#a2797ae01f7f42594a0291529d0ec8ef0", null ],
[ "GetModelFilePath", "classecs_1_1_render_component.html#aa9bc77dc2ea430ec9008bda7993f766c", null ],
[ "GetTexture", "classecs_1_1_render_component.html#a8d3c778be73e8cbb27b3ea102698a7f2", null ],
[ "Initialize", "classecs_1_1_render_component.html#aa92950c4ebad0379f626493bda1a79bb", null ],
[ "InitializeFromFile", "classecs_1_1_render_component.html#a0aeb040ec34ba3619f08269e5744597e", null ],
[ "InitializeWithModel", "classecs_1_1_render_component.html#a5014687c529c5dd29c1689da1dd64776", null ],
[ "IsVisible", "classecs_1_1_render_component.html#ad77b9089172b2567767aac2ac05118ea", null ],
[ "LoadTexturesFromPath", "classecs_1_1_render_component.html#a64e1e92929e2384d09c31b8d2afb258d", null ],
[ "Render", "classecs_1_1_render_component.html#a61dc5966b89474a415e3d19d28760a64", null ],
[ "SetModel", "classecs_1_1_render_component.html#ab3a01e06c359132815a5a35ed950a19a", null ],
[ "SetModelFilePath", "classecs_1_1_render_component.html#acac2902002c2ca0618c41525d1584088", null ],
[ "SetVisible", "classecs_1_1_render_component.html#ae0beed54f3cfe42213e1767da1b36d46", null ],
[ "Update", "classecs_1_1_render_component.html#a6cfff9944a89629f5f7a7d1451446f0d", null ]
];

Binary file not shown.

After

Width:  |  Height:  |  Size: 600 B

View File

@ -0,0 +1,117 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classecs_1_1_render_system.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">ecs::RenderSystem Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classecs_1_1_render_system.html">ecs::RenderSystem</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_render_system.html#a8d65c73dad3be4070153c3f568d5a139">RenderAllEntities</a>(EntityManager *entityManager, const DirectX::XMMATRIX &amp;viewMatrix, const DirectX::XMMATRIX &amp;projectionMatrix, const DirectX::XMFLOAT4 *diffuseColors, const DirectX::XMFLOAT4 *lightPositions, const DirectX::XMFLOAT4 *ambientColors, const DirectX::XMFLOAT3 &amp;cameraPos, const DirectX::XMFLOAT4 &amp;sunlightDiffuse, const DirectX::XMFLOAT4 &amp;sunlightAmbient, const DirectX::XMFLOAT3 &amp;sunlightDirection, float sunlightIntensity)</td><td class="entry"><a class="el" href="classecs_1_1_render_system.html">ecs::RenderSystem</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_render_system.html#aef4d62c3ef06a880712d183a2848de2f">RenderEntity</a>(std::shared_ptr&lt; Entity &gt; entity, const DirectX::XMMATRIX &amp;viewMatrix, const DirectX::XMMATRIX &amp;projectionMatrix, const DirectX::XMFLOAT4 *diffuseColors, const DirectX::XMFLOAT4 *lightPositions, const DirectX::XMFLOAT4 *ambientColors, const DirectX::XMFLOAT3 &amp;cameraPosition, const DirectX::XMFLOAT4 &amp;sunlightDiffuse, const DirectX::XMFLOAT4 &amp;sunlightAmbient, const DirectX::XMFLOAT3 &amp;sunlightDirection, float sunlightIntensity)</td><td class="entry"><a class="el" href="classecs_1_1_render_system.html">ecs::RenderSystem</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_render_system.html#a4db69fd99c18112dcbaa931a01bb9780">RenderSystem</a>(ID3D11DeviceContext *deviceContext, shader_manager_class *shaderManager)</td><td class="entry"><a class="el" href="classecs_1_1_render_system.html">ecs::RenderSystem</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,536 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: ecs::RenderSystem Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classecs_1_1_render_system.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classecs_1_1_render_system-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">ecs::RenderSystem Class Reference</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a4db69fd99c18112dcbaa931a01bb9780" id="r_a4db69fd99c18112dcbaa931a01bb9780"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4db69fd99c18112dcbaa931a01bb9780">RenderSystem</a> (ID3D11DeviceContext *deviceContext, <a class="el" href="classshader__manager__class.html">shader_manager_class</a> *shaderManager)</td></tr>
<tr class="separator:a4db69fd99c18112dcbaa931a01bb9780"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef4d62c3ef06a880712d183a2848de2f" id="r_aef4d62c3ef06a880712d183a2848de2f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aef4d62c3ef06a880712d183a2848de2f">RenderEntity</a> (std::shared_ptr&lt; <a class="el" href="classecs_1_1_entity.html">Entity</a> &gt; entity, const DirectX::XMMATRIX &amp;viewMatrix, const DirectX::XMMATRIX &amp;projectionMatrix, const DirectX::XMFLOAT4 *diffuseColors, const DirectX::XMFLOAT4 *lightPositions, const DirectX::XMFLOAT4 *ambientColors, const DirectX::XMFLOAT3 &amp;cameraPosition, const DirectX::XMFLOAT4 &amp;sunlightDiffuse, const DirectX::XMFLOAT4 &amp;sunlightAmbient, const DirectX::XMFLOAT3 &amp;sunlightDirection, float sunlightIntensity)</td></tr>
<tr class="separator:aef4d62c3ef06a880712d183a2848de2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8d65c73dad3be4070153c3f568d5a139" id="r_a8d65c73dad3be4070153c3f568d5a139"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8d65c73dad3be4070153c3f568d5a139">RenderAllEntities</a> (<a class="el" href="classecs_1_1_entity_manager.html">EntityManager</a> *entityManager, const DirectX::XMMATRIX &amp;viewMatrix, const DirectX::XMMATRIX &amp;projectionMatrix, const DirectX::XMFLOAT4 *diffuseColors, const DirectX::XMFLOAT4 *lightPositions, const DirectX::XMFLOAT4 *ambientColors, const DirectX::XMFLOAT3 &amp;cameraPos, const DirectX::XMFLOAT4 &amp;sunlightDiffuse, const DirectX::XMFLOAT4 &amp;sunlightAmbient, const DirectX::XMFLOAT3 &amp;sunlightDirection, float sunlightIntensity)</td></tr>
<tr class="separator:a8d65c73dad3be4070153c3f568d5a139"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="render__system_8h_source.html#l00011">11</a> of file <a class="el" href="render__system_8h_source.html">render_system.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a4db69fd99c18112dcbaa931a01bb9780" name="a4db69fd99c18112dcbaa931a01bb9780"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4db69fd99c18112dcbaa931a01bb9780">&#9670;&#160;</a></span>RenderSystem()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ecs::RenderSystem::RenderSystem </td>
<td>(</td>
<td class="paramtype">ID3D11DeviceContext *</td> <td class="paramname"><span class="paramname"><em>deviceContext</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classshader__manager__class.html">shader_manager_class</a> *</td> <td class="paramname"><span class="paramname"><em>shaderManager</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Builder for the <a class="el" href="classecs_1_1_render_system.html">RenderSystem</a> class. This class is responsible for rendering entities with the necessary components. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">deviceContext</td><td></td></tr>
<tr><td class="paramname">shaderManager</td><td></td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="render__system_8h_source.html#l00019">19</a> of file <a class="el" href="render__system_8h_source.html">render_system.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 20</span> : m_deviceContext(deviceContext), m_shaderManager(shaderManager) {}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a8d65c73dad3be4070153c3f568d5a139" name="a8d65c73dad3be4070153c3f568d5a139"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8d65c73dad3be4070153c3f568d5a139">&#9670;&#160;</a></span>RenderAllEntities()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int ecs::RenderSystem::RenderAllEntities </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classecs_1_1_entity_manager.html">EntityManager</a> *</td> <td class="paramname"><span class="paramname"><em>entityManager</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const DirectX::XMMATRIX &amp;</td> <td class="paramname"><span class="paramname"><em>viewMatrix</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const DirectX::XMMATRIX &amp;</td> <td class="paramname"><span class="paramname"><em>projectionMatrix</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const DirectX::XMFLOAT4 *</td> <td class="paramname"><span class="paramname"><em>diffuseColors</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const DirectX::XMFLOAT4 *</td> <td class="paramname"><span class="paramname"><em>lightPositions</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const DirectX::XMFLOAT4 *</td> <td class="paramname"><span class="paramname"><em>ambientColors</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const DirectX::XMFLOAT3 &amp;</td> <td class="paramname"><span class="paramname"><em>cameraPos</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const DirectX::XMFLOAT4 &amp;</td> <td class="paramname"><span class="paramname"><em>sunlightDiffuse</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const DirectX::XMFLOAT4 &amp;</td> <td class="paramname"><span class="paramname"><em>sunlightAmbient</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const DirectX::XMFLOAT3 &amp;</td> <td class="paramname"><span class="paramname"><em>sunlightDirection</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>sunlightIntensity</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Render all entities in the <a class="el" href="classecs_1_1_entity_manager.html">EntityManager</a> that have the necessary components. This method iterates through all entities and renders them if they have the required components. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">entityManager</td><td>The <a class="el" href="classecs_1_1_entity_manager.html">EntityManager</a> containing the entities to render. </td></tr>
<tr><td class="paramname">viewMatrix</td><td>The view matrix for rendering. </td></tr>
<tr><td class="paramname">projectionMatrix</td><td>The projection matrix for rendering. </td></tr>
<tr><td class="paramname">diffuseColors</td><td>Array of diffuse colors for lighting. </td></tr>
<tr><td class="paramname">lightPositions</td><td>Array of light positions for lighting. </td></tr>
<tr><td class="paramname">ambientColors</td><td>Array of ambient colors for lighting. </td></tr>
<tr><td class="paramname">cameraPos</td><td>The position of the camera in world space. </td></tr>
<tr><td class="paramname">sunlightDiffuse</td><td>The diffuse color of sunlight. </td></tr>
<tr><td class="paramname">sunlightAmbient</td><td>The ambient color of sunlight. </td></tr>
<tr><td class="paramname">sunlightDirection</td><td>The direction of sunlight in world space. </td></tr>
<tr><td class="paramname">sunlightIntensity</td><td>The intensity of sunlight. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The number of entities rendered successfully. </dd></dl>
<p class="definition">Definition at line <a class="el" href="render__system_8h_source.html#l00214">214</a> of file <a class="el" href="render__system_8h_source.html">render_system.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 224</span> {</div>
<div class="line"><span class="lineno"> 225</span> </div>
<div class="line"><span class="lineno"> 226</span> <span class="keywordtype">int</span> renderCount = 0;</div>
<div class="line"><span class="lineno"> 227</span> </div>
<div class="line"><span class="lineno"> 228</span> <span class="comment">// Récupérer toutes les entités qui ont les composants RenderComponent et TransformComponent</span></div>
<div class="line"><span class="lineno"> 229</span> <span class="keyword">auto</span> entities = entityManager-&gt;GetEntitiesWithComponent&lt;RenderComponent&gt;();</div>
<div class="line"><span class="lineno"> 230</span> </div>
<div class="line"><span class="lineno"> 231</span> <span class="keywordflow">for</span> (<span class="keyword">auto</span>&amp; entity : entities) {</div>
<div class="line"><span class="lineno"> 232</span> <span class="keyword">auto</span> render = entity-&gt;GetComponent&lt;RenderComponent&gt;();</div>
<div class="line"><span class="lineno"> 233</span> </div>
<div class="line"><span class="lineno"> 234</span> <span class="comment">// Vérifier si l&#39;entité a un TransformComponent</span></div>
<div class="line"><span class="lineno"> 235</span> <span class="keyword">auto</span> transform = entity-&gt;GetComponent&lt;TransformComponent&gt;();</div>
<div class="line"><span class="lineno"> 236</span> <span class="keywordflow">if</span> (!transform) <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 237</span> </div>
<div class="line"><span class="lineno"> 238</span> <span class="comment">// Vérifier si le modèle est visible</span></div>
<div class="line"><span class="lineno"> 239</span> <span class="keywordflow">if</span> (!render-&gt;IsVisible()) <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 240</span> </div>
<div class="line"><span class="lineno"> 241</span> <span class="comment">// Effectuer le rendu</span></div>
<div class="line"><span class="lineno"> 242</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="#aef4d62c3ef06a880712d183a2848de2f">RenderEntity</a>(entity, viewMatrix, projectionMatrix, </div>
<div class="line"><span class="lineno"> 243</span> diffuseColors, lightPositions, ambientColors,cameraPos,</div>
<div class="line"><span class="lineno"> 244</span> sunlightDiffuse, sunlightAmbient, sunlightDirection,</div>
<div class="line"><span class="lineno"> 245</span> sunlightIntensity)) {</div>
<div class="line"><span class="lineno"> 246</span> renderCount++;</div>
<div class="line"><span class="lineno"> 247</span> }</div>
<div class="line"><span class="lineno"> 248</span> }</div>
<div class="line"><span class="lineno"> 249</span> </div>
<div class="line"><span class="lineno"> 250</span> <span class="keywordflow">return</span> renderCount;</div>
<div class="line"><span class="lineno"> 251</span> }</div>
<div class="ttc" id="aclassecs_1_1_render_system_html_aef4d62c3ef06a880712d183a2848de2f"><div class="ttname"><a href="#aef4d62c3ef06a880712d183a2848de2f">ecs::RenderSystem::RenderEntity</a></div><div class="ttdeci">bool RenderEntity(std::shared_ptr&lt; Entity &gt; entity, const DirectX::XMMATRIX &amp;viewMatrix, const DirectX::XMMATRIX &amp;projectionMatrix, const DirectX::XMFLOAT4 *diffuseColors, const DirectX::XMFLOAT4 *lightPositions, const DirectX::XMFLOAT4 *ambientColors, const DirectX::XMFLOAT3 &amp;cameraPosition, const DirectX::XMFLOAT4 &amp;sunlightDiffuse, const DirectX::XMFLOAT4 &amp;sunlightAmbient, const DirectX::XMFLOAT3 &amp;sunlightDirection, float sunlightIntensity)</div><div class="ttdef"><b>Definition</b> <a href="render__system_8h_source.html#l00038">render_system.h:38</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="aef4d62c3ef06a880712d183a2848de2f" name="aef4d62c3ef06a880712d183a2848de2f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aef4d62c3ef06a880712d183a2848de2f">&#9670;&#160;</a></span>RenderEntity()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ecs::RenderSystem::RenderEntity </td>
<td>(</td>
<td class="paramtype">std::shared_ptr&lt; <a class="el" href="classecs_1_1_entity.html">Entity</a> &gt;</td> <td class="paramname"><span class="paramname"><em>entity</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const DirectX::XMMATRIX &amp;</td> <td class="paramname"><span class="paramname"><em>viewMatrix</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const DirectX::XMMATRIX &amp;</td> <td class="paramname"><span class="paramname"><em>projectionMatrix</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const DirectX::XMFLOAT4 *</td> <td class="paramname"><span class="paramname"><em>diffuseColors</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const DirectX::XMFLOAT4 *</td> <td class="paramname"><span class="paramname"><em>lightPositions</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const DirectX::XMFLOAT4 *</td> <td class="paramname"><span class="paramname"><em>ambientColors</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const DirectX::XMFLOAT3 &amp;</td> <td class="paramname"><span class="paramname"><em>cameraPosition</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const DirectX::XMFLOAT4 &amp;</td> <td class="paramname"><span class="paramname"><em>sunlightDiffuse</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const DirectX::XMFLOAT4 &amp;</td> <td class="paramname"><span class="paramname"><em>sunlightAmbient</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const DirectX::XMFLOAT3 &amp;</td> <td class="paramname"><span class="paramname"><em>sunlightDirection</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>sunlightIntensity</em></span>&#160;)</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Render an entity with the necessary components. This method checks if the entity has the required components and renders it using the appropriate shader. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">entity</td><td>The entity to render. </td></tr>
<tr><td class="paramname">viewMatrix</td><td>The view matrix for rendering. </td></tr>
<tr><td class="paramname">projectionMatrix</td><td>The projection matrix for rendering. </td></tr>
<tr><td class="paramname">diffuseColors</td><td>Array of diffuse colors for lighting. </td></tr>
<tr><td class="paramname">lightPositions</td><td>Array of light positions for lighting. </td></tr>
<tr><td class="paramname">ambientColors</td><td>Array of ambient colors for lighting. </td></tr>
<tr><td class="paramname">cameraPosition</td><td>The position of the camera in world space. </td></tr>
<tr><td class="paramname">sunlightDiffuse</td><td>The diffuse color of sunlight. </td></tr>
<tr><td class="paramname">sunlightAmbient</td><td>The ambient color of sunlight. </td></tr>
<tr><td class="paramname">sunlightDirection</td><td>The direction of sunlight in world space. </td></tr>
<tr><td class="paramname">sunlightIntensity</td><td>The intensity of sunlight. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>True if rendering was successful, false otherwise. </dd></dl>
<p class="definition">Definition at line <a class="el" href="render__system_8h_source.html#l00038">38</a> of file <a class="el" href="render__system_8h_source.html">render_system.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 48</span> {</div>
<div class="line"><span class="lineno"> 49</span> </div>
<div class="line"><span class="lineno"> 50</span> <span class="comment">// Vérifier si l&#39;entité a tous les composants nécessaires</span></div>
<div class="line"><span class="lineno"> 51</span> <span class="keyword">auto</span> transform = entity-&gt;GetComponent&lt;TransformComponent&gt;();</div>
<div class="line"><span class="lineno"> 52</span> <span class="keyword">auto</span> render = entity-&gt;GetComponent&lt;RenderComponent&gt;();</div>
<div class="line"><span class="lineno"> 53</span> <span class="keyword">auto</span> shader = entity-&gt;GetComponent&lt;ShaderComponent&gt;();</div>
<div class="line"><span class="lineno"> 54</span> </div>
<div class="line"><span class="lineno"> 55</span> <span class="keywordflow">if</span> (!transform || !render || !shader || !render-&gt;GetModel())</div>
<div class="line"><span class="lineno"> 56</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 57</span> </div>
<div class="line"><span class="lineno"> 58</span> <span class="comment">// Calculer la matrice monde</span></div>
<div class="line"><span class="lineno"> 59</span> XMMATRIX scaleMatrix = transform-&gt;GetScaleMatrix();</div>
<div class="line"><span class="lineno"> 60</span> XMMATRIX rotateMatrix = transform-&gt;GetRotateMatrix();</div>
<div class="line"><span class="lineno"> 61</span> XMMATRIX translateMatrix = transform-&gt;GetTranslateMatrix();</div>
<div class="line"><span class="lineno"> 62</span> </div>
<div class="line"><span class="lineno"> 63</span> XMMATRIX worldMatrix = XMMatrixMultiply(</div>
<div class="line"><span class="lineno"> 64</span> XMMatrixMultiply(scaleMatrix, rotateMatrix),</div>
<div class="line"><span class="lineno"> 65</span> translateMatrix</div>
<div class="line"><span class="lineno"> 66</span> );</div>
<div class="line"><span class="lineno"> 67</span> </div>
<div class="line"><span class="lineno"> 68</span> <span class="comment">// Rendre le modèle</span></div>
<div class="line"><span class="lineno"> 69</span> render-&gt;Render(m_deviceContext);</div>
<div class="line"><span class="lineno"> 70</span> </div>
<div class="line"><span class="lineno"> 71</span> <span class="comment">// Sélectionner le shader approprié</span></div>
<div class="line"><span class="lineno"> 72</span> <span class="keywordflow">switch</span> (shader-&gt;GetActiveShader()) {</div>
<div class="line"><span class="lineno"> 73</span> <span class="keywordflow">case</span> ShaderType::ALPHA_MAPPING:</div>
<div class="line"><span class="lineno"> 74</span> <span class="keywordflow">return</span> m_shaderManager-&gt;render_alpha_map_shader(</div>
<div class="line"><span class="lineno"> 75</span> m_deviceContext,</div>
<div class="line"><span class="lineno"> 76</span> render-&gt;GetIndexCount(),</div>
<div class="line"><span class="lineno"> 77</span> worldMatrix,</div>
<div class="line"><span class="lineno"> 78</span> viewMatrix,</div>
<div class="line"><span class="lineno"> 79</span> projectionMatrix,</div>
<div class="line"><span class="lineno"> 80</span> render-&gt;GetTexture(TextureType::Diffuse, 0),</div>
<div class="line"><span class="lineno"> 81</span> render-&gt;GetTexture(TextureType::Diffuse, 1),</div>
<div class="line"><span class="lineno"> 82</span> render-&gt;GetTexture(TextureType::Alpha, 0)</div>
<div class="line"><span class="lineno"> 83</span> );</div>
<div class="line"><span class="lineno"> 84</span> </div>
<div class="line"><span class="lineno"> 85</span> <span class="keywordflow">case</span> ShaderType::CEL_SHADING:</div>
<div class="line"><span class="lineno"> 86</span> <span class="keywordflow">return</span> m_shaderManager-&gt;render_cel_shading_shader(</div>
<div class="line"><span class="lineno"> 87</span> m_deviceContext,</div>
<div class="line"><span class="lineno"> 88</span> render-&gt;GetIndexCount(),</div>
<div class="line"><span class="lineno"> 89</span> worldMatrix,</div>
<div class="line"><span class="lineno"> 90</span> viewMatrix,</div>
<div class="line"><span class="lineno"> 91</span> projectionMatrix,</div>
<div class="line"><span class="lineno"> 92</span> render-&gt;GetTexture(TextureType::Diffuse, 0),</div>
<div class="line"><span class="lineno"> 93</span> sunlightDiffuse,</div>
<div class="line"><span class="lineno"> 94</span> sunlightAmbient,</div>
<div class="line"><span class="lineno"> 95</span> sunlightDirection,</div>
<div class="line"><span class="lineno"> 96</span> sunlightIntensity</div>
<div class="line"><span class="lineno"> 97</span> );</div>
<div class="line"><span class="lineno"> 98</span> </div>
<div class="line"><span class="lineno"> 99</span> <span class="keywordflow">case</span> ShaderType::NORMAL_MAPPING:</div>
<div class="line"><span class="lineno"> 100</span> <span class="keywordflow">return</span> m_shaderManager-&gt;render_normal_map_shader(</div>
<div class="line"><span class="lineno"> 101</span> m_deviceContext,</div>
<div class="line"><span class="lineno"> 102</span> render-&gt;GetIndexCount(),</div>
<div class="line"><span class="lineno"> 103</span> worldMatrix,</div>
<div class="line"><span class="lineno"> 104</span> viewMatrix,</div>
<div class="line"><span class="lineno"> 105</span> projectionMatrix,</div>
<div class="line"><span class="lineno"> 106</span> render-&gt;GetTexture(TextureType::Diffuse, 0),</div>
<div class="line"><span class="lineno"> 107</span> render-&gt;GetTexture(TextureType::Normal, 0),</div>
<div class="line"><span class="lineno"> 108</span> sunlightDirection,</div>
<div class="line"><span class="lineno"> 109</span> sunlightDiffuse</div>
<div class="line"><span class="lineno"> 110</span> );</div>
<div class="line"><span class="lineno"> 111</span> </div>
<div class="line"><span class="lineno"> 112</span> <span class="keywordflow">case</span> ShaderType::SPECULAR_MAPPING:</div>
<div class="line"><span class="lineno"> 113</span> </div>
<div class="line"><span class="lineno"> 114</span> <span class="keywordflow">return</span> m_shaderManager-&gt;render_spec_map_shader(</div>
<div class="line"><span class="lineno"> 115</span> m_deviceContext,</div>
<div class="line"><span class="lineno"> 116</span> render-&gt;GetIndexCount(),</div>
<div class="line"><span class="lineno"> 117</span> worldMatrix,</div>
<div class="line"><span class="lineno"> 118</span> viewMatrix,</div>
<div class="line"><span class="lineno"> 119</span> projectionMatrix,</div>
<div class="line"><span class="lineno"> 120</span> render-&gt;GetTexture(TextureType::Diffuse, 0),</div>
<div class="line"><span class="lineno"> 121</span> render-&gt;GetTexture(TextureType::Normal, 0),</div>
<div class="line"><span class="lineno"> 122</span> render-&gt;GetTexture(TextureType::Specular, 0),</div>
<div class="line"><span class="lineno"> 123</span> sunlightDirection,</div>
<div class="line"><span class="lineno"> 124</span> sunlightDiffuse,</div>
<div class="line"><span class="lineno"> 125</span> cameraPosition,</div>
<div class="line"><span class="lineno"> 126</span> sunlightDiffuse, <span class="comment">// Couleur speculaire (à ajuster)</span></div>
<div class="line"><span class="lineno"> 127</span> 16.0f <span class="comment">// Puissance speculaire (à ajuster)</span></div>
<div class="line"><span class="lineno"> 128</span> );</div>
<div class="line"><span class="lineno"> 129</span> </div>
<div class="line"><span class="lineno"> 130</span> <span class="keywordflow">case</span> ShaderType::LIGHTING:</div>
<div class="line"><span class="lineno"> 131</span> {</div>
<div class="line"><span class="lineno"> 132</span> <span class="comment">// Créer des copies locales non constantes des tableaux</span></div>
<div class="line"><span class="lineno"> 133</span> DirectX::XMFLOAT4 localDiffuseColors[4];</div>
<div class="line"><span class="lineno"> 134</span> DirectX::XMFLOAT4 localLightPositions[4];</div>
<div class="line"><span class="lineno"> 135</span> DirectX::XMFLOAT4 localAmbientColors[4];</div>
<div class="line"><span class="lineno"> 136</span> </div>
<div class="line"><span class="lineno"> 137</span> <span class="comment">// Copier les données</span></div>
<div class="line"><span class="lineno"> 138</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; 4; i++) {</div>
<div class="line"><span class="lineno"> 139</span> localDiffuseColors[i] = diffuseColors[i];</div>
<div class="line"><span class="lineno"> 140</span> localLightPositions[i] = lightPositions[i];</div>
<div class="line"><span class="lineno"> 141</span> localAmbientColors[i] = ambientColors[i];</div>
<div class="line"><span class="lineno"> 142</span> }</div>
<div class="line"><span class="lineno"> 143</span> </div>
<div class="line"><span class="lineno"> 144</span> <span class="keywordflow">return</span> m_shaderManager-&gt;renderlight_shader(</div>
<div class="line"><span class="lineno"> 145</span> m_deviceContext,</div>
<div class="line"><span class="lineno"> 146</span> render-&gt;GetIndexCount(),</div>
<div class="line"><span class="lineno"> 147</span> worldMatrix,</div>
<div class="line"><span class="lineno"> 148</span> viewMatrix,</div>
<div class="line"><span class="lineno"> 149</span> projectionMatrix,</div>
<div class="line"><span class="lineno"> 150</span> render-&gt;GetTexture(TextureType::Diffuse, 0),</div>
<div class="line"><span class="lineno"> 151</span> localDiffuseColors,</div>
<div class="line"><span class="lineno"> 152</span> localLightPositions,</div>
<div class="line"><span class="lineno"> 153</span> localAmbientColors</div>
<div class="line"><span class="lineno"> 154</span> );</div>
<div class="line"><span class="lineno"> 155</span> }</div>
<div class="line"><span class="lineno"> 156</span> </div>
<div class="line"><span class="lineno"> 157</span> <span class="keywordflow">case</span> ShaderType::SUNLIGHT:</div>
<div class="line"><span class="lineno"> 158</span> <span class="keywordflow">return</span> m_shaderManager-&gt;render_sunlight_shader(</div>
<div class="line"><span class="lineno"> 159</span> m_deviceContext,</div>
<div class="line"><span class="lineno"> 160</span> render-&gt;GetIndexCount(),</div>
<div class="line"><span class="lineno"> 161</span> worldMatrix,</div>
<div class="line"><span class="lineno"> 162</span> viewMatrix,</div>
<div class="line"><span class="lineno"> 163</span> projectionMatrix,</div>
<div class="line"><span class="lineno"> 164</span> render-&gt;GetTexture(TextureType::Diffuse, 0),</div>
<div class="line"><span class="lineno"> 165</span> sunlightDiffuse,</div>
<div class="line"><span class="lineno"> 166</span> sunlightAmbient,</div>
<div class="line"><span class="lineno"> 167</span> sunlightDirection,</div>
<div class="line"><span class="lineno"> 168</span> sunlightIntensity</div>
<div class="line"><span class="lineno"> 169</span> );</div>
<div class="line"><span class="lineno"> 170</span> </div>
<div class="line"><span class="lineno"> 171</span> <span class="keywordflow">case</span> ShaderType::SKYBOX:</div>
<div class="line"><span class="lineno"> 172</span> <span class="keywordflow">return</span> m_shaderManager-&gt;render_skybox_shader(</div>
<div class="line"><span class="lineno"> 173</span> m_deviceContext,</div>
<div class="line"><span class="lineno"> 174</span> render-&gt;GetIndexCount(),</div>
<div class="line"><span class="lineno"> 175</span> worldMatrix,</div>
<div class="line"><span class="lineno"> 176</span> viewMatrix,</div>
<div class="line"><span class="lineno"> 177</span> projectionMatrix,</div>
<div class="line"><span class="lineno"> 178</span> render-&gt;GetTexture(TextureType::Diffuse, 0),</div>
<div class="line"><span class="lineno"> 179</span> sunlightDiffuse,</div>
<div class="line"><span class="lineno"> 180</span> sunlightAmbient,</div>
<div class="line"><span class="lineno"> 181</span> sunlightDirection,</div>
<div class="line"><span class="lineno"> 182</span> sunlightIntensity</div>
<div class="line"><span class="lineno"> 183</span> );</div>
<div class="line"><span class="lineno"> 184</span> </div>
<div class="line"><span class="lineno"> 185</span> <span class="keywordflow">case</span> ShaderType::TEXTURE:</div>
<div class="line"><span class="lineno"> 186</span> <span class="keywordflow">default</span>:</div>
<div class="line"><span class="lineno"> 187</span> <span class="keywordflow">return</span> m_shaderManager-&gt;render_texture_shader(</div>
<div class="line"><span class="lineno"> 188</span> m_deviceContext,</div>
<div class="line"><span class="lineno"> 189</span> render-&gt;GetIndexCount(),</div>
<div class="line"><span class="lineno"> 190</span> worldMatrix,</div>
<div class="line"><span class="lineno"> 191</span> viewMatrix,</div>
<div class="line"><span class="lineno"> 192</span> projectionMatrix,</div>
<div class="line"><span class="lineno"> 193</span> render-&gt;GetTexture(TextureType::Diffuse, 0)</div>
<div class="line"><span class="lineno"> 194</span> );</div>
<div class="line"><span class="lineno"> 195</span> }</div>
<div class="line"><span class="lineno"> 196</span> }</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>enginecustom/src/inc/system/ecs/systems/<a class="el" href="render__system_8h_source.html">render_system.h</a></li>
</ul>
</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="namespaceecs.html">ecs</a></li><li class="navelem"><a class="el" href="classecs_1_1_render_system.html">RenderSystem</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,6 @@
var classecs_1_1_render_system =
[
[ "RenderSystem", "classecs_1_1_render_system.html#a4db69fd99c18112dcbaa931a01bb9780", null ],
[ "RenderAllEntities", "classecs_1_1_render_system.html#a8d65c73dad3be4070153c3f568d5a139", null ],
[ "RenderEntity", "classecs_1_1_render_system.html#aef4d62c3ef06a880712d183a2848de2f", null ]
];

View File

@ -0,0 +1,128 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classecs_1_1_shader_component.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">ecs::ShaderComponent Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classecs_1_1_shader_component.html">ecs::ShaderComponent</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Component</b>()=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>Component</b>(const Component &amp;)=delete (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Component</b>(Component &amp;&amp;)=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_shader_component.html#aad636c8a9e23f0ef494a2fe66d1ae6b4">GetActiveShader</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_shader_component.html">ecs::ShaderComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_shader_component.html#a69a5ca163458465936525b14270fe46e">Initialize</a>() override</td><td class="entry"><a class="el" href="classecs_1_1_shader_component.html">ecs::ShaderComponent</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>operator=</b>(const Component &amp;)=delete (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(Component &amp;&amp;)=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_shader_component.html#a4664380323123817e65900a12fa9496f">SetActiveShader</a>(ShaderType shader)</td><td class="entry"><a class="el" href="classecs_1_1_shader_component.html">ecs::ShaderComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_shader_component.html#a58198e14a710f43735b0e22d5f9d8296">ShaderComponent</a>()</td><td class="entry"><a class="el" href="classecs_1_1_shader_component.html">ecs::ShaderComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_shader_component.html#a08335ddbedf7eecadcd0db95c4d45c63">ShaderTypeToString</a>(ShaderType type)</td><td class="entry"><a class="el" href="classecs_1_1_shader_component.html">ecs::ShaderComponent</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_shader_component.html#abd16c8adfd191f96594716b235780950">StringToShaderType</a>(const std::string &amp;str)</td><td class="entry"><a class="el" href="classecs_1_1_shader_component.html">ecs::ShaderComponent</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_shader_component.html#a2ebc1ef592626fc729884677c771ccbf">Update</a>(float deltaTime) override</td><td class="entry"><a class="el" href="classecs_1_1_shader_component.html">ecs::ShaderComponent</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~Component</b>()=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~ShaderComponent</b>()=default (defined in <a class="el" href="classecs_1_1_shader_component.html">ecs::ShaderComponent</a>)</td><td class="entry"><a class="el" href="classecs_1_1_shader_component.html">ecs::ShaderComponent</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,422 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: ecs::ShaderComponent Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classecs_1_1_shader_component.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="classecs_1_1_shader_component-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">ecs::ShaderComponent Class Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Inheritance diagram for ecs::ShaderComponent:</div>
<div class="dyncontent">
<div class="center">
<img src="classecs_1_1_shader_component.png" usemap="#ecs::ShaderComponent_map" alt=""/>
<map id="ecs::ShaderComponent_map" name="ecs::ShaderComponent_map">
<area href="classecs_1_1_component.html" alt="ecs::Component" shape="rect" coords="0,0,142,24"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a58198e14a710f43735b0e22d5f9d8296" id="r_a58198e14a710f43735b0e22d5f9d8296"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a58198e14a710f43735b0e22d5f9d8296">ShaderComponent</a> ()</td></tr>
<tr class="separator:a58198e14a710f43735b0e22d5f9d8296"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69a5ca163458465936525b14270fe46e" id="r_a69a5ca163458465936525b14270fe46e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a69a5ca163458465936525b14270fe46e">Initialize</a> () override</td></tr>
<tr class="separator:a69a5ca163458465936525b14270fe46e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2ebc1ef592626fc729884677c771ccbf" id="r_a2ebc1ef592626fc729884677c771ccbf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2ebc1ef592626fc729884677c771ccbf">Update</a> (float deltaTime) override</td></tr>
<tr class="separator:a2ebc1ef592626fc729884677c771ccbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad636c8a9e23f0ef494a2fe66d1ae6b4" id="r_aad636c8a9e23f0ef494a2fe66d1ae6b4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceecs.html#a80994feeebc2747495a80b5d4b2a8440">ShaderType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aad636c8a9e23f0ef494a2fe66d1ae6b4">GetActiveShader</a> () const</td></tr>
<tr class="separator:aad636c8a9e23f0ef494a2fe66d1ae6b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4664380323123817e65900a12fa9496f" id="r_a4664380323123817e65900a12fa9496f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4664380323123817e65900a12fa9496f">SetActiveShader</a> (<a class="el" href="namespaceecs.html#a80994feeebc2747495a80b5d4b2a8440">ShaderType</a> shader)</td></tr>
<tr class="separator:a4664380323123817e65900a12fa9496f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classecs_1_1_component"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_classecs_1_1_component')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classecs_1_1_component.html">ecs::Component</a></td></tr>
<tr class="memitem:a8dbee43fa54890ad07145aa1160b0b09 inherit pub_methods_classecs_1_1_component" id="r_a8dbee43fa54890ad07145aa1160b0b09"><td class="memItemLeft" align="right" valign="top">
&#160;</td><td class="memItemRight" valign="bottom"><b>Component</b> (const <a class="el" href="classecs_1_1_component.html">Component</a> &amp;)=delete</td></tr>
<tr class="separator:a8dbee43fa54890ad07145aa1160b0b09 inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34000da33471994c2550e416505026ad inherit pub_methods_classecs_1_1_component" id="r_a34000da33471994c2550e416505026ad"><td class="memItemLeft" align="right" valign="top">
<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classecs_1_1_component.html">Component</a> &amp;)=delete</td></tr>
<tr class="separator:a34000da33471994c2550e416505026ad inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a213cfa3482dca1ffc458b9cf020b4814 inherit pub_methods_classecs_1_1_component" id="r_a213cfa3482dca1ffc458b9cf020b4814"><td class="memItemLeft" align="right" valign="top">
&#160;</td><td class="memItemRight" valign="bottom"><b>Component</b> (<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&amp;)=default</td></tr>
<tr class="separator:a213cfa3482dca1ffc458b9cf020b4814 inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8089d7e43f9ac2a6eedd3b0598c46694 inherit pub_methods_classecs_1_1_component" id="r_a8089d7e43f9ac2a6eedd3b0598c46694"><td class="memItemLeft" align="right" valign="top">
<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&amp;)=default</td></tr>
<tr class="separator:a8089d7e43f9ac2a6eedd3b0598c46694 inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:abd16c8adfd191f96594716b235780950" id="r_abd16c8adfd191f96594716b235780950"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="namespaceecs.html#a80994feeebc2747495a80b5d4b2a8440">ShaderType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abd16c8adfd191f96594716b235780950">StringToShaderType</a> (const std::string &amp;str)</td></tr>
<tr class="separator:abd16c8adfd191f96594716b235780950"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a08335ddbedf7eecadcd0db95c4d45c63" id="r_a08335ddbedf7eecadcd0db95c4d45c63"><td class="memItemLeft" align="right" valign="top">static std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a08335ddbedf7eecadcd0db95c4d45c63">ShaderTypeToString</a> (<a class="el" href="namespaceecs.html#a80994feeebc2747495a80b5d4b2a8440">ShaderType</a> type)</td></tr>
<tr class="separator:a08335ddbedf7eecadcd0db95c4d45c63"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="shader__component_8h_source.html#l00024">24</a> of file <a class="el" href="shader__component_8h_source.html">shader_component.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a58198e14a710f43735b0e22d5f9d8296" name="a58198e14a710f43735b0e22d5f9d8296"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a58198e14a710f43735b0e22d5f9d8296">&#9670;&#160;</a></span>ShaderComponent()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ecs::ShaderComponent::ShaderComponent </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Builder for the <a class="el" href="classecs_1_1_shader_component.html">ShaderComponent</a> class. Initializes the active shader to LIGHTING by default. </p>
<p class="definition">Definition at line <a class="el" href="shader__component_8h_source.html#l00031">31</a> of file <a class="el" href="shader__component_8h_source.html">shader_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 31</span>: m_activeShader(ShaderType::LIGHTING) {}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="aad636c8a9e23f0ef494a2fe66d1ae6b4" name="aad636c8a9e23f0ef494a2fe66d1ae6b4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aad636c8a9e23f0ef494a2fe66d1ae6b4">&#9670;&#160;</a></span>GetActiveShader()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespaceecs.html#a80994feeebc2747495a80b5d4b2a8440">ShaderType</a> ecs::ShaderComponent::GetActiveShader </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the currently active shader type. </p><dl class="section return"><dt>Returns</dt><dd>The active shader type as a ShaderType enum. </dd></dl>
<p class="definition">Definition at line <a class="el" href="shader__component_8h_source.html#l00041">41</a> of file <a class="el" href="shader__component_8h_source.html">shader_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 41</span>{ <span class="keywordflow">return</span> m_activeShader; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a69a5ca163458465936525b14270fe46e" name="a69a5ca163458465936525b14270fe46e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a69a5ca163458465936525b14270fe46e">&#9670;&#160;</a></span>Initialize()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::ShaderComponent::Initialize </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Virtual function to initialize the component. </p>
<p>Reimplemented from <a class="el" href="classecs_1_1_component.html#a9372874f51e5f63584d65fc378d39459">ecs::Component</a>.</p>
<p class="definition">Definition at line <a class="el" href="shader__component_8h_source.html#l00034">34</a> of file <a class="el" href="shader__component_8h_source.html">shader_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 34</span>{}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a4664380323123817e65900a12fa9496f" name="a4664380323123817e65900a12fa9496f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4664380323123817e65900a12fa9496f">&#9670;&#160;</a></span>SetActiveShader()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::ShaderComponent::SetActiveShader </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespaceecs.html#a80994feeebc2747495a80b5d4b2a8440">ShaderType</a></td> <td class="paramname"><span class="paramname"><em>shader</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the active shader type. This method allows changing the shader type used for rendering. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">shader</td><td>The shader type to set as a ShaderType enum. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="shader__component_8h_source.html#l00047">47</a> of file <a class="el" href="shader__component_8h_source.html">shader_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 47</span>{ m_activeShader = shader; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a08335ddbedf7eecadcd0db95c4d45c63" name="a08335ddbedf7eecadcd0db95c4d45c63"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a08335ddbedf7eecadcd0db95c4d45c63">&#9670;&#160;</a></span>ShaderTypeToString()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static std::string ecs::ShaderComponent::ShaderTypeToString </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespaceecs.html#a80994feeebc2747495a80b5d4b2a8440">ShaderType</a></td> <td class="paramname"><span class="paramname"><em>type</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Convert a ShaderType enum to its string representation. This method provides a string name for each shader type. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">type</td><td>The shader type as a ShaderType enum. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The name of the shader type as a string. </dd></dl>
<p class="definition">Definition at line <a class="el" href="shader__component_8h_source.html#l00075">75</a> of file <a class="el" href="shader__component_8h_source.html">shader_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 75</span> {</div>
<div class="line"><span class="lineno"> 76</span> <span class="keywordflow">switch</span> (type) {</div>
<div class="line"><span class="lineno"> 77</span> <span class="keywordflow">case</span> ShaderType::ALPHA_MAPPING: <span class="keywordflow">return</span> <span class="stringliteral">&quot;ALPHA_MAPPING&quot;</span>;</div>
<div class="line"><span class="lineno"> 78</span> <span class="keywordflow">case</span> ShaderType::CEL_SHADING: <span class="keywordflow">return</span> <span class="stringliteral">&quot;CEL_SHADING&quot;</span>;</div>
<div class="line"><span class="lineno"> 79</span> <span class="keywordflow">case</span> ShaderType::NORMAL_MAPPING: <span class="keywordflow">return</span> <span class="stringliteral">&quot;NORMAL_MAPPING&quot;</span>;</div>
<div class="line"><span class="lineno"> 80</span> <span class="keywordflow">case</span> ShaderType::SPECULAR_MAPPING: <span class="keywordflow">return</span> <span class="stringliteral">&quot;SPECULAR_MAPPING&quot;</span>;</div>
<div class="line"><span class="lineno"> 81</span> <span class="keywordflow">case</span> ShaderType::TEXTURE: <span class="keywordflow">return</span> <span class="stringliteral">&quot;TEXTURE&quot;</span>;</div>
<div class="line"><span class="lineno"> 82</span> <span class="keywordflow">case</span> ShaderType::LIGHTING: <span class="keywordflow">return</span> <span class="stringliteral">&quot;LIGHTING&quot;</span>;</div>
<div class="line"><span class="lineno"> 83</span> <span class="keywordflow">case</span> ShaderType::SUNLIGHT: <span class="keywordflow">return</span> <span class="stringliteral">&quot;SUNLIGHT&quot;</span>;</div>
<div class="line"><span class="lineno"> 84</span> <span class="keywordflow">case</span> ShaderType::SKYBOX: <span class="keywordflow">return</span> <span class="stringliteral">&quot;SKYBOX&quot;</span>;</div>
<div class="line"><span class="lineno"> 85</span> <span class="keywordflow">case</span> ShaderType::REFLECTION: <span class="keywordflow">return</span> <span class="stringliteral">&quot;REFLECTION&quot;</span>;</div>
<div class="line"><span class="lineno"> 86</span> <span class="keywordflow">case</span> ShaderType::REFRACTION: <span class="keywordflow">return</span> <span class="stringliteral">&quot;REFRACTION&quot;</span>;</div>
<div class="line"><span class="lineno"> 87</span> <span class="keywordflow">default</span>: <span class="keywordflow">return</span> <span class="stringliteral">&quot;TEXTURE&quot;</span>;</div>
<div class="line"><span class="lineno"> 88</span> }</div>
<div class="line"><span class="lineno"> 89</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="abd16c8adfd191f96594716b235780950" name="abd16c8adfd191f96594716b235780950"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abd16c8adfd191f96594716b235780950">&#9670;&#160;</a></span>StringToShaderType()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static <a class="el" href="namespaceecs.html#a80994feeebc2747495a80b5d4b2a8440">ShaderType</a> ecs::ShaderComponent::StringToShaderType </td>
<td>(</td>
<td class="paramtype">const std::string &amp;</td> <td class="paramname"><span class="paramname"><em>str</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the active shader type from a string. This method converts a string representation of a shader type to the corresponding ShaderType enum. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">shaderName</td><td>The name of the shader type as a string. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The ShaderType enum corresponding to the provided string. </dd></dl>
<p class="definition">Definition at line <a class="el" href="shader__component_8h_source.html#l00055">55</a> of file <a class="el" href="shader__component_8h_source.html">shader_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 55</span> {</div>
<div class="line"><span class="lineno"> 56</span> <span class="keywordflow">if</span> (str == <span class="stringliteral">&quot;ALPHA_MAPPING&quot;</span>) <span class="keywordflow">return</span> ShaderType::ALPHA_MAPPING;</div>
<div class="line"><span class="lineno"> 57</span> <span class="keywordflow">if</span> (str == <span class="stringliteral">&quot;CEL_SHADING&quot;</span>) <span class="keywordflow">return</span> ShaderType::CEL_SHADING;</div>
<div class="line"><span class="lineno"> 58</span> <span class="keywordflow">if</span> (str == <span class="stringliteral">&quot;NORMAL_MAPPING&quot;</span>) <span class="keywordflow">return</span> ShaderType::NORMAL_MAPPING;</div>
<div class="line"><span class="lineno"> 59</span> <span class="keywordflow">if</span> (str == <span class="stringliteral">&quot;SPECULAR_MAPPING&quot;</span>) <span class="keywordflow">return</span> ShaderType::SPECULAR_MAPPING;</div>
<div class="line"><span class="lineno"> 60</span> <span class="keywordflow">if</span> (str == <span class="stringliteral">&quot;TEXTURE&quot;</span>) <span class="keywordflow">return</span> ShaderType::TEXTURE;</div>
<div class="line"><span class="lineno"> 61</span> <span class="keywordflow">if</span> (str == <span class="stringliteral">&quot;LIGHTING&quot;</span>) <span class="keywordflow">return</span> ShaderType::LIGHTING;</div>
<div class="line"><span class="lineno"> 62</span> <span class="keywordflow">if</span> (str == <span class="stringliteral">&quot;SUNLIGHT&quot;</span>) <span class="keywordflow">return</span> ShaderType::SUNLIGHT;</div>
<div class="line"><span class="lineno"> 63</span> <span class="keywordflow">if</span> (str == <span class="stringliteral">&quot;SKYBOX&quot;</span>) <span class="keywordflow">return</span> ShaderType::SKYBOX;</div>
<div class="line"><span class="lineno"> 64</span> <span class="keywordflow">if</span> (str == <span class="stringliteral">&quot;REFLECTION&quot;</span>) <span class="keywordflow">return</span> ShaderType::REFLECTION;</div>
<div class="line"><span class="lineno"> 65</span> <span class="keywordflow">if</span> (str == <span class="stringliteral">&quot;REFRACTION&quot;</span>) <span class="keywordflow">return</span> ShaderType::REFRACTION;</div>
<div class="line"><span class="lineno"> 66</span> <span class="keywordflow">return</span> ShaderType::TEXTURE;</div>
<div class="line"><span class="lineno"> 67</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a2ebc1ef592626fc729884677c771ccbf" name="a2ebc1ef592626fc729884677c771ccbf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2ebc1ef592626fc729884677c771ccbf">&#9670;&#160;</a></span>Update()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::ShaderComponent::Update </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>deltaTime</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Virtual function to update the component. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">deltaTime</td><td>Time since the last update. </td></tr>
</table>
</dd>
</dl>
<p>Reimplemented from <a class="el" href="classecs_1_1_component.html#a59c0f739c4ff19227e27ed7b9f6352e0">ecs::Component</a>.</p>
<p class="definition">Definition at line <a class="el" href="shader__component_8h_source.html#l00035">35</a> of file <a class="el" href="shader__component_8h_source.html">shader_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 35</span>{}</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>enginecustom/src/inc/system/ecs/components/<a class="el" href="shader__component_8h_source.html">shader_component.h</a></li>
</ul>
</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="namespaceecs.html">ecs</a></li><li class="navelem"><a class="el" href="classecs_1_1_shader_component.html">ShaderComponent</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,8 @@
var classecs_1_1_shader_component =
[
[ "ShaderComponent", "classecs_1_1_shader_component.html#a58198e14a710f43735b0e22d5f9d8296", null ],
[ "GetActiveShader", "classecs_1_1_shader_component.html#aad636c8a9e23f0ef494a2fe66d1ae6b4", null ],
[ "Initialize", "classecs_1_1_shader_component.html#a69a5ca163458465936525b14270fe46e", null ],
[ "SetActiveShader", "classecs_1_1_shader_component.html#a4664380323123817e65900a12fa9496f", null ],
[ "Update", "classecs_1_1_shader_component.html#a2ebc1ef592626fc729884677c771ccbf", null ]
];

Binary file not shown.

After

Width:  |  Height:  |  Size: 604 B

View File

@ -0,0 +1,138 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classecs_1_1_transform_component.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">ecs::TransformComponent Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classecs_1_1_transform_component.html">ecs::TransformComponent</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Component</b>()=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>Component</b>(const Component &amp;)=delete (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Component</b>(Component &amp;&amp;)=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_transform_component.html#a2936d569829c3c440d3bf5bde6353efe">GetPosition</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_transform_component.html">ecs::TransformComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_transform_component.html#aedc64114b30f9aa629caf6548bfc3c07">GetRotateMatrix</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_transform_component.html">ecs::TransformComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_transform_component.html#a50130c13fb3f0d01a473eead605aaa40">GetRotation</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_transform_component.html">ecs::TransformComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_transform_component.html#af5cb7911c9deab8a49c9f8ae3ce099c5">GetScale</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_transform_component.html">ecs::TransformComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_transform_component.html#aca8c9c9d0266636b7431696a6905b419">GetScaleMatrix</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_transform_component.html">ecs::TransformComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_transform_component.html#a2c5c5b5d1081b942ab7d5776d4418044">GetTranslateMatrix</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_transform_component.html">ecs::TransformComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_transform_component.html#a0d9f3426b6952e0468705820835ac331">GetWorldMatrix</a>() const</td><td class="entry"><a class="el" href="classecs_1_1_transform_component.html">ecs::TransformComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_component.html#a9372874f51e5f63584d65fc378d39459">Initialize</a>()</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>operator=</b>(const Component &amp;)=delete (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(Component &amp;&amp;)=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_transform_component.html#ad825453d2a065640aa71618c00612249">SetPosition</a>(XMVECTOR position)</td><td class="entry"><a class="el" href="classecs_1_1_transform_component.html">ecs::TransformComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_transform_component.html#a5d868ff759cb7709328938681d62f913">SetRotateMatrix</a>(XMMATRIX matrix)</td><td class="entry"><a class="el" href="classecs_1_1_transform_component.html">ecs::TransformComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_transform_component.html#a67f155836cd31a336324bb1ea4b3741a">SetRotation</a>(XMVECTOR rotation)</td><td class="entry"><a class="el" href="classecs_1_1_transform_component.html">ecs::TransformComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_transform_component.html#ac98d110ada557fce53563306700516b7">SetScale</a>(XMVECTOR scale)</td><td class="entry"><a class="el" href="classecs_1_1_transform_component.html">ecs::TransformComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_transform_component.html#aa1d23303805dd960452dd16a5c077835">SetScaleMatrix</a>(XMMATRIX matrix)</td><td class="entry"><a class="el" href="classecs_1_1_transform_component.html">ecs::TransformComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_transform_component.html#ae6c18c31f088f065f059b490773b3a08">SetTranslateMatrix</a>(XMMATRIX matrix)</td><td class="entry"><a class="el" href="classecs_1_1_transform_component.html">ecs::TransformComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_transform_component.html#a66dc72687d5a68513beb31b5ae28564f">TransformComponent</a>()</td><td class="entry"><a class="el" href="classecs_1_1_transform_component.html">ecs::TransformComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classecs_1_1_component.html#a59c0f739c4ff19227e27ed7b9f6352e0">Update</a>(float deltaTime)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr class="odd"><td class="entry"><a class="el" href="classecs_1_1_transform_component.html#a28d1fe5ba04d4ff6f9eb136ea656e35e">UpdateWorldMatrix</a>()</td><td class="entry"><a class="el" href="classecs_1_1_transform_component.html">ecs::TransformComponent</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~Component</b>()=default (defined in <a class="el" href="classecs_1_1_component.html">ecs::Component</a>)</td><td class="entry"><a class="el" href="classecs_1_1_component.html">ecs::Component</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~TransformComponent</b>()=default (defined in <a class="el" href="classecs_1_1_transform_component.html">ecs::TransformComponent</a>)</td><td class="entry"><a class="el" href="classecs_1_1_transform_component.html">ecs::TransformComponent</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,702 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: ecs::TransformComponent Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classecs_1_1_transform_component.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classecs_1_1_transform_component-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">ecs::TransformComponent Class Reference</div></div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Inheritance diagram for ecs::TransformComponent:</div>
<div class="dyncontent">
<div class="center">
<img src="classecs_1_1_transform_component.png" usemap="#ecs::TransformComponent_map" alt=""/>
<map id="ecs::TransformComponent_map" name="ecs::TransformComponent_map">
<area href="classecs_1_1_component.html" alt="ecs::Component" shape="rect" coords="0,0,158,24"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a66dc72687d5a68513beb31b5ae28564f" id="r_a66dc72687d5a68513beb31b5ae28564f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a66dc72687d5a68513beb31b5ae28564f">TransformComponent</a> ()</td></tr>
<tr class="separator:a66dc72687d5a68513beb31b5ae28564f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad825453d2a065640aa71618c00612249" id="r_ad825453d2a065640aa71618c00612249"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad825453d2a065640aa71618c00612249">SetPosition</a> (XMVECTOR position)</td></tr>
<tr class="separator:ad825453d2a065640aa71618c00612249"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a67f155836cd31a336324bb1ea4b3741a" id="r_a67f155836cd31a336324bb1ea4b3741a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a67f155836cd31a336324bb1ea4b3741a">SetRotation</a> (XMVECTOR rotation)</td></tr>
<tr class="separator:a67f155836cd31a336324bb1ea4b3741a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac98d110ada557fce53563306700516b7" id="r_ac98d110ada557fce53563306700516b7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac98d110ada557fce53563306700516b7">SetScale</a> (XMVECTOR scale)</td></tr>
<tr class="separator:ac98d110ada557fce53563306700516b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2936d569829c3c440d3bf5bde6353efe" id="r_a2936d569829c3c440d3bf5bde6353efe"><td class="memItemLeft" align="right" valign="top">XMVECTOR&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2936d569829c3c440d3bf5bde6353efe">GetPosition</a> () const</td></tr>
<tr class="separator:a2936d569829c3c440d3bf5bde6353efe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a50130c13fb3f0d01a473eead605aaa40" id="r_a50130c13fb3f0d01a473eead605aaa40"><td class="memItemLeft" align="right" valign="top">XMVECTOR&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a50130c13fb3f0d01a473eead605aaa40">GetRotation</a> () const</td></tr>
<tr class="separator:a50130c13fb3f0d01a473eead605aaa40"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af5cb7911c9deab8a49c9f8ae3ce099c5" id="r_af5cb7911c9deab8a49c9f8ae3ce099c5"><td class="memItemLeft" align="right" valign="top">XMVECTOR&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af5cb7911c9deab8a49c9f8ae3ce099c5">GetScale</a> () const</td></tr>
<tr class="separator:af5cb7911c9deab8a49c9f8ae3ce099c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a28d1fe5ba04d4ff6f9eb136ea656e35e" id="r_a28d1fe5ba04d4ff6f9eb136ea656e35e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a28d1fe5ba04d4ff6f9eb136ea656e35e">UpdateWorldMatrix</a> ()</td></tr>
<tr class="separator:a28d1fe5ba04d4ff6f9eb136ea656e35e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca8c9c9d0266636b7431696a6905b419" id="r_aca8c9c9d0266636b7431696a6905b419"><td class="memItemLeft" align="right" valign="top">XMMATRIX&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aca8c9c9d0266636b7431696a6905b419">GetScaleMatrix</a> () const</td></tr>
<tr class="separator:aca8c9c9d0266636b7431696a6905b419"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aedc64114b30f9aa629caf6548bfc3c07" id="r_aedc64114b30f9aa629caf6548bfc3c07"><td class="memItemLeft" align="right" valign="top">XMMATRIX&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aedc64114b30f9aa629caf6548bfc3c07">GetRotateMatrix</a> () const</td></tr>
<tr class="separator:aedc64114b30f9aa629caf6548bfc3c07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c5c5b5d1081b942ab7d5776d4418044" id="r_a2c5c5b5d1081b942ab7d5776d4418044"><td class="memItemLeft" align="right" valign="top">XMMATRIX&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2c5c5b5d1081b942ab7d5776d4418044">GetTranslateMatrix</a> () const</td></tr>
<tr class="separator:a2c5c5b5d1081b942ab7d5776d4418044"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d9f3426b6952e0468705820835ac331" id="r_a0d9f3426b6952e0468705820835ac331"><td class="memItemLeft" align="right" valign="top">XMMATRIX&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0d9f3426b6952e0468705820835ac331">GetWorldMatrix</a> () const</td></tr>
<tr class="separator:a0d9f3426b6952e0468705820835ac331"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa1d23303805dd960452dd16a5c077835" id="r_aa1d23303805dd960452dd16a5c077835"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa1d23303805dd960452dd16a5c077835">SetScaleMatrix</a> (XMMATRIX matrix)</td></tr>
<tr class="separator:aa1d23303805dd960452dd16a5c077835"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d868ff759cb7709328938681d62f913" id="r_a5d868ff759cb7709328938681d62f913"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5d868ff759cb7709328938681d62f913">SetRotateMatrix</a> (XMMATRIX matrix)</td></tr>
<tr class="separator:a5d868ff759cb7709328938681d62f913"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae6c18c31f088f065f059b490773b3a08" id="r_ae6c18c31f088f065f059b490773b3a08"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae6c18c31f088f065f059b490773b3a08">SetTranslateMatrix</a> (XMMATRIX matrix)</td></tr>
<tr class="separator:ae6c18c31f088f065f059b490773b3a08"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classecs_1_1_component"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_classecs_1_1_component')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classecs_1_1_component.html">ecs::Component</a></td></tr>
<tr class="memitem:a8dbee43fa54890ad07145aa1160b0b09 inherit pub_methods_classecs_1_1_component" id="r_a8dbee43fa54890ad07145aa1160b0b09"><td class="memItemLeft" align="right" valign="top">
&#160;</td><td class="memItemRight" valign="bottom"><b>Component</b> (const <a class="el" href="classecs_1_1_component.html">Component</a> &amp;)=delete</td></tr>
<tr class="separator:a8dbee43fa54890ad07145aa1160b0b09 inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34000da33471994c2550e416505026ad inherit pub_methods_classecs_1_1_component" id="r_a34000da33471994c2550e416505026ad"><td class="memItemLeft" align="right" valign="top">
<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classecs_1_1_component.html">Component</a> &amp;)=delete</td></tr>
<tr class="separator:a34000da33471994c2550e416505026ad inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a213cfa3482dca1ffc458b9cf020b4814 inherit pub_methods_classecs_1_1_component" id="r_a213cfa3482dca1ffc458b9cf020b4814"><td class="memItemLeft" align="right" valign="top">
&#160;</td><td class="memItemRight" valign="bottom"><b>Component</b> (<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&amp;)=default</td></tr>
<tr class="separator:a213cfa3482dca1ffc458b9cf020b4814 inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8089d7e43f9ac2a6eedd3b0598c46694 inherit pub_methods_classecs_1_1_component" id="r_a8089d7e43f9ac2a6eedd3b0598c46694"><td class="memItemLeft" align="right" valign="top">
<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (<a class="el" href="classecs_1_1_component.html">Component</a> &amp;&amp;)=default</td></tr>
<tr class="separator:a8089d7e43f9ac2a6eedd3b0598c46694 inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9372874f51e5f63584d65fc378d39459 inherit pub_methods_classecs_1_1_component" id="r_a9372874f51e5f63584d65fc378d39459"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classecs_1_1_component.html#a9372874f51e5f63584d65fc378d39459">Initialize</a> ()</td></tr>
<tr class="separator:a9372874f51e5f63584d65fc378d39459 inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59c0f739c4ff19227e27ed7b9f6352e0 inherit pub_methods_classecs_1_1_component" id="r_a59c0f739c4ff19227e27ed7b9f6352e0"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classecs_1_1_component.html#a59c0f739c4ff19227e27ed7b9f6352e0">Update</a> (float deltaTime)</td></tr>
<tr class="separator:a59c0f739c4ff19227e27ed7b9f6352e0 inherit pub_methods_classecs_1_1_component"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="transform__component_8h_source.html#l00009">9</a> of file <a class="el" href="transform__component_8h_source.html">transform_component.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a66dc72687d5a68513beb31b5ae28564f" name="a66dc72687d5a68513beb31b5ae28564f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a66dc72687d5a68513beb31b5ae28564f">&#9670;&#160;</a></span>TransformComponent()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ecs::TransformComponent::TransformComponent </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Builder for the <a class="el" href="classecs_1_1_transform_component.html">TransformComponent</a> class. Initializes the matrices to identity matrices. </p>
<p class="definition">Definition at line <a class="el" href="transform__component_8h_source.html#l00016">16</a> of file <a class="el" href="transform__component_8h_source.html">transform_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 16</span> {</div>
<div class="line"><span class="lineno"> 17</span> m_ScaleMatrix = XMMatrixIdentity();</div>
<div class="line"><span class="lineno"> 18</span> m_RotateMatrix = XMMatrixIdentity();</div>
<div class="line"><span class="lineno"> 19</span> m_TranslateMatrix = XMMatrixIdentity();</div>
<div class="line"><span class="lineno"> 20</span> m_WorldMatrix = XMMatrixIdentity();</div>
<div class="line"><span class="lineno"> 21</span> }</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a2936d569829c3c440d3bf5bde6353efe" name="a2936d569829c3c440d3bf5bde6353efe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2936d569829c3c440d3bf5bde6353efe">&#9670;&#160;</a></span>GetPosition()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">XMVECTOR ecs::TransformComponent::GetPosition </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the position of the object in world space. </p><dl class="section return"><dt>Returns</dt><dd>The position as an XMVECTOR (x, y, z, (w is O.0f)). </dd></dl>
<p class="definition">Definition at line <a class="el" href="transform__component_8h_source.html#l00066">66</a> of file <a class="el" href="transform__component_8h_source.html">transform_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 66</span> {</div>
<div class="line"><span class="lineno"> 67</span> XMFLOAT4X4 matrix;</div>
<div class="line"><span class="lineno"> 68</span> XMStoreFloat4x4(&amp;matrix, m_TranslateMatrix);</div>
<div class="line"><span class="lineno"> 69</span> <span class="keywordflow">return</span> XMVectorSet(matrix._41, matrix._42, matrix._43, 0.0f);</div>
<div class="line"><span class="lineno"> 70</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="aedc64114b30f9aa629caf6548bfc3c07" name="aedc64114b30f9aa629caf6548bfc3c07"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aedc64114b30f9aa629caf6548bfc3c07">&#9670;&#160;</a></span>GetRotateMatrix()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">XMMATRIX ecs::TransformComponent::GetRotateMatrix </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the rotation matrix. </p><dl class="section return"><dt>Returns</dt><dd>The rotation matrix as an XMMATRIX. </dd></dl>
<p class="definition">Definition at line <a class="el" href="transform__component_8h_source.html#l00124">124</a> of file <a class="el" href="transform__component_8h_source.html">transform_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 124</span>{ <span class="keywordflow">return</span> m_RotateMatrix; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a50130c13fb3f0d01a473eead605aaa40" name="a50130c13fb3f0d01a473eead605aaa40"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a50130c13fb3f0d01a473eead605aaa40">&#9670;&#160;</a></span>GetRotation()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">XMVECTOR ecs::TransformComponent::GetRotation </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the rotation of the object in world space. </p><dl class="section return"><dt>Returns</dt><dd>The rotation as an XMVECTOR (roll, pitch, yaw, (w is O.0f)). </dd></dl>
<p class="definition">Definition at line <a class="el" href="transform__component_8h_source.html#l00076">76</a> of file <a class="el" href="transform__component_8h_source.html">transform_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 76</span> {</div>
<div class="line"><span class="lineno"> 77</span> XMFLOAT4X4 matrix;</div>
<div class="line"><span class="lineno"> 78</span> XMStoreFloat4x4(&amp;matrix, m_RotateMatrix);</div>
<div class="line"><span class="lineno"> 79</span> <span class="keywordtype">float</span> rotationX = atan2f(matrix._32, matrix._33);</div>
<div class="line"><span class="lineno"> 80</span> <span class="keywordtype">float</span> rotationY = atan2f(-matrix._31, sqrtf(matrix._32 * matrix._32 + matrix._33 * matrix._33));</div>
<div class="line"><span class="lineno"> 81</span> <span class="keywordtype">float</span> rotationZ = atan2f(matrix._21, matrix._11);</div>
<div class="line"><span class="lineno"> 82</span> <span class="keywordflow">return</span> XMVectorSet(rotationX, rotationY, rotationZ, 0.0f);</div>
<div class="line"><span class="lineno"> 83</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="af5cb7911c9deab8a49c9f8ae3ce099c5" name="af5cb7911c9deab8a49c9f8ae3ce099c5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af5cb7911c9deab8a49c9f8ae3ce099c5">&#9670;&#160;</a></span>GetScale()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">XMVECTOR ecs::TransformComponent::GetScale </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the scale of the object in world space. </p><dl class="section return"><dt>Returns</dt><dd>The scale as an XMVECTOR (x, y, z, (w is O.0f)). </dd></dl>
<p class="definition">Definition at line <a class="el" href="transform__component_8h_source.html#l00089">89</a> of file <a class="el" href="transform__component_8h_source.html">transform_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 89</span> {</div>
<div class="line"><span class="lineno"> 90</span> XMFLOAT4X4 matrix;</div>
<div class="line"><span class="lineno"> 91</span> XMStoreFloat4x4(&amp;matrix, m_ScaleMatrix);</div>
<div class="line"><span class="lineno"> 92</span> </div>
<div class="line"><span class="lineno"> 93</span> XMVECTOR row1 = XMLoadFloat3(<span class="keyword">reinterpret_cast&lt;</span>XMFLOAT3*<span class="keyword">&gt;</span>(&amp;matrix._11));</div>
<div class="line"><span class="lineno"> 94</span> XMVECTOR row2 = XMLoadFloat3(<span class="keyword">reinterpret_cast&lt;</span>XMFLOAT3*<span class="keyword">&gt;</span>(&amp;matrix._21));</div>
<div class="line"><span class="lineno"> 95</span> XMVECTOR row3 = XMLoadFloat3(<span class="keyword">reinterpret_cast&lt;</span>XMFLOAT3*<span class="keyword">&gt;</span>(&amp;matrix._31));</div>
<div class="line"><span class="lineno"> 96</span> </div>
<div class="line"><span class="lineno"> 97</span> XMVECTOR scale = XMVectorSet(</div>
<div class="line"><span class="lineno"> 98</span> XMVectorGetX(XMVector3Length(row1)),</div>
<div class="line"><span class="lineno"> 99</span> XMVectorGetX(XMVector3Length(row2)),</div>
<div class="line"><span class="lineno"> 100</span> XMVectorGetX(XMVector3Length(row3)),</div>
<div class="line"><span class="lineno"> 101</span> 0.0f</div>
<div class="line"><span class="lineno"> 102</span> );</div>
<div class="line"><span class="lineno"> 103</span> </div>
<div class="line"><span class="lineno"> 104</span> <span class="keywordflow">return</span> scale;</div>
<div class="line"><span class="lineno"> 105</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="aca8c9c9d0266636b7431696a6905b419" name="aca8c9c9d0266636b7431696a6905b419"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aca8c9c9d0266636b7431696a6905b419">&#9670;&#160;</a></span>GetScaleMatrix()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">XMMATRIX ecs::TransformComponent::GetScaleMatrix </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the scale matrix. </p><dl class="section return"><dt>Returns</dt><dd>The scale matrix as an XMMATRIX. </dd></dl>
<p class="definition">Definition at line <a class="el" href="transform__component_8h_source.html#l00119">119</a> of file <a class="el" href="transform__component_8h_source.html">transform_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 119</span>{ <span class="keywordflow">return</span> m_ScaleMatrix; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a2c5c5b5d1081b942ab7d5776d4418044" name="a2c5c5b5d1081b942ab7d5776d4418044"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2c5c5b5d1081b942ab7d5776d4418044">&#9670;&#160;</a></span>GetTranslateMatrix()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">XMMATRIX ecs::TransformComponent::GetTranslateMatrix </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the translation matrix. </p><dl class="section return"><dt>Returns</dt><dd>The translation matrix as an XMMATRIX. </dd></dl>
<p class="definition">Definition at line <a class="el" href="transform__component_8h_source.html#l00129">129</a> of file <a class="el" href="transform__component_8h_source.html">transform_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 129</span>{ <span class="keywordflow">return</span> m_TranslateMatrix; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a0d9f3426b6952e0468705820835ac331" name="a0d9f3426b6952e0468705820835ac331"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0d9f3426b6952e0468705820835ac331">&#9670;&#160;</a></span>GetWorldMatrix()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">XMMATRIX ecs::TransformComponent::GetWorldMatrix </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the world matrix. This matrix combines scale, rotation, and translation to represent the object's position in world space. </p><dl class="section return"><dt>Returns</dt><dd>The world matrix as an XMMATRIX. </dd></dl>
<p class="definition">Definition at line <a class="el" href="transform__component_8h_source.html#l00135">135</a> of file <a class="el" href="transform__component_8h_source.html">transform_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 135</span>{ <span class="keywordflow">return</span> m_WorldMatrix; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="ad825453d2a065640aa71618c00612249" name="ad825453d2a065640aa71618c00612249"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad825453d2a065640aa71618c00612249">&#9670;&#160;</a></span>SetPosition()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::TransformComponent::SetPosition </td>
<td>(</td>
<td class="paramtype">XMVECTOR</td> <td class="paramname"><span class="paramname"><em>position</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the position of the object in world space. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">position</td><td></td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="transform__component_8h_source.html#l00029">29</a> of file <a class="el" href="transform__component_8h_source.html">transform_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 29</span> {</div>
<div class="line"><span class="lineno"> 30</span> XMFLOAT4X4 matrix;</div>
<div class="line"><span class="lineno"> 31</span> XMStoreFloat4x4(&amp;matrix, m_TranslateMatrix);</div>
<div class="line"><span class="lineno"> 32</span> matrix._41 = XMVectorGetX(position);</div>
<div class="line"><span class="lineno"> 33</span> matrix._42 = XMVectorGetY(position);</div>
<div class="line"><span class="lineno"> 34</span> matrix._43 = XMVectorGetZ(position);</div>
<div class="line"><span class="lineno"> 35</span> m_TranslateMatrix = XMLoadFloat4x4(&amp;matrix);</div>
<div class="line"><span class="lineno"> 36</span> <a class="code hl_function" href="#a28d1fe5ba04d4ff6f9eb136ea656e35e">UpdateWorldMatrix</a>();</div>
<div class="line"><span class="lineno"> 37</span> }</div>
<div class="ttc" id="aclassecs_1_1_transform_component_html_a28d1fe5ba04d4ff6f9eb136ea656e35e"><div class="ttname"><a href="#a28d1fe5ba04d4ff6f9eb136ea656e35e">ecs::TransformComponent::UpdateWorldMatrix</a></div><div class="ttdeci">void UpdateWorldMatrix()</div><div class="ttdef"><b>Definition</b> <a href="transform__component_8h_source.html#l00111">transform_component.h:111</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a5d868ff759cb7709328938681d62f913" name="a5d868ff759cb7709328938681d62f913"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5d868ff759cb7709328938681d62f913">&#9670;&#160;</a></span>SetRotateMatrix()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::TransformComponent::SetRotateMatrix </td>
<td>(</td>
<td class="paramtype">XMMATRIX</td> <td class="paramname"><span class="paramname"><em>matrix</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the rotation matrix directly. This method allows setting the rotation matrix without modifying the individual rotation components. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">matrix</td><td>The rotation matrix to set as an XMMATRIX. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="transform__component_8h_source.html#l00148">148</a> of file <a class="el" href="transform__component_8h_source.html">transform_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 148</span>{ m_RotateMatrix = matrix; <a class="code hl_function" href="#a28d1fe5ba04d4ff6f9eb136ea656e35e">UpdateWorldMatrix</a>(); }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a67f155836cd31a336324bb1ea4b3741a" name="a67f155836cd31a336324bb1ea4b3741a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a67f155836cd31a336324bb1ea4b3741a">&#9670;&#160;</a></span>SetRotation()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::TransformComponent::SetRotation </td>
<td>(</td>
<td class="paramtype">XMVECTOR</td> <td class="paramname"><span class="paramname"><em>rotation</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the rotation of the object in world space. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">rotation</td><td>The rotation as an XMVECTOR (roll, pitch, yaw). </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="transform__component_8h_source.html#l00043">43</a> of file <a class="el" href="transform__component_8h_source.html">transform_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 43</span> {</div>
<div class="line"><span class="lineno"> 44</span> m_RotateMatrix = XMMatrixRotationRollPitchYawFromVector(rotation);</div>
<div class="line"><span class="lineno"> 45</span> <a class="code hl_function" href="#a28d1fe5ba04d4ff6f9eb136ea656e35e">UpdateWorldMatrix</a>();</div>
<div class="line"><span class="lineno"> 46</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="ac98d110ada557fce53563306700516b7" name="ac98d110ada557fce53563306700516b7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac98d110ada557fce53563306700516b7">&#9670;&#160;</a></span>SetScale()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::TransformComponent::SetScale </td>
<td>(</td>
<td class="paramtype">XMVECTOR</td> <td class="paramname"><span class="paramname"><em>scale</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the scale of the object in world space. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">scale</td><td>The scale as an XMVECTOR (x, y, z). </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="transform__component_8h_source.html#l00052">52</a> of file <a class="el" href="transform__component_8h_source.html">transform_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 52</span> {</div>
<div class="line"><span class="lineno"> 53</span> XMFLOAT4X4 matrix;</div>
<div class="line"><span class="lineno"> 54</span> XMStoreFloat4x4(&amp;matrix, m_ScaleMatrix);</div>
<div class="line"><span class="lineno"> 55</span> matrix._11 = XMVectorGetX(scale);</div>
<div class="line"><span class="lineno"> 56</span> matrix._22 = XMVectorGetY(scale);</div>
<div class="line"><span class="lineno"> 57</span> matrix._33 = XMVectorGetZ(scale);</div>
<div class="line"><span class="lineno"> 58</span> m_ScaleMatrix = XMLoadFloat4x4(&amp;matrix);</div>
<div class="line"><span class="lineno"> 59</span> <a class="code hl_function" href="#a28d1fe5ba04d4ff6f9eb136ea656e35e">UpdateWorldMatrix</a>();</div>
<div class="line"><span class="lineno"> 60</span> }</div>
</div><!-- fragment -->
</div>
</div>
<a id="aa1d23303805dd960452dd16a5c077835" name="aa1d23303805dd960452dd16a5c077835"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa1d23303805dd960452dd16a5c077835">&#9670;&#160;</a></span>SetScaleMatrix()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::TransformComponent::SetScaleMatrix </td>
<td>(</td>
<td class="paramtype">XMMATRIX</td> <td class="paramname"><span class="paramname"><em>matrix</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the scale matrix directly. This method allows setting the scale matrix without modifying the individual scale components. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">matrix</td><td>The scale matrix to set as an XMMATRIX. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="transform__component_8h_source.html#l00142">142</a> of file <a class="el" href="transform__component_8h_source.html">transform_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 142</span>{ m_ScaleMatrix = matrix; <a class="code hl_function" href="#a28d1fe5ba04d4ff6f9eb136ea656e35e">UpdateWorldMatrix</a>(); }</div>
</div><!-- fragment -->
</div>
</div>
<a id="ae6c18c31f088f065f059b490773b3a08" name="ae6c18c31f088f065f059b490773b3a08"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae6c18c31f088f065f059b490773b3a08">&#9670;&#160;</a></span>SetTranslateMatrix()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::TransformComponent::SetTranslateMatrix </td>
<td>(</td>
<td class="paramtype">XMMATRIX</td> <td class="paramname"><span class="paramname"><em>matrix</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the translation matrix directly. This method allows setting the translation matrix without modifying the individual translation components. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">matrix</td><td>The translation matrix to set as an XMMATRIX. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="transform__component_8h_source.html#l00154">154</a> of file <a class="el" href="transform__component_8h_source.html">transform_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 154</span>{ m_TranslateMatrix = matrix; <a class="code hl_function" href="#a28d1fe5ba04d4ff6f9eb136ea656e35e">UpdateWorldMatrix</a>(); }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a28d1fe5ba04d4ff6f9eb136ea656e35e" name="a28d1fe5ba04d4ff6f9eb136ea656e35e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a28d1fe5ba04d4ff6f9eb136ea656e35e">&#9670;&#160;</a></span>UpdateWorldMatrix()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ecs::TransformComponent::UpdateWorldMatrix </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Update the world matrix based on the current scale, rotation, and translation matrices. This method is called whenever one of the matrices is modified. </p>
<p class="definition">Definition at line <a class="el" href="transform__component_8h_source.html#l00111">111</a> of file <a class="el" href="transform__component_8h_source.html">transform_component.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 111</span> {</div>
<div class="line"><span class="lineno"> 112</span> m_WorldMatrix = m_ScaleMatrix * m_RotateMatrix * m_TranslateMatrix;</div>
<div class="line"><span class="lineno"> 113</span> }</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>enginecustom/src/inc/system/ecs/components/<a class="el" href="transform__component_8h_source.html">transform_component.h</a></li>
</ul>
</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="namespaceecs.html">ecs</a></li><li class="navelem"><a class="el" href="classecs_1_1_transform_component.html">TransformComponent</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,18 @@
var classecs_1_1_transform_component =
[
[ "TransformComponent", "classecs_1_1_transform_component.html#a66dc72687d5a68513beb31b5ae28564f", null ],
[ "GetPosition", "classecs_1_1_transform_component.html#a2936d569829c3c440d3bf5bde6353efe", null ],
[ "GetRotateMatrix", "classecs_1_1_transform_component.html#aedc64114b30f9aa629caf6548bfc3c07", null ],
[ "GetRotation", "classecs_1_1_transform_component.html#a50130c13fb3f0d01a473eead605aaa40", null ],
[ "GetScale", "classecs_1_1_transform_component.html#af5cb7911c9deab8a49c9f8ae3ce099c5", null ],
[ "GetScaleMatrix", "classecs_1_1_transform_component.html#aca8c9c9d0266636b7431696a6905b419", null ],
[ "GetTranslateMatrix", "classecs_1_1_transform_component.html#a2c5c5b5d1081b942ab7d5776d4418044", null ],
[ "GetWorldMatrix", "classecs_1_1_transform_component.html#a0d9f3426b6952e0468705820835ac331", null ],
[ "SetPosition", "classecs_1_1_transform_component.html#ad825453d2a065640aa71618c00612249", null ],
[ "SetRotateMatrix", "classecs_1_1_transform_component.html#a5d868ff759cb7709328938681d62f913", null ],
[ "SetRotation", "classecs_1_1_transform_component.html#a67f155836cd31a336324bb1ea4b3741a", null ],
[ "SetScale", "classecs_1_1_transform_component.html#ac98d110ada557fce53563306700516b7", null ],
[ "SetScaleMatrix", "classecs_1_1_transform_component.html#aa1d23303805dd960452dd16a5c077835", null ],
[ "SetTranslateMatrix", "classecs_1_1_transform_component.html#ae6c18c31f088f065f059b490773b3a08", null ],
[ "UpdateWorldMatrix", "classecs_1_1_transform_component.html#a28d1fe5ba04d4ff6f9eb136ea656e35e", null ]
];

Binary file not shown.

After

Width:  |  Height:  |  Size: 630 B

View File

@ -0,0 +1,165 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Class Index</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classes.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">Class Index</div></div>
</div><!--header-->
<div class="contents">
<div class="qindex"><a class="qindex" href="#letter_A">A</a>&#160;|&#160;<a class="qindex" href="#letter_B">B</a>&#160;|&#160;<a class="qindex" href="#letter_C">C</a>&#160;|&#160;<a class="qindex" href="#letter_D">D</a>&#160;|&#160;<a class="qindex" href="#letter_E">E</a>&#160;|&#160;<a class="qindex" href="#letter_F">F</a>&#160;|&#160;<a class="qindex" href="#letter_I">I</a>&#160;|&#160;<a class="qindex" href="#letter_L">L</a>&#160;|&#160;<a class="qindex" href="#letter_M">M</a>&#160;|&#160;<a class="qindex" href="#letter_N">N</a>&#160;|&#160;<a class="qindex" href="#letter_O">O</a>&#160;|&#160;<a class="qindex" href="#letter_P">P</a>&#160;|&#160;<a class="qindex" href="#letter_R">R</a>&#160;|&#160;<a class="qindex" href="#letter_S">S</a>&#160;|&#160;<a class="qindex" href="#letter_T">T</a>&#160;|&#160;<a class="qindex" href="#letter_V">V</a>&#160;|&#160;<a class="qindex" href="#letter_W">W</a></div>
<div class="classindex">
<dl class="classindex even">
<dt class="alphachar"><a id="letter_A" name="letter_A">A</a></dt>
<dd><a class="el" href="classalpha__map__shader__class.html">alpha_map_shader_class</a></dd><dd><a class="el" href="classapplication__class.html">application_class</a></dd></dl>
<dl class="classindex odd">
<dt class="alphachar"><a id="letter_B" name="letter_B">B</a></dt>
<dd><a class="el" href="classbitmap__class.html">bitmap_class</a></dd></dl>
<dl class="classindex even">
<dt class="alphachar"><a id="letter_C" name="letter_C">C</a></dt>
<dd><a class="el" href="classcamera__class.html">camera_class</a></dd><dd><a class="el" href="classcelshade__class.html">celshade_class</a></dd><dd><a class="el" href="classcolor__shader__class.html">color_shader_class</a></dd><dd><a class="el" href="classecs_1_1_component.html">Component</a> (<a class="el" href="namespaceecs.html">ecs</a>)</dd></dl>
<dl class="classindex odd">
<dt class="alphachar"><a id="letter_D" name="letter_D">D</a></dt>
<dd><a class="el" href="classd__3d__class.html">d_3d_class</a></dd><dd><a class="el" href="classdepth__shader__class.html">depth_shader_class</a></dd><dd><a class="el" href="classdisplay__plane__class.html">display_plane_class</a></dd></dl>
<dl class="classindex even">
<dt class="alphachar"><a id="letter_E" name="letter_E">E</a></dt>
<dd><a class="el" href="classecs_1_1_entity.html">Entity</a> (<a class="el" href="namespaceecs.html">ecs</a>)</dd><dd><a class="el" href="classecs_1_1_entity_manager.html">EntityManager</a> (<a class="el" href="namespaceecs.html">ecs</a>)</dd></dl>
<dl class="classindex odd">
<dt class="alphachar"><a id="letter_F" name="letter_F">F</a></dt>
<dd><a class="el" href="structmodel__class_1_1_face.html">model_class::Face</a></dd><dd><a class="el" href="classfont__class.html">font_class</a></dd><dd><a class="el" href="classfont__shader__class.html">font_shader_class</a></dd><dd><a class="el" href="classfps__class.html">fps_class</a></dd><dd><a class="el" href="classfps__limiter.html">fps_limiter</a></dd><dd><a class="el" href="classfrustum.html">frustum</a></dd><dd><a class="el" href="class_frustum_class.html">FrustumClass</a></dd></dl>
<dl class="classindex even">
<dt class="alphachar"><a id="letter_I" name="letter_I">I</a></dt>
<dd><a class="el" href="classecs_1_1_identity_component.html">IdentityComponent</a> (<a class="el" href="namespaceecs.html">ecs</a>)</dd><dd><a class="el" href="classimgui_manager.html">imguiManager</a></dd><dd><a class="el" href="structinput.html">input</a></dd><dd><a class="el" href="classinput__class.html">input_class</a></dd></dl>
<dl class="classindex odd">
<dt class="alphachar"><a id="letter_L" name="letter_L">L</a></dt>
<dd><a class="el" href="classlight__class.html">light_class</a></dd><dd><a class="el" href="classlight__map__shader__class.html">light_map_shader_class</a></dd><dd><a class="el" href="classlight__shader__class.html">light_shader_class</a></dd><dd><a class="el" href="struct_logger_1_1_log_entry.html">Logger::LogEntry</a></dd><dd><a class="el" href="class_logger.html">Logger</a></dd><dd><a class="el" href="struct_logger_1_1_log_level_info.html">Logger::LogLevelInfo</a></dd></dl>
<dl class="classindex even">
<dt class="alphachar"><a id="letter_M" name="letter_M">M</a></dt>
<dd><a class="el" href="classmaster__shader.html">master_shader</a></dd><dd><a class="el" href="classmodel__class.html">model_class</a></dd><dd><a class="el" href="class_model_list_class.html">ModelListClass</a></dd><dd><a class="el" href="classecs_1_1_model_path_component.html">ModelPathComponent</a> (<a class="el" href="namespaceecs.html">ecs</a>)</dd><dd><a class="el" href="structmodel__class_1_1_model_type.html">model_class::ModelType</a></dd><dd><a class="el" href="classmulti__texture__shader__class.html">multi_texture_shader_class</a></dd></dl>
<dl class="classindex odd">
<dt class="alphachar"><a id="letter_N" name="letter_N">N</a></dt>
<dd><a class="el" href="structmodel__class_1_1_normal.html">model_class::Normal</a></dd><dd><a class="el" href="classnormal__map__shader__class.html">normal_map_shader_class</a></dd></dl>
<dl class="classindex even">
<dt class="alphachar"><a id="letter_O" name="letter_O">O</a></dt>
<dd><a class="el" href="classobject.html">object</a></dd></dl>
<dl class="classindex odd">
<dt class="alphachar"><a id="letter_P" name="letter_P">P</a></dt>
<dd><a class="el" href="classphysics.html">physics</a></dd><dd><a class="el" href="classecs_1_1_physics_component.html">PhysicsComponent</a> (<a class="el" href="namespaceecs.html">ecs</a>)</dd><dd><a class="el" href="classposition__class.html">position_class</a></dd></dl>
<dl class="classindex even">
<dt class="alphachar"><a id="letter_R" name="letter_R">R</a></dt>
<dd><a class="el" href="classreflection__shader__class.html">reflection_shader_class</a></dd><dd><a class="el" href="classrefraction__shader__class.html">refraction_shader_class</a></dd><dd><a class="el" href="classrender__texture__class.html">render_texture_class</a></dd><dd><a class="el" href="classecs_1_1_render_component.html">RenderComponent</a> (<a class="el" href="namespaceecs.html">ecs</a>)</dd><dd><a class="el" href="classecs_1_1_render_system.html">RenderSystem</a> (<a class="el" href="namespaceecs.html">ecs</a>)</dd></dl>
<dl class="classindex odd">
<dt class="alphachar"><a id="letter_S" name="letter_S">S</a></dt>
<dd><a class="el" href="classscene__manager.html">scene_manager</a></dd><dd><a class="el" href="classscene_manager.html">sceneManager</a></dd><dd><a class="el" href="classshader__manager__class.html">shader_manager_class</a></dd><dd><a class="el" href="classecs_1_1_shader_component.html">ShaderComponent</a> (<a class="el" href="namespaceecs.html">ecs</a>)</dd><dd><a class="el" href="classshadow__map.html">shadow_map</a></dd><dd><a class="el" href="class_skybox.html">Skybox</a></dd><dd><a class="el" href="classskybox__shader__class.html">skybox_shader_class</a></dd><dd><a class="el" href="classspec__map__shader__class.html">spec_map_shader_class</a></dd><dd><a class="el" href="classsprite__class.html">sprite_class</a></dd><dd><a class="el" href="classstats.html">stats</a></dd><dd><a class="el" href="classsunlight__shader__class.html">sunlight_shader_class</a></dd><dd><a class="el" href="classsystem__class.html">system_class</a></dd></dl>
<dl class="classindex even">
<dt class="alphachar"><a id="letter_T" name="letter_T">T</a></dt>
<dd><a class="el" href="structmodel__class_1_1_temp_vertex_type.html">model_class::TempVertexType</a></dd><dd><a class="el" href="classtext__class.html">text_class</a></dd><dd><a class="el" href="structmodel__class_1_1_texture.html">model_class::Texture</a></dd><dd><a class="el" href="classtexture__class.html">texture_class</a></dd><dd><a class="el" href="classtexture__shader__class.html">texture_shader_class</a></dd><dd><a class="el" href="struct_texture_container.html">TextureContainer</a></dd><dd><a class="el" href="classtimer__class.html">timer_class</a></dd><dd><a class="el" href="classecs_1_1_transform_component.html">TransformComponent</a> (<a class="el" href="namespaceecs.html">ecs</a>)</dd><dd><a class="el" href="classtranslate__shader__class.html">translate_shader_class</a></dd><dd><a class="el" href="classtransparent__shader__class.html">transparent_shader_class</a></dd></dl>
<dl class="classindex odd">
<dt class="alphachar"><a id="letter_V" name="letter_V">V</a></dt>
<dd><a class="el" href="structmodel__class_1_1_vector_type.html">model_class::VectorType</a></dd><dd><a class="el" href="structmodel__class_1_1_vertex.html">model_class::Vertex</a></dd><dd><a class="el" href="structmodel__class_1_1_vertex_type.html">model_class::VertexType</a></dd></dl>
<dl class="classindex even">
<dt class="alphachar"><a id="letter_W" name="letter_W">W</a></dt>
<dd><a class="el" href="classwater__shader__class.html">water_shader_class</a></dd><dd><a class="el" href="structwidget__entry.html">widget_entry</a></dd></dl>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,123 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classfont__class.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">font_class Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classfont__class.html">font_class</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>BuildVertexArray</b>(void *, char *, float, float) (defined in <a class="el" href="classfont__class.html">font_class</a>)</td><td class="entry"><a class="el" href="classfont__class.html">font_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>font_class</b>() (defined in <a class="el" href="classfont__class.html">font_class</a>)</td><td class="entry"><a class="el" href="classfont__class.html">font_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>font_class</b>(const font_class &amp;) (defined in <a class="el" href="classfont__class.html">font_class</a>)</td><td class="entry"><a class="el" href="classfont__class.html">font_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>GetFontHeight</b>() (defined in <a class="el" href="classfont__class.html">font_class</a>)</td><td class="entry"><a class="el" href="classfont__class.html">font_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetSentencePixelLength</b>(char *) (defined in <a class="el" href="classfont__class.html">font_class</a>)</td><td class="entry"><a class="el" href="classfont__class.html">font_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>GetTexture</b>() (defined in <a class="el" href="classfont__class.html">font_class</a>)</td><td class="entry"><a class="el" href="classfont__class.html">font_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Initialize</b>(ID3D11Device *, ID3D11DeviceContext *, int) (defined in <a class="el" href="classfont__class.html">font_class</a>)</td><td class="entry"><a class="el" href="classfont__class.html">font_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>Shutdown</b>() (defined in <a class="el" href="classfont__class.html">font_class</a>)</td><td class="entry"><a class="el" href="classfont__class.html">font_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~font_class</b>() (defined in <a class="el" href="classfont__class.html">font_class</a>)</td><td class="entry"><a class="el" href="classfont__class.html">font_class</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,490 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: font_class Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classfont__class.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classfont__class-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">font_class Class Reference</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a00da5cd4cb59f4d7cb118e4e5e3248bd" id="r_a00da5cd4cb59f4d7cb118e4e5e3248bd"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a00da5cd4cb59f4d7cb118e4e5e3248bd">font_class</a> (const <a class="el" href="classfont__class.html">font_class</a> &amp;)</td></tr>
<tr class="separator:a00da5cd4cb59f4d7cb118e4e5e3248bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab77f7b86d43be0f125869a965dc59124" id="r_ab77f7b86d43be0f125869a965dc59124"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab77f7b86d43be0f125869a965dc59124">Initialize</a> (ID3D11Device *, ID3D11DeviceContext *, int)</td></tr>
<tr class="separator:ab77f7b86d43be0f125869a965dc59124"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4b3f2d883a3aafa6c3b4f097e32cae4" id="r_ab4b3f2d883a3aafa6c3b4f097e32cae4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab4b3f2d883a3aafa6c3b4f097e32cae4">Shutdown</a> ()</td></tr>
<tr class="separator:ab4b3f2d883a3aafa6c3b4f097e32cae4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35f266d2b2fe3c45cffcaf4d58431b29" id="r_a35f266d2b2fe3c45cffcaf4d58431b29"><td class="memItemLeft" align="right" valign="top">ID3D11ShaderResourceView *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a35f266d2b2fe3c45cffcaf4d58431b29">GetTexture</a> ()</td></tr>
<tr class="separator:a35f266d2b2fe3c45cffcaf4d58431b29"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0f44fa783b3caf2d26cdf9ba1d9df5d" id="r_aa0f44fa783b3caf2d26cdf9ba1d9df5d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa0f44fa783b3caf2d26cdf9ba1d9df5d">BuildVertexArray</a> (void *, char *, float, float)</td></tr>
<tr class="separator:aa0f44fa783b3caf2d26cdf9ba1d9df5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a227086d4946289036b4a4f7bf3f21240" id="r_a227086d4946289036b4a4f7bf3f21240"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a227086d4946289036b4a4f7bf3f21240">GetSentencePixelLength</a> (char *)</td></tr>
<tr class="separator:a227086d4946289036b4a4f7bf3f21240"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5db0f09c77eefa3119bc1c52fec38b2d" id="r_a5db0f09c77eefa3119bc1c52fec38b2d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5db0f09c77eefa3119bc1c52fec38b2d">GetFontHeight</a> ()</td></tr>
<tr class="separator:a5db0f09c77eefa3119bc1c52fec38b2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="font__class_8h_source.html#l00022">22</a> of file <a class="el" href="font__class_8h_source.html">font_class.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a9279da7e01b814fc815fc43592f2b14c" name="a9279da7e01b814fc815fc43592f2b14c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9279da7e01b814fc815fc43592f2b14c">&#9670;&#160;</a></span>font_class() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">font_class::font_class </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="font__class_8cpp_source.html#l00003">3</a> of file <a class="el" href="font__class_8cpp_source.html">font_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 4</span>{</div>
<div class="line"><span class="lineno"> 5</span> m_Font = 0;</div>
<div class="line"><span class="lineno"> 6</span> m_Texture = 0;</div>
<div class="line"><span class="lineno"> 7</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a00da5cd4cb59f4d7cb118e4e5e3248bd" name="a00da5cd4cb59f4d7cb118e4e5e3248bd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a00da5cd4cb59f4d7cb118e4e5e3248bd">&#9670;&#160;</a></span>font_class() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">font_class::font_class </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classfont__class.html">font_class</a> &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="font__class_8cpp_source.html#l00010">10</a> of file <a class="el" href="font__class_8cpp_source.html">font_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 11</span>{</div>
<div class="line"><span class="lineno"> 12</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a2154a18db529fced8d9f4a40a70dcbc6" name="a2154a18db529fced8d9f4a40a70dcbc6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2154a18db529fced8d9f4a40a70dcbc6">&#9670;&#160;</a></span>~font_class()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">font_class::~font_class </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="font__class_8cpp_source.html#l00015">15</a> of file <a class="el" href="font__class_8cpp_source.html">font_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 16</span>{</div>
<div class="line"><span class="lineno"> 17</span>}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="aa0f44fa783b3caf2d26cdf9ba1d9df5d" name="aa0f44fa783b3caf2d26cdf9ba1d9df5d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa0f44fa783b3caf2d26cdf9ba1d9df5d">&#9670;&#160;</a></span>BuildVertexArray()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void font_class::BuildVertexArray </td>
<td>(</td>
<td class="paramtype">void *</td> <td class="paramname"><span class="paramname"><em>vertices</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">char *</td> <td class="paramname"><span class="paramname"><em>sentence</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>drawX</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>drawY</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="font__class_8cpp_source.html#l00178">178</a> of file <a class="el" href="font__class_8cpp_source.html">font_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 179</span>{</div>
<div class="line"><span class="lineno"> 180</span> VertexType* vertexPtr;</div>
<div class="line"><span class="lineno"> 181</span> <span class="keywordtype">int</span> numLetters, index, i, letter;</div>
<div class="line"><span class="lineno"> 182</span> </div>
<div class="line"><span class="lineno"> 183</span> </div>
<div class="line"><span class="lineno"> 184</span> <span class="comment">// Coerce the input vertices into a VertexType structure.</span></div>
<div class="line"><span class="lineno"> 185</span> vertexPtr = (VertexType*)vertices;</div>
<div class="line"><span class="lineno"> 186</span> </div>
<div class="line"><span class="lineno"> 187</span> <span class="comment">// Get the number of letters in the sentence.</span></div>
<div class="line"><span class="lineno"> 188</span> numLetters = (int)strlen(sentence);</div>
<div class="line"><span class="lineno"> 189</span> </div>
<div class="line"><span class="lineno"> 190</span> <span class="comment">// Initialize the index to the vertex array.</span></div>
<div class="line"><span class="lineno"> 191</span> index = 0;</div>
<div class="line"><span class="lineno"> 192</span> </div>
<div class="line"><span class="lineno"> 193</span> <span class="comment">// Draw each letter onto a quad.</span></div>
<div class="line"><span class="lineno"> 194</span> <span class="keywordflow">for</span> (i = 0; i &lt; numLetters; i++)</div>
<div class="line"><span class="lineno"> 195</span> {</div>
<div class="line"><span class="lineno"> 196</span> letter = ((int)sentence[i]) - 32;</div>
<div class="line"><span class="lineno"> 197</span> </div>
<div class="line"><span class="lineno"> 198</span> <span class="comment">// If the letter is a space then just move over three pixels.</span></div>
<div class="line"><span class="lineno"> 199</span> <span class="keywordflow">if</span> (letter == 0)</div>
<div class="line"><span class="lineno"> 200</span> {</div>
<div class="line"><span class="lineno"> 201</span> drawX = drawX + m_spaceSize;</div>
<div class="line"><span class="lineno"> 202</span> }</div>
<div class="line"><span class="lineno"> 203</span> <span class="keywordflow">else</span></div>
<div class="line"><span class="lineno"> 204</span> {</div>
<div class="line"><span class="lineno"> 205</span> <span class="comment">// First triangle in quad.</span></div>
<div class="line"><span class="lineno"> 206</span> vertexPtr[index].position = XMFLOAT3(drawX, drawY, 0.0f); <span class="comment">// Top left.</span></div>
<div class="line"><span class="lineno"> 207</span> vertexPtr[index].texture = XMFLOAT2(m_Font[letter].left, 0.0f);</div>
<div class="line"><span class="lineno"> 208</span> index++;</div>
<div class="line"><span class="lineno"> 209</span> </div>
<div class="line"><span class="lineno"> 210</span> vertexPtr[index].position = XMFLOAT3((drawX + m_Font[letter].size), (drawY - m_fontHeight), 0.0f); <span class="comment">// Bottom right.</span></div>
<div class="line"><span class="lineno"> 211</span> vertexPtr[index].texture = XMFLOAT2(m_Font[letter].right, 1.0f);</div>
<div class="line"><span class="lineno"> 212</span> index++;</div>
<div class="line"><span class="lineno"> 213</span> </div>
<div class="line"><span class="lineno"> 214</span> vertexPtr[index].position = XMFLOAT3(drawX, (drawY - m_fontHeight), 0.0f); <span class="comment">// Bottom left.</span></div>
<div class="line"><span class="lineno"> 215</span> vertexPtr[index].texture = XMFLOAT2(m_Font[letter].left, 1.0f);</div>
<div class="line"><span class="lineno"> 216</span> index++;</div>
<div class="line"><span class="lineno"> 217</span> </div>
<div class="line"><span class="lineno"> 218</span> <span class="comment">// Second triangle in quad.</span></div>
<div class="line"><span class="lineno"> 219</span> vertexPtr[index].position = XMFLOAT3(drawX, drawY, 0.0f); <span class="comment">// Top left.</span></div>
<div class="line"><span class="lineno"> 220</span> vertexPtr[index].texture = XMFLOAT2(m_Font[letter].left, 0.0f);</div>
<div class="line"><span class="lineno"> 221</span> index++;</div>
<div class="line"><span class="lineno"> 222</span> </div>
<div class="line"><span class="lineno"> 223</span> vertexPtr[index].position = XMFLOAT3(drawX + m_Font[letter].size, drawY, 0.0f); <span class="comment">// Top right.</span></div>
<div class="line"><span class="lineno"> 224</span> vertexPtr[index].texture = XMFLOAT2(m_Font[letter].right, 0.0f);</div>
<div class="line"><span class="lineno"> 225</span> index++;</div>
<div class="line"><span class="lineno"> 226</span> </div>
<div class="line"><span class="lineno"> 227</span> vertexPtr[index].position = XMFLOAT3((drawX + m_Font[letter].size), (drawY - m_fontHeight), 0.0f); <span class="comment">// Bottom right.</span></div>
<div class="line"><span class="lineno"> 228</span> vertexPtr[index].texture = XMFLOAT2(m_Font[letter].right, 1.0f);</div>
<div class="line"><span class="lineno"> 229</span> index++;</div>
<div class="line"><span class="lineno"> 230</span> </div>
<div class="line"><span class="lineno"> 231</span> <span class="comment">// Update the x location for drawing by the size of the letter and one pixel.</span></div>
<div class="line"><span class="lineno"> 232</span> drawX = drawX + m_Font[letter].size + 1.0f;</div>
<div class="line"><span class="lineno"> 233</span> }</div>
<div class="line"><span class="lineno"> 234</span> }</div>
<div class="line"><span class="lineno"> 235</span> </div>
<div class="line"><span class="lineno"> 236</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 237</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a5db0f09c77eefa3119bc1c52fec38b2d" name="a5db0f09c77eefa3119bc1c52fec38b2d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5db0f09c77eefa3119bc1c52fec38b2d">&#9670;&#160;</a></span>GetFontHeight()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int font_class::GetFontHeight </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="font__class_8cpp_source.html#l00265">265</a> of file <a class="el" href="font__class_8cpp_source.html">font_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 266</span>{</div>
<div class="line"><span class="lineno"> 267</span> <span class="keywordflow">return</span> (<span class="keywordtype">int</span>)m_fontHeight;</div>
<div class="line"><span class="lineno"> 268</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a227086d4946289036b4a4f7bf3f21240" name="a227086d4946289036b4a4f7bf3f21240"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a227086d4946289036b4a4f7bf3f21240">&#9670;&#160;</a></span>GetSentencePixelLength()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int font_class::GetSentencePixelLength </td>
<td>(</td>
<td class="paramtype">char *</td> <td class="paramname"><span class="paramname"><em>sentence</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="font__class_8cpp_source.html#l00239">239</a> of file <a class="el" href="font__class_8cpp_source.html">font_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 240</span>{</div>
<div class="line"><span class="lineno"> 241</span> <span class="keywordtype">int</span> pixelLength, numLetters, i, letter;</div>
<div class="line"><span class="lineno"> 242</span> </div>
<div class="line"><span class="lineno"> 243</span> </div>
<div class="line"><span class="lineno"> 244</span> pixelLength = 0;</div>
<div class="line"><span class="lineno"> 245</span> numLetters = (int)strlen(sentence);</div>
<div class="line"><span class="lineno"> 246</span> </div>
<div class="line"><span class="lineno"> 247</span> <span class="keywordflow">for</span> (i = 0; i &lt; numLetters; i++)</div>
<div class="line"><span class="lineno"> 248</span> {</div>
<div class="line"><span class="lineno"> 249</span> letter = ((int)sentence[i]) - 32;</div>
<div class="line"><span class="lineno"> 250</span> </div>
<div class="line"><span class="lineno"> 251</span> <span class="comment">// If the letter is a space then count it as three pixels.</span></div>
<div class="line"><span class="lineno"> 252</span> <span class="keywordflow">if</span> (letter == 0)</div>
<div class="line"><span class="lineno"> 253</span> {</div>
<div class="line"><span class="lineno"> 254</span> pixelLength += m_spaceSize;</div>
<div class="line"><span class="lineno"> 255</span> }</div>
<div class="line"><span class="lineno"> 256</span> <span class="keywordflow">else</span></div>
<div class="line"><span class="lineno"> 257</span> {</div>
<div class="line"><span class="lineno"> 258</span> pixelLength += (m_Font[letter].size + 1);</div>
<div class="line"><span class="lineno"> 259</span> }</div>
<div class="line"><span class="lineno"> 260</span> }</div>
<div class="line"><span class="lineno"> 261</span> </div>
<div class="line"><span class="lineno"> 262</span> <span class="keywordflow">return</span> pixelLength;</div>
<div class="line"><span class="lineno"> 263</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a35f266d2b2fe3c45cffcaf4d58431b29" name="a35f266d2b2fe3c45cffcaf4d58431b29"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a35f266d2b2fe3c45cffcaf4d58431b29">&#9670;&#160;</a></span>GetTexture()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ID3D11ShaderResourceView * font_class::GetTexture </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="font__class_8cpp_source.html#l00173">173</a> of file <a class="el" href="font__class_8cpp_source.html">font_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 174</span>{</div>
<div class="line"><span class="lineno"> 175</span> <span class="keywordflow">return</span> m_Texture-&gt;GetTexture();</div>
<div class="line"><span class="lineno"> 176</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ab77f7b86d43be0f125869a965dc59124" name="ab77f7b86d43be0f125869a965dc59124"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab77f7b86d43be0f125869a965dc59124">&#9670;&#160;</a></span>Initialize()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool font_class::Initialize </td>
<td>(</td>
<td class="paramtype">ID3D11Device *</td> <td class="paramname"><span class="paramname"><em>device</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">ID3D11DeviceContext *</td> <td class="paramname"><span class="paramname"><em>deviceContext</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>fontChoice</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="font__class_8cpp_source.html#l00019">19</a> of file <a class="el" href="font__class_8cpp_source.html">font_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 20</span>{</div>
<div class="line"><span class="lineno"> 21</span> Logger::Get().Log(<span class="stringliteral">&quot;Initializing font class&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><span class="lineno"> 22</span> </div>
<div class="line"><span class="lineno"> 23</span> <span class="keywordtype">char</span> fontFilename[128];</div>
<div class="line"><span class="lineno"> 24</span> <span class="keywordtype">char</span> fontTextureFilename[128];</div>
<div class="line"><span class="lineno"> 25</span> <span class="keywordtype">bool</span> result;</div>
<div class="line"><span class="lineno"> 26</span> </div>
<div class="line"><span class="lineno"> 27</span> <span class="comment">// Choose one of the available fonts, and default to the first font otherwise.</span></div>
<div class="line"><span class="lineno"> 28</span> <span class="keywordflow">switch</span> (fontChoice)</div>
<div class="line"><span class="lineno"> 29</span> {</div>
<div class="line"><span class="lineno"> 30</span> <span class="keywordflow">case</span> 0:</div>
<div class="line"><span class="lineno"> 31</span> {</div>
<div class="line"><span class="lineno"> 32</span> strcpy_s(fontFilename, <span class="stringliteral">&quot;font01.txt&quot;</span>);</div>
<div class="line"><span class="lineno"> 33</span> strcpy_s(fontTextureFilename, <span class="stringliteral">&quot;font01.tga&quot;</span>);</div>
<div class="line"><span class="lineno"> 34</span> m_fontHeight = 32.0f;</div>
<div class="line"><span class="lineno"> 35</span> m_spaceSize = 3;</div>
<div class="line"><span class="lineno"> 36</span> <span class="keywordflow">break</span>;</div>
<div class="line"><span class="lineno"> 37</span> }</div>
<div class="line"><span class="lineno"> 38</span> <span class="keywordflow">default</span>:</div>
<div class="line"><span class="lineno"> 39</span> {</div>
<div class="line"><span class="lineno"> 40</span> strcpy_s(fontFilename, <span class="stringliteral">&quot;font01.txt&quot;</span>);</div>
<div class="line"><span class="lineno"> 41</span> strcpy_s(fontTextureFilename, <span class="stringliteral">&quot;font01.tga&quot;</span>);</div>
<div class="line"><span class="lineno"> 42</span> m_fontHeight = 32.0f;</div>
<div class="line"><span class="lineno"> 43</span> m_spaceSize = 3;</div>
<div class="line"><span class="lineno"> 44</span> <span class="keywordflow">break</span>;</div>
<div class="line"><span class="lineno"> 45</span> }</div>
<div class="line"><span class="lineno"> 46</span> }</div>
<div class="line"><span class="lineno"> 47</span> </div>
<div class="line"><span class="lineno"> 48</span> <span class="comment">// Load in the text file containing the font data.</span></div>
<div class="line"><span class="lineno"> 49</span> result = LoadFontData(fontFilename);</div>
<div class="line"><span class="lineno"> 50</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><span class="lineno"> 51</span> {</div>
<div class="line"><span class="lineno"> 52</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to load font data&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 53</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 54</span> }</div>
<div class="line"><span class="lineno"> 55</span> </div>
<div class="line"><span class="lineno"> 56</span> <span class="comment">// Load the texture that has the font characters on it.</span></div>
<div class="line"><span class="lineno"> 57</span> result = LoadTexture(device, deviceContext, fontTextureFilename);</div>
<div class="line"><span class="lineno"> 58</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><span class="lineno"> 59</span> {</div>
<div class="line"><span class="lineno"> 60</span> Logger::Get().Log(<span class="stringliteral">&quot;Failed to load font texture&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 61</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 62</span> }</div>
<div class="line"><span class="lineno"> 63</span> </div>
<div class="line"><span class="lineno"> 64</span> Logger::Get().Log(<span class="stringliteral">&quot;Font class initialized&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><span class="lineno"> 65</span> </div>
<div class="line"><span class="lineno"> 66</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 67</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ab4b3f2d883a3aafa6c3b4f097e32cae4" name="ab4b3f2d883a3aafa6c3b4f097e32cae4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab4b3f2d883a3aafa6c3b4f097e32cae4">&#9670;&#160;</a></span>Shutdown()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void font_class::Shutdown </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="font__class_8cpp_source.html#l00069">69</a> of file <a class="el" href="font__class_8cpp_source.html">font_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 70</span>{</div>
<div class="line"><span class="lineno"> 71</span> <span class="comment">// Release the font texture.</span></div>
<div class="line"><span class="lineno"> 72</span> ReleaseTexture();</div>
<div class="line"><span class="lineno"> 73</span> </div>
<div class="line"><span class="lineno"> 74</span> <span class="comment">// Release the font data.</span></div>
<div class="line"><span class="lineno"> 75</span> ReleaseFontData();</div>
<div class="line"><span class="lineno"> 76</span> </div>
<div class="line"><span class="lineno"> 77</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 78</span>}</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>enginecustom/src/inc/system/<a class="el" href="font__class_8h_source.html">font_class.h</a></li>
<li>enginecustom/src/src/system/<a class="el" href="font__class_8cpp_source.html">font_class.cpp</a></li>
</ul>
</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="classfont__class.html">font_class</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,120 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classfont__shader__class.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">font_shader_class Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classfont__shader__class.html">font_shader_class</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>font_shader_class</b>() (defined in <a class="el" href="classfont__shader__class.html">font_shader_class</a>)</td><td class="entry"><a class="el" href="classfont__shader__class.html">font_shader_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>font_shader_class</b>(const font_shader_class &amp;) (defined in <a class="el" href="classfont__shader__class.html">font_shader_class</a>)</td><td class="entry"><a class="el" href="classfont__shader__class.html">font_shader_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>initialize</b>(ID3D11Device *, HWND) (defined in <a class="el" href="classfont__shader__class.html">font_shader_class</a>)</td><td class="entry"><a class="el" href="classfont__shader__class.html">font_shader_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>render</b>(ID3D11DeviceContext *, int, XMMATRIX, XMMATRIX, XMMATRIX, ID3D11ShaderResourceView *, XMFLOAT4) (defined in <a class="el" href="classfont__shader__class.html">font_shader_class</a>)</td><td class="entry"><a class="el" href="classfont__shader__class.html">font_shader_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>shutdown</b>() (defined in <a class="el" href="classfont__shader__class.html">font_shader_class</a>)</td><td class="entry"><a class="el" href="classfont__shader__class.html">font_shader_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~font_shader_class</b>() (defined in <a class="el" href="classfont__shader__class.html">font_shader_class</a>)</td><td class="entry"><a class="el" href="classfont__shader__class.html">font_shader_class</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,354 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: font_shader_class Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classfont__shader__class.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classfont__shader__class-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">font_shader_class Class Reference</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ab07183ca796041a2483a692b43cbafe5" id="r_ab07183ca796041a2483a692b43cbafe5"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab07183ca796041a2483a692b43cbafe5">font_shader_class</a> (const <a class="el" href="classfont__shader__class.html">font_shader_class</a> &amp;)</td></tr>
<tr class="separator:ab07183ca796041a2483a692b43cbafe5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9125ce25ca464b9e9c4154b2564e8593" id="r_a9125ce25ca464b9e9c4154b2564e8593"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9125ce25ca464b9e9c4154b2564e8593">initialize</a> (ID3D11Device *, HWND)</td></tr>
<tr class="separator:a9125ce25ca464b9e9c4154b2564e8593"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3871f3c1754fb1ca5a69e77d96345f55" id="r_a3871f3c1754fb1ca5a69e77d96345f55"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3871f3c1754fb1ca5a69e77d96345f55">shutdown</a> ()</td></tr>
<tr class="separator:a3871f3c1754fb1ca5a69e77d96345f55"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d2dc59be34769a560a5aceba3281c42" id="r_a0d2dc59be34769a560a5aceba3281c42"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0d2dc59be34769a560a5aceba3281c42">render</a> (ID3D11DeviceContext *, int, XMMATRIX, XMMATRIX, XMMATRIX, ID3D11ShaderResourceView *, XMFLOAT4)</td></tr>
<tr class="separator:a0d2dc59be34769a560a5aceba3281c42"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="font__shader__class_8h_source.html#l00020">20</a> of file <a class="el" href="font__shader__class_8h_source.html">font_shader_class.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a793b65240455baeb953526e641220f0c" name="a793b65240455baeb953526e641220f0c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a793b65240455baeb953526e641220f0c">&#9670;&#160;</a></span>font_shader_class() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">font_shader_class::font_shader_class </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="font__shader__class_8cpp_source.html#l00004">4</a> of file <a class="el" href="font__shader__class_8cpp_source.html">font_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 5</span>{</div>
<div class="line"><span class="lineno"> 6</span> vertex_shader_ = 0;</div>
<div class="line"><span class="lineno"> 7</span> pixel_shader_ = 0;</div>
<div class="line"><span class="lineno"> 8</span> layout_ = 0;</div>
<div class="line"><span class="lineno"> 9</span> matrix_buffer_ = 0;</div>
<div class="line"><span class="lineno"> 10</span> sample_state_ = 0;</div>
<div class="line"><span class="lineno"> 11</span> pixel_buffer_ = 0;</div>
<div class="line"><span class="lineno"> 12</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ab07183ca796041a2483a692b43cbafe5" name="ab07183ca796041a2483a692b43cbafe5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab07183ca796041a2483a692b43cbafe5">&#9670;&#160;</a></span>font_shader_class() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">font_shader_class::font_shader_class </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classfont__shader__class.html">font_shader_class</a> &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="font__shader__class_8cpp_source.html#l00015">15</a> of file <a class="el" href="font__shader__class_8cpp_source.html">font_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 16</span>{</div>
<div class="line"><span class="lineno"> 17</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a010ff0e4d31ed2804569500c09733530" name="a010ff0e4d31ed2804569500c09733530"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a010ff0e4d31ed2804569500c09733530">&#9670;&#160;</a></span>~font_shader_class()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">font_shader_class::~font_shader_class </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="font__shader__class_8cpp_source.html#l00020">20</a> of file <a class="el" href="font__shader__class_8cpp_source.html">font_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 21</span>{</div>
<div class="line"><span class="lineno"> 22</span>}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a9125ce25ca464b9e9c4154b2564e8593" name="a9125ce25ca464b9e9c4154b2564e8593"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9125ce25ca464b9e9c4154b2564e8593">&#9670;&#160;</a></span>initialize()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool font_shader_class::initialize </td>
<td>(</td>
<td class="paramtype">ID3D11Device *</td> <td class="paramname"><span class="paramname"><em>device</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">HWND</td> <td class="paramname"><span class="paramname"><em>hwnd</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="font__shader__class_8cpp_source.html#l00025">25</a> of file <a class="el" href="font__shader__class_8cpp_source.html">font_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 26</span>{</div>
<div class="line"><span class="lineno"> 27</span> Logger::Get().Log(<span class="stringliteral">&quot;Initializing font_shader_class&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><span class="lineno"> 28</span> </div>
<div class="line"><span class="lineno"> 29</span> <span class="keywordtype">bool</span> result;</div>
<div class="line"><span class="lineno"> 30</span> <span class="keywordtype">wchar_t</span> vsFilename[128];</div>
<div class="line"><span class="lineno"> 31</span> <span class="keywordtype">wchar_t</span> psFilename[128];</div>
<div class="line"><span class="lineno"> 32</span> <span class="keywordtype">int</span> error;</div>
<div class="line"><span class="lineno"> 33</span> </div>
<div class="line"><span class="lineno"> 34</span> <span class="comment">// Set the filename of the vertex shader.</span></div>
<div class="line"><span class="lineno"> 35</span> error = wcscpy_s(vsFilename, 128, L<span class="stringliteral">&quot;src/hlsl/font.vs&quot;</span>);</div>
<div class="line"><span class="lineno"> 36</span> <span class="keywordflow">if</span> (error != 0)</div>
<div class="line"><span class="lineno"> 37</span> {</div>
<div class="line"><span class="lineno"> 38</span> Logger::Get().Log(<span class="stringliteral">&quot;Error copying string&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 39</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 40</span> }</div>
<div class="line"><span class="lineno"> 41</span> </div>
<div class="line"><span class="lineno"> 42</span> <span class="comment">// Set the filename of the pixel shader.</span></div>
<div class="line"><span class="lineno"> 43</span> error = wcscpy_s(psFilename, 128, L<span class="stringliteral">&quot;src/hlsl/font.ps&quot;</span>);</div>
<div class="line"><span class="lineno"> 44</span> <span class="keywordflow">if</span> (error != 0)</div>
<div class="line"><span class="lineno"> 45</span> {</div>
<div class="line"><span class="lineno"> 46</span> Logger::Get().Log(<span class="stringliteral">&quot;Error copying string&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 47</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 48</span> }</div>
<div class="line"><span class="lineno"> 49</span> </div>
<div class="line"><span class="lineno"> 50</span> <span class="comment">// initialize the vertex and pixel shaders.</span></div>
<div class="line"><span class="lineno"> 51</span> result = initialize_shader(device, hwnd, vsFilename, psFilename);</div>
<div class="line"><span class="lineno"> 52</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><span class="lineno"> 53</span> {</div>
<div class="line"><span class="lineno"> 54</span> Logger::Get().Log(<span class="stringliteral">&quot;Error initializing shader&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 55</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 56</span> }</div>
<div class="line"><span class="lineno"> 57</span> </div>
<div class="line"><span class="lineno"> 58</span> Logger::Get().Log(<span class="stringliteral">&quot;font_shader_class initialized&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Initialize);</div>
<div class="line"><span class="lineno"> 59</span> </div>
<div class="line"><span class="lineno"> 60</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 61</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a0d2dc59be34769a560a5aceba3281c42" name="a0d2dc59be34769a560a5aceba3281c42"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0d2dc59be34769a560a5aceba3281c42">&#9670;&#160;</a></span>render()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool font_shader_class::render </td>
<td>(</td>
<td class="paramtype">ID3D11DeviceContext *</td> <td class="paramname"><span class="paramname"><em>deviceContext</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>indexCount</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">XMMATRIX</td> <td class="paramname"><span class="paramname"><em>worldMatrix</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">XMMATRIX</td> <td class="paramname"><span class="paramname"><em>viewMatrix</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">XMMATRIX</td> <td class="paramname"><span class="paramname"><em>projectionMatrix</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">ID3D11ShaderResourceView *</td> <td class="paramname"><span class="paramname"><em>texture</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">XMFLOAT4</td> <td class="paramname"><span class="paramname"><em>pixelColor</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="font__shader__class_8cpp_source.html#l00071">71</a> of file <a class="el" href="font__shader__class_8cpp_source.html">font_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 73</span>{</div>
<div class="line"><span class="lineno"> 74</span> <span class="keywordtype">bool</span> result;</div>
<div class="line"><span class="lineno"> 75</span> </div>
<div class="line"><span class="lineno"> 76</span> </div>
<div class="line"><span class="lineno"> 77</span> <span class="comment">// Set the shader parameters that it will use for rendering.</span></div>
<div class="line"><span class="lineno"> 78</span> result = set_shader_parameters(deviceContext, worldMatrix, viewMatrix, projectionMatrix, texture, pixelColor);</div>
<div class="line"><span class="lineno"> 79</span> <span class="keywordflow">if</span> (!result)</div>
<div class="line"><span class="lineno"> 80</span> {</div>
<div class="line"><span class="lineno"> 81</span> Logger::Get().Log(<span class="stringliteral">&quot;Error setting shader parameters&quot;</span>, __FILE__, __LINE__, Logger::LogLevel::Error);</div>
<div class="line"><span class="lineno"> 82</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 83</span> }</div>
<div class="line"><span class="lineno"> 84</span> </div>
<div class="line"><span class="lineno"> 85</span> <span class="comment">// Now render the prepared buffers with the shader.</span></div>
<div class="line"><span class="lineno"> 86</span> render_shader(deviceContext, indexCount);</div>
<div class="line"><span class="lineno"> 87</span> </div>
<div class="line"><span class="lineno"> 88</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 89</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a3871f3c1754fb1ca5a69e77d96345f55" name="a3871f3c1754fb1ca5a69e77d96345f55"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3871f3c1754fb1ca5a69e77d96345f55">&#9670;&#160;</a></span>shutdown()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void font_shader_class::shutdown </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="font__shader__class_8cpp_source.html#l00063">63</a> of file <a class="el" href="font__shader__class_8cpp_source.html">font_shader_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 64</span>{</div>
<div class="line"><span class="lineno"> 65</span> <span class="comment">// shutdown the vertex and pixel shaders as well as the related objects.</span></div>
<div class="line"><span class="lineno"> 66</span> shutdown_shader();</div>
<div class="line"><span class="lineno"> 67</span> </div>
<div class="line"><span class="lineno"> 68</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 69</span>}</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>enginecustom/src/inc/shader/<a class="el" href="font__shader__class_8h_source.html">font_shader_class.h</a></li>
<li>enginecustom/src/src/shader/<a class="el" href="font__shader__class_8cpp_source.html">font_shader_class.cpp</a></li>
</ul>
</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="classfont__shader__class.html">font_shader_class</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,124 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classfps__class.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">fps_class Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classfps__class.html">fps_class</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>fps_class</b>() (defined in <a class="el" href="classfps__class.html">fps_class</a>)</td><td class="entry"><a class="el" href="classfps__class.html">fps_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>fps_class</b>(const fps_class &amp;) (defined in <a class="el" href="classfps__class.html">fps_class</a>)</td><td class="entry"><a class="el" href="classfps__class.html">fps_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Frame</b>() (defined in <a class="el" href="classfps__class.html">fps_class</a>)</td><td class="entry"><a class="el" href="classfps__class.html">fps_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>GetFps</b>() (defined in <a class="el" href="classfps__class.html">fps_class</a>)</td><td class="entry"><a class="el" href="classfps__class.html">fps_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetFrameTime</b>() const (defined in <a class="el" href="classfps__class.html">fps_class</a>)</td><td class="entry"><a class="el" href="classfps__class.html">fps_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>GetMaxFps</b>() const (defined in <a class="el" href="classfps__class.html">fps_class</a>)</td><td class="entry"><a class="el" href="classfps__class.html">fps_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetMinFps</b>() const (defined in <a class="el" href="classfps__class.html">fps_class</a>)</td><td class="entry"><a class="el" href="classfps__class.html">fps_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>Initialize</b>() (defined in <a class="el" href="classfps__class.html">fps_class</a>)</td><td class="entry"><a class="el" href="classfps__class.html">fps_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ResetStats</b>() (defined in <a class="el" href="classfps__class.html">fps_class</a>)</td><td class="entry"><a class="el" href="classfps__class.html">fps_class</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>~fps_class</b>() (defined in <a class="el" href="classfps__class.html">fps_class</a>)</td><td class="entry"><a class="el" href="classfps__class.html">fps_class</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,392 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: fps_class Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classfps__class.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classfps__class-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">fps_class Class Reference</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a4982ac169d4c198ca6c59ad2e6be8037" id="r_a4982ac169d4c198ca6c59ad2e6be8037"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4982ac169d4c198ca6c59ad2e6be8037">fps_class</a> (const <a class="el" href="classfps__class.html">fps_class</a> &amp;)</td></tr>
<tr class="separator:a4982ac169d4c198ca6c59ad2e6be8037"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a13e56ddfe8ca286da41bf9438bde3e64" id="r_a13e56ddfe8ca286da41bf9438bde3e64"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a13e56ddfe8ca286da41bf9438bde3e64">Initialize</a> ()</td></tr>
<tr class="separator:a13e56ddfe8ca286da41bf9438bde3e64"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7618cfc29424f594cb9e5ebc2e4bb25e" id="r_a7618cfc29424f594cb9e5ebc2e4bb25e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a7618cfc29424f594cb9e5ebc2e4bb25e">Frame</a> ()</td></tr>
<tr class="separator:a7618cfc29424f594cb9e5ebc2e4bb25e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a73bbe04aba37d901c8f4294bd6f424d6" id="r_a73bbe04aba37d901c8f4294bd6f424d6"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a73bbe04aba37d901c8f4294bd6f424d6">GetFps</a> ()</td></tr>
<tr class="separator:a73bbe04aba37d901c8f4294bd6f424d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a36db4a5778458b71dac35f0dc9b5b0b2" id="r_a36db4a5778458b71dac35f0dc9b5b0b2"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a36db4a5778458b71dac35f0dc9b5b0b2">GetMinFps</a> () const</td></tr>
<tr class="separator:a36db4a5778458b71dac35f0dc9b5b0b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac59f2ba1f3236ca6f8bef8a4131c8f61" id="r_ac59f2ba1f3236ca6f8bef8a4131c8f61"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac59f2ba1f3236ca6f8bef8a4131c8f61">GetMaxFps</a> () const</td></tr>
<tr class="separator:ac59f2ba1f3236ca6f8bef8a4131c8f61"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5978c62d856ee46c81ed976ce26d191d" id="r_a5978c62d856ee46c81ed976ce26d191d"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5978c62d856ee46c81ed976ce26d191d">GetFrameTime</a> () const</td></tr>
<tr class="separator:a5978c62d856ee46c81ed976ce26d191d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae879187cc89d0c58d42bbbc930237feb" id="r_ae879187cc89d0c58d42bbbc930237feb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae879187cc89d0c58d42bbbc930237feb">ResetStats</a> ()</td></tr>
<tr class="separator:ae879187cc89d0c58d42bbbc930237feb"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="fps__class_8h_source.html#l00020">20</a> of file <a class="el" href="fps__class_8h_source.html">fps_class.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a2f5b5e549c8d4211fe47f73321a0cc70" name="a2f5b5e549c8d4211fe47f73321a0cc70"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2f5b5e549c8d4211fe47f73321a0cc70">&#9670;&#160;</a></span>fps_class() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">fps_class::fps_class </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="fps__class_8cpp_source.html#l00004">4</a> of file <a class="el" href="fps__class_8cpp_source.html">fps_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 5</span>{</div>
<div class="line"><span class="lineno"> 6</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a4982ac169d4c198ca6c59ad2e6be8037" name="a4982ac169d4c198ca6c59ad2e6be8037"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4982ac169d4c198ca6c59ad2e6be8037">&#9670;&#160;</a></span>fps_class() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">fps_class::fps_class </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classfps__class.html">fps_class</a> &amp;</td> <td class="paramname"><span class="paramname"><em>other</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="fps__class_8cpp_source.html#l00009">9</a> of file <a class="el" href="fps__class_8cpp_source.html">fps_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 10</span>{</div>
<div class="line"><span class="lineno"> 11</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="abded94c6265ac892644bd452cd7029db" name="abded94c6265ac892644bd452cd7029db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abded94c6265ac892644bd452cd7029db">&#9670;&#160;</a></span>~fps_class()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">fps_class::~fps_class </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="fps__class_8cpp_source.html#l00014">14</a> of file <a class="el" href="fps__class_8cpp_source.html">fps_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 15</span>{</div>
<div class="line"><span class="lineno"> 16</span>}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a7618cfc29424f594cb9e5ebc2e4bb25e" name="a7618cfc29424f594cb9e5ebc2e4bb25e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7618cfc29424f594cb9e5ebc2e4bb25e">&#9670;&#160;</a></span>Frame()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void fps_class::Frame </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="fps__class_8cpp_source.html#l00031">31</a> of file <a class="el" href="fps__class_8cpp_source.html">fps_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 32</span>{</div>
<div class="line"><span class="lineno"> 33</span> </div>
<div class="line"><span class="lineno"> 34</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> currentTime = timeGetTime();</div>
<div class="line"><span class="lineno"> 35</span> </div>
<div class="line"><span class="lineno"> 36</span> m_frameTime = (currentTime - m_previousTime) * 0.001f;</div>
<div class="line"><span class="lineno"> 37</span> m_previousTime = currentTime;</div>
<div class="line"><span class="lineno"> 38</span> </div>
<div class="line"><span class="lineno"> 39</span> m_count++;</div>
<div class="line"><span class="lineno"> 40</span> </div>
<div class="line"><span class="lineno"> 41</span> <span class="keywordflow">if</span> (timeGetTime() &gt;= (m_startTime + 1000))</div>
<div class="line"><span class="lineno"> 42</span> {</div>
<div class="line"><span class="lineno"> 43</span> m_fps = m_count;</div>
<div class="line"><span class="lineno"> 44</span> </div>
<div class="line"><span class="lineno"> 45</span> <span class="keywordflow">if</span> (m_fps &lt; m_minFps)</div>
<div class="line"><span class="lineno"> 46</span> m_minFps = m_fps;</div>
<div class="line"><span class="lineno"> 47</span> </div>
<div class="line"><span class="lineno"> 48</span> <span class="keywordflow">if</span> (m_fps &gt; m_maxFps)</div>
<div class="line"><span class="lineno"> 49</span> m_maxFps = m_fps;</div>
<div class="line"><span class="lineno"> 50</span> </div>
<div class="line"><span class="lineno"> 51</span> m_count = 0;</div>
<div class="line"><span class="lineno"> 52</span> m_startTime = timeGetTime();</div>
<div class="line"><span class="lineno"> 53</span> }</div>
<div class="line"><span class="lineno"> 54</span> </div>
<div class="line"><span class="lineno"> 55</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 56</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a73bbe04aba37d901c8f4294bd6f424d6" name="a73bbe04aba37d901c8f4294bd6f424d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a73bbe04aba37d901c8f4294bd6f424d6">&#9670;&#160;</a></span>GetFps()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int fps_class::GetFps </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="fps__class_8cpp_source.html#l00079">79</a> of file <a class="el" href="fps__class_8cpp_source.html">fps_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 80</span>{</div>
<div class="line"><span class="lineno"> 81</span> <span class="keywordflow">return</span> m_fps;</div>
<div class="line"><span class="lineno"> 82</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a5978c62d856ee46c81ed976ce26d191d" name="a5978c62d856ee46c81ed976ce26d191d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5978c62d856ee46c81ed976ce26d191d">&#9670;&#160;</a></span>GetFrameTime()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">float fps_class::GetFrameTime </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="fps__class_8cpp_source.html#l00068">68</a> of file <a class="el" href="fps__class_8cpp_source.html">fps_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 69</span>{</div>
<div class="line"><span class="lineno"> 70</span> <span class="keywordflow">return</span> m_frameTime;</div>
<div class="line"><span class="lineno"> 71</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ac59f2ba1f3236ca6f8bef8a4131c8f61" name="ac59f2ba1f3236ca6f8bef8a4131c8f61"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac59f2ba1f3236ca6f8bef8a4131c8f61">&#9670;&#160;</a></span>GetMaxFps()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int fps_class::GetMaxFps </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="fps__class_8cpp_source.html#l00063">63</a> of file <a class="el" href="fps__class_8cpp_source.html">fps_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 64</span>{</div>
<div class="line"><span class="lineno"> 65</span> <span class="keywordflow">return</span> m_maxFps;</div>
<div class="line"><span class="lineno"> 66</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a36db4a5778458b71dac35f0dc9b5b0b2" name="a36db4a5778458b71dac35f0dc9b5b0b2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a36db4a5778458b71dac35f0dc9b5b0b2">&#9670;&#160;</a></span>GetMinFps()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int fps_class::GetMinFps </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="fps__class_8cpp_source.html#l00058">58</a> of file <a class="el" href="fps__class_8cpp_source.html">fps_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 59</span>{</div>
<div class="line"><span class="lineno"> 60</span> <span class="keywordflow">return</span> m_minFps;</div>
<div class="line"><span class="lineno"> 61</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a13e56ddfe8ca286da41bf9438bde3e64" name="a13e56ddfe8ca286da41bf9438bde3e64"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a13e56ddfe8ca286da41bf9438bde3e64">&#9670;&#160;</a></span>Initialize()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void fps_class::Initialize </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="fps__class_8cpp_source.html#l00018">18</a> of file <a class="el" href="fps__class_8cpp_source.html">fps_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 19</span>{</div>
<div class="line"><span class="lineno"> 20</span> m_fps = 0;</div>
<div class="line"><span class="lineno"> 21</span> m_count = 0;</div>
<div class="line"><span class="lineno"> 22</span> m_minFps = INT_MAX;</div>
<div class="line"><span class="lineno"> 23</span> m_maxFps = 0;</div>
<div class="line"><span class="lineno"> 24</span> m_frameTime = 0.0f;</div>
<div class="line"><span class="lineno"> 25</span> m_previousTime = timeGetTime();</div>
<div class="line"><span class="lineno"> 26</span> m_startTime = m_previousTime;</div>
<div class="line"><span class="lineno"> 27</span> </div>
<div class="line"><span class="lineno"> 28</span> <span class="keywordflow">return</span>;</div>
<div class="line"><span class="lineno"> 29</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ae879187cc89d0c58d42bbbc930237feb" name="ae879187cc89d0c58d42bbbc930237feb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae879187cc89d0c58d42bbbc930237feb">&#9670;&#160;</a></span>ResetStats()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void fps_class::ResetStats </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="fps__class_8cpp_source.html#l00073">73</a> of file <a class="el" href="fps__class_8cpp_source.html">fps_class.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 74</span>{</div>
<div class="line"><span class="lineno"> 75</span> m_minFps = INT_MAX;</div>
<div class="line"><span class="lineno"> 76</span> m_maxFps = 0;</div>
<div class="line"><span class="lineno"> 77</span>}</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>enginecustom/src/inc/system/<a class="el" href="fps__class_8h_source.html">fps_class.h</a></li>
<li>enginecustom/src/src/system/<a class="el" href="fps__class_8cpp_source.html">fps_class.cpp</a></li>
</ul>
</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="classfps__class.html">fps_class</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,116 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classfps__limiter.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">fps_limiter Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classfps__limiter.html">fps_limiter</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>fps_limiter</b>(const float target_fps=60.0f) (defined in <a class="el" href="classfps__limiter.html">fps_limiter</a>)</td><td class="entry"><a class="el" href="classfps__limiter.html">fps_limiter</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>should_run</b>() (defined in <a class="el" href="classfps__limiter.html">fps_limiter</a>)</td><td class="entry"><a class="el" href="classfps__limiter.html">fps_limiter</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,194 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: fps_limiter Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classfps__limiter.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classfps__limiter-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">fps_limiter Class Reference</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:af20845a17030a3c44b0f7e7fc08c016f" id="r_af20845a17030a3c44b0f7e7fc08c016f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af20845a17030a3c44b0f7e7fc08c016f">fps_limiter</a> (const float target_fps=60.0f)</td></tr>
<tr class="separator:af20845a17030a3c44b0f7e7fc08c016f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0ce9120462473ec9ee26df5f5fb13cf" id="r_ad0ce9120462473ec9ee26df5f5fb13cf"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad0ce9120462473ec9ee26df5f5fb13cf">should_run</a> ()</td></tr>
<tr class="separator:ad0ce9120462473ec9ee26df5f5fb13cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="fps__limiter_8h_source.html#l00004">4</a> of file <a class="el" href="fps__limiter_8h_source.html">fps_limiter.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="af20845a17030a3c44b0f7e7fc08c016f" name="af20845a17030a3c44b0f7e7fc08c016f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af20845a17030a3c44b0f7e7fc08c016f">&#9670;&#160;</a></span>fps_limiter()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">fps_limiter::fps_limiter </td>
<td>(</td>
<td class="paramtype">const float</td> <td class="paramname"><span class="paramname"><em>target_fps</em></span><span class="paramdefsep"> = </span><span class="paramdefval">60.0f</span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="fps__limiter_8h_source.html#l00006">6</a> of file <a class="el" href="fps__limiter_8h_source.html">fps_limiter.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 7</span> : min_delta_(1.0f / target_fps), last_time_(std::chrono::high_resolution_clock::now()) {}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="ad0ce9120462473ec9ee26df5f5fb13cf" name="ad0ce9120462473ec9ee26df5f5fb13cf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad0ce9120462473ec9ee26df5f5fb13cf">&#9670;&#160;</a></span>should_run()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool fps_limiter::should_run </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="fps__limiter_8h_source.html#l00010">10</a> of file <a class="el" href="fps__limiter_8h_source.html">fps_limiter.h</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 10</span> {</div>
<div class="line"><span class="lineno"> 11</span> <span class="keyword">const</span> <span class="keyword">auto</span> now = std::chrono::high_resolution_clock::now();</div>
<div class="line"><span class="lineno"> 12</span> <span class="keywordflow">if</span> (<span class="keyword">const</span> <span class="keywordtype">float</span> elapsed = std::chrono::duration&lt;float&gt;(now - last_time_).count(); elapsed &gt;= min_delta_) {</div>
<div class="line"><span class="lineno"> 13</span> last_time_ = now;</div>
<div class="line"><span class="lineno"> 14</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 15</span> }</div>
<div class="line"><span class="lineno"> 16</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 17</span> }</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>enginecustom/src/inc/system/<a class="el" href="fps__limiter_8h_source.html">fps_limiter.h</a></li>
</ul>
</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="classfps__limiter.html">fps_limiter</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,116 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classfrustum.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">frustum Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classfrustum.html">frustum</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>CheckCube</b>(float xCenter, float yCenter, float zCenter, float radius, float tolerance) (defined in <a class="el" href="classfrustum.html">frustum</a>)</td><td class="entry"><a class="el" href="classfrustum.html">frustum</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>ConstructFrustum</b>(float screenDepth, XMMATRIX projectionMatrix, XMMATRIX viewMatrix) (defined in <a class="el" href="classfrustum.html">frustum</a>)</td><td class="entry"><a class="el" href="classfrustum.html">frustum</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,280 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: frustum Class Reference</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classfrustum.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="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classfrustum-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">frustum Class Reference</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a17fbc652d86a362739d01c66ab8aa036" id="r_a17fbc652d86a362739d01c66ab8aa036"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a17fbc652d86a362739d01c66ab8aa036">ConstructFrustum</a> (float screenDepth, XMMATRIX projectionMatrix, XMMATRIX viewMatrix)</td></tr>
<tr class="separator:a17fbc652d86a362739d01c66ab8aa036"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa631d4d670499da25b2c3720cc15c855" id="r_aa631d4d670499da25b2c3720cc15c855"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa631d4d670499da25b2c3720cc15c855">CheckCube</a> (float xCenter, float yCenter, float zCenter, float radius, float tolerance)</td></tr>
<tr class="separator:aa631d4d670499da25b2c3720cc15c855"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="frustum_8h_source.html#l00004">4</a> of file <a class="el" href="frustum_8h_source.html">frustum.h</a>.</p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="aa631d4d670499da25b2c3720cc15c855" name="aa631d4d670499da25b2c3720cc15c855"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa631d4d670499da25b2c3720cc15c855">&#9670;&#160;</a></span>CheckCube()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool frustum::CheckCube </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>xCenter</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>yCenter</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>zCenter</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>radius</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>tolerance</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="frustum_8cpp_source.html#l00059">59</a> of file <a class="el" href="frustum_8cpp_source.html">frustum.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 60</span>{</div>
<div class="line"><span class="lineno"> 61</span> <span class="comment">// Vérifiez chaque plan du frustum pour voir si le cube est à l&#39;intérieur</span></div>
<div class="line"><span class="lineno"> 62</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; 6; i++)</div>
<div class="line"><span class="lineno"> 63</span> {</div>
<div class="line"><span class="lineno"> 64</span> XMVECTOR plane = m_planes[i];</div>
<div class="line"><span class="lineno"> 65</span> <span class="keywordflow">if</span> (XMVectorGetX(plane) * (xCenter - radius) + XMVectorGetY(plane) * (yCenter - radius) + XMVectorGetZ(plane) * (zCenter - radius) + XMVectorGetW(plane) &gt; -tolerance)</div>
<div class="line"><span class="lineno"> 66</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 67</span> <span class="keywordflow">if</span> (XMVectorGetX(plane) * (xCenter + radius) + XMVectorGetY(plane) * (yCenter - radius) + XMVectorGetZ(plane) * (zCenter - radius) + XMVectorGetW(plane) &gt; -tolerance)</div>
<div class="line"><span class="lineno"> 68</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 69</span> <span class="keywordflow">if</span> (XMVectorGetX(plane) * (xCenter - radius) + XMVectorGetY(plane) * (yCenter + radius) + XMVectorGetZ(plane) * (zCenter - radius) + XMVectorGetW(plane) &gt; -tolerance)</div>
<div class="line"><span class="lineno"> 70</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 71</span> <span class="keywordflow">if</span> (XMVectorGetX(plane) * (xCenter + radius) + XMVectorGetY(plane) * (yCenter + radius) + XMVectorGetZ(plane) * (zCenter - radius) + XMVectorGetW(plane) &gt; -tolerance)</div>
<div class="line"><span class="lineno"> 72</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 73</span> <span class="keywordflow">if</span> (XMVectorGetX(plane) * (xCenter - radius) + XMVectorGetY(plane) * (yCenter - radius) + XMVectorGetZ(plane) * (zCenter + radius) + XMVectorGetW(plane) &gt; -tolerance)</div>
<div class="line"><span class="lineno"> 74</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 75</span> <span class="keywordflow">if</span> (XMVectorGetX(plane) * (xCenter + radius) + XMVectorGetY(plane) * (yCenter - radius) + XMVectorGetZ(plane) * (zCenter + radius) + XMVectorGetW(plane) &gt; -tolerance)</div>
<div class="line"><span class="lineno"> 76</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 77</span> <span class="keywordflow">if</span> (XMVectorGetX(plane) * (xCenter - radius) + XMVectorGetY(plane) * (yCenter + radius) + XMVectorGetZ(plane) * (zCenter + radius) + XMVectorGetW(plane) &gt; -tolerance)</div>
<div class="line"><span class="lineno"> 78</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 79</span> <span class="keywordflow">if</span> (XMVectorGetX(plane) * (xCenter + radius) + XMVectorGetY(plane) * (yCenter + radius) + XMVectorGetZ(plane) * (zCenter + radius) + XMVectorGetW(plane) &gt; -tolerance)</div>
<div class="line"><span class="lineno"> 80</span> <span class="keywordflow">continue</span>;</div>
<div class="line"><span class="lineno"> 81</span> </div>
<div class="line"><span class="lineno"> 82</span> <span class="comment">// Si le cube est en dehors de l&#39;un des plans, il n&#39;est pas dans le frustum</span></div>
<div class="line"><span class="lineno"> 83</span> <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><span class="lineno"> 84</span> }</div>
<div class="line"><span class="lineno"> 85</span> </div>
<div class="line"><span class="lineno"> 86</span> <span class="comment">// Si le cube est à l&#39;intérieur de tous les plans, il est dans le frustum</span></div>
<div class="line"><span class="lineno"> 87</span> <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><span class="lineno"> 88</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a17fbc652d86a362739d01c66ab8aa036" name="a17fbc652d86a362739d01c66ab8aa036"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a17fbc652d86a362739d01c66ab8aa036">&#9670;&#160;</a></span>ConstructFrustum()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void frustum::ConstructFrustum </td>
<td>(</td>
<td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>screenDepth</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">XMMATRIX</td> <td class="paramname"><span class="paramname"><em>projectionMatrix</em></span>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">XMMATRIX</td> <td class="paramname"><span class="paramname"><em>viewMatrix</em></span>&#160;)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="frustum_8cpp_source.html#l00003">3</a> of file <a class="el" href="frustum_8cpp_source.html">frustum.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 4</span>{</div>
<div class="line"><span class="lineno"> 5</span> XMMATRIX matrix;</div>
<div class="line"><span class="lineno"> 6</span> XMVECTOR planes[6];</div>
<div class="line"><span class="lineno"> 7</span> </div>
<div class="line"><span class="lineno"> 8</span> <span class="comment">// Calculate the minimum Z distance in the frustum.</span></div>
<div class="line"><span class="lineno"> 9</span> <span class="keywordtype">float</span> zMinimum = -projectionMatrix.r[3].m128_f32[2] / projectionMatrix.r[2].m128_f32[2];</div>
<div class="line"><span class="lineno"> 10</span> <span class="keywordtype">float</span> r = screenDepth / (screenDepth - zMinimum);</div>
<div class="line"><span class="lineno"> 11</span> projectionMatrix.r[2].m128_f32[2] = r;</div>
<div class="line"><span class="lineno"> 12</span> projectionMatrix.r[3].m128_f32[2] = -r * zMinimum;</div>
<div class="line"><span class="lineno"> 13</span> </div>
<div class="line"><span class="lineno"> 14</span> <span class="comment">// Create the frustum matrix from the view matrix and updated projection matrix.</span></div>
<div class="line"><span class="lineno"> 15</span> matrix = XMMatrixMultiply(viewMatrix, projectionMatrix);</div>
<div class="line"><span class="lineno"> 16</span> </div>
<div class="line"><span class="lineno"> 17</span> <span class="comment">// Calculate near plane of frustum.</span></div>
<div class="line"><span class="lineno"> 18</span> planes[0] = XMPlaneNormalize(XMVectorSet(matrix.r[0].m128_f32[3] + matrix.r[0].m128_f32[2],</div>
<div class="line"><span class="lineno"> 19</span> matrix.r[1].m128_f32[3] + matrix.r[1].m128_f32[2],</div>
<div class="line"><span class="lineno"> 20</span> matrix.r[2].m128_f32[3] + matrix.r[2].m128_f32[2],</div>
<div class="line"><span class="lineno"> 21</span> matrix.r[3].m128_f32[3] + matrix.r[3].m128_f32[2]));</div>
<div class="line"><span class="lineno"> 22</span> </div>
<div class="line"><span class="lineno"> 23</span> <span class="comment">// Calculate far plane of frustum.</span></div>
<div class="line"><span class="lineno"> 24</span> planes[1] = XMPlaneNormalize(XMVectorSet(matrix.r[0].m128_f32[3] - matrix.r[0].m128_f32[2],</div>
<div class="line"><span class="lineno"> 25</span> matrix.r[1].m128_f32[3] - matrix.r[1].m128_f32[2],</div>
<div class="line"><span class="lineno"> 26</span> matrix.r[2].m128_f32[3] - matrix.r[2].m128_f32[2],</div>
<div class="line"><span class="lineno"> 27</span> matrix.r[3].m128_f32[3] - matrix.r[3].m128_f32[2]));</div>
<div class="line"><span class="lineno"> 28</span> </div>
<div class="line"><span class="lineno"> 29</span> <span class="comment">// Calculate left plane of frustum.</span></div>
<div class="line"><span class="lineno"> 30</span> planes[2] = XMPlaneNormalize(XMVectorSet(matrix.r[0].m128_f32[3] + matrix.r[0].m128_f32[0],</div>
<div class="line"><span class="lineno"> 31</span> matrix.r[1].m128_f32[3] + matrix.r[1].m128_f32[0],</div>
<div class="line"><span class="lineno"> 32</span> matrix.r[2].m128_f32[3] + matrix.r[2].m128_f32[0],</div>
<div class="line"><span class="lineno"> 33</span> matrix.r[3].m128_f32[3] + matrix.r[3].m128_f32[0]));</div>
<div class="line"><span class="lineno"> 34</span> </div>
<div class="line"><span class="lineno"> 35</span> <span class="comment">// Calculate right plane of frustum.</span></div>
<div class="line"><span class="lineno"> 36</span> planes[3] = XMPlaneNormalize(XMVectorSet(matrix.r[0].m128_f32[3] - matrix.r[0].m128_f32[0],</div>
<div class="line"><span class="lineno"> 37</span> matrix.r[1].m128_f32[3] - matrix.r[1].m128_f32[0],</div>
<div class="line"><span class="lineno"> 38</span> matrix.r[2].m128_f32[3] - matrix.r[2].m128_f32[0],</div>
<div class="line"><span class="lineno"> 39</span> matrix.r[3].m128_f32[3] - matrix.r[3].m128_f32[0]));</div>
<div class="line"><span class="lineno"> 40</span> </div>
<div class="line"><span class="lineno"> 41</span> <span class="comment">// Calculate top plane of frustum.</span></div>
<div class="line"><span class="lineno"> 42</span> planes[4] = XMPlaneNormalize(XMVectorSet(matrix.r[0].m128_f32[3] - matrix.r[0].m128_f32[1],</div>
<div class="line"><span class="lineno"> 43</span> matrix.r[1].m128_f32[3] - matrix.r[1].m128_f32[1],</div>
<div class="line"><span class="lineno"> 44</span> matrix.r[2].m128_f32[3] - matrix.r[2].m128_f32[1],</div>
<div class="line"><span class="lineno"> 45</span> matrix.r[3].m128_f32[3] - matrix.r[3].m128_f32[1]));</div>
<div class="line"><span class="lineno"> 46</span> </div>
<div class="line"><span class="lineno"> 47</span> <span class="comment">// Calculate bottom plane of frustum.</span></div>
<div class="line"><span class="lineno"> 48</span> planes[5] = XMPlaneNormalize(XMVectorSet(matrix.r[0].m128_f32[3] + matrix.r[0].m128_f32[1],</div>
<div class="line"><span class="lineno"> 49</span> matrix.r[1].m128_f32[3] + matrix.r[1].m128_f32[1],</div>
<div class="line"><span class="lineno"> 50</span> matrix.r[2].m128_f32[3] + matrix.r[2].m128_f32[1],</div>
<div class="line"><span class="lineno"> 51</span> matrix.r[3].m128_f32[3] + matrix.r[3].m128_f32[1]));</div>
<div class="line"><span class="lineno"> 52</span> </div>
<div class="line"><span class="lineno"> 53</span> <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i &lt; 6; i++)</div>
<div class="line"><span class="lineno"> 54</span> {</div>
<div class="line"><span class="lineno"> 55</span> m_planes[i] = planes[i];</div>
<div class="line"><span class="lineno"> 56</span> }</div>
<div class="line"><span class="lineno"> 57</span>}</div>
</div><!-- fragment -->
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>enginecustom/src/inc/system/<a class="el" href="frustum_8h_source.html">frustum.h</a></li>
<li>enginecustom/src/src/system/<a class="el" href="frustum_8cpp_source.html">frustum.cpp</a></li>
</ul>
</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="classfrustum.html">frustum</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

View File

@ -0,0 +1,137 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.12.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Khaotic Engine Reborn: Member List</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>
<script type="text/javascript" src="clipboard.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" />
</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 id="projectrow">
<td id="projectalign">
<div id="projectname">Khaotic Engine Reborn
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.12.0 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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&amp;dn=expat.txt MIT */
$(function(){initNavTree('classimgui_manager.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">imguiManager Member List</div></div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="classimgui_manager.html">imguiManager</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GetWindowSize</b>() const (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>imguiManager</b>() (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ImGuiWidgetRenderer</b>() (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>Initialize</b>(HWND hwnd, ID3D11Device *device, ID3D11DeviceContext *deviceContext) (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>m_EnableCelShading</b> (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>NewFrame</b>() (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Render</b>() (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>SetApp</b>(std::shared_ptr&lt; application_class &gt; app) (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SetupDockspace</b>() (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>SetWindowSize</b>(ImVec2 size) (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Shutdown</b>() (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>WidgetAddObject</b>() (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>WidgetButton</b>() (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>WidgetEngineSettingsWindow</b>() (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>WidgetFPS</b>() (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>WidgetLightWindow</b>() (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>WidgetLogWindow</b>() (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>WidgetObjectWindow</b>() (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>WidgetRenderStats</b>() (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>WidgetRenderWindow</b>(ImVec2 availableSize) (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>WidgetSpeedSlider</b>(float *speed) (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="odd"><td class="entry"><b>WidgetTerrainWindow</b>() (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~imguiManager</b>() (defined in <a class="el" href="classimgui_manager.html">imguiManager</a>)</td><td class="entry"><a class="el" href="classimgui_manager.html">imguiManager</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
</ul>
</div>
</body>
</html>

File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More