fle game engine - движок для создания игр
fle game engine - движок для создания игр


Balls and holes PC game / Balls and Holes PC игра
Вакансии
Игродельня
Сегодня
27 апреля 2017
19:47
Вход Регистрация Забыли пароль ?

megainformatic - Уроки Photoshop - Чудеса - Коллаж от нуля - страница 4
             
подробнее...

Теги

создание сайтов, создание игр, дизайн, игры, информатика, уроки photshop, php, c++, музыка, delphi, cms, робосайт

Статьи сайта

megainformatic - Разработка программ на c++

megainformatic - Немного о музыке

megainformatic - GET и POST запросы

megainformatic - для чего нужна карта сайта

megainformatic - Web Администрирование

megainformatic - Мысли о разном

megainformatic - Легко ли быть программистом

megainformatic - Глубины программирования на C++

megainformatic - Убираем лимит на размер импортируемого файла в PhpMyAdmin

megainformatic - Как создать torrent файл

megainformatic - Нужна ли валидация вашему сайту ?

megainformatic - Антивирус DrWeb

megainformatic - Калькулятор рассчёта стоимости зубопротезирования для стоматологической клиники

megainformatic - Что такое BitTorrent (БитТоррент)

megainformatic - Миссис Даутфайр 1993 фильм torrent

megainformatic - Как скачивать торрент-раздачу ?

megainformatic - Автотелега фильтр

megainformatic - Фильмы

megainformatic - Fahrengeit Фаренгейт игра 2006 для PC

megainformatic - Fez игра для PC 2013

megainformatic - Дневник памяти - фильм 2004

megainformatic - Scooter - The night - Video and Lyrics - Скутер - Ночь - Видео и лирика

megainformatic - Если всё же неудача

megainformatic - Смерть или искупление или избавление

megainformatic - По ту сторону

cj megainformatic - музыкальный альбом БЕСКОНЕЧНОЕ ДВИЖЕНИЕ ОЖИДАНИЕ И ДЕЙСТВИЕ

megainformatic - Костя Коробкин - Секретный проект - интерактивный комикс

megainformatic - Основы анимации во флеш на примере анимирования простейшей окружности

megainformatic - Парсер сайтов Введение

megainformatic - Я пишу музыку для себя и для продажи

megainformatic - Статьи на околомузыкальные темы - осень 2014 часть 1

megainformatic - рассказ - Чужие воспоминания - автор Синицин Андрей - 24.09.2014

megainformatic - Сайты живущие вне поисковых систем. Есть ли такие и как их найти ?

megainformatic - Game craft - проект разработки игровых и мультимедийных проектов

megainformatic - Game craft - моделируем scv

megainformatic - Game craft - моделируем scv - шаг 1 (часть 2)

megainformatic - Game craft - моделируем scv - шаг 2 (часть 3)

megainformatic - Game craft - Наложение текстуры на модель робота scv (часть 4)

megainformatic - Game craft - Прорисовка текстуры робота SCV шаг 5

megainformatic - Game craft - Экспорт модели из 3ds max в формат X

megainformatic - Game craft - отображение scv модели в формате x в d3d9-приложении

megainformatic - Game craft - управление игрой от Direct Input в d3d9 - приложении

megainformatic - Game craft - игровая камера в d3d9 - приложении

megainformatic - Приключения Кости Коробкина - Как я провел лето - онлайн комикс - страница 1

megainformatic - Приключения Кости Коробкина - Как я провел лето - онлайн комикс - страница 2

megainformatic - Приключения Кости Коробкина - Как я провел лето - онлайн комикс - страница 3

megainformatic - Приключения Кости Коробкина - Как я провел лето - онлайн комикс - страница 4

megainformatic - Приключения Кости Коробкина - Как я провел лето - онлайн комикс - страница 5

megainformatic - Приключения Кости Коробкина - Как я провел лето - онлайн комикс - страница 6

megainformatic - Приключения Кости Коробкина - Как я провел лето - онлайн комикс - страница 7

megainformatic - Приключения Кости Коробкина - С новым годом - интерактивный комикс (kk hny) - онлайн комикс - страница 1

megainformatic - Приключения Кости Коробкина - С новым годом - интерактивный комикс (kk hny) - онлайн комикс - страница 2

