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


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

сайт megainformatic - Говорящий Комикс Веселый Буквоежка
        Говорящий комикс
подробнее...

Теги создание сайтов, создание игр, дизайн, игры, информатика, уроки photshop, php, c++, музыка, delphi, cms, робосайт
Статьи сайта
megainformatic - проект Open Shop

megainformatic - Рисуем красивую девушку всего за 6 шагов

megainformatic - Галерея красивых рисованных девушек

megainformatic - НОВОГОДНЕЕ ОБРАЩЕНИЕ СОЗДАТЕЛЯ webinformatic К ЖИТЕЛЯМ ПЛАНЕТЫ интернет

megainformatic - Отзывы оставленные пользователями как впечатление о проделанной работе или что-либо понравившееся на сайте

megainformatic - Уроки css - атрибут position

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

megainformatic - Ива Ден энд КуХа - КОДЕКС ФРИЛАНСЕРА - Глава 1 - Обычный день

megainformatic - Ива Ден энд КуХа - КОДЕКС ФРИЛАНСЕРА - Глава 2 - Начало (begin)

Новогодняя дискотека 2013 на megainformatic точка ru

megainformatic - Программируем на C++ с использованием MFC

megainformatic - Программируем на C++ с использованием MFC - Создание MFC приложения

megainformatic - Программируем на C++ с использованием MFC - Создание MFC приложения - hello, world !

megainformatic - Как создать игру ? - Пишем игровой движок с нуля

megainformatic - Как создать игру ? - Пишем игровой движок с нуля - Вступление

megainformatic - Как создать игру ? - Пишем игровой движок с нуля - Общая структура будущего игрового движка

Разное

megainformatic - Как создать игру ? - Пишем игровой движок с нуля - DXUTMainLoop - цикл работы DirectX-приложения

megainformatic - Варианты макетов Психолог 911

megainformatic - Шаблоны для сайтов - что это и какие они бывают ?

megainformatic - Ива Ден энд КуХа - КОДЕКС ФРИЛАНСЕРА - Глава 3 - Кто он ? (who is ?)

megainformatic - Мои Музыкальные Миры - готовая музыка mp3 - новинки 2013 года

megainformatic - Теория и практика хакерских атак - самозащита от нападения

megainformatic - Теория и практика хакерских атак - самозащита от нападения - Способы подмены реального IP

megainformatic - Fruity Loops Studio 9 - Как синтезировать свои сэмплы - изучаем возможности плагина Sytrus

megainformatic - Видоизменяем тему для Wordpress под свои нужды

megainformatic - Flash приложения и игры - Шаг 3 - управляемый шарик

megainformatic - Учимся создавать флеш-игры, что нужно знать для того, чтобы заняться созданием flash приложений и игр ?

megainformatic - Шаг 4 в освоении Flash-технологий - как анимировать персонажа и управлять им

megainformatic - Форма для смены шаблонов сайта. Модуль template selector

megainformatic - megainformatic cms express files + module slider

megainformatic - Создание сайта бесплатно или под заказ

megainformatic - Как создать flash баннер

megainformatic - Разработка flash-приложения для сайта: онлайн примерочная

megainformatic - Мои впечатления о книге - Владислав Крапивин - Журавленок и Молнии

megainformatic - Модуль отзывов/комментариев для вашего сайта

megainformatic - Модуль отзывов/комментариев для вашего сайта

megainformatic - Модуль отзывов/комментариев для вашего сайта

megainformatic - Модуль короткие ссылки short link

megainformatic - Работа с сокетами fsocket из php

megainformatic - Как создать игру Создание игровых панелей и индикаторов

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

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

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

megainformatic - Система управления сайтом на php - megainformatic cms admin files

megainformatic - обзор антивирусных средств защиты

megainformatic - как работает антивирус ?

megainformatic - Создание сайта для бизнеса

megainformatic - Новый взгляд на очевидные вещи

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

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

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

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

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

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

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

подробнее

     
 

СССР - Создаем Сайт Своими Руками - конструируем свой сайт - полезные статьи для начинающих строителей сайтов.

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

