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


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

megainformatic fle game engine fle / Изучаем основы c++ - переменные на примере реального игрового проекта Balls and Holes
14. использование пер
подробнее...

Теги создание сайтов, создание игр, дизайн, игры, информатика, уроки photshop, php, c++, музыка, delphi, cms, робосайт
Статьи сайта
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

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

megainformatic - Костя Коробкин - СЕКРЕТНЫЙ ПРОЕКТ - интерактивный комикс (kk scp) - онлайн комикс - страница 1

megainformatic - Костя Коробкин - СЕКРЕТНЫЙ ПРОЕКТ - интерактивный комикс (kk scp) - онлайн комикс - страница 2

megainformatic - Костя Коробкин - СЕКРЕТНЫЙ ПРОЕКТ - интерактивный комикс (kk scp) - онлайн комикс - страница 3

megainformatic - Костя Коробкин - СЕКРЕТНЫЙ ПРОЕКТ - интерактивный комикс (kk scp) - онлайн комикс - страница 4

megainformatic - Костя Коробкин - СЕКРЕТНЫЙ ПРОЕКТ - интерактивный комикс (kk scp) - онлайн комикс - страница 5

megainformatic - Костя Коробкин - СЕКРЕТНЫЙ ПРОЕКТ - интерактивный комикс (kk scp) - онлайн комикс - страница 6

megainformatic - Костя Коробкин - СЕКРЕТНЫЙ ПРОЕКТ - интерактивный комикс (kk scp) - онлайн комикс - страница 7

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

подробнее

     
  [к содержанию] [далее]  
     
 

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

 

На рисунке показан типичный вид окна программы Adobe Photoshop 7.0. В других версиях или при пользовательской настройке этот вид может несколько отличаться от указанного расположением и/или внешним видом отдельных элементов, однако их назначение и свойства, в основном будут теми же самыми, что указаны в данном описании.

1 – это строка заголовка окна программы, она всегда содержит в левой части интерактивный значок программы, название приложения, название активного документа (если он открыт). В правом конце строки заголовка три стандартные кнопки: для свертывания/развертывания окна приложения, минимизации/максимизации размера окна приложения на экране, закрытия приложения. Таким образом, эти три кнопки управляют поведением окна программы, а не редактируемых в нем документов!

2 – строка меню – содержит различные команды для выполнения необходимых действий, в основном вся работа ведется через это – Главное меню.

3 – панель свойств текущего (активного) инструмента – отражает дополнительные возможности по использованию текущего инструмента. Инструменты содержатся на панели инструментов (см. пункт 9).

4 – панель (плавающее окно) отражающая уменьшенный вариант редактируемого изображения, используя ее можно менять масштаб изображения перемещая соответствующий движок. Здесь также имеется вкладка Info – открыв ее можно отслеживать некоторые важные параметры редактирования: текущие координаты курсора в изображении, размеры объекта и т.д. Эта панель может быть скрыта/отображена посредством пункта Главного меню – Window > и установкой/снятием флажка напротив пункта Navigator или Info.

5, 6, 7 – также представляют плавающие окна (панели), служащие соответственно:

Color – для задания, выбора или синтеза текущих цветов пера (Foreground) и фона (Background).

History – для отмены/повторения некоторых выполненных или отмененных действий.

Layer – для работы со слоями. Слои представляют собой как бы прозрачные пленки. Рисуя на разных слоях можно создавать многослойные изображения с эффектом глубины (т.е. на переднем плане, на заднем плане и т.д.).

Аналогично панели 4 эти панели также можно скрывать/отображать через Window.

8 – строка состояния – обычно отображает некоторые подсказки по текущему действию или строку прогресса при выполнении каких-либо длительных операций.

9 – панель инструментов (также представляет плавающее окно – т.е. можно легко менять ее положение). Панель инструментов содержит все инструменты рисования и обработки, которые Вы будете применять при создании и редактировании (видоизменении) различных растровых изображений.

 

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

 
     
  [к содержанию] [далее]  
     
     
подробнее

     
  [Все уроки 3ds max] [Галерея моделей] [далее]  
     
  Создание модели броневика (Хэд).  
     
 

