1#include "Game/Screen/CaptureScreenDirector.hpp"
2#include "Game/Util/MemoryUtil.hpp"
3#include "Game/Util/ObjUtil.hpp"
4#include "Game/Util/ScreenUtil.hpp"
5#include "JSystem/JUtility/JUTVideo.hpp"
8CaptureScreenDirector::CaptureScreenDirector() :
NameObj(
"画面キャプチャ") {
10 mTimingType =
"Indirect";
14 mTexture =
new JUTTexture(JUTVideo::sManager->mRenderModeObj->fbWidth, JUTVideo::sManager->mRenderModeObj->efbHeight, GX_TF_RGB565);
17void CaptureScreenDirector::captureIfAllow(
const char *pName) {
19 if (getUsingTiming() == info && (!getUsingTiming()->_C || _18)) {
25void CaptureScreenDirector::capture() {
26 _GXRenderModeObj* renderObj = JUTVideo::sManager->mRenderModeObj;
27 GXSetCopyFilter(GX_FALSE, renderObj->sample_pattern, GX_FALSE, renderObj->vfilter);
28 mTexture->capture(0, 0, GX_TF_RGB565,
false, 0);
29 GXSetCopyFilter(GX_FALSE, renderObj->sample_pattern, GX_TRUE, renderObj->vfilter);
32void CaptureScreenDirector::requestCaptureTiming(
const char *pName) {
34 if (!getCurrentTiming() || getCurrentTiming()->timing < info->timing) {
40void CaptureScreenDirector::invalidateCaptureTiming(
const char *pName) {
43 if (strcmp(info->name, pName) == 0) {
49ResTIMG* CaptureScreenDirector::getResTIMG()
const {
53ResTIMG* CaptureScreenDirector::getTexImage()
const {
57const TimingInfo* CaptureScreenDirector::getUsingTiming()
const {
59 return findFromName(_C);
62 return findFromName(mTimingType);
65const TimingInfo* CaptureScreenDirector::getCurrentTiming()
const {
67 return findFromName(_C);
73const TimingInfo* CaptureScreenDirector::findFromName(
const char *pName)
const {
74 for (u32 i = 0; i < 6; i++) {
75 if (strcmp(cTimingInfo[i].name, pName) == 0) {
76 return &cTimingInfo[i];
83CaptureScreenActor::CaptureScreenActor(u32 scene_arg,
const char *pCameraName) :
NameObj(
"画面キャプチャ") {
84 mCameraName = pCameraName;
85 MR::connectToScene(
this, -1, -1, -1, scene_arg);
89 MR::captureScreenIfAllow(mCameraName);
92CaptureScreenDirector::~CaptureScreenDirector() {
96CaptureScreenActor::~CaptureScreenActor() {
virtual void draw() const
Draws the object. Does nothing until overridden.
The most basic form of an object.