<?xml version="1.0"?>
<Discussions page="1" pageCount="1" pageSize="20" timestamp="Fri, 31 Jul 2026 17:50:02 -0400" url="https://my3.my.umbc.edu/groups/gdc/discussions.xml?mode=recent_comment&amp;tag=engine">
<Discussion contentIssues="false" id="9386" kind="general" url="https://my3.my.umbc.edu/groups/gdc/discussions/9386">
<Title>LeEK Engine</Title>
<Tagline>A 02' Honda Civic with Wood Spoilers and Under-Car Lights</Tagline>
<Body>
<![CDATA[
    <div class="html-content">The LeEK engine (<strong>Le</strong>ung <strong>E</strong>ngine... uh, is the <strong>K</strong>ing) is an attempt to make a custom 3D engine for the Game Developers Club, in the manner of the ancient wizard-seniors of five years ago. If the engine is fully functional by the end of the fall semester, we will also attempt to make an actual game using the engine, hopefully with enough time to make it really fun to play.<div><br></div>
    <div>At present, there's three major pieces of functionality missing from the engine:</div>
    <div>
    <ul>
    <li>A scene graph to organize the objects in the game world; we have a couple of books we can turn to for that (Eberly's books, Game Coding Complete), and I'm thinking of using an octree (<a href="http://www.altdevblogaday.com/2011/08/01/loose-octrees-for-frustum-culling-part-1/" rel="nofollow external" class="bo">http://www.altdevblogaday.com/2011/08/01/loose-octrees-for-frustum-culling-part-1/</a>, <a href="http://www.flipcode.com/archives/Octrees_For_Visibility.shtml" rel="nofollow external" class="bo">http://www.flipcode.com/archives/Octrees_For_Visibility.shtml</a>) to cut out unnecessary render calls.</li>
    <li>A scripting system, so fairly normal people that aren't insane can use this engine to actually do things. The plan is to use <a href="http://www.lua.org/about.html" rel="nofollow external" class="bo">Lua</a> along with the <a href="http://luaplus.org/" rel="nofollow external" class="bo">LuaPlus helper library</a> to integrate scripting, and create some system of class/subclassing functionality if people need object-oriented programming structures. Again, we have a book for that (Game Coding Complete talks about this a lot).</li>
    <li>An audio system. This is less clear; there's cross-platform solutions, but they cost big people money. There's free solutions, but they're often platform-dependent or just really weird. I'm thinking of making this another module like the rendering system, and just let the OS module decide what to load. I'm definitely open to suggestions on this; under Windows, I'm planning on just using <a href="http://en.wikipedia.org/wiki/DirectSound" rel="nofollow external" class="bo">DirectSound</a> (MSDN articles <a href="http://msdn.microsoft.com/en-us/library/windows/desktop/ee416964(v=vs.85).aspx" rel="nofollow external" class="bo">here</a>) because nobody's really explained <a href="http://msdn.microsoft.com/en-us/library/windows/desktop/ee415813(v=vs.85).aspx" rel="nofollow external" class="bo">XAudio2</a> to me.</li>
    </ul>
    <div>The repository is at <span><a href="https://code.google.com/p/gdc-leek/" rel="nofollow external" class="bo">https://code.google.com/p/gdc-leek/</a>; note that it uses Git, so if you use frontends you'll want to download either Sourcetree or Git Extensions.</span><span> Attached is the Powerpoint, which may help you understand the aim of this project.</span>
    </div>
    </div>
    </div>
]]>
</Body>
<Summary>The LeEK engine (Leung Engine... uh, is the King) is an attempt to make a custom 3D engine for the Game Developers Club, in the manner of the ancient wizard-seniors of five years ago. If the...</Summary>
<AttachmentKind>Presentation</AttachmentKind>
<AttachmentUrl>https://assets1-my.umbc.edu/system/shared/attachments/994cb64c16b573ba56a414e517451d5a/6a6d188a/discussions/000/009/386/5839ddf15d7eafa3befa98544d2c1e9d/Proposal.pptx?1379539166</AttachmentUrl>
<Tag>3d</Tag>
<Tag>comedy</Tag>
<Tag>engine</Tag>
<Tag>game</Tag>
<Tag>gold</Tag>
<Tag>oculus</Tag>
<Tag>optimus</Tag>
<Tag>programming</Tag>
<Group token="gdc">UMBC Game Developers Club</Group>
<GroupUrl>https://my3.my.umbc.edu/groups/gdc</GroupUrl>
<AvatarUrl>https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/283/1cc27fcb2c4f78845486607056ac1e05/xsmall.png?1544476035</AvatarUrl>
<AvatarUrl size="original">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/283/1cc27fcb2c4f78845486607056ac1e05/original.png?1544476035</AvatarUrl>
<AvatarUrl size="xxlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/283/1cc27fcb2c4f78845486607056ac1e05/xxlarge.png?1544476035</AvatarUrl>
<AvatarUrl size="xlarge">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/283/1cc27fcb2c4f78845486607056ac1e05/xlarge.png?1544476035</AvatarUrl>
<AvatarUrl size="large">https://assets1-my.umbc.edu/system/shared/avatars/groups/000/000/283/1cc27fcb2c4f78845486607056ac1e05/large.png?1544476035</AvatarUrl>
<AvatarUrl size="medium">https://assets4-my.umbc.edu/system/shared/avatars/groups/000/000/283/1cc27fcb2c4f78845486607056ac1e05/medium.png?1544476035</AvatarUrl>
<AvatarUrl size="small">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/283/1cc27fcb2c4f78845486607056ac1e05/small.png?1544476035</AvatarUrl>
<AvatarUrl size="xsmall">https://assets2-my.umbc.edu/system/shared/avatars/groups/000/000/283/1cc27fcb2c4f78845486607056ac1e05/xsmall.png?1544476035</AvatarUrl>
<AvatarUrl size="xxsmall">https://assets3-my.umbc.edu/system/shared/avatars/groups/000/000/283/1cc27fcb2c4f78845486607056ac1e05/xxsmall.png?1544476035</AvatarUrl>
<Sponsor>Game Developer's Club</Sponsor>
<PawCount>0</PawCount>
<CommentCount>0</CommentCount>
<CommentsAllowed>true</CommentsAllowed>
<PostedAt>Wed, 18 Sep 2013 17:19:26 -0400</PostedAt>
<EditAt>Wed, 18 Sep 2013 23:28:53 -0400</EditAt>
</Discussion>

</Discussions>
