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


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

megainformatic - Портфолио выполненных проектов сайтов и приложений
Моё портфолио выполненных проектов сайтов и приложений посмотреть портфолио в виде списка для просмотра изображений в увеличенном виде кликните по одному из них. [gallary]sites[/gallary]
подробнее...

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

megainformatic - Как я осваивал Flash - шаг 2 - Основы создания простейших flash - игр

проект портала Идеи Комфорта

megainformatic - игра Веселый Буквоежка

megainformatic - игра Веселый Буквоежка

megainformatic - Использование cron, crontab и планировщика задач

megainformatic - Совместное использование jquery и mootools или других js-фреймворков

megainformatic - Модуль content php performer для megainformatic cms

megainformatic - Пишем компактный слайдер

megainformatic - Что нужно знать для создания сайта ?

megainformatic - Что нужно знать для создания сайта ? Глава 2 - Кодировки и DOCTYPE

megainformatic - Что нужно знать для создания сайта ? Глава 3 - Идём дальше - нанизываем новый код - где объявляются стили css и код javascript

megainformatic - Что нужно знать для создания сайта ? Содержание

megainformatic - Что нужно знать для создания сайта ? css - стили

megainformatic - preg_match или Использование регулярных выражений в php

megainformatic - статьи Тимонина Андрея - Flash. Содержание

megainformatic - статья Тимонина Андрея - Flash. Подготовка к работе.

megainformatic - статья Тимонина Андрея - Flash. Hello world.

megainformatic - статья Тимонина Андрея - Flash. Экспорт SWC библиотеки.

megainformatic - Тимонин Андрей - Несколько слов о себе

megainformatic - статьи Тимонина Андрея - уроки из области веб программирования, создания казуальных игр

megainformatic - статья Тимонина Андрея - Обеспечиваем доступ к объекту из любой точки программы. Singleton

megainformatic - статья Тимонина Андрея - Хронология работы программы. Создаем Лог

megainformatic - статья Тимонина Андрея - Поиск файлов. Получаем список файлов каталога.

megainformatic - статья Тимонина Андрея - Исключения. Создаем класс обработки исключений.

megainformatic - статья Тимонина Андрея - States. Создаем менеджер состояний игры.

megainformatic - статья Тимонина Андрея - Регистрация. Часть 1. Создаем страничку регистрации на сайте.

megainformatic - статья Тимонина Андрея - Регистрация. Часть 2. Создаем обработчик, и заносим информацию о пользователе в Б.Д.

megainformatic - статья Тимонина Андрея - Таймер. Выводим время игры.

megainformatic - статья Тимонина Андрея - DirectX9. Создаем основной класс обработки графики.

megainformatic - статья Тимонина Андрея - DirectX9. Создаем первое приложение.

megainformatic - Что нужно знать для создания сайта ? float - использование в css - стилях

megainformatic - Уроки Fruity Loops Studio (FL Studio) - урок 2 - пишем свою композицию COLD

megainformatic - Уроки Fruity Loops Studio (FL Studio) - урок 3 - экспериментируем с композицией COLD

megainformatic - Что нужно знать для создания сайта ? Стандартные шрифты для сайта

megainformatic - Что нужно знать для создания сайта ? ASC II Коды символов

megainformatic - Уроки Fruity Loops Studio (FL Studio) - урок 4 - пишем первый вариант композиции COLD

megainformatic - Популяризация Современных Научных Знаний и Размышления на околонаучные темы. СОДЕРЖАНИЕ

megainformatic - Популяризация Современных Научных Знаний и Размышления на околонаучные темы. Энергетический кокон

megainformatic - Модуль галерей для любой cms

megainformatic - Портфолио выполненных проектов сайтов и приложений

megainformatic - Мои Музыкальные Миры - страница 2

megainformatic - megainformatic cms rs

megainformatic - модуль Падающий снег

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 приложения

подробнее

НОВОГОДНЕЕ ОБРАЩЕНИЕ СОЗДАТЕЛЯ Мега Информатик К ЖИТЕЛЯМ ПЛАНЕТЫ интернет.

Уважаемые жители сообщества интернет !

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

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

Поэтому каждый творит светлые и темные дела в разных
количествах и пропорциях.

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

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

От ВСЕЙ ДУШИ ПОЗДРАВЛЯЮ ВАС С НАСТУПАЮЩИМ НОВЫМ ГОДОМ !

ЖЕЛАЮ ВАМ КРЕПКОГО ЗДОРОВЬЯ, МИРА И ПРОЦВЕТАНИЯ !

