ria pc game
translate to English   translate to Chinese
fle game engine - движок для создания игр
fle game engine - движок для создания игр


Balls and holes PC game / Balls and Holes PC игра
Вакансии
Игродельня
Сегодня
23 февраля 2019 18:09
Вход Регистрация Забыли пароль ?

megainformatic - Нечто Необъяснимое - пре релиз
           
подробнее...

Теги создание сайтов, создание игр, дизайн, игры, информатика, уроки photshop, php, c++, музыка, delphi, cms, робосайт
Статьи сайта
megainformatic - Веселый Буквоежка - онлайн комикс - страница 1

megainformatic - Веселый Буквоежка - онлайн комикс - страница 2

megainformatic - Веселый Буквоежка - онлайн комикс - страница 3

megainformatic - Веселый Буквоежка - онлайн комикс - страница 4

megainformatic - Веселый Буквоежка - онлайн комикс - страница 5

megainformatic - Веселый Буквоежка - онлайн комикс - страница 6

megainformatic - Веселый Буквоежка - онлайн комикс - страница 7

megainformatic - Веселый Буквоежка - онлайн комикс - страница 8

megainformatic - Веселый Буквоежка - онлайн комикс - страница 9

megainformatic - Веселый Буквоежка - онлайн комикс - страница 10

megainformatic - Веселый Буквоежка - онлайн комикс - страница 11

megainformatic - Веселый Буквоежка - онлайн комикс - страница 12

megainformatic - Веселый Буквоежка - онлайн комикс - страница 13

megainformatic - Веселый Буквоежка - онлайн комикс - страница 14

megainformatic - Веселый Буквоежка - онлайн комикс - страница 15

megainformatic - Веселый Буквоежка - онлайн комикс - страница 16

megainformatic - Веселый Буквоежка - онлайн комикс - страница 17

megainformatic - Веселый Буквоежка - онлайн комикс - страница 18

megainformatic - Веселый Буквоежка - онлайн комикс - страница 19

megainformatic - Веселый Буквоежка - онлайн комикс - страница 20

megainformatic - Веселый Буквоежка - онлайн комикс - страница 21

megainformatic - Веселый Буквоежка - онлайн комикс - страница 22

megainformatic - Веселый Буквоежка - онлайн комикс - страница 23

megainformatic - Эмулятор ZX-Spectrum, БК-0010.01 и их работа в эмуляторе DosBox 0.74

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 1

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 2

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 3

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 4

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 5

megainformatic - первый независимый онлайн-журнал комиксов ККК Костя Коробкин Комикс номер 1 март 2016

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 6

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 7

megainformatic - Эмулятор БК-0010.01 версия 2.6 для Windows 9x/Me/2000/XP автор Юрий Калмыков 2002 год

megainformatic - api получения готового решения для решения различных задач возникающих при создании сайта

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 8

роман Eternity Вечность - автор Синицин Андрей megainformatic

роман Eternity Вечность - автор Синицин Андрей megainformatic - страница 2

роман Eternity Вечность - автор Синицин Андрей megainformatic - страница 3

роман Eternity Вечность - автор Синицин Андрей megainformatic - Windows Sockets 2, ping, Windows SDK 7, чем открыть hxs файл - страница 4

megainformatic - Размещение Вашей рекламы на нашем сайте

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 9

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 10

роман Eternity Вечность - автор Синицин Андрей megainformatic - В чём отличие в применении символов & и * в языке c++ ? также продолжаем изучать Windows Sockets 2 и пример simple - страница 5

megainformatic - Костя Коробкин - В гостях у тёти Светы часть 2 Живые машины (kk as) - онлайн комикс - страница 11

megainformatic - игра Шарики на лифте Серия 1 Разгони Лифт / Balls on Lift Level 1 Run The Lift версия 0.9.2 05.10.2016 / version 0.9.2 05.10.2016

megainformatic - Костя Коробкин - В гостях у тёти Светы часть 2 Живые машины (kk as) - онлайн комикс - страница 12

