From 98f0d3e026f978d556cc91cfaa815d92a0b182c8 Mon Sep 17 00:00:00 2001 From: Xavier Del Campo Romero Date: Tue, 8 Feb 2022 15:39:56 +0100 Subject: Replace x_get functions with macros The PS1 port relies on a heap for primitives since the GPU renders the scene asynchronously. However, SDL-based platforms render primitives synchronously, so structures can be allocated on the stack instead. --- src/unit/src/unit.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'src/unit') diff --git a/src/unit/src/unit.c b/src/unit/src/unit.c index bb8e243..8d208a1 100644 --- a/src/unit/src/unit.c +++ b/src/unit/src/unit.c @@ -561,11 +561,6 @@ static int unit_quad(const struct unit *const u, struct render_cfg *const rcfg) { struct instance_render_quad *const qcfg = &rcfg->qcfg; - qcfg->q = quad_get(); - - if (!qcfg->q) - return -1; - static anim_dim *(*const f[])(const struct unit *) = { [UNIT_TYPE_PEASANT] = peasant_quad @@ -594,6 +589,9 @@ int unit_render(const struct unit *const u, const struct camera *const cam, struct render_cfg rcfg; + quad_get_or_ret(q, -1); + rcfg.qcfg.q = q; + if (unit_quad(u, &rcfg)) return -1; -- cgit v1.2.3