update
This commit is contained in:
@@ -12,10 +12,9 @@ void debug_printf(wchar_t* format, ...) {
|
|||||||
free(output);
|
free(output);
|
||||||
}
|
}
|
||||||
|
|
||||||
internal void outputSound(GameSoundOutputBuffer *soundBuffer) {
|
internal void outputSound(GameSoundOutputBuffer *soundBuffer, int toneHz) {
|
||||||
local_persist real32 tSine;
|
local_persist real32 tSine;
|
||||||
int16 toneVolume = 3000;
|
int16 toneVolume = 3000;
|
||||||
int toneHz = 440;
|
|
||||||
int wavePeriod = soundBuffer->samplesPerSecond/toneHz;
|
int wavePeriod = soundBuffer->samplesPerSecond/toneHz;
|
||||||
|
|
||||||
int16 *sampleOut = soundBuffer->samples;
|
int16 *sampleOut = soundBuffer->samples;
|
||||||
@@ -43,6 +42,9 @@ internal void renderWeirdGradient(GameOffscreenBuffer *buffer, int xOffset, int
|
|||||||
}
|
}
|
||||||
|
|
||||||
internal void gameUpdateAndRender(GameOffscreenBuffer *videoBuf, GameInput *input, GameSoundOutputBuffer *soundBuf) {
|
internal void gameUpdateAndRender(GameOffscreenBuffer *videoBuf, GameInput *input, GameSoundOutputBuffer *soundBuf) {
|
||||||
outputSound(soundBuf);
|
local_persist int greenOffset = 0;
|
||||||
|
local_persist int blueOffset = 0;
|
||||||
|
local_persist int toneHz = 440;
|
||||||
|
outputSound(soundBuf, toneHz);
|
||||||
renderWeirdGradient(videoBuf, input->xOffset, input->yOffset);
|
renderWeirdGradient(videoBuf, input->xOffset, input->yOffset);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,21 +3,9 @@
|
|||||||
#include <Xinput.h>
|
#include <Xinput.h>
|
||||||
#include <dsound.h>
|
#include <dsound.h>
|
||||||
|
|
||||||
|
#include "win32_handmade.h"
|
||||||
#include "handmade.cpp"
|
#include "handmade.cpp"
|
||||||
|
|
||||||
struct Win32OffscreenBuffer {
|
|
||||||
BITMAPINFO info;
|
|
||||||
void *memory;
|
|
||||||
int width;
|
|
||||||
int height;
|
|
||||||
int bytesPerPixel;
|
|
||||||
};
|
|
||||||
|
|
||||||
struct Win32WindowDimensions {
|
|
||||||
int width;
|
|
||||||
int height;
|
|
||||||
};
|
|
||||||
|
|
||||||
global ATOM HH_CTRLW;
|
global ATOM HH_CTRLW;
|
||||||
global bool running;
|
global bool running;
|
||||||
global Win32OffscreenBuffer globalBackBuffer;
|
global Win32OffscreenBuffer globalBackBuffer;
|
||||||
@@ -216,18 +204,6 @@ LRESULT mainWindowCallback(
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct Win32SoundOutput {
|
|
||||||
int samplesPerSecond;
|
|
||||||
int toneHz;
|
|
||||||
int wavePeriod;
|
|
||||||
int16 toneVolume;
|
|
||||||
uint32 runningSampleIndex;
|
|
||||||
int bytesPerSample;
|
|
||||||
int secondaryBufferSize;
|
|
||||||
real32 tSine;
|
|
||||||
int latencySampleCount;
|
|
||||||
};
|
|
||||||
|
|
||||||
internal void win32ClearBuffer(Win32SoundOutput *soundOutput) {
|
internal void win32ClearBuffer(Win32SoundOutput *soundOutput) {
|
||||||
VOID *region1;
|
VOID *region1;
|
||||||
DWORD region1Size;
|
DWORD region1Size;
|
||||||
@@ -321,9 +297,7 @@ int APIENTRY WinMain(HINSTANCE instance, HINSTANCE prevInstance, PSTR commandLin
|
|||||||
// sound test
|
// sound test
|
||||||
Win32SoundOutput soundOutput = {};
|
Win32SoundOutput soundOutput = {};
|
||||||
soundOutput.samplesPerSecond = 48000;
|
soundOutput.samplesPerSecond = 48000;
|
||||||
soundOutput.toneHz = 440; // A above middle C
|
|
||||||
soundOutput.wavePeriod = soundOutput.samplesPerSecond / soundOutput.toneHz;
|
soundOutput.wavePeriod = soundOutput.samplesPerSecond / soundOutput.toneHz;
|
||||||
soundOutput.toneVolume = 6000;
|
|
||||||
soundOutput.runningSampleIndex = 0;
|
soundOutput.runningSampleIndex = 0;
|
||||||
soundOutput.bytesPerSample = sizeof(int16)*2;
|
soundOutput.bytesPerSample = sizeof(int16)*2;
|
||||||
soundOutput.secondaryBufferSize = soundOutput.samplesPerSecond*soundOutput.bytesPerSample;
|
soundOutput.secondaryBufferSize = soundOutput.samplesPerSecond*soundOutput.bytesPerSample;
|
||||||
|
|||||||
Reference in New Issue
Block a user