Другие статьи на тему создания сайтов, PHP и MySQL смотрите в разделе Статьи

 
     
 

В первую очередь что нужно иметь под рукой:

1) набор Web разработчика denver - этот набор включает все необходимые Вам программы для отладки и разработки Вашего сайта, включая PHP, MySQL, Apache, PERL, PostgreSQL;

2) и конечно же Вам понадобится какой-либо удобный html-редактор, например неплохим выбором является Macromedia Dreamweaver;

 
     
  После того, как Вы скачаете всё необходимое на свой ПК, нужно установить эти программы и начать работу.  
     
 

Если пакет denver корректно установлен в Вашей системе, то при вызове браузера Internet Explorer и наборе в его адресной строке ссылки

http://localhost/

 
     
  Вы будете попадать на заглавную страницу denver'а.  
     
 

Рабочие примеры этого урока мы будем размещать в папке -

С:\WebServers\home\localhost\www\phpwork

 
     
  Где С:\WebServers расположение установленного пакета denver в Вашей системе по-умолчанию. Если Вы при установке denver'а задали другой путь - используйте его.  
     
  Введение в программирование на php - выводим дату и время  
     
 

Наш первый скрипт на php.

Сначала поясним для чего всё это нужно ? Хостинг с php, сам язык php, что всё это Вам дает ?

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

Мы создадим простейший скрипт, который будет просто выводить в окно браузера страничку с отображением текущей даты.

Освоив этот пример Вы узнаете:

- Как создаются php-скрипты и как они работают;

- Что собой представляет язык php.

 
     
 

Если у Вас есть под рукой HTML-редактор, то в нём нужно создать новый пустой документ и внести в него следующий код -

<HTML>
<HEAD>

<TITLE>Наш первый скрипт на PHP</TITLE>


<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">


</HEAD>


<BODY BGCOLOR=#FFFFFF LEFTMARGIN=0 TOPMARGIN=0 MARGINWIDTH=0 MARGINHEIGHT=0>

<font color="#000000" size="2" face="Verdana, Arial, Helvetica, sans-serif">Сегодня</font>


<?php
echo date("j, F, Y, g:i a");

?>

</BODY>
</HTML>

 
     
 

Затем нужно сохранить созданный файл в папку

С:\WebServers\home\localhost\www\phpwork

под именем, например intro1.php

Далее в браузере набираем адрес

http://localhost/phpwork/intro1.php

Если Вы пока еще не обзавелись своим хорошим html-редактором, можно просто набрать данный текст в текстовом редакторе Блокнот, а затем сохранить с расширением php.

 
     
 

И получаем результат - в окне браузера будет выведена страница с заголовком

"Наш первый скрипт на PHP"

и текстом на самой странице

Сегодня 13, July, 2010, 11:29 am

 
     
  У Вас конечно же будет выведена другая текущая дата и время  
     
 

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

Отличием является - расширение php вместо html и наличие кода в новых тегах -

<? php

?>

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

Вы увидите, что это обычная статичная html-страница.

 
     
  Как видим php-скрипты выполняются на стороне сервера и сам код скрипта не попадает в создаваему в окне клиента страничку.  
     
 

Смысл использования php становится Вам понятен - язык php - используется для динамического формирования содержимого web-страниц.

Это дает достаточно широкие возможности по автоматизации и упорядочению информации Вашего сайта.

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

Ну а код, который я привел содержит всего одну операцию -

echo date("j, F, Y, g:i a");

Функция date запрашивает на сервере текущую дату и время, а функция echo выводит результат на web-страничку.

Запись в кавычках "j, F, Y, g:i a"

представляет набор параметров функции date и определяет что и в каком виде нужно выводить -

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

 
     
 

Применив этот скрипт на страничках Вашего сайта - код

<?php
echo date("j, F, Y, g:i a");

?>

можно вставить в любом месте создаваемого шаблона web-страницы

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

 
     
  В следующей нашей статье мы рассмотрим Как выводить русскоязычное название месяца, а также время в 24 часовом формате, мы также познакомимся с оператором switch языка php.  
     
