sm64coopdx/src/pc/debug_context.h
Agent X 3e540790a3
Basic Vertex Point Lighting Engine (#716)
* CONCEPT: Basic vertex lighting engine

Set the geometry mode on your model to G_LIGHTING_ENGINE_EXT, spawn a `bhvAmbientLight`, spawn some `bhvPointLight`s, and then you got yourself a mighty interesting scene.

* Fixes

* How did I miss this

* Make light set home pos
2025-03-27 16:36:02 -04:00

33 lines
No EOL
907 B
C

#pragma once
#include <PR/ultratypes.h>
#include <stdbool.h>
#define CTX_BEGIN(_ctx) debug_context_begin(_ctx)
#define CTX_END(_ctx) debug_context_end(_ctx)
#define CTX_WITHIN(_ctx) debug_context_within(_ctx)
#define CTX_TIME(_ctx, time) debug_context_set_time(_ctx, time)
#define CTX_EXTENT(_ctx, _f) { CTX_BEGIN(_ctx); _f(); CTX_END(_ctx); }
enum DebugContext {
CTX_NONE,
CTX_TOTAL,
CTX_NETWORK,
CTX_INTERP,
CTX_GAME_LOOP,
CTX_SMLUA,
CTX_AUDIO,
CTX_RENDER,
CTX_LEVEL_SCRIPT,
CTX_HOOK,
CTX_LIGHTING,
CTX_MAX,
// MUST BE KEPT IN SYNC WITH sDebugContextNames
};
void debug_context_begin(enum DebugContext ctx);
void debug_context_end(enum DebugContext ctx);
void debug_context_reset(void);
bool debug_context_within(enum DebugContext ctx);
void debug_context_set_time(enum DebugContext ctx, f64 time);
f64 debug_context_get_time(enum DebugContext ctx);