СПАСИБО ЗА ВНИМАНИЕ.

С НОВЫМ 2013 годом ! Мира, любви, согласия. С ув., megainformatic

А теперь немного о новинках и более ранних но уже проверенных продуктах сайта Мега Информатик -

[галерея рисованных девушек]

Более подробно о методиках рисования Вы можете узнать из уроков Photoshop -

серия продуктов - Уроки Photoshop

Уроки Photoshop free (Свободно распространяемые)
бесплатно
уроки photoshop
100 руб.
уроки photoshop - чудеса !
100 руб.
уроки photoshop -  рисуем и анимируем
250 руб.


Другие продукты

Новинки !!! - модуль падающий снег

приятная и позитивная mp3 музыка

мои давние музыкальные работы

подробнее

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

2. Объекты



read paper in english

Теперь поговорим о игровых объектах.





Содержание

страница 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. Мульти анимация







Любая игра помимо спрайтов всегда включает игровые объекты.

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

Это необходимо, поскольку замечательная игра всегда интересна чем-то нестандартным, необычным. Если же игровой движок не поддерживает возможность создания чего-то нестандартного - то все игры, создаваемые на нём будут почти одинаковы, что являет собой ОГРОМНЫЙ МИНУС, поскольку игры интересны именно в их многообразии и разнообразии. А если они все будут почти одинаковы ...

Итак, что же такое игровой объект ?

Это программная сущность - т. е. код и связанные с ним данные, которые в игре выполняют определенные действия.

В нашем случае для спрайта Прыгающего Шарика мы создадим игровой объект AI_object (Artifical Intelligence) - т. е. объект, которым будет управлять программа.

Для пола мы создадим другой объект - Player - объект, которым будет управлять игрок.

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

Ну а Player - это объект, который будет реагировать на действия игрока - игрок будет перемещать мышь и пол будет перемещаться.

Мы используем Scene Editor - редактор для создания игровых сцен для создания нашей будущей игровой сцены.



Скачать SceneEditor 1.0.1 -

SceneEditor 1.01 Редактор 2d сцен fle game engine


Размер sfx-архива: 3 Mb. Также содержит примеры нескольких простых сцен 2d.





Оформить подписку на fle game engine -


Стоимость: 600 руб.

подробнее о составе платной подписки.





На рисунке показано начало создания игровой сцены.

начало создания игровой сцены

Добавлены 2 песчаных блока с ямой и 2 без неё.

В Scene Editor fge можно создавать 2d сцены любых мыслимых конфигураций. Например можно создать изометрическую сцену.

В Scene Editor fge можно создавать 2d сцены любых мыслимых конфигураций. Например можно создать изометрическую сцену

Особенность изометрических сцен, состоит в том, что они содержат игровые объекты размещенные в сцене по её глубине - т. е. используются 3 координаты - x, y и z. Получается своего рода псевдо 3d-сцена.

Создание настоящих 3d сцен также скоро станет доступно в Scene Editor fge.

Но для большинства игр имеющихся возможностей Scene Editor уже сейчас вполне достаточно. Т. к. 3d игры создавать значительно труднее в плане эффектной графики. А 2d проще, да и понятнее большинству. Хотя усвоив азы и пройдя далеко вперед Вы, в будущем, возможно, научитесь создавать и 3d игры.

fle game engine совсем не ограничен ни в чём и с самого своего рождения сразу же поддерживал как 2d так и 3d игры. На нашем сайте Вы можете найти их.

Итак, создание сцены в Scene Editor сводится к следующему:

Выбираем пункт меню File > New - чтобы создать новую сцену.

Создание новой сцены во fle game engine - в редакторе сцен Scene Editor 1.0.2

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

Вся процедура происходит так:

Открываем папку, где у вас установлен редактор сцен Scene Editor fge 1.0.2, например,

SceneEditor\

Открываем папку
SceneEditor\Media\textures\environment\

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

Создание новой сцены во fle game engine - в редакторе сцен Scene Editor 1.0.2 - добавление описаний игровых ресурсов

Папки ai_player и floor я создал для нашего урока и разместил там игровые ресурсы - спрайт шарика и спрайты песчаного блока -

Создание новой сцены во fle game engine - в редакторе сцен Scene Editor 1.0.2 - добавление описаний игровых ресурсов - спрайт прыгающего шарика