роман Eternity - страница 6 + решение по анимации закрывающихся дверей лифта

megainformatic - Сообщить об ошибке

Balls on Lift Table of Records / Шарики на лифте Таблица рекордов

megainformatic - Костя Коробкин - В гостях у тёти Светы часть 2 Живые машины (kk as) - онлайн комикс - страница 13

Balls on Lift / Шарики на лифте - Как создать игру - серия уроков - Рисуем шарик / How make the game - series of lessons - draw ball

Balls on Lift / Шарики на лифте - Как создать игру - серия уроков - Содержание / How make the game - series of lessons - Index

Balls on Lift / Шарики на лифте - Как создать игру - серия уроков - Разные шарики / How make the game - series of lessons - Different balls

Balls on Lift / Шарики на лифте - Как создать игру - серия уроков - Анимация прыжков шарика / How make the game - series of lessons - Animation ball jumps

Balls on Lift / Шарики на лифте - Как создать игру - серия уроков - Создание фона заднего плана / How make the game - series of lessons - Creating background for back plane

Balls on Lift / Шарики на лифте - Как создать игру - серия уроков - Вставка созданной графики, звуков и музыки в игру - Inserting created graphics, sounds and music in the game.

подробнее

Шарики и Ямки / Balls and Holes PC игра



read this paper in english

Шарики и Ямки / Balls and Holes игра PC версия 03.07.2017 скачать







Версия: 03.07.2017

Шарики и Ямки: Каникулы Зеленого Шарика.

Сумасшедший Дэйв из игры Растения против Зомби в гостях у Кости Коробкина.

Костя Коробкин вынужден спасаться от ядовитых горошин.

В игре используется новая технология рассредоточения внимания.

Это значит, что Игрок получает задачи, которые нужно решать одновременно.

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

Системные требования:

Windows XP / 7 / 8 / 10
directx 9c
~740 Mb свободного места на носителе информации.

Размер самораспаковывающегося архива: 493 Mb

Контрольные суммы для проверки целостности скачанного архива:

CRC32: C9FE6254
MD5: 5D715D4C32DE1F78C299B20BA6F16995
SHA-1: 6A25CB6BA47B32870C553A722E0667BA82199565









Шарики, ямки, двигай, лови, исследуй и погружайся !

Игра в которой вы управляете полом, так чтобы поймать прыгающие
шарики в ямки. Вокруг Вас - космос, природа и другие
приятные территории.



Релаксационная составляющая игры:

мелодичная и успокаивающая музыка, неторопливая атмосфера игры,
красивые меняющиеся фоны, бегущие огоньки - все это создает
определенную расслабляющую и успокаивающую атмосферу и служит
снятию напряжения и утомления.

Вы думали, что просто будете ловить шарики и всё ? Нет !
Попробуйте-ка управлять шариком или сразу несколькими и
не попадать в ямку.

Получилось ? А теперь так: шарик можно будет двигать
лишь в одном направлении, а пол - в другом - по
прямой или диагонали.

Действо будет сопровождать атмосферная музыка и
герои - Петька и Василий Иванович, Ниро Вульф и Арчи
Гудвин, а также пираты из Острова Сокровищ.

Пустыня, джунгли, подводный мир, космос, карамельная
страна, город с улицей у дома Ниро Вульфа и остров
сокровищ ! Что может быть интереснее ?

На выполнение задачи вам дается ограниченное время,
хотя можно включить настройку без ограничений во времени.

В подводном мире шарики будут скрывать заросли
водорослей.

В космосе ямки замаскированы и нужно не попадать в них.

В карамельной стране есть блоки, к которым шарик
может прилипнуть.

В городе с улицей у дома Ниро Вульфа шарики будут
материализовываться буквально из воздуха
постепенно проявляя себя - больше поймаешь -
яснее становится шарик.

Про необычный уровень я уже рассказывал - там
на Острове Сокровищ
нужно будет управлять и шариком и полом одновременно !

review #82 balls and holes level 7 Treasure Island lets play ! / обзор 7 уровня Остров Сокровищ. Lets play