megainformatic - Приключения Кости Коробкина - С новым годом - интерактивный комикс (kk hny) - онлайн комикс - страница 3

megainformatic - Приключения Кости Коробкина - С новым годом - интерактивный комикс (kk hny) - онлайн комикс - страница 4

megainformatic - Приключения Кости Коробкина - С новым годом - интерактивный комикс (kk hny) - онлайн комикс - страница 5

megainformatic - Приключения Кости Коробкина - С новым годом - интерактивный комикс (kk hny) - онлайн комикс - страница 6

 

Введение в программирование игр на С++ для платформы DirectX 9

Разбираем конструкции языка C++ на примере работы в Microsoft Visual Studio 2008

 
     
 

Данный небольшой урок является введением в программирование игр на C++ для DirectX 9

Вам нужно иметь установленную среду Microsoft Visual Studio 2005 или 2008 (можно триал),

и DirectX SDK 9 версии, или лучше самой последней - DirectX SDK August 2008.

 
 
     
  [назад] [далее] [к содержанию]  
     
  Мы рассматриваем основные конструкции языка C++ на примере работы в Microsoft Visual Studio 2008  
     
 

В предыдущих уроках - [Первый старт], [Меняем иконку приложения], [Добавляем другую модель]

мы ознакомились с первыми шагами, которые нужно выполнить для начала работы с directx в Microsoft Visual Studio 2008 - настроить примеры для корректной компиляции, сменить иконку в собственном проекте и наконец приступить к первым модификациям кода

 
     
 

Задача: вывести значение переменной на экран

Реализация: можно поместить на форму метку (label). Если реализовать вывод значения переменной по нажатию на кнопку.

При этом возникают следующие вопросы:

Как получить доступ к метке label на форме из кода?

Сначала решаем так: объявляем переменную, по нажатию на кнопку в ее свойстве Text выводим значение переменной

В заголовочном файле Form1.h

private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
//int i = 0;
//MessageBox::Show("Hello, World!");
//Sender.Text = "1";
button1->Text = "1";

}

код помеченный коричневым был сгенерирован системой, код помеченный зеленым был записан нами

результат работы - по нажатию на кнопку на ее поверхности выводится текст:

1

 
     
 

Функция перевода числа в текст?

itow (перевод int в строку Unicode)

эквивалент для .Net Framework - System::Convert::ToString

private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
int i = 0;
button1->Text = Convert::ToString(i);

}

 
     
 

Показанный выше пример выводит число 0 в виде текста на поверхность кнопки!

Теперь можно заняться исследованиями языка C++

 
     
 

Разработка мини-калькулятора

Самый простейший вариант программы это небольшой калькулятор, который бы выполнял основные арифметические операции - сложение, вычитание, умножение, деление

должно быть поле для ввода значений и отображения результата,

кнопки +, -, *, /, =

Работа происходит так: в поле вводится первое число, нажимается кнопка операции, вводится второе число, нажимается = при этом в поле ввода должен появиться результат

 
     
 

Реализация - на форме нужно разместить элементы управления Button (5 шт), в качестве поля ввода TextBox

Дать элементам управления более осмысленные имена (свойство Name в панели Properties), например

plus_button, minus_button, mult_button, div_button, result_button, EnterFieldtextBox

Для свойства Text кнопок установите +, -, *, /, = соответственно

 
     
   
     
  По нажатию на кнопки - + * / значение текстового поля должно заноситься в переменную первого операнда (x), в специальную переменную должен заноситься код операции (code_op), по нажатию на кнопку = значение текстового поля должно заноситься в переменную второго операнда (y), должен вычисляться результат (res) и выводится в текстовое поле  
     
  Для очистки регистров x, y, res и code_op можно добавить специальную кнопку - Clear  
     
 

Вообще программирование приложения Windows Forms в MSVS 2008 сильно напоминает методы работы в Delphi 7!

Я не удержался и удалил кнопку Say Hello. Как поведет себя MSVS ? К сожалению код обработчика мне пришлось удалять вручную. Среда Delphi в этом случае повела бы себя более разумно - во время сохранения изменений когда код обработчика был бы пуст она бы удалила метод обработчика из кода. MSVS 2008 как видим этого не сделала. В этом плане MSVS сильно отличается от Delphi 7. Еще меня удивило, что код модуля формы для обработчиков нажатий кнопок попадает в заголовочный файл формы Form1.h. Возможно это связано с тем, что не вводился специальный тип файла для хранения данных формы. В Delphi 7 для этих целей есть специальный файл *.dfm