Создание новой сцены во fle game engine - в редакторе сцен Scene Editor 1.0.2 - добавление описаний игровых ресурсов - спрайты песчаных блоков

Для того, чтобы Вы сами попробовали проделать всё вышеописанное, Вы можете скачать бесплатную версию Scene Editor fge 1.0.1 или приобрести платную подписку на fle game engine, в состав которой также входит Scene Editor, но более свежих версий и содержащий больше возможностей, например в версии Scene Editor fge 1.0.2. добавлена возможность работы с сеткой grid, а также введен скроллинг сцены по вертикали и горизонтали и целый ряд новых опций и дополнений.



Далее откроем файл

SceneEditor\Media\textures\environment\desc\scene_editor_types.txt

И добавим в него 2 новых типа -

ai_player; 10;
floor; 11;
test; 12;
значение test изменим с 10 на 12, т. к. это специальный тип который всегда должен быть последним.

Т. е. мы добавили тип ai_player для управления прыгающим шариком и floor для песчаных блоков.



Далее в файле
SceneEditor\Media\textures\environment\desc\scene_editor_texlist.txt

добавим записи

ball; ai_player; ai_player\jump.tga; 64; 128; 0; 0; 4; 8.0f; 14.0f;
floor; floor; floor\floor.jpg; 101; 101; 0; 0; 1; 0.0f; 0.0f;
floor_front; floor; floor\floor_front2.tga; 101; 101; 0; 0; 1; 0.0f; 0.0f;
floor2; floor; floor\floor2.jpg; 101; 101; 0; 0; 1; 0.0f; 0.0f;

Первая запись - это игровой объект ball, относится к типу ai_player, находится в файле ai_player\jump.tga, имеет параметры 64х128 - пикселей размер 1 кадра спрайта, 0, 0, - смещение по x и y до начальной анимации, 4 - число кадров по горизонтали, 8.0f - число кадров анимации, 14.0f - скорость анимации;

Записи для floor интерпретируются аналогичным образом. Думаю Вы сами сообразите, что они означают. Всё полностью аналогично.

Когда всё это сделано и изменения сохранены, запускаем Scene Editor, немного ожидаем пока он загрузит все ресурсы, далее приступаем к созданию нашей первой игровой сцены на движке fle game engine !

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

Создание новой сцены во fle game engine - в редакторе сцен Scene Editor 1.0.2 - File > New

Итак, слева Вы видите игровые объекты, которые можно добавить в сцену.

Нас будут интересовать только floor и ai_player

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

Блок встанет на нужное место.

Создание новой сцены во fle game engine - в редакторе сцен Scene Editor 1.0.2 - выбор и вставка блока floor2

Чтобы блоки сразу выравнивались по опорным точкам сетки нужно включить опцию Options > Snap to Grid. Для ячейки сетки задан размер 100х100 пикселей, как настраивать другие размеры я расскажу далее.

Создание новой сцены во fle game engine - в редакторе сцен Scene Editor 1.0.2 - Чтобы блоки сразу выравнивались по опорным точкам сетки нужно включить опцию Options > Snap to Grid

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

Создание новой сцены во fle game engine - в редакторе сцен Scene Editor 1.0.2 - пример игровой сцены

Далее обязательно сохраните результат своей работы - File > Save и указав имя файла вашей создаваемой сцены. Для сцен рекомендую завести отдельную папку, назвав её например scenes.

Создание новой сцены во fle game engine - в редакторе сцен Scene Editor 1.0.2 - сохранение игровой сцены

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

Это можно сделать задав опцию Options > Get Object On Click.

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

Если опция отключена - то клик правой кнопкой мыши приводит удалению объекта из указанной позиции, а сам он становится текущим и выделяется красной рамкой. Чтобы убрать эту рамку можно нажать клавишу [Del].

Создание новой сцены во fle game engine - в редакторе сцен Scene Editor 1.0.2 - удаление игрового объекта

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

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

Создание новой сцены во fle game engine - в редакторе сцен Scene Editor 1.0.2 - выбор объекта из нескольких наложенных друг на друга

Итак, если всё понятно, и Вы создали игровую сцену и сохранили её, теперь разберемся как добавить в неё несколько особенностей.

1) Ранее мы говорили, что шарик должен проваливаться в ямы. Попробуйте выбрать объект ball и наведите его на одну из ям. Кстати, чтобы уменьшить шарик удерживайте нажатыми одновременно клавиши [Shift] + [Alt] - и нажав левую кнопку мыши перемещайте её указатель, уменьшив шарик до нужных размеров.

