Merge branch 'master' of https://github.com/Doy-lee/Dengine
This commit is contained in:
		
						commit
						3729ddf164
					
				| @ -990,6 +990,32 @@ void asteroid_gameUpdateAndRender(GameState *state, Memory *memory, | ||||
| 		                collideColor, flags); | ||||
| 	} | ||||
| 
 | ||||
| 	{ // Draw Ui
 | ||||
| 		UiState *uiState             = &state->uiState; | ||||
| 		MemoryArena_ *transientArena = &state->transientArena; | ||||
| 		AssetManager *assetManager   = &state->assetManager; | ||||
| 		Renderer *renderer           = &state->renderer; | ||||
| 		InputBuffer *inputBuffer     = &state->input; | ||||
| 
 | ||||
| 		userInterface_beginState(uiState); | ||||
| 
 | ||||
| 		WindowState window = {0}; | ||||
| 		window.id          = userInterface_generateId(uiState); | ||||
| 
 | ||||
| 		Rect windowRect = {0}; | ||||
| 		windowRect.min  = V2(200, 200); | ||||
| 		windowRect.max  = V2(500, 500); | ||||
| 
 | ||||
| 		window.rect = windowRect; | ||||
| 
 | ||||
| #if 0 | ||||
| 		userInterface_window(uiState, transientArena, assetManager, renderer, | ||||
| 		                     &assetManager->font, *inputBuffer, &window); | ||||
| #endif | ||||
| 
 | ||||
| 		userInterface_endState(uiState, inputBuffer); | ||||
| 	} | ||||
| 
 | ||||
| 	for (i32 i = 0; i < world->numAudioRenderers; i++) | ||||
| 	{ | ||||
| 		AudioRenderer *audioRenderer = &world->audioRenderer[i]; | ||||
|  | ||||
| @ -272,6 +272,8 @@ const i32 audio_playVorbis(MemoryArena_ *arena, AudioManager *audioManager, | ||||
|                            AudioRenderer *audioRenderer, AudioVorbis *vorbis, | ||||
|                            i32 numPlays) | ||||
| { | ||||
| 	if(vorbis) return -1; | ||||
| 
 | ||||
| 	i32 result = initRendererForPlayback(arena, audioManager, audioRenderer, | ||||
| 	                                     vorbis, numPlays); | ||||
| 
 | ||||
| @ -302,6 +304,8 @@ const i32 audio_streamPlayVorbis(MemoryArena_ *arena, AudioManager *audioManager | ||||
| 	// TODO(doyle): Streaming leaks memory, we don't free the "copy audio"
 | ||||
| 	ASSERT(INVALID_CODE_PATH); | ||||
| 
 | ||||
| 	if(vorbis) return -1; | ||||
| 
 | ||||
| 	i32 result = initRendererForPlayback(arena, audioManager, audioRenderer, | ||||
| 	                                     vorbis, numPlays); | ||||
| 	// NOTE(doyle): We make a copy of the audio vorbis file using all the same
 | ||||
|  | ||||
| @ -1,9 +1,33 @@ | ||||
| #include "Dengine/UserInterface.h" | ||||
| #include "Dengine/AssetManager.h" | ||||
| #include "Dengine/Assets.h" | ||||
| #include "Dengine/Asteroid.h" | ||||
| #include "Dengine/Debug.h" | ||||
| #include "Dengine/Renderer.h" | ||||
| 
 | ||||
| void userInterface_beginState(UiState *state) | ||||
| { | ||||
| 	state->hotItem = 0; | ||||
| } | ||||
| 
 | ||||
| void userInterface_endState(UiState *state, InputBuffer *input) | ||||
| { | ||||
| 	if (!common_isSet(input->keys[keycode_mouseLeft].flags, | ||||
| 	                  keystateflag_ended_down)) | ||||
| 	{ | ||||
| 		state->activeItem = 0; | ||||
| 	} | ||||
| 	else if (state->activeItem == 0) | ||||
| 	{ | ||||
| 		state->activeItem = -1; | ||||
| 	} | ||||
| 
 | ||||
| 	if (state->keyEntered == keycode_tab) state->kbdItem = 0; | ||||
| 
 | ||||
| 	state->keyEntered = keycode_null; | ||||
| 	state->keyChar    = keycode_null; | ||||
| } | ||||
| 
 | ||||
| i32 userInterface_button(UiState *const uiState, MemoryArena_ *const arena, | ||||
|                          AssetManager *const assetManager, | ||||
|                          Renderer *const renderer, Font *const font, | ||||
|  | ||||
| @ -8,6 +8,7 @@ | ||||
| #include "Dengine/MemoryArena.h" | ||||
| #include "Dengine/Platform.h" | ||||
| #include "Dengine/Renderer.h" | ||||
| #include "Dengine/UserInterface.h" | ||||
| 
 | ||||
| typedef struct World | ||||
| { | ||||
| @ -49,6 +50,8 @@ typedef struct GameState { | ||||
| 	AssetManager assetManager; | ||||
| 	InputBuffer input; | ||||
| 	Renderer renderer; | ||||
| 
 | ||||
| 	UiState uiState; | ||||
| 	World world; | ||||
| 
 | ||||
| } GameState; | ||||
|  | ||||
| @ -10,6 +10,7 @@ typedef struct AssetManager AssetManager; | ||||
| typedef struct Font Font; | ||||
| typedef struct MemoryArena MemoryArena_; | ||||
| typedef struct Renderer Renderer; | ||||
| typedef struct GameState GameState; | ||||
| 
 | ||||
| enum UiType | ||||
| { | ||||
| @ -76,6 +77,9 @@ inline i32 userInterface_generateId(UiState *const uiState) | ||||
| 	return result; | ||||
| } | ||||
| 
 | ||||
| void userInterface_beginState(UiState *state); | ||||
| void userInterface_endState(UiState *state, InputBuffer *input); | ||||
| 
 | ||||
| i32 userInterface_button(UiState *const uiState, MemoryArena_ *const arena, | ||||
|                          AssetManager *const assetManager, | ||||
|                          Renderer *const renderer, Font *const font, | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user