Похоже, что основные идеи создания приложений Windows Forms в Microsoft пришли из Delphi. Или я ошибаюсь?

 
     
 

в коде класса формы добавляем описание наших переменных статичных полей для формы

private: static int x, y, res, code_op;

 
     
  остальной код (после автоматического добавления обработчиков нажатий на кнопки формы по аналогии с HelloWorldCLR) будет выглядеть так -  
     
  private: System::Void plus_button_Click(System::Object^ sender, System::EventArgs^ e) {  
 

//запоминаем значение EnterFieldtextBox
x = Convert::ToInt32(EnterFieldtextBox->Text);
//и код операции
code_op = 1;

 
  }  
  private: System::Void clear_button_Click(System::Object^ sender, System::EventArgs^ e) {  
 

x = 0;
y = 0;
res = 0;
code_op = 0;
EnterFieldtextBox->Text = "0";

 
  }  
  private: System::Void result_button_Click(System::Object^ sender, System::EventArgs^ e) {  
 

//запоминаем значение второго операнда
y = Convert::ToInt32(EnterFieldtextBox->Text);
//выполняем вычисление
switch (code_op)
{
case 1:

 
 

res = x + y;
break;

 
 

case 2:

 
 

res = x - y;
break;

 
 

case 3:

 
 

res = x * y;
break;

 
 

case 4:

 
 

if (y != 0)
res = x / y;
break;

 
 

default: ;

 
 

}
//выводим результат
EnterFieldtextBox->Text = Convert::ToString(res);

 
  }  
  private: System::Void minus_button_Click(System::Object^ sender, System::EventArgs^ e) {  
 

//запоминаем значение EnterFieldtextBox
x = Convert::ToInt32(EnterFieldtextBox->Text);
//и код операции
code_op = 2;

 
  }  
  private: System::Void mult_button_Click(System::Object^ sender, System::EventArgs^ e) {  
 

//запоминаем значение EnterFieldtextBox
x = Convert::ToInt32(EnterFieldtextBox->Text);
//и код операции
code_op = 3;

 
  }  
  private: System::Void div_button_Click(System::Object^ sender, System::EventArgs^ e) {  
 

//запоминаем значение EnterFieldtextBox
x = Convert::ToInt32(EnterFieldtextBox->Text);
//и код операции
code_op = 4;

 
  }  
     
  зеленым помечен код, который Вы должны написать сами  
     
  сохраняем, выполняем сборку, проверяем работу нашего калькулятора -  
     
   
     
 

Щелкаем мышью по текстовому полю, вводим с клавиатуры первое число, нажимаем кнопку операции, снова щелкаем по текстовому полю и вводим второе число, нажимаем знак равно, получаем результат.

Кнопка clear приводит к очистке полей формы x, y, res, code_op и записи строкового значения "0" в свойство Text поля ввода EnterFieldtextBox

Обратите внимание!!! Т.к. MSVS и язык C++ являются чувствительными к регистру букв (заглавные/строчные), то все имена переменных и других идентификаторов необходимо вводить именно так, как вы их записали во время первого объявления!

Т.е. записав в секции объявлений или где-то в коде переменную с именем ReS обращаться к ней нужно именно как ReS, обращения res или Res или даже RES будут восприняты компилятором как обращения к совершенно другой переменной!!!!! Имейте это в виду, если Вы только только начали писать на С++.

Поскольку я хорошо знаком с Delphi 7, то я всегда буду сравнивать MSVS именно с ним. Ваш опыт программирования в других языках и средах сформирует в дальнейшем Ваше собственное мнение.

 
     
  в следующем уроке мы начнем разбор основных конструкций языка C++  
     
  [назад] [далее] [к содержанию]  
 

Оставленные комментарии



fle game engine - движок для создания игр
fle game engine - движок для создания игр


Something: Unexplained 2 captive of desires / Нечто: Необъяснимое 2 в плену желаний
Костя Коробкин Комикс Коллекционное издание - 6 комиксов, 81 страница, 220 mp3 треков
визиты
сегодня: 2214
всего: 30111
посетители
сегодня: 323
всего: 19642
Время загрузки: 0,2023