Создание новой сцены во fle game engine - в редакторе сцен Scene Editor 1.0.2 - Шарик

У вас могут возникнуть еще дополнительные вопросы: почему шарик не виден когда выбран - или то появляется, то пропадает при перемещении над песчаными блоками.

Ответ прост: его координата z такова, что заставляет его выводиться не перед блоками, а за ними. Значит нужно её изменить.

Для этого отключите опцию Options > Auto Calc Z.

Создание новой сцены во fle game engine - в редакторе сцен Scene Editor 1.0.2 - отключение опции автоматического рассчёта Z

Далее выберите объект none и принудительно задайте значение z = 0.8

Создание новой сцены во fle game engine - в редакторе сцен Scene Editor 1.0.2 - принудительное определение значения z для объекта

После этого снова выберите объект ball и вы увидите что он теперь всегда виден поверх песчаных блоков.

Создание новой сцены во fle game engine - в редакторе сцен Scene Editor 1.0.2 - шарик поверх песчаных блоков

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

Для этого вам всего лишь нужно снова включить опцию Options > Auto Calc Z.

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

Также Вы наверняка заметили, что значение z = 0.8 не совсем подходящее для ball, т. к. блоки в нижней части сцены всё равно перекрывают шарик.

Чтобы этого не происходило надо задать значение z = 0.78

Создание новой сцены во fle game engine - в редакторе сцен Scene Editor 1.0.2 - шарик поверх песчаных блоков в нижней части сцены

На рисунке в поле z вы видите значение равное 0.779999971, т. к. это точное значение z, которое хранится в памяти.

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

У нас остался вопрос, который мы рассмотрим на следующей - 3 странице. Он заключается в том, что шарик, как Вы помните (см. страницу 1), должен проваливаться в яму, а сейчас Вы можете видеть, что он везде выводится поверх ям.

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

подробнее

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

 

к странице 1 к странице 2 страница 3 к странице 4

 

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

Нюрнн не питал ничего плохого к Антону и не желал ему отомстить за выбитые зубы. Он был ему благодарен. Ведь гораздо серьезнее и хуже могло быть если бы тот оказался простым подонком. И просто бы спустил курок. Тогда бы Нюрнну не жить. И ничего бы этого не было.

* * *

После того разговора, со следователем, прошло довольно много времени, что-то около месяца.

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

А тут ещё этот следователь.

Антон преступник ? Он нарушает закон ? В это невозможно поверить. Он мухи не обидит. Всегда чуткий и внимательный. Спокойный. Вдумчивый. С ним всегда интересно. Он может умно пошутить. Рассказать какую-нибудь поучительную историю из своей жизни.

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

Где он сейчас и что с ним ? Может быть он тоже попал в какую-то беду, из которой не может выпутаться самостоятельно ? Также как я, когда он помог мне. Значит и я обязана выяснить и попытаться помочь. Ведь я по-настоящему люблю Антона. Я обязана ему всем, что у меня есть. И ради него я готова пойти на все.

Теперь да. До момента, пока я его не встретила, все было иначе. Я жила только ради себя.

Теперь снова одиночество. Вопросы, на которых пока нет ответа. Где Антон сейчас и как его найти ?

У сложных задач всегда есть решение. Их надо просто разделять на небольшие. А как же тут ?

Ведь я даже не представляю, с чего мне начать.

Аня пришла на работу. Она работала продавцом в супермаркете. Каждый день поток людей.
 Но больше всего, обычно к вечеру. Утром, к открытию, не так много, а днём почти тишина.
 Если бы не обязанности, можно совсем уйти на час, а то и больше.

Однажды в такое время затишья, когда посетителей не было, а все кто работал в эту смену
 (их было не так много, всего 3 человека) так вот, дежурный охранник дежурил где-то на
 другом конце зала, за стойками и полками, оставленными товарами, его совсем не было видно.
 Другие двое продавцов - Лена и Сергей, что-то делали вместе, наверное проверяли срок
 годности товара, или что-то ещё.

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

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

- Не нужно Сережа. Не стоит тебе про это думать и переживать за меня.

- Ладно, больше не буду.

Но Ане приходили мысли одна тяжелее другой: А вдруг она больше никогда-никогда не
 увидит Антона. Вдруг он пропал безвестно и навсегда ?
Она отогнала эти мысли от себя и заставила подумать о чём-то хорошем.

Нет. Она ни за что и никогда не останется теперь одна. Она будет действовать. 
Пока не зная как, но уверена что будет !

