المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : محاولة في الـXNA



modyKun
27-05-2009, 03:15 AM
السلام عليكم ورحمة الله وبركاته ^_^..
اليوم بحاول عمل شئ بالـXNA .. وشرحه بالتفاصيل إن إستطعت ..
ربما سيستغرب الكثيرين كوني وضعت الموضوع هنا .. وليس في قسم المشاريع مثلاً ^^ لكنه موضوع تعليمي.. وسوف نضيف أشياء مع الوقت ^^..يمكن للمشرفين نقله لأي قسم يريدون :) .. لكني مازلت أرى أن مكانه الأنسب هو هنا ^^
على كل .. الموضوع هو تراكمي..محاولة(تعليمية) لعمل عدة أشياء
ربما الموضوع ليس هادفاً إلى أولئك من ليست لديهم أي فكرة عن XNA او الـC# .. موجه أكثر لمن تعلموه لكنهم ليست لديهم خبرة في كيفية استخدام ما تعلموه ^_^..
على العموم..أو مهمة لي هي عمل كائنان ^^ .. واحد يجي من الركن الأعلى الأيسر للشاشة ويتوقف في منتصف الشاشة ويطلق نار .. والثاني يجي من الركن الأسفل الأيسر للشاشة ويطلق ^^..وهكذا..
على العموم..حالياً مشغول بس قلت اكتب الموضوع عشان اختصر وقت ^_^.. كل ما لدينا في الوقت الحالي هو السورس الذي يصنعه لنا السي شارب ..وهي الدوال التي نبرمج داخلها كما هو معروف

using System;
using System.Collections.Generic;
using System.Linq;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Audio;
using Microsoft.Xna.Framework.Content;
using Microsoft.Xna.Framework.GamerServices;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;
using Microsoft.Xna.Framework.Media;
using Microsoft.Xna.Framework.Net;
using Microsoft.Xna.Framework.Storage;

namespace XNAlearning
{
/// <summary>
/// This is the main type for your game
/// </summary>
public class Game1 : Microsoft.Xna.Framework.Game
{
GraphicsDeviceManager graphics;
SpriteBatch spriteBatch;

public Game1()
{
graphics = new GraphicsDeviceManager(this);
Content.RootDirectory = "Content";
}

/// <summary>
/// Allows the game to perform any initialization it needs to before starting to run.
/// This is where it can query for any required services and load any non-graphic
/// related content. Calling base.Initialize will enumerate through any components
/// and initialize them as well.
/// </summary>
protected override void Initialize()
{
// TODO: Add your initialization logic here

base.Initialize();
}

/// <summary>
/// LoadContent will be called once per game and is the place to load
/// all of your content.
/// </summary>
protected override void LoadContent()
{
// Create a new SpriteBatch, which can be used to draw textures.
spriteBatch = new SpriteBatch(GraphicsDevice);

// TODO: use this.Content to load your game content here
}

/// <summary>
/// UnloadContent will be called once per game and is the place to unload
/// all content.
/// </summary>
protected override void UnloadContent()
{
// TODO: Unload any non ContentManager content here
}

/// <summary>
/// Allows the game to run logic such as updating the world,
/// checking for collisions, gathering input, and playing audio.
/// </summary>
/// <param name="gameTime">Provides a snapshot of timing values.</param>
protected override void Update(GameTime gameTime)
{
// Allows the game to exit
if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed)
this.Exit();

// TODO: Add your update logic here

base.Update(gameTime);
}

/// <summary>
/// This is called when the game should draw itself.
/// </summary>
/// <param name="gameTime">Provides a snapshot of timing values.</param>
protected override void Draw(GameTime gameTime)
{
GraphicsDevice.Clear(Color.CornflowerBlue);

// TODO: Add your drawing code here

base.Draw(gameTime);
}
}
}

مسموح لكم بالرد ^^ ..سأكمل الموضوع لاحقاً بالتفصيل بإذن الله..شارحاً كل سطر أضيفه(طبعاً لن أشرح قواعد اللغة - ولن أتعمق فيها -المفروض اللي يقرأ يكون متعلم السي شارب والإكس إن إيه)..
وفي أمان الله ^_^

نصير1
31-05-2009, 09:30 PM
شكرا!!!!!!!!!!!!

alkhattab
16-06-2009, 02:44 PM
أخي أتمنى أن تكمل لا أدري لماذا تم تجاهل الموضوع ربما لقلة خبراء xna
لكن أكمل سيكون مرجع مفيد جدا
وشكرا