подробнее

     
  Уроки Photoshop  
     
 

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

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

 
     
  [содержание] [назад] [страница 3] [далее]  
     
  Изучаем и модифицируем пример CreateDevice - страница 3  
     
  Запускаем Photoshop.  
     
 

Для подготовки набора изображений иконки приложения нужно создать из какого-либо готового изображения 3 изображения размеров: 48х48 пиксель, 32х32 и 16х16.

Цветовой режим задать индексный, количество цветов не более 255 и сохранить эти 3 изображения в формате BMP

 
     
  Например возьмите любое из этих изображений -  
     
  примеры изображений для превращения в иконкупримеры изображений для превращения в иконку  
     
  И уменьшите до размера 48х48  
     
  изменение размера изображения в Photoshop  
     
  изменение размера изображения в Photoshop  
     
  После этого задайте для изображения режим индексированного цвета  
     
  задайте для изображения режим индексированного цвета  
     
  Далее выберите пункт меню Файл > Сохранить как (File > Save As) и сохраните в формате BMP  
     
  сохраните в формате BMP  
     
  сохраните в формате BMP  
     
  Аналогично создайте и сохраните под другими именами изображения 32х32 и 16х16  
     
  Важное замечание! Перед масштабированием изображения 48х48 до размера 32х32 измените режим на RGB для более плавного рассчета цветовых переходов, после завершения операции снова задайте индексированный режим изображения.  
     
 

Примеры полученных изображений -

48x.bmp

32x.bmp

16x.bmp

 
     
  Теперь можно закрыть Photoshop и запустить Microsoft Visual Studio  
     
  Открываем проект CreateDevice и дважды щелкаем его ресурс - иконку IDI_MAIN_ICON  
     
  дважды щелкаем его ресурс - иконку IDI_MAIN_ICON  
     
  Теперь Вам остается перетащить созданные три изображения в окно MSVS и вставить изображения из них в используемую иконку.  
     
  Предварительно возможно придется удалить все имеющиеся в файле иконки изображения, делается это следующим образом - нужно щелкнуть правой кнопкой мыши в столбце изображений иконки и выбрать вариант - Delete Image Type  
     
  Delete Image Type  
     
  Затем аналогичным образом создаете изображение такого же типа и вставляете в него нужное Вам.  
     
  Для выделения изображения используйте Rectangle Selection Tool, для выделения/вставки пункт меню Edit > Copy / Edit > Paste  
     
  Еще после вставки Вы заметите изменения цветов пикселей. Это нормально, т. к. происходит изменение с учетом текущей палитры. Чтобы таких изменений не происходило нужно либо использовать исходные изображения с количеством цветом меньшим 256, либо нужно вручную перерисовывать иконку прямо в редакторе MSVS.  
     
 

Для удобства прилагаю Вам файл ресурсов с готовой иконкой - можете скачать, скопировать в проект CreateDevice и использовать -

CreateDevice.rc

 
     
  [содержание] [назад] [страница 3] [далее]  
     
подробнее

     
  [Все уроки 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] [Галерея моделей] [далее]  
     
подробнее

Игра Мечты - ria pc game

Я как-то обмолвился буквально нижеследующим:

Проект начат в октябре 2017. Используются наработки прошлых лет.
Вырисовывается уже что-то нехарактерное именно для жанра визуальной новеллы.
Хотя, это не чистая визуальная новелла. Соотношение примерно следующее:
визуальная новелла - примерно 30%, аркадные мини игры 10%, элементы квеста 5%,
путешествия по сюжетной линии при помощи блокнота 30%, все остальное - 25%.

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