Да кстати, если шарик летал очень быстро, то за его
успешную поимку можно получить не 1, а целых 2 или
даже 3 очка !

И напоследок скажу - Вы можете создавать даже свои
уровни, а также дополнения и модификации игры.
Подробнее.

Наверняка Вас мучал когда-нибудь вопрос: А как сделать свою игру ? С чего
начать ?

Можно конечно взять какой-то готовый движок и начать учиться делать
игры сначала на нём.

Но и в этом случае рано или поздно Вам понадобится изучать программирование.

И самое важное: вам нужно будет научиться ставить перед собой
задачи, составлять план их решения, а затем заниматься
изучением, поиском нужной информации и выработкой решения.

Всем интересны истории успешных игр и их создания, но мало кто
пишет про то, как сложен и тернист этот путь. И совсем никто
не пишет как его пройти.

Однако выход есть - надеяться на себя и свои силы !
Не слушать "авторитетов" и "профессионалов".
Прислушиваться нужно, но слепо следовать их советам - НЕТ !

Почему ?

Да просто потому что у каждого из нас свой, уникальный путь.

Вам кажется: научусь делать игры, стану популярным, заработаю много денег.

Да ! Это отличный посыл. Так и надо держать.
Однако если Вы не будете ничего делать, ждать сложа
руки чего-то интересного в вашей жизни - то всё что Вы внушили
себе окажется простым самообманом.

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

Игра - это не только то, во что мы играем, но и то, что кто-то создает.

А мы посмотрим на это изнутри !

Итак, можно изучить основы языка c++ и directx,
почитать про спрайты, игровые объекты,
системы координат, загрузку игровой сцены, перемещение в ней персонажа, проверка столкновений,
создание игровых сцен, воспроизведение звуков и музыки и другие важные и нужные темы.

Список тем постоянно пополняется и расширяется.
Для себя Вы конечно же составите свой рабочий план -
список тем, которые ВАМ НУЖНО ОБЯЗАТЕЛЬНО ИЗУЧИТЬ,
ДЛЯ ТОГО ЧТОБЫ СДЕЛАТЬ СВОЮ ИГРУ.

А следующая наша тема будет про самые основы - использование переменных в игре на c++ directx 9c.
Экспериментировать мы будем на реальной игре - Шарики и Ямки, вводя туда что-то новое
и одновременно осваивая нужный материал.





Шарики и Ямки / Balls and Holes игра PC версия 03.07.2017 скачать







Версия: 03.07.2017

Шарики и Ямки: Каникулы Зеленого Шарика.

Сумасшедший Дэйв из игры Растения против Зомби в гостях у Кости Коробкина.

Костя Коробкин вынужден спасаться от ядовитых горошин.

В игре используется новая технология рассредоточения внимания.

Это значит, что Игрок получает задачи, которые нужно решать одновременно.

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

Системные требования:

Windows XP / 7 / 8 / 10
directx 9c
~740 Mb свободного места на носителе информации.

Размер самораспаковывающегося архива: 493 Mb

Контрольные суммы для проверки целостности скачанного архива:

CRC32: C9FE6254
MD5: 5D715D4C32DE1F78C299B20BA6F16995
SHA-1: 6A25CB6BA47B32870C553A722E0667BA82199565





подробнее

Пишем свою соц. сеть - модуль предложений для webjob - часть реализации для личного кабинета

Доброго времени суток, продолжаем наше погружение в разработку социальной сети.

В предыдущей статье - Пишем свою соц. сеть - модуль предложений для webjob
я уже рассказал, что нам потребуется в теории.

Теперь перейдём к практике, т. е. написанию кода.

Прежде всего добавляем пункт меню в личном кабинете, который будет отвечать за показ раздела ПРЕДЛОЖЕНИЯ.

В модулях всех ролей, например admin.php, employer.php и других прописываем примерно такой код -

case 'predlojenia': {
include_once "predlojenia.php";
break;
}

Также добавляем соответствующий пункт меню в личном кабинете.

