コード例 #1
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="instanceCount">creating instance count</param>
        /// <param name="textureFileName">texture file name</param>
        public TracerBullets(int id, int instanceCount, string textureFileName,
                             GameSceneNode sceneParent)
        {
            this.id = id;

            textureResource = FrameworkCore.ResourceManager.LoadTexture(textureFileName);

            bullets = new BulletObject[instanceCount];

            //  Create instance bullets
            for (int i = 0; i < bullets.Length; i++)
            {
                bullets[i] = new BulletObject(i);
            }

            tracerBulletBillboard = new GameBillboard();
            tracerBulletBillboard.Create(instanceCount, textureResource.Texture2D,
                                         RenderingSpace.World, false);

            tracerBulletBillboard.SourceBlend            = Blend.SourceAlpha;
            tracerBulletBillboard.DestinationBlend       = Blend.One;
            tracerBulletBillboard.BlendFunction          = BlendFunction.Add;
            tracerBulletBillboard.AlphaBlendEnable       = true;
            tracerBulletBillboard.DepthBufferEnable      = true;
            tracerBulletBillboard.DepthBufferWriteEnable = false;
            tracerBulletBillboard.DepthBufferFunction    = CompareFunction.Less;
            tracerBulletBillboard.AlphaFunction          = CompareFunction.Greater;
            tracerBulletBillboard.CullMode = CullMode.None;

            sceneParent.AddChild(tracerBulletBillboard);
        }
コード例 #2
0
        /// <summary>
        /// create members for creating mesh data.
        /// </summary>
        /// <param name="vertexCount">vertex count</param>
        /// <param name="indexCount">index count</param>
        /// <param name="fileName">texture file name</param>
        public void Create(int vertexCount, int indexCount, string fileName)
        {
            //  Load texture
            GameResourceTexture2D resource =
                FrameworkCore.ResourceManager.LoadTexture(fileName);

            Create(vertexCount, indexCount, resource.Texture2D);
        }
コード例 #3
0
        /// <summary>
        /// create point sprite objects using the texture.
        /// </summary>
        /// <param name="count">sprite object count</param>
        /// <param name="fileName">texture file name</param>
        /// <param name="space">3D render space</param>
        /// <param name="alwaysUpdate"></param>
        public void Create(int count, string fileName,
                           RenderingSpace space, bool alwaysUpdate)
        {
            //  load a texture.
            GameResourceTexture2D resource =
                FrameworkCore.ResourceManager.LoadTexture(fileName);

            Create(count, resource.Texture2D, space, alwaysUpdate);
        }
コード例 #4
0
        /// <summary>
        /// Loads a texture.
        /// </summary>
        /// <param name="resourcePath">texture file name</param>
        public void LoadTexture(string resourcePath)
        {
            string resourceFullPath = Path.Combine(resourcePath, TextureFileName);

            GameResourceTexture2D resource =
                FrameworkCore.ResourceManager.LoadTexture(resourceFullPath);

            //  Set to texture
            SetTexture(resource.Texture2D);
        }
コード例 #5
0
        /// <summary>
        /// creates 2D sprite objects using the texture.
        /// </summary>
        /// <param name="count">sprite objects count</param>
        /// <param name="fileName">texture file name</param>
        public void Create(int count, string fileName)
        {
            for (int i = 0; i < count; i++)
            {
                spriteList.Add(null);
            }

            GameResourceTexture2D resource =
                FrameworkCore.ResourceManager.LoadTexture(fileName);

            texture2D = resource.Texture2D;
        }
コード例 #6
0
ファイル: GameUnit.cs プロジェクト: nusisschad/XNAGameStudio
        /// <summary>
        /// initializes with collison layer and creates a simple shadow.
        /// </summary>
        public override void Initialize()
        {
            base.Initialize();

            colLayerMoveWorld =
                RobotGameGame.CurrentGameLevel.CollisionLayerMoveWorld;

            colLayerHitWorld =
                RobotGameGame.CurrentGameLevel.CollisionLayerHitWorld;

            colLayerFriendlyMech =
                RobotGameGame.CurrentGameLevel.CollisionLayerFriendlyMech;

            colLayerEnemyMech =
                RobotGameGame.CurrentGameLevel.CollisionLayerEnemyMech;

            colLayerAllMech =
                RobotGameGame.CurrentGameLevel.CollisionLayerAllMech;

            colLayerItems =
                RobotGameGame.CurrentGameLevel.CollisionLayerItems;

            colLayerVersusTeam = RobotGameGame.CurrentGameLevel.CollisionVersusTeam;

            //  creates a simple shadow.
            GameResourceTexture2D resource =
                FrameworkCore.ResourceManager.LoadTexture("Textures/shadow");

            simpleShadow = new GameQuad(new Vector3(0.0f, 0.02f, 0.0f),
                                        Vector3.Up, Vector3.Forward, 3.0f, 3.0f);

            simpleShadow.Name                   = "simple shadow";
            simpleShadow.Texture                = resource.Texture2D;
            simpleShadow.LightingEnabled        = false;
            simpleShadow.Alpha                  = 0.6f;
            simpleShadow.AlphaBlendEnable       = true;
            simpleShadow.ReferenceAlpha         = 0;
            simpleShadow.DepthBufferEnable      = true;
            simpleShadow.DepthBufferWriteEnable = true;
            simpleShadow.DepthBufferFunction    = CompareFunction.Less;
            simpleShadow.SourceBlend            = Blend.SourceAlpha;
            simpleShadow.DestinationBlend       = Blend.InverseSourceAlpha;
            simpleShadow.BlendFunction          = BlendFunction.Add;
            simpleShadow.AlphaFunction          = CompareFunction.Greater;
            simpleShadow.CullMode               = CullMode.CullCounterClockwiseFace;

            this.AddChild(simpleShadow);
        }