Ну и конечно большим отличием является то что игра
идет в комплекте 3 в 1. Т. е. в состав дистрибутива входят 3 ! независимые
(хотя логически связанные) игры. Основная игра - ria pc game,
вторая игра - Шарики и Ямки Каникулы Зеленого Шарика (8 уровней),
а 9 уровень представляет самостоятельная игра которая вобрала в
себя проект Веселый Буквоежка и нововведения относящиеся к
адаптации проекта к Шарикам и Ямкам. + еще есть также всякие бонусы.
Одним словом перечислять могу бесконечно что там есть. Лучше увидеть
своими глазами. Не даром размер дистрибутива такой значительный.
Все игры на своем собственном движке. Своя музыка. Графика. 
И все что вы увидите - создано 1 человеком.



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

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

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


Итак,
приступим.


Игра начинается с того, что девушка Риа прилетает самолетом, в другой,
чужой для неё город.


Одновременно с этим хочу рассказать о том, с чего собственно началась
разработка игры.

В далеком 2007 году я начал делать очередной проект под названием
Эмулятор игры Электроника ИМ-02 Ну, Погоди !


Эмулятора игры Электроника ИМ-02 Ну, Погоди ! версия 1.20 от 2.03.2017


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

Суть в том, что впервые у меня получилась, хотя и не слишком крупная,
но как минимум логически и функционально завершенная игра.


Конечно до этого была еще road 2 city (Дорога в Город), содержащая 10!
уровней.

Но она была создана с использованием библиотеки undelphiX, а значит,
почти на готовом движке (если можно так сказать).

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

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

Большого опыта как такового не было, да и малого тоже. Было это в 2004 - 2006 гг.

Разработка проекта протекала медленно и почти спонтанно.

И опять же, вернемся к ria pc game.

ria pc game 20.08.2018

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

На текущий момент проект до сих пор развивается, и теперь уже в рамках проекта ria pc game.

Вот как он выглядит сейчас -

ria pc game 20.08.2018

ria pc game 20.08.2018

ria pc game 20.08.2018

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

Не могу не упомянуть, что дальше все развивалось в таком направлении:

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

Так появился экспериментальный проект - Balls on Lift - Шарики на Лифте -


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



Шарики на лифте / Balls on Lift версия apr - версия aug 2016 version 0.9.1.5 14.09.2016


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

Но самое главное в этой истории то, что я не остановился на этом, а стал развивать идею -
так появился еще один проект -

Шарики и Ямки - Balls and Holes -

Сначала это все выглядело вот так -


Прыгающий шарик перемещаемый мышкой




Потом уже вот так -


выпуск 62 balls and holes игра




Ну и на текущий момент времени все это выглядит вот так -


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



и входит в состав проекта ria pc game - запускается из отдельного файла - ppab_start.exe


Помимо этого в проектах есть много всяких разных бонусов.

Так что все это лучше увидеть собственными глазами,
скачав текущую версию ria pc game !



Так собственно почему игра ria pc game является игрой мечты ?

1)
Проект развивается с переменной интенсивностью на протяжении многих лет.

Можно считать с 2008 года. Поэтому ему уже почти 10 лет или даже больше.

2) Игры, входящие в состав проекта - ria pc game, balls and holes
(pencil paper and the ball green ball holidays)
представляют серьезные достаточно крупные проекты, которые создавались
не менее 1 года.

3) Есть задел и есть перспективы для того, чтобы дальше развивать проекты.

4) Все это создается руками и усилиями лишь 1 человека.


И я полагаю, что эта статья еще не является завершенной, и будет дополнена.

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



О ЖАНРАХ проекта

Проект вобрал в себя несколько жанров.

Аркада, логическая аркада.

ria pc game 20.08.2018

ria pc game 20.08.2018

ria pc game 20.08.2018

ria pc game 20.08.2018


Приключения, квест.

ria pc game 20.08.2018

ria pc game 20.08.2018

ria pc game 20.08.2018

ria pc game 20.08.2018

ria pc game 20.08.2018

ria pc game 20.08.2018


Загадочные перемещения при помощи блокнота - приложения
в телефоне героини.

ria pc game 20.08.2018

ria pc game 20.08.2018


29.10.2018

в игру добавлена аркадная составляющая -