<a href="employer.php?rdk=predlojenia">Предложения</a>

Теперь собственно переходим к реализации модуля predlojenia.php для личного кабинета.

Весь код я думаю приводить смысла нет, поэтому ограничусь только общей схемой -

///////////////////////////////////////////////////////////////
//
// функции
//эта часть модуля будет содержать все необходимые функции для внутреннего использования в пределах самого модуля.

//например так -

//элементы управления предложениями
function show_list_ctrl_elems()
{
$view = '<table width="100%" cellpadding="0" cellspacing="0" border="0">';

$view .= '<tr>
<td width="90"> </td>
<td width="90"> </td>
<td> </td>
</tr>';

$view .= '<tr>
<td><input type="submit" name="new" value="Создать"></td>
<td><input type="submit" name="change" value="Изменить"></td>
<td><input type="submit" name="del" value="Удалить"></td>'.
'</tr>';
$view .= '</table>';

return $view;
}

///////////////////////////////////////////////////////////////
//
// исполнение

//эта часть содержит вызовы описанных функций и связующую логику.


include_once "entry.php"; //подключаем модуль проверки залогиненности в личном кабинете
include_once "predlojenia_outer.php"; //подключаем модуль внешних функций, которые будут использованы и во фронтальной части сайта

echo "<div class='container' style='position: relative; z-index: 1;' align='center'>";

//выводим меню в зависимости от роли
switch ( $role_name )
{
case 'admin': {
include_once "admin_menu.php";
break;
}

case 'employer': {
include_once "roles/employer/menu.php";
break;
}

}

echo "ПРЕДЛОЖИТЬ СВОЙ ПРОЕКТ - ".$role_name."<br><br>

<div style='float: left; width: 100%; position: relative; z-index: 1;'>";

$p_list = load_p_list('../');
$p_list_count = count($p_list);
$p_list_view_tbl = show_p_list_tbl($p_list);

echo "<table width='100%' cellpadding='0' cellspacing='0' border='0' bgcolor='#dddddd'>
<tr>
<td colspan='3'>Добро пожаловать в ".$system_name." !<br>Вы можете создать или изменить свой проект (предложение)<
br><br></td>
</tr>

<tr>
<td> </td>
<td> </td>
<td> </td>
</tr>";

$form_action = '';
$p_properties_page = '';
//echo do_action_with_p_list($form_action, $p_properties_page);

switch ( $form_action )
{
case 'new':
case 'change':
{
echo $p_properties_page;
break;
}

default: {
echo " <form name='".$module."' id='".$module."' action='".$module_name."?module=".$module."' method='post'>";

echo show_list_ctrl_elems();
echo $p_list_view_tbl;

echo " </form>";
}
}

echo "<table width='100%' cellpadding='0' cellspacing='0' border='0' bgcolor='#dddddd'>
<tr>
<td><a href=\"logout.php\">Выйти</a></td>

<td> </td>
<td> </td>
</tr>

</table>
</div>";
echo "
</div>
";

Собственно это был прототип, описывающий все базовые элементы модуля предложений.

Вам остается только детализировать логику выгрузки/загрузки данных в файл или базу данных.

Здесь я их приводить не буду в целях экономии времени.

Но если они Вас интересуют - обращайтесь

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

http://webjob.megainformatic.ru

И все-таки спешу Вас обрадовать - в следующей статье Мы с вами рассмотрим реализацию модуля для хранения предложений в csv-файле.

Таким образом мы с Вами рассмотрим написание модуля внешних функций, которые будут вызываться в приватной (личный кабинет) и фронтальной частях сайта.

подробнее

Ива Ден энд КуХа - КОДЕКС ФРИЛАНСЕРА - СОДЕРЖАНИЕ

По просьбам наших читателей начинаем публикацию новой серии - Иван Денисов и крутые хакеры. Сегодня читайте роман - Ива Ден энд КуХа - КОДЕКС ФРИЛАНСЕРА.

Глава 1 - Обычный день

Глава 2 - Начало (begin)

