29 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			HTML
		
	
	
	
			
		
		
	
	
			29 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			HTML
		
	
	
	
<html>
 | 
						|
    <head>
 | 
						|
        <!-- __CINERA_INCLUDES__ -->
 | 
						|
    </head>
 | 
						|
    <body>
 | 
						|
        <div>
 | 
						|
            <!-- __CINERA_MENUS__ -->
 | 
						|
            <!-- __CINERA_PLAYER__ -->
 | 
						|
        </div>
 | 
						|
        <!-- __CINERA_SCRIPT__ -->
 | 
						|
 | 
						|
        <article id="video-notes">
 | 
						|
            <h1><!-- __CINERA_TITLE__ --></h1>
 | 
						|
            <p>Key ideas:</p>
 | 
						|
            <ul>
 | 
						|
                <li>Sound is necessarily temporal. You can drop a frame of video and the user probably won't notice, but if your audio
 | 
						|
                    drops out, they probably will notice.</li>
 | 
						|
                <li>Sound bufers are small, and not all platforms will require us to deal with circular buffers. So one option is to do
 | 
						|
                    a buffer copy per frame and present the game with a contiguous block of memory. This should be cheap enough.</li>
 | 
						|
                <li>Much like the bitmap, allocate plenty of space for a sound buffer at startup, and reuse it each frame.</li>
 | 
						|
            </ul>
 | 
						|
            <h2 id="c-features">C features</h2>
 | 
						|
            <h3 id="alloca">alloca</h3>
 | 
						|
            <p><code>alloca</code> is a compiler feature that allows for dynamic allocation <em>on the stack</em>. Much was learned and discussed, but
 | 
						|
                it should be noted that the function is deprecated and probably shouldn't be used in shipping code.</p>
 | 
						|
        </article>
 | 
						|
    </body>
 | 
						|
</html>
 |