Предыстория. Когда-то давно, еще в 2005 году я разрабатывал идею проекта Переход.

Для этих целей создавались 3d-модели.

Одной из них был

Winter head - зимний боевой броневик.

 
     
  В данном уроке мы рассмотрим как выполнить моделирование и анимацию такого броневика, а также вы можете скачать видеоролик, в формате wmv созданный полностью в 3ds max. Музыкальная дорожка была подключена отдельно.  
     
  видео про едущий по зимней местности броневичок  
     
  Наш будущий броневик должен будет выглядеть так -  
     
  броневичок 3d  
     
  Создание данной модели включает следующие шаги:

1. Рисование 2D-контура левой стороны броневика;
2. Применение модификатора Extrude для создания объема;
3. Улучшение модели за счет модификаций элементов модели (вершин, граней);
4. Создание модели колеса;
5. Создание материала и нанесение текстуры на модели.

Рассмотрим этот процесс более детально:

1. В окне левого вида (Left viewport) при помощи инструмента Line изобразите контур броневика.

 
     
  выбираем инструмент 2d примитивовВыбранная панель Create с нажатой кнопкой Shapes
и выбранным инструментом Line
 
     
  текстура броневика  
     
  Развертка текстуры для броневика  
     
 

a. Задайте плоское изображение созданное ранее (или использованное готовое) в качестве фона окна: Views > Viewport background > Files


В этом же диалоговом окне задайте следующие параметры:
• В группе Aspect ratio – Match bitmap – чтобы масштаб соответствовал загруженному изображению;
• Правее от указанной группы: установите флажки Display background и Lock Zoom/Pan. Последнее позволит сохранять масштаб фона при изменении масштаба создаваемых объектов.


b. На панели Create нажмите кнопку Shapes и используя инструмент Line обведите фоновое изображение. В ответ на вопрос программы ответьте утвердительно – Вы получите замкнутый контур.

 
     
  боковой контур броневика  
     
  Контур броневика созданный вдоль контура фонового рисунка  
     
  модификатор Extrude  
     
  Переименованный объект и состояние выбора модификатора Extrude  
     
 

2. Откройте панель модификаций и переименуйте созданный объект (Line01) во что-нибудь более понятное для дальнейших обращений к нему, например, head_base.

В списке модификаторов найдите Extrude и в открывшейся панели Parameters задайте:

Amount – 1 m; Output – Mesh;

установите флажок Generate Mapping coordinates.

Другие параметры оставьте без изменений.

Параметр Amount определяет размер выдавливаемой области – для контроля размера перейдите в окно перспективы.

Можете задать значение Amount по своему вкусу.

Параметр Output определяет тип получаемого в объекта – Mesh – набор треугольных граней.

Generate Mapping coordinates – генерирует для создаваемого объекта проекционные координаты. Если не установить этот флажок, то в дальнейшем может потребоваться применение отдельных модификаторов для создания проекционных координат вершин (UVW Map, Unwrap UVW).


3. В панели модификаций в окне стека выполните сжатие (Collapse), чтобы получить законченный объект и

 
     
  выдавливание основы корпуса броневика  
     
  Результат применения модификатора Extrude  
     
  сжатие стека модификаций  
     
  Выбор сжатия стека (Collapse To)  
     
 

заняться его улучшением.

Для этого в окне стека щелкните правой кнопкой мыши (позиция со строкой Extrude) и выберите Collapse To.

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


a. Давайте также преобразуем объект в Editable poly, чтобы работать не с треугольными, а прямоугольными гранями: для этого в окне стека снова щелкните правой кнопкой (по пункту Editable Mesh) и в появившемся контекстном меню выберите Convert To: Editable Poly.


b. Теперь сначала улучшим дно корпуса: в окне перспективы переверните вид модели вверх дном. В окне стека модификаций (или в окне параметров ниже) переключитесь на элемент Polygon (грань) и выделите все грани в дне (с нажатой клавишей CTRL).