Глава 3 - Кто он ? (who is ?)

подробнее

     
  [Все уроки 3ds max] [Галерея моделей] [далее]  
     
  Создание модели броневика (Хэд) - Анимация вращения колес  
     
  Во время движения броневика его колеса должны вращаться. Попробуем сделать это.
Откройте законченную модель из предыдущего задания или готовую (из папки head).

Для вращения колеса нужно выбрать его и пользуясь инструментом вращение вращать по соответствующей оси. В нашем случае колеса должны вращаться в локальной системе координат колеса, относительно его центра по оси Y.


1. Выберите колесо, которое Вы создали первым (объект wheel1).

Т.к. оно является базовым, а другие два – его экземпляры (или ссылки), то применяя вращение лишь базового колеса мы сможем добиться вращения ВСЕХ ТРЕХ! колес.

Это удобно и ценно тем, что не надо будет беспокоиться о том, что колеса вращаются по-разному. Для того чтобы вращать колесо, выберите инструмент Select and Rotate (см. рисунок) – это крайний левый инструмент показанный на рисунке (круговая стрелка). Чтобы выбрать локальную систему координат выберите Local (как показано на рисунке), тогда для вращения будет использоваться система координат колеса. Если Вы заметите, что вращение происходит не относительно центра колеса, проверьте используемый центр (крайняя правая кнопка на рисунке). Должен быть выбран Use Pivot Point Center (тот который и показан на рисунке) – это позволяет использовать в качестве центра центральную точку (Pivot) объекта.

 
     
   
     
  Слева-направо: Select and Rotate – выбор и вращение; Select and Scale – выбор и масштабирование; Reference Coordinate System – используемая система координат; Use Center – используемый центр.  
     
   
     
  Показан момент вращения колеса по оси Y со всеми указанными выше предварительными настройками.  
     
 

2. Итак мы разобрались как вращать колесо. Но это еще пока не дает нам возможности его анимировать. Анимация должна показать вращение колеса во времени (и без нашего участия).

Попробуем сделать это:
a. Отмените произведенные вращения колеса.
b. На панели анимаций (внизу экрана) нажмите кнопку Auto Key
c. На панели времени переместитесь на последний кадр (номер 100)
d. Выполните вращение колеса (на полный оборот).
e. Отключите кнопку Auto Key
f. На панели анимации нажмите кнопку Play Animation.

 
     
  В результате мы должны получить желаемое, причем вращаются все 3 колеса!

Теперь более подробно о том, что мы сейчас делали. Кнопка Auto Key включает режим автоматической генерации ключевых кадров в текущей позиции временной панели. Суть такой анимации заключается в том, что от нас требуется изменить что-либо только в указанных (ключевых) кадрах, а все промежуточные кадры просчитываются за нас программой автоматически. Это очень удобно и эффективно. Кроме того, если потребуется что-то изменить, то изменения нужно вносить, опять-таки, только в ключевые кадры. Тем самым экономится большое количество сил и времени.

Теперь попробуем выполнить рендеринг последовательности кадров, которую мы создали. Для этого требуется вызвать окно Render (ч/з меню или F10) и указать диапазон (Range) выводимых кадров, а также файл (имя, расширение, кодек), в который будет выводиться созданная анимация.

 
     
  Движение броневика по поверхности ландшафта  
     
 

Пример того, что у Вас должно получиться можно найти в папке head_winter_anim - скачать её можно здесь -

[downloads:5]



Цель нашей работы следующая: создать небольшой видеоролик, в котором происходило бы перемещение созданного анимированного броневика по территории какого-либо ландшафта. Первое, что приходит на ум, это вопрос о том, сколько кадров будет длится анимация? Решать Вам. Исходить надо из того, каково будет качество анимации (сколько кадров в секунду), какую продолжительность видеоролика Вы хотите создать и, наконец, чем длиннее и сложнее будет Ваш видеоролик, тем дольше будет выполняться процесс рендеринга. Так, например, ролик с качеством стандарта NTSC (30 кадров/сек), с количеством кадров 1000 и размером кадра 640х480 точек (глубина цвета 24 бит), который Вы можете найти в папке head_winter_anim выводился примерно 1,5 часа на компьютере Celeron 2,67 MHz/256 Mb RAM/128 Mb GeForce video RAM.