На этом пока все.




 

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

 
     
  Урок 1 Основные операторы языка C++ (часть 2)  
     
 

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

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

 
     
  [назад] [далее] [к содержанию]  
     
  Мы рассматриваем основные конструкции языка C++ на примере работы в Microsoft Visual Studio 2008  
     
  В предыдущем уроке мы создали небольшой калькулятор. Этот урок позволил нам бегло познакомиться с некоторыми из конструкций языка C++ и некоторыми функциями.  
     
 

в этом уроке нам осталось рассмотреть

- операторы объявления переменных;

- операторы обработки исключений;

 
     
 

- операторы объявления переменных;

объявление (declaration) переменной сообщает компилятору, что элемент программы или имя существуют. Определения (definitions) определяют какой код или данные описывает имя. Имя должно быть объявлено до того, как оно будет использовано!

Примеры объявлений

// Declare and define int variables i and j. объявление переменных и присвоение начального значения
int i;
int j = 10;

// Declare enumeration suits. объявление перечисления
enum suits { Spades = 1, Clubs, Hearts, Diamonds };

// Declare class CheckBox. объявление класса
class CheckBox : public Control
{
public:
Boolean IsChecked();
virtual int ChangeState() = 0;
};

 
     
 

Объявление (declaration) привносит в программу одно или более имен. Объявления могут производиться в программе многократно. Поэтому классы (classes), структуры (structures), перечисляемые типы (enumerated types) и другие определяемые пользователем типы могут быть объявлены в каждом требующем компиляции модуле. Ограничением такого множественного объявления является необходимость полной идентичности всех объявлений. Объявления могут служить также в качестве определений (definitions) исключая следующее:

- это прототип функции (объявление функции без ее реализации (тела));

- содержит спецификатор extern, но не имеет инициализатора (объекты и переменные) или тела функции (функции). Это означает, что определение не нужно в текущем модуле и применяет к имени внешнее связывание;

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

- это объявление имени класса без последующего определения;

- это оператор typedef;

Примеры объявлений, которые не имеют последующих определений

extern int i;
char *strchr( const char *Str, const char Target );

 
     
 

Несколько слов об определениях (definitions)

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

 
     
 

Соответствие между объявлениями и определениями сводятся к одному. Существуют два случая в которых программный элемент может быть объявлен и не определен:

- функция объявлена, но ни разу не вызывается или не используется выражений требующих адреса данной функции;

- класс используется только таким образом, что не требует определения. Однако класс должен быть объявлен.

Вот пример демонстрирующий указанный случай:

// definitions.cpp
class WindowCounter; // Forward reference; no definition

class Window
{
// Definition of WindowCounter not required
static WindowCounter windowCounter;
};

int main()
{
}

 
     
  Также советую Вам прочесть раздел документации MSVS 2008 посвященный авто-создаваемым и статичным объектам - MSVS 2008 Documentation (далее просто Help) - Development Tools and Languages > Visual Studio > Visual C++ > Reference > C/C++ Languages > C++ Language Reference > Statements > Declaration Statements  
     
 

- операторы обработки исключений;

информацию по ним вы найдете в Help - Development Tools and Languages > Visual Studio > Visual C++ > Reference > C/C++ Languages > C++ Language Reference > Statements > Exception Handling

Тема достаточно обширна, поэтому я сразу отправляю Вас к первоисточнику. В кратце могу лишь отметить, что исключения являются ошибками времени выполнения, связанными с делением на ноль, защитой памяти (Access Violation) и т. п.

Базовыми операторами для этих целей являются try, catch и throw

 
     
  try {
// code that could throw an exception
}
[ catch (exception-declaration) {
// code that executes when exception-declaration is thrown
// in the try block
}
[catch (exception-declaration) {
// code that handles another exception type
} ] . . . ]
// The following syntax shows a throw expression:
throw [expression]
 
     
 

Язык C++ обеспечивает встроенную поддержку обработки аварийных ситуаций, известных как исключения (exceptions), которые могут происходить во время выполнения Вашей программы. Операторы try, throw и catch реализуют обработку исключений. При использовании обработки C++ исключений Ваша программа может взаимодействовать с непредвиденными событиями при высокоуровневом исполнимом контексте, который способен лучше реагировать на такие аварийные события. Такие исключения обрабатываются кодом находящимся вне основного потока выполнения программы.

