Doyle Thai
332888f3b5
No longer repeatedly invoke malloc for retrieving memory. Some operations still leak memory (notably audio streaming). We introduce notion of Transient and Permanent storage. Transient memory is used for data in memory that is temporarily allocated (i.e. graphics for that frame's output), and permanent as more like game state storage. We now give out pointers from a pre-allocated block of memory, so we have no allocation cost and benefits of reduced memory leaks. The transient block gets reset every frame. Any memory allocated within is cleared at no cost simply by rearranging the base pointer of the memory block.
120 lines
4.2 KiB
XML
120 lines
4.2 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
<ItemGroup>
|
|
<Filter Include="Source Files">
|
|
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
|
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
|
</Filter>
|
|
<Filter Include="Header Files">
|
|
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
|
<Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
|
|
</Filter>
|
|
<Filter Include="Resource Files">
|
|
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
|
|
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
|
|
</Filter>
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<ClCompile Include="src\WorldTraveller.c">
|
|
<Filter>Source Files</Filter>
|
|
</ClCompile>
|
|
<ClCompile Include="src\Texture.c">
|
|
<Filter>Source Files</Filter>
|
|
</ClCompile>
|
|
<ClCompile Include="src\Shader.c">
|
|
<Filter>Source Files</Filter>
|
|
</ClCompile>
|
|
<ClCompile Include="src\Renderer.c">
|
|
<Filter>Source Files</Filter>
|
|
</ClCompile>
|
|
<ClCompile Include="src\Platform.c">
|
|
<Filter>Source Files</Filter>
|
|
</ClCompile>
|
|
<ClCompile Include="src\AssetManager.c">
|
|
<Filter>Source Files</Filter>
|
|
</ClCompile>
|
|
<ClCompile Include="src\Common.c">
|
|
<Filter>Source Files</Filter>
|
|
</ClCompile>
|
|
<ClCompile Include="src\Debug.c">
|
|
<Filter>Source Files</Filter>
|
|
</ClCompile>
|
|
<ClCompile Include="src\Audio.c">
|
|
<Filter>Source Files</Filter>
|
|
</ClCompile>
|
|
<ClCompile Include="src\Entity.c">
|
|
<Filter>Source Files</Filter>
|
|
</ClCompile>
|
|
<ClCompile Include="src\dengine.c">
|
|
<Filter>Source Files</Filter>
|
|
</ClCompile>
|
|
<ClCompile Include="src\UserInterface.c">
|
|
<Filter>Source Files</Filter>
|
|
</ClCompile>
|
|
<ClCompile Include="src\String.c">
|
|
<Filter>Source Files</Filter>
|
|
</ClCompile>
|
|
<ClCompile Include="src\MemoryArena.c">
|
|
<Filter>Source Files</Filter>
|
|
</ClCompile>
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<None Include="data\shaders\default.vert.glsl" />
|
|
<None Include="data\shaders\default.frag.glsl" />
|
|
<None Include="data\shaders\sprite.frag.glsl" />
|
|
<None Include="data\shaders\sprite.vert.glsl" />
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<ClInclude Include="src\include\Dengine\Common.h">
|
|
<Filter>Header Files</Filter>
|
|
</ClInclude>
|
|
<ClInclude Include="src\include\Dengine\Shader.h">
|
|
<Filter>Header Files</Filter>
|
|
</ClInclude>
|
|
<ClInclude Include="src\include\Dengine\OpenGL.h">
|
|
<Filter>Header Files</Filter>
|
|
</ClInclude>
|
|
<ClInclude Include="src\include\Dengine\Texture.h">
|
|
<Filter>Header Files</Filter>
|
|
</ClInclude>
|
|
<ClInclude Include="src\include\Dengine\AssetManager.h">
|
|
<Filter>Header Files</Filter>
|
|
</ClInclude>
|
|
<ClInclude Include="src\include\Breakout\Game.h">
|
|
<Filter>Header Files</Filter>
|
|
</ClInclude>
|
|
<ClInclude Include="src\include\Dengine\Renderer.h">
|
|
<Filter>Header Files</Filter>
|
|
</ClInclude>
|
|
<ClInclude Include="src\include\Dengine\Entity.h">
|
|
<Filter>Header Files</Filter>
|
|
</ClInclude>
|
|
<ClInclude Include="src\include\Dengine\Math.h">
|
|
<Filter>Header Files</Filter>
|
|
</ClInclude>
|
|
<ClInclude Include="src\include\Dengine\Platform.h">
|
|
<Filter>Header Files</Filter>
|
|
</ClInclude>
|
|
<ClInclude Include="src\include\Dengine\Debug.h">
|
|
<Filter>Header Files</Filter>
|
|
</ClInclude>
|
|
<ClInclude Include="src\include\Dengine\Assets.h">
|
|
<Filter>Header Files</Filter>
|
|
</ClInclude>
|
|
<ClInclude Include="src\include\Dengine\MemoryArena.h">
|
|
<Filter>Header Files</Filter>
|
|
</ClInclude>
|
|
<ClInclude Include="src\include\Dengine\Audio.h">
|
|
<Filter>Header Files</Filter>
|
|
</ClInclude>
|
|
<ClInclude Include="src\include\Dengine\WorldTraveller.h">
|
|
<Filter>Header Files</Filter>
|
|
</ClInclude>
|
|
<ClInclude Include="src\include\Dengine\UserInterface.h">
|
|
<Filter>Header Files</Filter>
|
|
</ClInclude>
|
|
<ClInclude Include="src\include\Dengine\String.h">
|
|
<Filter>Header Files</Filter>
|
|
</ClInclude>
|
|
</ItemGroup>
|
|
</Project> |