Чтобы снизить продолжительность рендеринга, особенно если Вы производите пробные версии анимации, можно снижать размер кадра, количество кадров в единицу времени, производить вывод не всех кадров сразу, а только проверяемого диапазона и т.д. Но самое простое – это не делать рендеринг до тех пор, пока Вы до конца не убедитесь в том, что все в сцене и при анимировании сделано так как надо. К таким явным ошибкам, которые могут бросаться в глаза можно отнести: неверное размещение объектов в сцене (висящие в воздухе деревья), «въезжание» камеры в поверхность земли, движение броневика не по поверхности, а по воздуху и т.д. Все эти ошибки легко устранимы, но если Вы заметите их только уже на стадии рендеринга, то его придется повторять.

Итак, наш броневик будет двигаться по некоторой траектории, следовательно ее можно проложить по поверхности модели ландшафта. Вы это можете сделать при помощи инструмента Line в окне вида сверху. Затем нужно будет откорректировать положение созданной траектории по оси Z, а также положение отдельных ее точек – там где броневик будет въезжать на горки или съезжать с них.

После этого в сцену ландшафта нужно подгрузить (Merge) броневик (или создать на него ссылку – Xref object). Давайте создадим анимацию из 1000 кадров. Для увеличения количества кадров нажмите кнопку (Time Configuration) – ниже кнопок управления воспроизведением анимации. В появившемся диалоговом окне можно настроить качество анимирования: частоту кадров (группа Frame Rate), отображаемое время (Time Display), скорость воспроизведения (Playback), используемый для анимирования диапазон кадров (Animation). Кнопка Re-scale time позволяет изменить диапазон анимирования, за счет изменения скорости воспроизведения (а не за счет расширения границ этого диапазона).


Для того, чтобы броневик двигался по созданной траектории нужно:


• Выбрать броневик
• Присвоить броневику путь: Animation > Constraint > Path constraint и указать на созданную траекторию
• Чтобы броневик двигался прямо по траектории нужно ориентировать его по ней (развернуть), в открывшейся панели Motion (движение) в свитке Path parameters поставить флажок (Follow) – следовать по пути.
• После этого можно попробовать воспроизвести анимацию.

 
     
   
     
   
     
 

Показана открытая панель Motion в самой нижней части которой виднеется заголовок свитка Path Paremeters. Чтобы поднять свиток нужно прокрутить панель мышью (когда курсор приобретает вид руки). Свиток Path Parameters с заданными параметрами по умолчанию и установленным флажком Follow.
При просмотре анимации Вы заметите, что колеса броневика вращаются только первые 100 кадров, а затем не вращаются. Это связано с тем, что анимированный нами ранее броневик содержал анимацию только в диапазоне кадров от 0 до 100. Исправим это: сохраните Вашу работу и снова откройте анимированный броневик.


Установите диапазон анимации равным диапазону в сцене с ландшафтом.
Выберите базовое колесо (wheel1). Щелкните по нему правой кнопкой и вызовите Curve Editor – редактор кривых для управления анимацией ключевых и промежуточных кадров. В окне редактора кривых выберите только анимируемый параметр – в нашем случае это вращение по оси Y (Y rotation). В правой части окна Вы увидите изменение данного параметра во времени (в виде графика кривой). Чтобы анимация повторялась вне диапазона 0-100 нужно задать параметры анимирования вне диапазона:

 
     
   
     
 

Найдите и нажмите кнопку Parameter Curve Out-of-Range Types (см. рисунок).
В открывшемся диалоговом окне нажмите кнопку Relative Repeat и ОК.
Закройте редактор кривых. Проверьте результат изменений.


