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


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

megainformatic - Рельефные изображения
        [к содержанию] [назад] [далее]       &n
подробнее...

Теги

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

Статьи сайта

megainformatic - игра Нечто: Необъяснимое и в плену желаний

megainformatic - Основы 3D-анимации, экспорт скелетной анимации

megainformatic - Подготовка модели к использованию скелетной анимации

megainformatic - Продолжаем Создание скелета для данной модели

megainformatic - Построение ирерархических связей между объектами и основы 3d анимирования

megainformatic - Особенности экспорта моделей и анимации экспортером kWXPort080719 из 3ds max 2009 

megainformatic - Создание модели броневика (Хэд)

megainformatic cms e-mailer

megainformatic cms e-mailer

megainformatic cms e-mailer

Бесплатная Система Управления Вашим Сайтом - megainformatic cms free

megainformatic - Путешествие в мир 3d

megainformatic - Путешествие в мир 3d - страница 2

megainformatic - Путешествие в мир 3d - страница 3

megainformatic - Путешествие в мир 3d - страница 4

megainformatic - Путешествие в мир 3d - страница 5

megainformatic - Путешествие в мир 3d - страница 6

megainformatic - Создание модели броневика (Хэд) - Анимация вращения колес

megainformatic cms express files

megainformatic cms express files

megainformatic cms express files

megainformatic - Уроки Photoshop - Чудеса

megainformatic cms express files - Развертывание сайта на Вашем хостинге

megainformatic - Настольная игра "Веселый Буквоежка"

megainformatic - Уроки delphi directx 8.1

megainformatic - Уроки delphi directx 8.1 - Урок 1 - Введение в Delphi DirectX 8.1. Создание шаблона стартового приложения.

megainformatic - Уроки delphi directx 8.1 - Урок 1 - Введение в Delphi DirectX 8.1. Создание шаблона стартового приложения. Страница 2

megainformatic - Урок 2 Создаем и обрабатываем команды меню.

megainformatic - Урок 2 Создаем и обрабатываем команды меню. Страница 2

megainformatic - Урок 3 Оконный и полноэкранный режимы работы D3D-приложения. Управление игрой средствами DirectInput8

megainformatic - Урок 3 Оконный и полноэкранный режимы работы D3D-приложения. Управление игрой средствами DirectInput8 - Страница 2

megainformatic - Урок 3 Оконный и полноэкранный режимы работы D3D-приложения. Управление игрой средствами DirectInput8 - Страница 3

megainformatic - Урок 4 Построение класса приложения

megainformatic - Урок 4 Построение класса приложения - Страница 2

megainformatic - Урок 5 Построение классов игровых объектов и других необходимых классов

megainformatic - Урок 5 Построение классов игровых объектов и других необходимых классов - Страница 2

megainformatic - Урок 6 Игровая логика

megainformatic - Заметки по joomla - JFolder::create: Path not in open_basedir paths. Что это?

megainformatic cms express files - Добавление статей на сайт под управлением megainfromatic cms express files

megainformatic - Урок 7 2D-анимация

megainformatic - Урок 8 Загрузка/Сохранение текущей игры, режим паузы, режимы часов/будильника, запуск браузера Internet Explorer для показа сайта разработчика и других интернет-ресурсов

megainformatic - Урок 9 Тестирование и отладка приложения

megainformatic - Мои Музыкальные Миры

megainformatic - уроки Photoshop free

megainformatic cms express

megainformatic cms express

megainformatic cms express

megainformatic cms express files

megainformatic - Методы создания растровых изображений в Adobe Photoshop

megainformatic - Создание фотореалистичной текстуры травы

megainformatic - Рабочее пространство Adobe Photoshop

megainformatic - Бесшовные (тайловые) текстуры

megainformatic - Создание изображений огня, воды, неба

megainformatic - Создание текстур горных пород и суши (урок 5)

megainformatic - Рисование персонажей (урок 6)

megainformatic - Рисование фона (урок 6 часть 2)

 

Введение в программирование игр на С++ для платформы 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 треков
megainformatic Размещение баннерной рекламы у нас
визиты
сегодня: 474
всего: 13162
посетители
сегодня: 109
всего: 22283
Время загрузки: 2,0297