Рассмотрим как работает тройка операторов try, catch, throw

Код после оператора try представляет защищенную секцию кода. Выражение появления исключения (throw expression) вызывает исключение (raises exception). Блок кода после catch это обработчик исключения захватывающий (обрабатывающий) исключение появившееся в выражении появления исключения. Оператор объявления исключения (exception-declaration) указывает на тип исключения обрабатываемого оператором catch. Таким типом может быть любой действительный тип данных, включая класс C++. Если оператор объявления исключения содержит многоточие (...), оператор catch обрабатывает любые типы исключений, включая исключения на C и сгенерированные системой и приложениями, такие как защита прав доступа к памяти, деление на ноль, переполнение числа с плавающей точкой. Такой обработчик должен быть последним из всех обработчиков блока try.

Операнд при операторе throw синтаксически подобен операнду оператора return.

Исполнение происходит в следующей последовательности:

1. Управление достигает оператора try при нормальном последовательном выполнении. Защищенная секция внутри блока try исполняется.

2. Если исключений во время выполнения защищенной секции кода не произойдет, оператор catch, следующий за блоком try не будет выполнен. Исполнение продолжается начиная с оператора следующего за последним оператором catch в том блоке try в котором отслеживается (thrown) исключение.

3. Если исключение произошло (thrown) во время выполнения защищенной секции кода или в любой процедуре защищенной секции (при прямом или косвенном вызове), будет создан объект исключения из объекта представленного операндом при операторе throw. (Это подразумевает, что будет вовлечена копия конструктора). Начиная с этого места компилятор отыскивает оператор catch в высокоуровневом контексте исполнения, который способен обработать исключение с произошедшим (thrown) типом (или обработчик catch, который способен обрабатывать любые типы исключений). Обработчики catch проверяются в порядке представления в блоке try. Если требуемый обработчик отсутствует проверяется следующий динамически замкнутый try - блок. Этот процесс продолжается до тех пор, пока не закончится внешний замкнутый try - блок.

4. Если подходящий обработчик так и не найден или если исключение произошло во время развертывания, но до получения управления обработчиком, вызывается предопределенная функция времени выполнения terminate. Если исключение произошло после прохождения по блоку throw, но до начала развертывания, вызывается terminate.

5. Если требуемый обработчик catch найден, и он захвачен по значению, его формальный параметр инициализируется копированием объекта исключения. Если он захвачен по ссылке, параметр инициализируется ссылкой на объект исключения. После инициализации формального параметра начинается процесс развертывания стека. Это вызывает разрушение всех автоматических объектов, созданных (но еще не уничтоженных), между началом блока try соответствующего обработчику catch и местом срабатывания (throw) исключения. Разрушение происходит в порядке обратном порядку создания. Обработчик catch исполняется и программа продолжает выполнение со следующей за последним обработчиком строки (т.е. с первого оператора или конструктора не являющегося обработчиком catch). Управление может передаваться на обработчик catch только для сработавших (thrown) исключений и никогда посредством операторов goto или метки case оператора switch.

 
     
 

Следующий пример из документации по MSVS показывает использование блока try и соответствующего ему обработчика catch. Пример определяет ошибку выделения памяти при использовании оператора new. Если new прошел успешно catch обработчик не будет исполнен:

// exceptions_trycatchandthrowstatements.cpp
// compile with: /EHsc
#include <iostream>
using namespace std;
int main() {
char *buf;
try {
buf = new char[512];
if( buf == 0 )
throw "Memory allocation failure!";
}
catch( char * str ) {
cout << "Exception raised: " << str << '\n';
}
}

 
     
  в следующем уроке мы познакомимся с особенностями создания оконных Win32-приложений  
     
     
     
     
     
  [назад] [далее] [к содержанию]  
megainformatic live chat
Начать беседу
X
 

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



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


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