Beispiel #1
0
        public override void OnEnter()
        {
            base.OnEnter();

            CCNode target = GetChildByTag(EffectAdvanceScene.kTagBackground);

            // To reuse a grid the grid size and the grid type must be the same.
            // in this case:
            //     Lens3D is Grid3D and it's size is (15,10)
            //     Waves3D is Grid3D and it's size is (15,10)

            CCSize           size  = CCDirector.SharedDirector.WinSize;
            CCActionInterval lens  = new CCLens3D(0.0f, new CCGridSize(15, 10), new CCPoint(size.Width / 4, size.Height / 4), 240);
            CCActionInterval waves = new CCWaves3D(10, new CCGridSize(15, 10), 18, 15);


            CCFiniteTimeAction reuse = new CCReuseGrid(1);
            CCActionInterval   delay = new CCDelayTime(8);

            CCActionInterval   orbit      = new CCOrbitCamera(5, 1, 2, 0, 180, 0, -90);
            CCFiniteTimeAction orbit_back = orbit.Reverse();

            target.RunAction(new CCRepeatForever((new CCSequence(orbit, orbit_back))));
            target.RunAction(new CCSequence(lens, delay, reuse, waves));
        }
Beispiel #2
0
        public override void OnEnter()
        {
            base.OnEnter();

            GameView.DepthTesting = true;

            CCRect visibleBounds = VisibleBoundsWorldspace;

            // To reuse a grid the grid size and the grid type must be the same.
            // in this case:
            //     Lens3D is Grid3D and it's size is (15,10)
            //     Waves3D is Grid3D and it's size is (15,10)

            var lens  = new CCLens3D(0.0f, new CCGridSize(15, 10), visibleBounds.Center, 200);
            var waves = new CCWaves3D(10, new CCGridSize(15, 10), 18, 30);


            var reuse = new CCReuseGrid(1);
            var delay = new CCDelayTime(8);

            //bgNode.AnchorPoint = CCPoint.AnchorMiddle;
            var orbit      = new CCOrbitCamera(5, 1.0f, 2, 0, 180, 0, -90);
            var orbit_back = orbit.Reverse();

            //bgNode.RepeatForever(orbit, orbit_back);
            bgNode.RunActions(lens, delay, reuse, waves);
        }
Beispiel #3
0
        public override void OnEnter()
        {
            base.OnEnter();

            CCRect visibleBounds = VisibleBoundsWorldspace;

            // To reuse a grid the grid size and the grid type must be the same.
            // in this case:
            //     Lens3D is Grid3D and it's size is (15,10)
            //     Waves3D is Grid3D and it's size is (15,10)


            CCCamera contentCamera = contentLayer.Camera;

            contentCamera.Projection             = CCCameraProjection.Projection3D;
            contentCamera.PerspectiveAspectRatio = 1.0f;

            CCPoint3 cameraCenter = contentCamera.CenterInWorldspace;
            CCPoint3 cameraTarget = contentCamera.TargetInWorldspace;

            float targeCenterLength = (cameraTarget - cameraCenter).Length;


            contentCamera.NearAndFarPerspectiveClipping = new CCPoint(0.1f, 100.0f);

            contentCamera.PerspectiveFieldOfView = (float)Math.PI / 3.0f; //(float)Math.Atan(visibleBounds.Size.Height / (2.0f * targeCenterLength));

            var lens  = new CCLens3D(0.0f, new CCGridSize(15, 10), bgNode.ContentSize.Center, 90);
            var waves = new CCWaves3D(10, new CCGridSize(15, 10), 18, 15);


            var reuse = new CCReuseGrid(1);
            var delay = new CCDelayTime(8);

            bgNode.AnchorPoint = CCPoint.AnchorMiddle;
            var orbit      = new CCOrbitCamera(5, 30.0f, 2, 20, 180, 0, -90);
            var orbit_back = orbit.Reverse();

            bgNode.RepeatForever(orbit, orbit_back);
            bgNode.RunActions(lens, delay, reuse, waves);
        }
Beispiel #4
0
        public override void onEnter()
        {
            base.onEnter();

            CCNode target = getChildByTag(EffectAdvanceScene.kTagBackground);

            // To reuse a grid the grid size and the grid type must be the same.
            // in this case:
            //     Lens3D is Grid3D and it's size is (15,10)
            //     Waves3D is Grid3D and it's size is (15,10)

            CCSize           size  = CCDirector.sharedDirector().getWinSize();
            CCActionInterval lens  = CCLens3D.actionWithPosition(new CCPoint(size.width / 2, size.height / 2), 240, new ccGridSize(15, 10), 0.0f);
            CCActionInterval waves = CCWaves3D.actionWithWaves(18, 15, new ccGridSize(15, 10), 10);

            CCFiniteTimeAction reuse = CCReuseGrid.actionWithTimes(1);
            CCActionInterval   delay = CCDelayTime.actionWithDuration(8);

            CCActionInterval   orbit      = CCOrbitCamera.actionWithDuration(5, 1, 2, 0, 180, 0, -90);
            CCFiniteTimeAction orbit_back = orbit.reverse();

            target.runAction(CCRepeatForever.actionWithAction((CCActionInterval)(CCSequence.actions(orbit, orbit_back))));
            target.runAction(CCSequence.actions(lens, delay, reuse, waves));
        }
Beispiel #5
0
 public new static CCActionInterval actionWithDuration(float t)
 {
     return(CCWaves3D.actionWithWaves(5, 40, new ccGridSize(15, 10), t));
 }