// set render texture or colors if render texture is used (stills handled in AMTake)
    private void setRenderTexture(AMITarget itarget,  AMCameraFade cf, float frame, int firstTargetType, int secondTargetType, bool isReversed, 
        AMCameraSwitcherKey action)
    {
        Camera firstCamera = (isReversed ? action.getCameraEnd(itarget) : action.getCamera(itarget));
        Camera secondCamera = (isReversed ? action.getCamera(itarget) : action.getCameraEnd(itarget));

        if(isReversed && frame == action.frame) {
            if(firstTargetType == 0) AMUtil.SetTopCamera(firstCamera, GetCachedCameras(itarget));
        }
        else {
            if(secondTargetType == 0) AMUtil.SetTopCamera(secondCamera, GetCachedCameras(itarget));
        }

        if(action.still || (firstTargetType != 0 && secondTargetType != 0)) return;

        bool isPro = AMTakeData.isProLicense;
        // first target is camera, set render texture
        if(firstTargetType == 0) {
            // if should update render texture
            if(/*!cf.tex ||*/ cf.shouldUpdateRenderTexture || (isPro && (!firstCamera.targetTexture || !cf.isRenderTextureSetupFor(firstCamera)/*|| firstCamera.targetTexture != cf.tex*/))) {
                if(isPro) {
                    cf.setupRenderTexture(firstCamera);

                }
                else {
                    cf.useRenderTexture = false;
                    // show place-holder if non-pro
                    cf.colorTex = Color.white;
                    cf.hasColorTex = false;
                    cf.clearScreenTex();
                    cf.placeholder = true;
                }
            }
        }
    }
    // set render texture or colors if render texture is used (stills handled in AMTake)
    private void setRenderTexture(AMCameraFade cf, float frame, int firstTargetType, int secondTargetType, bool isReversed, AMCameraSwitcherAction action, bool isPreview)
    {
        Camera firstCamera = (isReversed ? action.endCamera : action.startCamera);
        Camera secondCamera = (isReversed ? action.startCamera : action.endCamera);

        if(isReversed && frame == action.startFrame) {
            if(firstTargetType == 0) AMTween.SetTopCamera(firstCamera,cachedAllCameras);
        } else {
            if(secondTargetType == 0) AMTween.SetTopCamera(secondCamera,cachedAllCameras);
        }

        if(action.still || (firstTargetType != 0 && secondTargetType != 0)) return;

        bool isPro = AMTake.isProLicense;
        // first target is camera, set render texture
        if(firstTargetType == 0) {
            // if should update render texture
            if(/*!cf.tex ||*/ cf.shouldUpdateRenderTexture || (isPro && (!firstCamera.targetTexture || !cf.isRenderTextureSetupFor(firstCamera)/*|| firstCamera.targetTexture != cf.tex*/))) {
                if(isPro) {
                    cf.setupRenderTexture(firstCamera);

                } else {
                    cf.useRenderTexture = false;
                    // show place-holder if non-pro
                    cf.colorTex = Color.white;
                    cf.tex2d = (Texture2D)Resources.Load("am_indie_placeholder");
                    cf.hasColorTex = false;
                    if(!cf.placeholder) cf.placeholder = true;
                }
            }
        }
    }
Esempio n. 3
0
    // set render texture or colors if render texture is used (stills handled in AMTake)
    private void setRenderTexture(AMCameraFade cf, float frame, int firstTargetType, int secondTargetType, bool isReversed, AMCameraSwitcherAction action, bool isPreview)
    {
        Camera firstCamera  = (isReversed ? action.endCamera : action.startCamera);
        Camera secondCamera = (isReversed ? action.startCamera : action.endCamera);

        if (isReversed && frame == action.startFrame)
        {
            if (firstTargetType == 0)
            {
                AMTween.SetTopCamera(firstCamera, cachedAllCameras);
            }
        }
        else
        {
            if (secondTargetType == 0)
            {
                AMTween.SetTopCamera(secondCamera, cachedAllCameras);
            }
        }

        if (action.still || (firstTargetType != 0 && secondTargetType != 0))
        {
            return;
        }

        bool isPro = AMTake.isProLicense;

        // first target is camera, set render texture
        if (firstTargetType == 0)
        {
            // if should update render texture
            if (/*!cf.tex ||*/ cf.shouldUpdateRenderTexture || (isPro && (!firstCamera.targetTexture || !cf.isRenderTextureSetupFor(firstCamera) /*|| firstCamera.targetTexture != cf.tex*/)))
            {
                if (isPro)
                {
                    cf.setupRenderTexture(firstCamera);
                }
                else
                {
                    cf.useRenderTexture = false;
                    // show place-holder if non-pro
                    cf.colorTex    = Color.white;
                    cf.tex2d       = (Texture2D)Resources.Load("am_indie_placeholder");
                    cf.hasColorTex = false;
                    if (!cf.placeholder)
                    {
                        cf.placeholder = true;
                    }
                }
            }
        }
    }