mirror of
https://github.com/open-goal/jak-project.git
synced 2024-10-20 11:26:18 -04:00
6e779d1f1c
Trying to make up for some of the startup speed lost in the SDL transition. This saves about 1s from start (from ~3s), and about 500 MB of RAM. - Faster TIE unpack by merging matrix groups, more efficient vertex transforms, and skipping normal transforms on groups with no normals. - Refactor generic merc and merc to use a single renderer with multiple interfaces, rather than many renderers. Removed "LightningRenderer" as a special thing, but Warp is still special - Add more profiling stuff to startup and the loader. - Remove `SDL_INIT_HAPTIC` - this turned out to be needed for force-feedback steering wheels, and not needed for controller vibration - Switched `vag-player` to use quicksort instead of the default GOAL sort (very slow)
21 lines
737 B
C++
21 lines
737 B
C++
#pragma once
|
|
|
|
#include "game/graphics/opengl_renderer/BucketRenderer.h"
|
|
#include "game/graphics/opengl_renderer/Warp.h"
|
|
#include "game/graphics/opengl_renderer/foreground/Generic2.h"
|
|
#include "game/graphics/opengl_renderer/opengl_utils.h"
|
|
|
|
class Warp : public BucketRenderer {
|
|
public:
|
|
Warp(const std::string& name, int id, std::shared_ptr<Generic2> generic);
|
|
void render(DmaFollower& dma, SharedRenderState* render_state, ScopedProfilerNode& prof) override;
|
|
void draw_debug_window() override;
|
|
void init_textures(TexturePool& tex_pool, GameVersion version) override;
|
|
|
|
private:
|
|
std::shared_ptr<Generic2> m_generic;
|
|
FramebufferCopier m_fb_copier;
|
|
GpuTexture* m_warp_src_tex = nullptr;
|
|
u32 m_tbp = 1216; // hack, jak 2
|
|
};
|