Она думала несколько дней и ночей. Ничего дельного не приходило в голову.

Что бы она делала будь на месте Антона ? Но она не могла представить себя на его месте.
Можно ли узнать куда он отправился в этот последний и самый неудачный раз ?
Наверное можно, но как ?

Где найти нужную зацепку ?

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

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

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

Она хотела было выбросить его в мусор, но остановилась и присмотрелась по-внимательнее.

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

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

Она думала об этом утром, думала на работе, думала вечером и по-ночам.
И вот пришел день отгадки. А произошло это так.

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

записка

Аня вышла на улицу. Рабочий день был окончен. Вечерело. Она решила действовать и найти Антона во-что-бы-то-ни-стало.

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

Можно написать в поисковике: Как найти Антона ? Но это не даст ответа. Поисковики выдают только информацию по слову, но не по смыслу, который пользователь может вкладывать в это слово.

* * *

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

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

Надежды не было ? Где-то в глубине души, возможно, еще остались её капли.

Мир который они построили был разрушен. Дорога шла в никуда.

Терзаемая тревожным сном она проснулась. Уже было темно. Дождь барабанил в окно. Но и не только дождь. Был еще какой-то странный звук.

Аня пробралась на кухню: подумала - "возможно форточка от ветра стукнула". Вошла на кухню, зажгла свет и увидела голубя.

Он был весь мокрый, сидел в углу нахохлившись.

- Бедненький, - Аня взяла голубя, пошла в ванную комнату и аккуратно обтерла его полотенцем. Голубь принял это спокойно и как должное.

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

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

- Вот чудеса ! - Аня сразу почувствовала, что вот оно, наконец !

Так и есть !!! Это весточка от Антона.

Он писал: Милая, ничего не бойся. Со мной всё в порядке. Никому ничего не говори и живи как обычно. Через три дня ты получишь конверт. Сделай всё в точности как будет указано в том письме. Целую, любимая. Антон.

Вот оно ! Ура ! Аня уже не могла спать.

Когда она только только уснула, раздался звонок телефона. Она взяла трубку.

- Кто говорит ?

- Слон.

- Откуда ?

- От Верблюда.

- Что Вам надо ?

- Шоколада.

- А мармелада не надо ?

- Я Вас просил мне позвонить, если что-то изменится ? Это Федин.

- Извините, Степан, разве что-то изменилось ? К тому же Вы разбудили меня посреди ночи. Что случилось ?

- Ну я надеялся, что Вы позвоните. Да. Случилось.

- Хорошо. Что нужно сделать мне ?

- Мы должны с Вами встретиться. Знаете ночное кафе недалеко от вашего дома ?

- Да.

- Жду Вас там через полчаса.

- Ок.

* * *

- Итак, Анна, Вы получили письмо ?

- Получила.

- Почему же сразу не сообщили об этом ?

- Потому что я еще не успела решить, будет ли это Вам полезно.

- Хорошо будем считать, что так.

- А откуда Вы узнали про письмо ? Вы что, за мной следили ?

- Да, но это было сделано в целях Вашей же безопасности.

- Вы лжете. Зачем Вам это письмо ?

- Вы же умная девушка и понимаете, что в этом мире не всё так просто.

- Вам нужно письмо ?

- Мне нужна информация. Я хочу понять кто за этим стоит и для чего они это делают.

- Понятно инспектор, Вы хотите поймать более крупную рыбу, а я лишь наживка.

- Что поделать. Все мы игрушки в чьих-то руках. Я против Вас лично ничего не имею.

- Тогда давайте ближе к делу. В письме говорится ...

* * *

Антон спал и ему снилось недалекое его прошлое. Как он осваивал Windows Sockets 2.

ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.WIN32COM.v10.en/winsock/winsock/using_winsock.htm

Тестирование на примере приложения с диалоговым окном MFC.

по нажатию ОК происходит закрытие окна.

Надо чтобы окно не закрывалось - чтобы можно было проверить работу win sock.

Для этого делаем дополнительную кнопку клик по которой будет методом, в котором будет
тестироваться функциональность Windows Sockets 2.


Пример, где можно посмотреть как обрабатывается нажатие кнопок на форме -
ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.VisualStudio.v80.en/dv_vcsample/local/sampleexecutables/MFC/general/CmnCtrl1.zip


вкладка -
CAnimateControl

содержит кнопки Play и Stop

Как реализуется нажатие на эти кнопки ?


