Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 11 лет назад пользователемdpevideos.blob.core.windows.net
2 Дмитрий Сошников Координатор академических программ Майкрософт Россия DT210
3 Мы напишем простую 2D-игру «Морской бой» менее, чем за 30 мин Посмотрим другие примеры игр Также вы узнаете Разработка для WP7: Silverlight vs. XNA XNA – не только для игр! Концепция 3 экранов и разработка под 3 экрана Управление телефоном: multitouch и жесты Облачные игры: XBox Live
7 XNA Framework XNA Game Studio
8 SilverlightSilverlight XNAXNA
9 Современные приложения, управляемые событ-ми. Быстрое создание богатых графических приложений HTML/Javascript Устоявшаяся, надёжная, популярная технология Высокопроизводительная игровая платформа Быстрое создание многоэкранных 2D и 3D игр Богатая content pipeline Устоявшаяся технология для Xbox, Windows, и Zune / WP7 Игры (и приложения) Приложения (и игры)
10 Программная модель XNA основана на игровом цикле, а не на событиях!
11 public void LoadContent(…) { … } public void Update(…) { … } public void Draw(…) { … } LoadContent Update Draw
12 Windows Phone Developer Tools Visual Studio 2010 Express for Windows Phone Интеграция с VS 2010 Pro Видеокарта с DirectX 10 Windows Phone 7 – не обязателен!
14 XNA Framework XNA Game Studio
15 Platform CoreFramework ExtendedFramework Games XACTXINPUTXContent Direct3D GraphicsAudioInputMath Storage Application Model Content Pipeline Starter Kits CodeContent Components
16 Touch Input Handling Кросс-платформенное API Touch API Xbox 360 Controllers (Xbox/Windows) Keyboard (Xbox/Windows/Windows Phone 7) Для совместимости есть на всех платформах (не нужно #ifdef) На Windows Phone 7 и Windows поддерживает Multipoint Учитывает ориентацию и разрешение var touchCollection = TouchPanel.GetState(); //... foreach (var touchLocation in touchCollection) { if (touchLocation.State == TouchLocationState.Released) { //... } Состояние и опрос вместо событий
18 Пишем игру без учёта нативного разрешения и ориентации экрана Автоматический поворот между портретным и ландшафтным режимами Touch API автоматически поддерживает изменение ориентации Масштабирование для поднятия производительности Компромисс между производительностью и четкостью 800x480 = 384,000 пикселей, 480x320 = 153,600 пикселей Масштибирование в обе стороны к нативному разрешению Много лучше, чем билинейная фильтрация Простой перенос игр с других платформ Поворот / масштабирование на аппаратном уровне!
20 Audio Capture Example public void EventDrivenCapture() { mic = Microphone.Default; buffer = new byte[mic.GetSampleSizeInBytes(mic.BufferDuration)]; mic.BufferReady += new EventHandler(OnBufferReady); DynamicPlayback = new DynamicSoundEffectInstance(mic.SampleRate, AudioChannels.Mono); } public void OnBufferReady(object sender, EventArgs args) { // Get the latest captured audio. int duration = mic.GetData(buffer); // Do some post-capture processing and playback. MakeMeSoundLikeARobot(buffer, duration); DynamicPlayback.SubmitBuffer(buffer); } Захват и воспроизведение Простой API для проигрывания WAV Изменить pitch, volume, pan Синтез/буферизация аудио Сериализация захваченных данных Контроль над типами System.Media в Windows Phone 7 Microphone/Bluetooth Support Воспроизведение на наушниках Ввод с микрофона Audio Playback Example // Load a sound effect from a raw stream SoundEffect effect1 = SoundEffect.FromStream(GetStreamFromTheWeb(" effect1.Play(); // Create dynamic audio on the fly byte[] fluteSound = GetFluteNote(); effect2 = new SoundEffect(fluteSound, SampleRate, AudioChannels.Stereo); SoundEffectInstance instance = effect2.CreateInstance(); instance.Pan = -1; instance.Pitch = 1.5f; instance.Play();
21 URI Song Playback Example Retrieve Image Data Поиск и воспроизв.музыки // Constructs a song from a URI Uri mediaStreamUri = new Uri(" Song streamedSong = Song.FromUri("Song", mediaStreamUri); // Play the song MediaPlayer.Play(streamedSong); MediaLibrary media = new MediaLibrary(); // Get the JPEG image data Stream myJpegImage = ReadAndModifyPicture(somePicture); // Save texture to Media Library media.SavePicture("Awesome", myJpegImage); Picture Enumeration and Playback Воспроизведение видео Автоматическое управление списком медиа в игре Можно воспроизводить по URI/URL Поддержка выбора.публикации фотографий Поддержка Video Player API Показать или убрать элементы управления
22 Контент Выделение в отдельный проект Разделение по директориям Код Выделение классов под объекты игры GameComponent / DrawableGameComponent Game State Management Хорошие ресурсы: Offline Windows Phone 7 Training Kit
24 Эволюция существующего immediate mode rendering API Простое управление ресурсами и состоянием рендеринга Возможности меняются для Reach/HiDef profiles 2D и 3D примитивы
25 World Matrix Преобразование модели перед отображением Camera View Matrix Направление обзора Camera Projection Matrix Угол обзора / фокусное расстояние Плоскости отсечения
26 Доступны на всех платформах BasicEffect SkinnedEffect EnvironmentMapEffect DualTextureEffect AlphaTestEffect Custom effects (шейдеры) недоступны на Windows Phone 7
28 Tap Double Tap Pan FreeDrag | Horizontal Drag | Vertical Drag Drag -> DragComplete Flick (всегда после Pan) Hold Pinch / Stretch Pinch -> PinchComplete
30 Оптимизация загрузки контента Уменьшение размера Загрузка в правильное время Оптимизация работы с памятью Больше Value Types Вызов GC.Collect() Простные структуры < 1Mb Работа в меньшем разрешении + автомасштабирование Tombstoning
33 Powerful Productive Portable
34 Производительная Продуктивная Переносимая
36 Frameworks designed for performance Разработаны с требованием производителност и Frameworks designed for performance Опробованный успех на игровых сценариях В будущее WP7 – с управляемым кодом! Нет лишней сборки мусора Оптимизированные мат.библиотеки API с переходом на нативный код 3+ года профилирования и оптимизации Эффективная работа на WP7 Более 800.NET-игр на XBLA / XBIG
38 Эффективная разработка с.NET и C# Знакомая удобная среда разработки Intellisense Интегрированная среда build/deploy/debug MSBuild engine для автоматизации процесса сборки
39 Упрощает использование контента!
41 XNA Framework разрабатывалась кросс-платформенной Меньшее время разработки - большее кол-во клиентов Синхронизация проектов между платформами
42 Баланс между переносимостью и богатством возможностей. HiDef Reach Совместимость между экранами / устройствами Включая Windows Phone 7 Лучшие возможности платформы Только Xbox 360/Windows
43 Разработка для Windows Phone 7 Упрощенный API работы с графикой Интеграция с Visual Studio 2010 Улучшенная поддержка звука Новые конфи- гурируемые эффекты
44 Windows Phone 7 на MSDN по-русски Windows Phone 7 Training Kit по-русски Одна ссылка: Windows Phone 7 Training Course XNA Unit: Сообщество: Книга Чарльза Петцольда Programming Windows Phone 7: A5511E5A988D/Microsoft_Press_ebook_Programming_Windows_Phone_7_PDF.pdf A5511E5A988D/Microsoft_Press_ebook_Programming_Windows_Phone_7_PDF.pdf
45 Графика Много элементов управления Векторная графика в XAML Мультимедиа Богатая поддержка в приложении Инструментарий Используем Microsoft Blend в процессе разработки
46 Графика 3D-графика 2D-приложения с активным использованием спрайтов Моделирование/отрисовка Если предпочтительна циклическая модель приложения Инструментарий Используем графические форматы, поддерживаемые XNA Framework Content Pipeline
47 XNA Framework Game Loop работает поверх Silverlight Application object на Windows Phone 7 Существуют API для интеграции Часть XNA Framework доступна из Silverlight-приложений Включая игровые сервисы (Xbox LIVE) На текущий момент интеграция не полная Сцены с GraphicsDevice в XNA Framework и UIElements из Silverlight Надо выбирать подходящую технологию для вашего сценария
48 Скачать Windows Phone Developer Tools WP7TrainingKit/WP7XNA
49 Выводы Производительная Продуктивная Переносимая Windows Phone 7 – это мощная игровая платформа Управляемый код обеспечивает производительные игры Отличные знакомые инструменты для разработки (Visual Stuio) Можно сконцентрироваться на логике/контенте Поддержка трех экранов в едином проекте Фокусируемся на игре, а не на технологиях
50 Ваше мнение очень важно для нас. Пожалуйста, оцените доклад, заполните анкету и сдайте ее при выходе из зала Спасибо!
51 DT210 Дмитрий Сошников Координатор академических программ Вы сможете задать вопросы докладчику в зоне «Спроси эксперта» в течение получаса после завершения этого доклада
52 Более 300 официальных курсов Microsoft доступно в России. Официальные курсы можно прослушать только в авторизованных учебных центрах Microsoft под руководством опытного сертифицированного инструктора Microsoft интенсивное обучение с акцентом на практику более 80-и учебных центров более чем в 20-и городах России (+ дистанционные и выездные курсы) Сертификат Microsoft - показатель квалификации ИТ-специалиста для работодателя. Microsoft предлагает гибкую систему сертификаций. Все курсы, учебные центры и центры тестирования: % Доказательство 75 сертифицированных специалистов считают, что сертификация помогла им получить работу или повышение 57 % Доказательство 119 рекрутеров считают сертификацию сотрудников одним из критериев для повышения в должности
53 Сертификационный пакет со вторым шансом Пакеты экзаменационных ваучеров со скидкой от 15 до 20% и бесплатной пересдачей («вторым шансом»). Все экзамены сдаются одним человеком. Сэкономьте 15% на сертификации вашей ИТ-команды Пакет из 10-и экзаменационных ваучеров со скидкой 15% для сотрудников ИТ-отдела. «Второй шанс» включен. Ваучеры можно произвольно распределять между сотрудниками. Microsoft Certified Career Conference Первая 24-часовая глобальная виртуальная конференция с 18 ноября с (моск. время) по 19 ноября 2010 г. Сессии по технологиям и построению карьеры Скидка 50% для сертифицированных специалистов Microsoft и студентов Бесплатная подписка на TechNet для слушателей официальных курсов Некоторые курсы по SharePoint, Windows 7; Windows Server 2008; SQL Server 2008 Детали: С 22 ноября 2010 г. – подписка TechNet бесплатно для слушателей курсов. Количество ограничено!
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.