Introduce 'visionos' platform derived from 'apple_embedded'

This commit is contained in:
Ricardo Sanchez-Saez 2025-05-14 12:13:10 +01:00
parent 457299449d
commit 47971c0a27
Failed to extract signature
70 changed files with 2634 additions and 47 deletions

View file

@ -88,7 +88,7 @@ void RenderForwardClustered::RenderBufferDataForwardClustered::ensure_fsr2(Rende
}
}
#ifdef METAL_ENABLED
#ifdef METAL_MFXTEMPORAL_ENABLED
bool RenderForwardClustered::RenderBufferDataForwardClustered::ensure_mfx_temporal(RendererRD::MFXTemporalEffect *p_effect) {
if (mfx_temporal_context == nullptr) {
RendererRD::MFXTemporalEffect::CreateParams params;
@ -127,7 +127,7 @@ void RenderForwardClustered::RenderBufferDataForwardClustered::free_data() {
fsr2_context = nullptr;
}
#ifdef METAL_ENABLED
#ifdef METAL_MFXTEMPORAL_ENABLED
if (mfx_temporal_context) {
memdelete(mfx_temporal_context);
mfx_temporal_context = nullptr;
@ -1730,7 +1730,7 @@ void RenderForwardClustered::_render_scene(RenderDataRD *p_render_data, const Co
scale_type = SCALE_FSR2;
break;
case RS::VIEWPORT_SCALING_3D_MODE_METALFX_TEMPORAL:
#ifdef METAL_ENABLED
#ifdef METAL_MFXTEMPORAL_ENABLED
scale_type = SCALE_MFX;
#else
scale_type = SCALE_NONE;
@ -2444,7 +2444,7 @@ void RenderForwardClustered::_render_scene(RenderDataRD *p_render_data, const Co
RD::get_singleton()->draw_command_end_label();
} else if (scale_type == SCALE_MFX) {
#ifdef METAL_ENABLED
#ifdef METAL_MFXTEMPORAL_ENABLED
bool reset = rb_data->ensure_mfx_temporal(mfx_temporal_effect);
RID exposure;
@ -5005,7 +5005,7 @@ RenderForwardClustered::RenderForwardClustered() {
taa = memnew(RendererRD::TAA);
fsr2_effect = memnew(RendererRD::FSR2Effect);
ss_effects = memnew(RendererRD::SSEffects);
#ifdef METAL_ENABLED
#ifdef METAL_MFXTEMPORAL_ENABLED
motion_vectors_store = memnew(RendererRD::MotionVectorsStore);
mfx_temporal_effect = memnew(RendererRD::MFXTemporalEffect);
#endif
@ -5027,7 +5027,7 @@ RenderForwardClustered::~RenderForwardClustered() {
fsr2_effect = nullptr;
}
#ifdef METAL_ENABLED
#ifdef METAL_MFXTEMPORAL_ENABLED
if (mfx_temporal_effect) {
memdelete(mfx_temporal_effect);
mfx_temporal_effect = nullptr;

View file

@ -95,7 +95,7 @@ public:
private:
RenderSceneBuffersRD *render_buffers = nullptr;
RendererRD::FSR2Context *fsr2_context = nullptr;
#ifdef METAL_ENABLED
#ifdef METAL_MFXTEMPORAL_ENABLED
RendererRD::MFXTemporalContext *mfx_temporal_context = nullptr;
#endif
@ -141,7 +141,7 @@ public:
void ensure_fsr2(RendererRD::FSR2Effect *p_effect);
RendererRD::FSR2Context *get_fsr2_context() const { return fsr2_context; }
#ifdef METAL_ENABLED
#ifdef METAL_MFXTEMPORAL_ENABLED
bool ensure_mfx_temporal(RendererRD::MFXTemporalEffect *p_effect);
RendererRD::MFXTemporalContext *get_mfx_temporal_context() const { return mfx_temporal_context; }
#endif
@ -719,7 +719,7 @@ private:
RendererRD::FSR2Effect *fsr2_effect = nullptr;
RendererRD::SSEffects *ss_effects = nullptr;
#ifdef METAL_ENABLED
#ifdef METAL_MFXTEMPORAL_ENABLED
RendererRD::MFXTemporalEffect *mfx_temporal_effect = nullptr;
#endif
RendererRD::MotionVectorsStore *motion_vectors_store = nullptr;