на форме CAnimateControl
есть кнопка Play
IDC_PLAY


в коде есть -

BEGIN_MESSAGE_MAP(CAnimateCtrlPage, CPropertyPage)

//...

ON_BN_CLICKED(IDC_PLAY, OnPlay)






class CAnimateCtrlPage : public CPropertyPage
{

	afx_msg void OnPlay();
	
	
	
//...


void CAnimateCtrlPage::OnPlay()


Нужно записывать код вручную или надо генерировать ? И если генерировать, то как ?


На кнопке кликаем правой кнопкой и генерируем Add Event Handler


Получилось -

void Cwinsock_samp1Dlg::OnBnClickedButtonTest()

Как теперь получить IDC_STATIC и установить его текстовое свойство, чтобы
увидеть результат работы ?

к странице 1 к странице 2 страница 3 к странице 4

подробнее

Модуль галерей для любой cms

Модуль галерей для любой cms
multi gallery
Приобрести комплект megainformatic cms express files + модуль multi gallery

Стоимость: 1500 руб.



Вашему вниманию предлагается модуль для создания галерей на вашем сайте под управлением любой cms.

Данный модуль успешно тестировался и внедрен в сайты на joomla, opencart, dle, megainformatic cms

http://грандфорж.рф/gallery.html (joomla)

http://jado74.ru/index.php?route=product/category&path=64_68 (opencart)

http://megainformatic.ru/ (megainformatic cms данный сайт, на котором вы просматриваете эту страницу)





В комплект входит готовая cms - megainformatic cms express files + модуль галереи и описание с инструкцией по интеграции в сайт на любой cms.

Пример встроенного в сайт на megainformatic cms express files модуля галереи

ОТЛИЧИТЕЛЬНЫЕ ОСОБЕННОСТИ

- весь необходимый код в 1 php файле;

- простой механизм встраивания требующий минимум изменений в вашей cms;

- универсальность - можно интегрировать в любую cms на php;

- простота использования - нужные галереи представляют собой обычную папку, а для вывода на сайте вам достаточно вставить в статью специальный тег - |gallary|dir_name|/gallary|;

- открытый исходный код;

- неограниченное количество галерей используемых как на конкретной странице сайта, так и по сайту в целом;

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

     
  Исходный код примера игры Donuts3D из DirectX SDK 8.1 на Delphi 6-7  
     
 
Скачиваний : 14
 
     
 

Исходный код примера игры Donuts3D из DirectX SDK 8.1 на Delphi 6-7

===============================================
Donuts3D (версия 13.07.2007)
===============================================
автор конверсии на Delphi 6-7: Синицин А.С.
дата публикации: 15.07.2007

Введение

Вашему вниманию предлагается исходный код примера игры Donuts3D взятый из DirectX SDK 8.1 (написан на C++) и конвертированный на Delphi 6-7 с использованием библиотеки с ОБЩИМ КОДОМ.

Пример игры служит хорошей технологической основой с которой можно начать разработку собственного игрового проекта Delphi DirectX 8.1.

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

- Наличие среды Delphi 6, 7 или выше для компиляции исходного кода, наличие среды MSVS 7, 2003 или выше для редактирования и компиляции ресурсного файла *.res;

- Операционная система Windows 98SE/2000/XP sp2 или выше с установленным DirectX 8.1 или выше;

- минимум ПК уровня Pentium II с тактовой частотой 300 МНz или выше, RAM 32 Mb и выше, 4-8 Mb Video RAM и выше, DirectX-совместимая звуковая карта, мышь.

- Рекомендуется наличие DirectX SDK 8.1 или выше (для изучения DirectX);

- Терпение, старание и желание создавать компьютерные игры.

Особенности примера

Особенности кода

- Программный код на Delphi 6-7, WinAPI без использования VCL, загрузка формы из файла-ресурсов *.res сгенерированного в MSVS 7, 2003 и выше.

- для компиляции необходима библиотека с ОБЩИМ КОДОМ на Delphi 6-7 (содержит заголовки Direct3D8.pas, D3DX8, DirectInput8, DirectSound8, DirectMusic8, D3D Utils, SXModPlayer2 и т.д.);

Особенности игры

- управление от клавиатуры, мыши (DX8_DIUtil8.pas);

- 3D-камера с 3мя видами: со стороны, от третьего лица, от первого лица;

- воспроизведение звуков (DMUtil.pas);

- загрузка медиа-файлов из внешних файлов/из ресурсов внутри EXE-файла;

- анимация 2D спрайтов, представление их в сцене в виде 3D-объектов (за счет billboarding);

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

Исходный код содержит:

- Демонстрацию того, как конвертировать исходники C++ из DX SDK на Delphi;

- Шаблон того, как начать создание собственного игрового проекта Delphi DirectX 8.1;

- Реализацию и заголовочные файлы на объектном Паскале (библиотека с ОБЩИМ КОДОМ).

 
     
 

Путеводитель по исходному коду

Вступление

Кого-то из нас мучают вопросы: Можно ли научиться создавать компьютерные игры? Можно ли писать их не на C++, а каком-то другом языке?

Ответом служит данный пример. Во-первых, сама идеология DirectX рассчитана на любой язык программирования (любую среду разработки), но так уж исторически сложилось, что основная база написания самого DirectX и DirectX-приложений - это C++ ориентированная среда. Ближайшим средством разработки является конечно же MSVS (Microsoft Visual Studio). Однако существуют и другие среды, например, такие как C++ Builder и Delphi компании Borland.

Замечу сразу, что я, как автор данного примера не буду спорить о том, какая из сред разработки лучше или хуже и чем. Рассмотрение этого вопроса оставляю Вам - читателям этих материалов. Скажу лишь, что для меня ситуация сложилась таким образом, что выбор пал на Delphi. Несомненно знание С++ никоим образом Вам не помешает, а только лишь поможет! Если Вы еще не решили с чего начинать, что смело начинайте с C++ и MSVS! Однако если все-таки, по каким-то причинам, Вам всё же ближе Delphi... Начнём!

Особенности написания кода

Для работы с интерфейсами DirectX Вам понадобятся объявления типов и COM-классов DirectX. К счастью, в Интернет можно найти заголовочные файлы переписанные на Delphi. Кроме того, они служат примером того, как конвертировать C++ заголовки на Delphi. Эта информация и эти навыки Вам тоже рано или поздно понадобятся, особенно если Вы планируете плотно засесть за Delphi DirectX. DirectX постоянно обновляется. После выхода такой, ставшей практически стандартом де-факто платформы как DirectX 8.1 сразу же последовали DirectX9, DirectX9c. На подходе уже DirectX10, который Вы сможете применять в Windows Vista. Поэтому переход на эти платформы потребует от Вас новых конверсий на Delphi. Есть конечно и OpenGL... Но, опять таки, я не являюсь специалистом по OpenGL. За всеми технологиями сразу не угонишься. Кроме того и сама среда Delphi тоже постоянно обновляется - Delphi 9, Delphi 2005 ... Это тоже требует постоянных обновлений кода.

Остановившись пока на чем-то одном, чтобы развивать свои навыки не вширь, а вглубь выберем Delphi 6 - 7 и DirectX 8.1 и возьмем пример игры Donuts3D. Работа с DirectX потребует от Вас, независимо от того, на чем Вы будете писать (на С++ или Delphi), умения писать приложения WinAPI без использования кода подключаемых библиотек, таких как MFC, VCL. Конечно же использование MFC (на С++) или VCL (на Delphi) использовать Вам никто не запрещает, более того, на каком-то этапе Вам это обязательно потребуется как технология или как пример ее реализации. Однако без знания WinAPI двигаться дальше просто не имеет смысла, т.к. DirectX это COM-технология, а использование COM - это WinAPI и ... Delphi. Delphi и VCL тоже построены на принципах COM - т.е. Component Object Model.

Как написать WinAPI

Запускаем Delphi 6-7;

Создаем новый проект -
File > New > Application

Т.к. мы будем писать WinAPI приложение (без использования VCL), то нам необходимо избавиться
от всего лишнего, что было автоматически создано Delphi -
пунктом меню Project > Remove from Project удаляем из проекта модуль Unit1 с формой окна приложения.
В ответ на вопрос Remove ... ? отвечаем Yes.

Теперь нужно открыть модуль файла проекта (по-умолчанию Project1.dpr) и отредактировать его содержимое. Для открытия его нажмите комбинацию Ctrl+F12 и выберите из списка Project1. Этого же
можно добиться выбором пункта меню View > Units.

Сначала сохраним проект в файле под нужным нам именем - File > Save Project As и указываем требуемую папку и имя, в нашем случае, Donuts3D, для файла проекта.

Используя MSVS открываем оригинальный C++ проект и компилируем его для создания скомпилированного файла ресурсов, в нашем случае - donuts.res

Теперь возвращаемся к Delphi

Итак, содержимое файла Donuts3D.dpr нужно отредактировать следующим образом -
---------------------
uses
Windows,
donutsU in 'donutsU.pas';

{$R donuts.res}

var
hPrevInst: LongWord;
begin
hPrevInst := 0;
{$WARN SYMBOL_PLATFORM OFF}
ExitCode := WinMain(HInstance, hPrevInst, CmdLine, CmdShow);
{$WARN SYMBOL_PLATFORM ON}
end.

-----------------------
Где donutsU - это модуль, который нужно добавить командой File > New > Unit и сохранить
под именем donutsU.pas в папке Delphi-проекта Donuts3D

Теперь нужно настроить Ваш проект для использования папки с ОБЩИМ КОДОМ.
Предположим, что папка с ОБЩИМ КОДОМ называется common и находится на 2 уровня
выше, чем папка Donuts3D, т.е. относительные пути из папки Donuts3D к папке с ОБЩИМ КОДОМ
запишутся следующим образом -
..\..\common
..\..\common\Borland_D6-7

Чтобы задать эти пути, как используемые Вашим проектом дайте команду -
Project > Options > Directories/Conditionals > Search Path > ... и добавьте эти пути кнопкой Add.
Если Delphi не подсветит пути серым (как недоступные), значит Вы сделали настройку правильно,
в противном случае - Вы где-то напутали с указанием пути. Можно задать и абсолютные пути,
но они менее универсальны.

Остается сохранить измененные параметры проекта - File > Save All.

Далее Вам остается только заниматься конверсией и написанием кода внутри файла donutsU.pas,
создавать и добавлять необходимые новые модули и писать их содержимое, а также добавлять их
использование в секцию uses интерфейсной части модуля donutsU.pas или других модулей.

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

 
     
