Program Listing for File sprite_component.h¶
↰ Return to documentation for file (rootex/framework/components/visual/model/sprite_component.h
)
#pragma once
#include "model_component.h"
#include "core/resource_files/image_resource_file.h"
#include "core/resource_files/basic_material_resource_file.h"
class SpriteComponent : public ModelComponent
{
COMPONENT(SpriteComponent, Category::Model);
private:
bool m_IsBillboarded;
void adjustScaling();
void setMaterialOverride(MaterialResourceFile* oldMaterial, Ref<MaterialResourceFile> newMaterial) override;
static JSON::json InjectSpriteModel(const JSON::json& data);
public:
SpriteComponent(Entity& owner, const JSON::json& data);
~SpriteComponent() = default;
Ref<MaterialResourceFile> getOverridingMaterialResourceFile();
bool preRender(float deltaMilliseconds) override;
void postRender() override;
bool setupData() override;
JSON::json getJSON() const override;
void draw() override;
};
DECLARE_COMPONENT(SpriteComponent);