Сохраните анимированный броневик. Снова откройте сцену с ландшафтом. Если Вы добавляли в нее броневик посредством подгрузки (Merge), то Вам нужно будет сначала удалить его из сцены (не удаляя траекторию движения), затем подгрузить измененный, снова связать его с траекторией движения и настроить параметры (так как Вы это делали ранее). Если Вы добавляли ссылку на броневик (через Xref object), то все изменения в анимации броневика будут восприняты автоматически, т.к. при этом в сцене используется не копия объекта (в случае с Merge), а лишь ссылка на него и объект лишь связывается со сценой, но хранится самостоятельно и независимо.

После воспроизведения анимации Вы должны наблюдать, как на протяжении всей траектории колеса броневика также находятся во вращающемся состоянии.

 
     
     
  [Все уроки 3ds max] [Галерея моделей] [далее]  
     
     
 

Как создать игру ? - Программируем сами.

Рассмотрение программирования игр под DirectX 9c на C++ с использованием среды разработки MSVS 2005 или выше.

 
     
 

Продолжаем цикл статей на тему программирования игр.

Здесь Мы рассмотрим кратко что нужно для начала работы и как начать освоение этой обширной темы.

 
     
 

Вам потребуется:

- среда разработки Microsoft Visual Studio 2005 или выше;

- DirectX SDK Aug 2008 или выше;

- хотя бы минимальные знания английского языка, а еще лучше запастить программой словарем-переводчиком для англо-русского/русско-английского перевода - X-translator, Lingvo или что-то еще.

 
     
  Когда всё это будет у Вас под рукой и полностью установлено и готово к работе можно приступать.  
     
  Самый первый шаг.  
     
 

Сначала нужно установить MSVS (Microsoft Visual Studio), затем DirectX SDK.

В этому случае в процессе установки DX SDK будет подготовлена среда для программирования под DirectX и многие настройки, особенно отладку DX-приложений Вам не нужно будет перенастраивать вручную.

 
     
  Несколько уроков на тему создания игр  
     
 

Сегодня наша цель:

- познакомиться с основами работы в среде MSVS;

- создать первое простейшее игровое приложение;

- попробовать модифицировать его для проверки и отладки;

 
     
 

Запускаем MSVS

Выбираем пункт меню File > Open > Project Solution

Находим папку с примерами из DirectX SDK -

C:\DXSDK_Aug2008\Samples

На Вашем компьютере этот путь может быть другим, если Вы при установке DirectX SDK задали другой диск и другую папку, так что вначале уточните, куда Вы установили DX SDK !

 
     
 

А мы откроем самый первый пример -

C:\DXSDK_Aug2008\Samples\C++\Direct3D\Tutorials\Tut01_CreateDevice

 
     
  И попробуем его изучить  
     
  После открытия этого проекта в окне Solution Explorer дважды щелкаем файл CreateDevice.cpp, чтобы воочию увидеть этот магический cpp код.  
     
  Найдите функцию wWinMain  
     
  находим функцию wWinMain  
     
  можете щелкнуть данное изображение, чтобы увидеть его в полномасштабном варианте, затем вернитесь на данную страницу  
     
  Рассмотрим этот код по-порядку  
     
  INT WINAPI wWinMain( HINSTANCE hInst, HINSTANCE, LPWSTR, INT )
{
// Register the window class
WNDCLASSEX wc =
{
sizeof( WNDCLASSEX ), CS_CLASSDC, MsgProc, 0L, 0L,
GetModuleHandle( NULL ), NULL, NULL, NULL, NULL,
L"D3D Tutorial", NULL
};
RegisterClassEx( &wc );

// Create the application's window
HWND hWnd = CreateWindow( L"D3D Tutorial", L"D3D Tutorial 01: CreateDevice",
WS_OVERLAPPEDWINDOW, 100, 100, 300, 300,
NULL, NULL, wc.hInstance, NULL );

// Initialize Direct3D
if( SUCCEEDED( InitD3D( hWnd ) ) )
{
// Show the window
ShowWindow( hWnd, SW_SHOWDEFAULT );
UpdateWindow( hWnd );

// Enter the message loop
MSG msg;
while( GetMessage( &msg, NULL, 0, 0 ) )
{
TranslateMessage( &msg );
DispatchMessage( &msg );
}
}

UnregisterClass( L"D3D Tutorial", wc.hInstance );
return 0;
}

 
     
 