c. Нажав кнопку Bevel в свитке Edit polygons панели параметров вдавите и придайте скос выделенным граням.

 
     
  выделенная грань  
     
  Вдавленные и скошенные грани  
     
  Вдавленные и скошенные грани  
     
  Выдавленная крышка  
     
  Выдавленная крышка  
     
  d. Перевернем вид броневика и снова, используя Bevel попробуем выдавить переднюю крышку корпуса броневика. Попробуйте сами (на свой вкус) выдавить еще какие-либо грани, например по левому и по правому борту.  
     
 
В результате у нас должно получиться что-то следующее:
 
     
  Выдавленная грань по правому борту  
     
  Выдавленная грань по правому борту  
     
  Окончательный вид  
     
  Окончательный вид  
     
 

4. Для создания модели колеса используйте примитив цилиндр, с минимальным количеством сегментов и вершин – в целях упрощения модели. Клонируйте колесо создав еще 2. Для клонов укажите режим создания Instanse (экземпляр) или Reference (ссылка), но не Copy (копия). Это позволит автоматически вносить изменения сразу во все 3 колеса.


5. Создание материала и нанесение его на модель рассматривалось нами в уроке Создание текстурной развертки для модели автомобиля.

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

Creating game on fle game engine - fle / Создание игры на fle game engine - fle

14. использование переменных в игре на c++ directx 9c



read paper in english

Этот урок посвящен самым основам и рассчитан на более углубленное изучение c++. Все примеры реализуются в среде fle game engine на реальном действующем проекте игры
Шарики и Ямки. Тема будет интересна тем, кто только начал изучать основы c++, но также хочет узнать больше о использовании переменных и о создании игр.





Содержание

страница 1 - Спрайты

страница 2 - Объекты

страница 3 - Наложение объектов

страница 4 - Код - Настройка параметров Scene Editor fge и написание кода для вывода спрайта шарика в вашем первом игровом приложении

страница 5 - Отображаем прыгающий шарик

страница 6 - Загрузка игровой сцены

страница 7 - Перемещения игровой сцены

страница 8 - Закрываем часть сцены от пустот при помощи черной текстуры с прорезью, ограничиваем перемещение сцены

страница 9 - Реализуем корректное попадание в ямы и около ям - определяем границы спрайтов ям и спрайта прыгаюшего шарика

страница 10 - Проверка столкновений

страница 11 - Игровой счёт, звуки, музыка

урок #2 страница 1 - Создание новых сцен для игры simple game, расширенная версия simple game extended

13. Скроллинг больших локаций

14. использование переменных в игре на c++ directx 9c

15. Мульти анимация







Для чего нужны переменные в c++ в общем и в игре в частности ?

Да это, батенька, основы, скажет Вам любой знаток !

Без переменных никуда и никак.



Creating game on fle game engine / Создание игры на fle game engine - примеры переменных



Почему ?

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

То есть данные + алгоритмы = программы. Без них просто не будет ничего.



На скриншоте в методе CD3DGameApp::Play_Level_8 записан на языке c++ буквально следующий алгоритм:

если m_iScore превысит значение m_iNeedScore,
то переменная m_bLevelAimAchieved станет равна true.

С точки зрения языка все понятно. Но для чего это все ?

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

Но если Вы делаете игру сами, то каждая переменная имеет определенный строго
заданный смысл. Смысл вы придумываете сами (и возможно где-то документируете),
но еще более важно - это как переменные используются вашими алгоритмами.

Как я уже заметил, исследовав код (алгоритмы реализованные на языке программирования -
в нашем случае c++), Вы можете понять как и для чего используются те или иные
переменные. В этом заключается анализ чужого кода или даже своего собственного,
написанного уже давно, но требующего, например, каких-то изменений.

Так, m_iScore это значение текущего счета набранного игроком.

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

m_bLevelAimAchieved - логический переключатель (триггер), если он
установлен в значение false, то некий алгоритм, отслеживающий необходимость загрузки
нового уровня, ничего не делает. Но как только данная переменная переключится в true -
алгоритм сразу же завершит текущий уровень, и загрузит новый.

Допустим я захотел делать следующий уровень игры, 8, а у любого уровня есть какие-то
цели - например в моем случае - чтобы пройти 8 уровень потребуется достичь суммы из
3000 очков, а чтобы с 7 уровня перейти на 8 - набрать 2500 очков.