  Для облегчения понимания функционирования типового DirectX-приложения приведем структурную схему функционирования -  
     
  Структура типового DirectX-приложения  
     
 

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

Create_ - функция начальной инициализации окна приложения;

OneTimeSceneInit - функция, содержащая вызовы других функций, отвечающих за инициализацию DirectX-объектов приложения - CreateInputObjects (объекты управления приложением через интерфейс IDirectInput), CreateSoundObjects (инициализация звука и музыки, загрузка необходимых файлов), CreateDisplayObjects (инициализация объектов Direct3D-сцены, загрузка необходимых моделей, текстур), ConstructMenus (специфичная для примера Donuts3D функция, отвечающая за инициализацию специфических объектов экранного меню приложения), AsAppState_LoadSplash - это не функция, а тип состояния приложения Donuts3D, который устанавливается по окончании выполнения функции OneTimeSceneInit (специфичный для данного примера).

WndProc - оконная процедура приложения. Она называется процедурой обратного вызова, т.к. вызывается не самим приложением, а операционной системой, которая направляет поток сообщений, предназначенных данному приложению путем вызова этой функции. Из этой процедуры происходит вызов функции обработки сообщений приложения - MsgProc. Процедура WndProc - этот как раз отражение структуры функционирования типового WinAPI-приложения, управляемого потоком сообщений (событий). Как и положено в основу идеологии данной схемы - большую часть времени получает управление операционная система. При возникновении событий, направленных приложению, находящемуся в фокусе, ему направляются сообщения и оно обрабатывает их. Особенностью DirectX-приложений по сравнению с чистыми WinAPI-приложениями, является то, что окончив обработку поступивших сообщений приложение продолжает функционировать в цикле Idle Time (т.е. во время бездействия приложения) - происходит выполнение наиболее ресурсо-емких операций - отрисовка 3D-сцены, все остальное время приложение открыто для принятия сообщений (действий со стороны пользователя). Пример реализации этого вы найдете в функции Run примера Donuts3D.

Run - запуск цикла обработки сообщений. Цикл не завершается пока функционирует приложение.

Во время Idle Time (бездействие - отсутствие действий со стороны пользователя) происходит вызов функций FrameMove и Render отвечающих за формирование анимации и отрисовку готового кадра соответственно. Как это происходит - см. исходный код функция Run.

 
     
  исходный код примера игры + откомпилированный EXE-файл + необходимые мультимедиа-файлы (1,59 Mb)
Скачиваний : 14
 
     
  архив с ОБЩИМ КОДОМ (766 Кб)766 Кб  
     
     
     
     
     
     
     
     
     
     
     
     
     
     
megainformatic live chat
Начать беседу
X
 

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



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


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