Данная функция wWinMain - является стартовой функцией работы любого игрового приложения, судя по названию Win - сокращение от Windows и Main - главная.

Префикс w означает, что данная функция использует строковые параметры вида WideChar, т. е. двубайтовые строки.

 
     
  Когда Вы будете запускать данное приложение операционная система в первую очередь передаст управление этой функции - wWinMain.  
     
  Я думал писать игры сложно, можете сказать Вы, а оказывается всё начинается с какой-то маленькой функции wWinMain.  
     
  Могу ответить Вам одно - всё в этом мире начинается с малого, мой друг !  
     
 

Что же происходит внутри этой функции ?

// Register the window class - регистрируем класс окна приложения
WNDCLASSEX wc =
{
sizeof( WNDCLASSEX ), CS_CLASSDC, MsgProc, 0L, 0L,
GetModuleHandle( NULL ), NULL, NULL, NULL, NULL,
L"D3D Tutorial", NULL
};
RegisterClassEx( &wc );

 
     
 

Вы наверное уже догадались, что строки начинающиеся с символа двойной наклонной черты

//

представляют из себя комментарии и исполнимым кодом не являются.

Всё остальное представляет действительно исполнимый код, который в процессе компиляции превращается в исполнимый машинный код, доступный для обработки центральным процессором CPU Вашего и любого другого ПК.

 
     
 

Мы создаем переменную wc с типом WNDCLASSEX и заносим в неё значения

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

 

 
     
 

WNDCLASSEX wc;


SecureZeroMemory(&wc, sizeof(wc));


wc.cbSize = sizeof( WNDCLASSEX );
wc.style = CS_CLASSDC;
wc.lpfnWndProc = MsgProc;
wc.cbClsExtra = 0L;
wc.cbWndExtra = 0L;
wc.hInstance = GetModuleHandle( NULL );
wc.hIcon = NULL;
wc.hCursor = NULL;
wc.hbrBackground = NULL;
wc.lpszClassName = L"D3D Tutorial";
wc.lpszMenuName = NULL;

 
     
 

Объявляем переменную wc с типом WNDCLASSEX

SecureZeroMemory - очищаем все поля данной переменной значением ноль.

Далее присваиваем каждому полю данной записи соответствующее значение -

размер записи - получаем при помощи функции sizeof

стиль

оконная процедура MsgProc

Обработчик экземпляра приложения wc.hInstance получаем при помощи функции GetModuleHandle

wc.lpszClassName = L"D3D Tutorial"; - задаем имя класса приложения.

Все остальные поля выставляются либо в 0, либо в NULL.

 
     
  0 в случае числовых полей, NULL - в случае полей-указателей.  
     
  RegisterClassEx - выполняем регистрацию класса с указанными параметрами в системе.  
     
  CreateWindow - создаем окно приложения  
     
 

if( SUCCEEDED( InitD3D( hWnd ) ) ) - инициализируем приложение и если всё прошло без ошибок -

ShowWindow( hWnd, SW_SHOWDEFAULT );
UpdateWindow( hWnd );
- показываем окно на экране, выполняем его перерисовку.

 
     
 

// Enter the message loop
MSG msg;
while( GetMessage( &msg, NULL, 0, 0 ) )
{
TranslateMessage( &msg );
DispatchMessage( &msg );
}

запускаем бесконечный цикл приема и обработки сообщений системы,

в случае если функция GetMessage вернет FALSE цикл будет остановлен и выполнена строка следующая за строкой цикла -

UnregisterClass( L"D3D Tutorial", wc.hInstance );
return 0;
- выполняется освобождение класса приложения в системе, выполняется возврат из функции со значением кода возврата равным 0

 
     
  [далее]  
     
     
     
megainformatic live chat
Начать беседу
X
 

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



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


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