Так вот чтобы реализовать этот простейший алгоритм, надо иметь 3 переменные:

m_iScore
m_iNeedScore
m_bLevelAimAchieved

А описаны они будут так :

//игровой счёт
int m_iScore;
int m_iNeedScore; //сколько нужно набрать очков чтобы пройти уровень
bool m_bLevelAimAchieved; //цель уровня достигнута

Мы объявили эти переменные внутри класса CD3DGameApp модуля start.h

Значит переменные - это контейнеры, имеющие определенный тип - задающий какие
значения она может хранить.

В нашем случае переменные m_iScore, m_iNeedScore имеют тип int - позволяют хранить целочисленные значения в диапазоне от -2147483648 до 2147483648.

Предполагается, что в данном случае тип int имеет размер 32 бит, и старший бит представляет знак числа.

Ну а переменная m_bLevelAimAchieved имеет тип bool - булевский тип, хранящий всего 2 значения - true или false.

Посмотрим как используются наши переменные.

При старте нового уровня выполняется метод CD3DGameApp::Init_Level_7(), в котором, как Вы видите,

//level 7
void CD3DGameApp::Init_Level_7()
{
m_iNeedScore = 2500;
m_iScoreOld = 2000;
}

эти переменные инициализируются.
Им присваиваются некоторые начальные значения.

Вы справедливо заметите: здесь же только переменная m_iNeedScore ! А где инициализация
m_iScore и m_bLevelAimAchieved ?

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

Логично предположить, что m_bLevelAimAchieved также инициализируется значением false
перед началом нового уровня. А как только переключится в true - вызовет срабатывание
алгоритма загрузки следующего уровня.

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

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

Вы можете открыть проект игры simple game, посмотреть какие там есть переменные и
добавить какие-то свои новые. Конечно делать надо не наобум, а отдавать себе отчёт в том, что
Вы делаете. Иначе это приведет к нарушениям уже созданных алгоритмов работы игры.

Давайте инициализируем переменную m_iNeedScore для следующего уровня, например 3.

Для этого запишем в модуле start.cpp такой код -


void CD3DGameApp::Init_Level_3()
{
m_iNeedScore = 300;
}

Как видим в создании переменных нет ничего сложного. Важно только не
допускать синтаксических ошибок в написании их имен.

Как может возникнуть такая ошибка ?
Если вы в одном месте запишете переменную как
m_iNeedScore

а где-то в другом -

m_NeedScore

Естественно это будут уже 2 совершенно разные переменные
и к тому же если m_NeedScore не объявлена,
это вызовет ошибку на этапе сборки приложения.

Подведем итог.

Переменные - это основа вашего приложения, которая хранит все данные связанные с ним.

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


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

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

Больше, как говорится тут и нечего добавить.

Удачи вам на ниве создания своих приложений на c++ и игр !

Более подробно о переменных вы можете узнать из урока - Урок 1 Основные операторы языка C++ (часть 2) .





[назад] [далее]

подробнее

Как установить новый шаблон в joomla 2.5.4

Недавно столкнулся с парадоксальной проблемой. Установил joomla 2.5.4 и попытался по старинке создать новый шаблон.

То есть -

1) Зашел в папку templates и создал копию папки одного из шаблонов
2) Назвал папку по новому, отредактировал имя шаблона в файле templateDetails.xml
3) Зашел в админку и выбрал просмотр шаблонов - Extensions > Template Manager
4) Даже кликнул пункт Templates на открывшейся странице.

И что бы вы думали ?

Новый шаблон даже не появился в списке.

Иными словами - простым копированием имеющегося шаблона создать новый в joomla 2.5.4 уже нельзя.

Как же быть ?

Оказалось что надо было проделать следующее -

1) Скопировать папку шаблона в папку tmp
2) Установить шаблон из данной папки как расширение

После таких манипуляций шаблон стал доступен из админки.

Конечно разработчикам joomla виднее что лучше для их системы, но на мой взгляд - это лишнее усложнение.

Вообщем буду осваивать joomla 2.5.4 дальше :)))))

Надеюсь вам была полезна эта статья.

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



Пожалуйста войдите на сайт - Вход

или пройдите процедуру регистрации - Регистрация

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

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



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


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