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


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

megainformatic - Мастер-класс: Создание модели и текстуры Коммандного Центра (как в StarCraft 2) Часть 6
        Мастер-класс: Создание моде
подробнее...

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

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 cms social

Реализованные на нём решения -

http://megainformatic.ru/webprojects/megainformatic_cms_social/

Описание возможностей, функционал и документация

Сравнение задач поставленных в ТЗ и фактически решенных

задача по ТЗ решение по факту
     
1. Личный кабинет для 4-х категорий:

- Агенты

- Модераторы

- Администраторы

- Общий кабинет

Система личных кабинетов с ролями:

- СУПЕРАДМИНИСТРАТОР

- МОДЕРАТОР

- АГЕНТ

- Зарегистрированный

2. По сути, Личный кабинет одинаковый для всех, только с разными правами. Права устанавливает Администратор [ставит/снимает галочки] для других Реализовано в ЛК СУПЕРАДМИН пункт меню УПРАВЛЕНИЕ > НАСТРОЙКИ
3. Предназначение скрипта (сервиса) – учитывать посетителей на сайте пришедших по реф.ссылкам от Агентов. Реализована система реферальных ссылок - каждый пользователь имеет личную реферальную ссылку и набор личных страниц, связанных с ней.
4. А также дальнейшую работу Агентов с клиентами. Работа ведется в форме ответов на вопросы, которые были заданы через фомру вопроса на личной странице КОНТАКТОВ Агента. Страница также содержит редактируемый в ЛИЧНОМ КАБИНЕТЕ контент. Вопросы заданные со страницы попадают в папку ВХОДЯЩИХ сообщений ЛИЧНОГО КАБИНЕТА Агента.
5. Агент работает за проценты. Чтобы у него был интерес искать клиентов в интернете, нужно «привязать» посетителей к Агенту. Агент распространяет реф.ссылку в соц.сетях, система учитывает посетителей по реф.ссылке и «прикрепляет» их (клиентов) за Агентом. Ведется полный лог посещаемости всех страниц, лог посещаемости кандидатов на регистрацию и ждущих регистрацию. В логе четко отражены все ссылки, поэтому можно определить какие страницы каких агентов наиболее посещаемы.
6. Далее клиент знакомится с контентом сайта, переходит в «Контакты» и ему показывается контактная страница (приветственная страница) Агента, чья реф.ссылка. На этой странице есть Форма обратной связи. Клиент заполняет Форму (задает вопрос) и это сообщение уходит в личный кабинет Агента. Реализовано в форме ЛИЧНЫХ СТРАНИЦ пользователей сайта. Страницы могут редактироваться пользователем в его личном кабинете и содержат редактируемый и нередактируемый контент.
7. Личный кабинет Администратора и Общий кабинет, регистрируется в админке системы управления джумлы. Все остальные «кабинеты» регистрируются через сайт, а именно, Администратор (в своем кабинете) выбирает пользователя, кликает на кнопку «Ок», получает ссылку, и отправляет пользователю на почту Реализовано в форме визита по ссылке ХОЧУ ЗАРЕГИСТРИРОВАТЬСЯ с последующей регистрацией ЛИЧНОГО КАБИНЕТА СУПЕРАДМИНОМ или ЗАМЕНЯЮЩИМ ЕГО ЛИЦОМ.
8. Нужно сделать скрипт для сайта (одним или нескольким файлами), под системой управления Джумла. [этот скрипт должен устанавливаться через админку (администратором) стандартным методом на любой сайт джумлы. Скрипт получился таким сложным, что написание и интеграция заняли более 3 месяцев или в человеко-часах порядка - 600 часов. Скрипт устанавливается как самостоятельная система, но работает в связке с сайтом, в скрипт которого она интегрируется. Установка занимает всего 7 элементарных шагов.
9. Реф.ссылка (хвостик) подставляется номер ID. Пример реф. ссылки - http://megainformatic.ru/webprojects/megainformatic_cms_social/?rid=4
10. Вход в личный кабинет только зарегистрированным пользователям. Свободной регистрации нет. Система ссылок ХОЧУ ЗАРЕГИСТРИРОВАТЬСЯ и отслеживания этапов ВОПРОС, Посещение ХОЧУ Зарегистрироваться, Регистрация
11. Окно «Вход» (логин + пароль) располагается на первой странице сайта, с левой строны Реализовано в форме ВХОД НА САЙТ в левой колонке сайта
12. Функции кабинета и права доступа реализовано: профиль, список рефералов (у СУПЕРАДМИНА), реферальная ссылка, личные страницы, статистика посещений (только общая без фильтрации), полнофункциональная система личных сообщений, вставка контента СУПЕРАДМИНОМ в страницы пользователей
13. Создание контента на страничках в личном кабинете, редактирование, осуществляется через текстовый редактор, который установлен в Джумле для редактирования всех страниц сайта, т.е. используется один и тот же редактор. Используется встроенный текстовый редактор контента, аналогичный редактору Joomla.
14. Регистрация Агентов закрытая. Желающий сотрудничать с компанией должен написать запрос через «Форму обратной связи» на странице «Контакты» и ему пришлют реферальную ссылку. Регистрация Агентов только по реферальной ссылке. Об этом уже упоминалось в пункте 10.
15. ОПРЕДЕЛЯЕМ ПОСЕТИТЕЛЕЙ ПО IP-АДРЕСУ, МАК АДРЕСУ, КУКИСАМ Полная статистика посещаемости всех страниц сайта.
16. Каждый посетитель, зашедший на сайт имеет свой IP-адрес и мак адрес. Скрипт его распознает, а так же запоминает куки. Если посетитель регистрируется на сайте, то он включается в список того Агента, по чьей ссылке он зашел на сайт. Полная статистика посещаемости всех страниц сайта. Учёт задавших вопросы, посетивших ХОЧУ ЗАРЕГИСТРИРОВАТЬСЯ и зарегистрированных.
17. Если посетитель кликает на страничку "Контакты", то открывается общая страничка контактов, а поверх неё заставка полупрозрачная - Окно "Ваш персональный менеджер". Личная страница Контакты. Без прозрачного окна - для Персональный Менеджер зарезервирована отдельная личная страница.
18. "Ваш персональный менеджер" - это страничка с контентом, который наполняет Агент. Страница Персональный менеджер доступна для редактирования в личном кабинете Агента.
19. В этом окне предлагается нажать на кнопку «Получить персональное предложение». При нажатии на КНОПКУ посетитель переходит на Приветственную страницу. не реализовано
20. Приветственная (продающая) страница, с приветственным текстом и контактными данными того человека, по чьей ссылке он зашел на сайт, там же форма обратной связи (сообщение/вопрос уходит тому, по чьей ссылке он зарегистрировался). система личных страниц, система личных сообщений, система реферальных ссылок, редактор контента личных страниц
21. Цель приветственной странички - чтобы пользователь - позвонил, или написал через Форму обратной связи. эта цель решается на странице КОНТАКТЫ указанного пользователя и содержит форму обратной связи и дополнительный контент, который можно добавить через редактор контента в личном кабинете
22. Если чел. пришел не по реф.ссылке (пришел с Яндекса), то Окно "Ваш персональный менеджер" не открывается, а открывается страница "Контакты" компании. Открываются стандартные страницы сайта.
23. Администратор может выставлять время хранения истории посещений сайта пользователями, т.е. через заданное время очищается история посещения (удаляется IP-адрес, мак-адрес, кукисы). не реализовано
24. По истечении указанного Администратором времени история посещений очищается, т.е. след удаляется, и этот мак-адрес (IP-адрес) «чистый» в дальнейшем может «прикрепиться» к другому Агенту. нереализуемо - IP адрес может меняться, поэтому закрепление никогда не будет работать.
25. ОБРАТНАЯ СВЯЗЬ С КЛИЕНТОМ реализовано в форме системы личных сообщений.
26. Посетитель зашел на сайт, скрипт его распознал, по чьей реф.ссылке он зашел. реализовано в форме учета посещаемости.
27. Посетитель задает вопрос через "Форму обратной связи" и вопрос улетает к человеку, по чьей реф.ссылке он зашел и задал вопрос. реализовано в форме системы личных сообщений.
28. В Личном кабинете появляется новая запись в списке контактов (выделена жирным)(не прочитанное письмо) Хозяин кабинета читает письмо, пишет ответ, и строчка в списке становится обычная (не жирная). Если письмо прочитал, но ответ не написал, то строчка остается жирной. реализовано в форме системы личных сообщений.
29. В течение 24 часов жирная строчка "ждет", чтобы на неё ответили, и через 24 часа отправляется напоминалка хозяину кабинета, что "надо ответить на вопрос". реализовано в форме НАСТРОЙКИ в личном кабинете СУПЕРАДМИНА. Система на базе модуля cron а также задач для отслеживания отвеченных сообщений по заданному времени.
30. В административной части сайта можно задавать произвольно время "напоминания", и время "ожидания" для этой строчки. Далее, жирная строчка ещё ждет 12 часов, и если ответа нет, то эта строчка исчезает из кабинета хозяина и переходит в Общий кабинет. Любой желающий может прихватизировать эту жирную строчку. и тот, кто ответит на заданный вопрос, в его личный кабинет и перейдет эта строчка (строчка нашла нового хозяина). см. пункт 29
31. Если посетитель зашел на сайт случайно (с яндекса, закладок и т.д.), при этом он задал вопрос, то его вопрос (сообщение) будет в списке Общего кабинета. нереализуемо, по причине неоднозначности. Если посетитель !!!ДАЖЕ СЛУЧАЙНО!!! Зайдёт по чье-то реферальной ссылке мы не можем определить действительно ли он зашел к нам случайно. Поэтому соответственно нельзя однозначно решить куда отправить сообщение - В ОБЩИЙ КАБИНЕТ или в кабинет указанного АГЕНТА. РЕШЕНО ТАКИМ ОБРАЗОМ: если пользователь зашел по ссылке которая ведет на страницу КОНТАКТОВ и задал вопрос, то вопрос уходит владельцу данной страницы. Для типовых (не личных) страниц сайта таким пользователем может быть СУПЕРАДМИН. Поэтому сообщения заданные с формы вопроса, размещенной на типовой странице сайта может быть однозначно направлено СУПЕРАДМИНУ или куда-либо еще, например в ОБЩИЙ КАБИНЕТ.
32. Общий кабинет: это как доска объявлений, любой Агент может туда зайти, ответить на вопрос, и ответ клиенту уже будет считаться от имени этого Агента. реализовано в форме сообщений ОБЩИЕ в разделе ИСТОРИЯ > Сообщения ЛИЧНОГО КАБИНЕТА.
33. У Агентов ведется история сообщений (переписки) (как в почтовых программах) с отображением даты и времени. реализовано в форме системы личных сообщений
34. В поле «Для заметок» пользователи могут оставлять заметки, комментарии. Если комментарии есть, то светится ярко с карандашом, если комментариев нет - картинка, серенька, без изображения карандаша с зеленым овалом - система личных сообщений
35. «Для заметок» создается одно общее окно для всех сообщений одного автора. Сообщения разные, а поле «для заметок» одно, оно прикрепляется к автору, а не к сообщениям. система личных сообщений
36. Модератор и администратор могу просматривать сообщения Агентов, и сортировать их: а) по имени Агента; б) по времени и дате их регистрации; в) по количеству сообщений в переписке с каждым клиентом. не реализовано
     
     






ЗАДАЧИ НЕЯВНО ОПИСАННЫЕ В ТЗ либо возникшие в ходе решения поставленных в ТЗ задач

задача решение
37. организация хранения большого количества личных папок и файлов пользователей реализовано хранилище личных папок с автоматической иерархией и отслеживанием предельного количества файлов (папок) на папку.
38. выгрузка файла фото пользователя в профиль реализовано
39. блокировка попыток взлома аккаунтов и кражи персональных данных пользователей реализовано
40. модуль cron для выполнения задачи отслеживания отвеченных сообщений и переноса их в папку ОБЩЕГО КАБИНЕТА реализовано
41. реализация выполнения задачи отслеживания отвеченных сообщений и их фактического переноса в папку ОБЩЕГО КАБИНЕТА реализовано
42. модуль tpl_tags для подстановки блоков контента в личные страницы пользователей реализовано
43. модуль user_page для вывода личных страниц пользователей реализовано
44. модуль page для вывода типовых страниц сайта реализовано
45. стандартный функциональный контент для личных страниц пользователей реализовано
46. типовые страницы сайта реализовано
47. модуль и форма входа с сайта в личный кабинет пользователя реализовано
48. механизм регистрации по ссылкам ХОЧУ ЗАРЕГИСТРИРОВАТЬСЯ присылаемым после отправки вопроса через форму контактов реализовано
49. учет кандидатов на регистрацию - задавших вопрос, но не посетивших ссылку ХОЧУ ЗАРЕГИСТРИРОВАТЬСЯ реализовано
50. учёт пользователей посетивших ссылку ХОЧУ ЗАРЕГИСТРИРОВАТЬСЯ в виде Ждущие регистрацию реализовано
51. модуль отправки личных сообщений и уведомлений на е-майлы пользователей и агентов реализовано
52. модуль контактов для перенаправления вопросов в папку личных сообщений агента реализовано
53. модули и обработчик страницы ХОЧУ ЗАРЕГИСТРИРОВАТЬСЯ и ссылок перехода на неё реализовано
54. подстыковка модулей cron и учета посещаемости к вызовам с сайта реализовано
55. интеграция системы в joomla для совместной работы с joomla - сайтом реализовано
56. разработка и описание механизма установки системы на сайт joomla для совместной работы с joomla - сайтом реализовано
57. набор модулей для административной части сайта обеспечивающих функциональные узлы механизмов личных кабинетов, а также целый ряд прочих задач которые не приведены здесь по причинам недостатка времени на их цельное описание ... реализовано
подробнее

     
  Уроки php  
     
  [другие статьи]  
     
 

В данной серии статей Вы узнаете об основах создания сайтов на языке php.

Вы можете создавать скрипты на языке php и выполнять их на своём ПК, либо на хостинге с поддержкой языка php и баз данных my sql.

Можно начать работу сразу же с готового сайта. Для этого советую взять за основу одну из готовых систем для создания сайтов на php с открытым исходным кодом:

- megainformatic cms free;

- megainformatic cms express;

- megainformatic cms express files;

 
     
  Рассмотрим следующие вопросы:  
     
  1) Введение в язык php;  
     
  2) Работа с базами данных MySQL Описано как создать простейший счётчик посещаемости.  
     
  3) Выводим дату и время в формате RU  
     
  4) Добавляем созданный счетчик на все страницы Вашего Сайта  
     
  5) Что нужно для создания собственного сайта ?  
     
  6) Шаги, которые потребуются для создания простого и функционального сайта  
     
  [другие статьи]  
     
подробнее

     
 
megainformatic cms free

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

megainformatic cms express - это простое, быстрое и очень компактное решение для создания первого вашего сайта. Данная версия использует базы данных my sql. Система достаточно компакта и проста в установке.

Очень проста в установке - достаточно вам скопировать все файлы на ваш хостинг и создать базу данных и сайт готов к работе !!!

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

 

 

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

 
     
 

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

Особенности:

- очень компакта и быстра в работе и развертывании сайта;

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

- быстрая и простая установка;

- подробное описание возможностей;

 
     
 

Чтобы создать свой сайт быстро и легко - приобретите megainformatic cms express всего за 100 рублей, получите дистрибутив, распакуйте его и скопируйте полученные файлы на свой хостинг. Также создайте посредством phpMyAdmin базу данных и разверните базу данных сайта в соответствии с инструкцией.

Ваш сайт готов к работе !!!

 
     
     
 

Если возможности megainformatic cms express, вам кажутся ограниченными и Вы хотите чего-то большего - обратите внимание на следующие продукты -

megainformatic cms e-pro

 
     
  megainformatic cms e-shop  
     
  megainformatic cms e-mailer  
     
 

Обновления в системе megainformatic cms express.

14.04.2012 разработан модуль автоматической установки системы на ваш сайт. Код установщика подробно описан в статье - 

Как создать инсталлятор для собственной cms ?

Теперь приобретая систему megainformatic cms express Вы получаете встроенный инсталлятор для первоначальной установки системы на Ваш хостинг. Инсталлятор позволит вам ускорить и упростить задачу по созданию вашего первого сайта. Развертывание сайта (включая копирование всех файлов на ваш хостинг) проходит в течение 10-15 минут. Сразу же после этого Ваш сайт начинает работать.

 
     
     
     
  Удачи вам в создании собственного виртуального интернет-пространства !!!  
     
     
     

 


подробнее

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 руб.

Тогда вы получите более свежую версию Scene Editor fge 1.0.2 (на текущий момент) с поддержкой большего количества возможностей: сетка, настройки, скроллинг и другие. В бесплатной версии эти возможности не поддерживаются. подробнее о составе платной подписки.





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

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

Добавлены 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), должен проваливаться в яму, а сейчас Вы можете видеть, что он везде выводится поверх ям.

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

Парсинг сайтов - введение



[уроки php]  [регулярные выражения] 



Что такое парсинг сайтов и для чего он нужен ?

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

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

Типичный пример парсера - это парсер какого-либо форума или интернет-магазина.

Цель такого парсера - отслеживать изменения на сайте и сохранять их где-то у себя.



Как выполнить парсинг сайта используя php ?

Кликнув по ссылке -

Пример 1

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

Вот какой php код при этом используется -

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Simple site parser by megainformatic</title>
</head>
<body>

<?php


/* на данной странице используются и некоторые html-теги чтобы не было нарушений кодировки */

/* для начала нужно определить сайт, который мы будем парсить - сайт донор */

$site_donor_url = 'http://doska.obninsk.ru/'; /* данный сайт взят без какой-либо цели практически наугад просто для примера */

/* далее выполняем загрузку страницы с этого сайта в переменную скрипта */

/* сделать это можно самыми различными способами, самый простой - через открытие файла */

$site_page_strings_array = file($site_donor_url);

/* получив данные с сайта пока просто выведем их */

echo '<pre>';
var_dump($site_page_strings_array);
echo '</pre>';

?>
</body>
</html>



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

И сразу же обратим внимание на 2 нюанса, которые очень часто сбивают с толку, особенно если Вы впервые осваиваете php и технологию парсинга сайтов.



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

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

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

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

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

2) Сайт-донор не открывается через скрипт парсера.

Это может быть связано с 1 причиной, а может быть так, что на сайте доноре включены программы фильтрации IP адресов - обычно это делается для защиты от DDoS атак, но могут быть и другие причины (например защита от злобных спаммеров :)))) )

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

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

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

max_execution_time = 60

В самом скрипте для этого можно использовать функцию - set_time_limit()

Но следует учесть что скрипт не должен работать в БЕЗОПАСНОМ РЕЖИМЕ safe_mode. Есть и другой момент - в php начиная с версии 5.4.0 возможность использования БЕЗОПАСНОГО РЕЖИМА признана устаревшей.

Так что как видите всё более чем запутанно и должно решаться в каждом конкретном случае.

Чтобы выполнение скрипта не зависело от времени обращения и ожиданию отклика от сайта донора можно использовать сокеты. Для этого в php есть функция fsockopen. И я уже рассматривал работу с ней в статье - Работа с сокетами fsockopen из php

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

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

Для работы php через proxy нужно:

Для Unix систем необходимо собрать PHP с опцией --with-curl[=DIR], где DIR - имя директории, содержащей поддиректории lib и include. Директория "include" должна содержать поддиректорию "curl" с файлами easy.h и curl.h. Директория "lib" должна содержать файл libcurl.a.

Для Windows систем необходимо установить PHP с поддержкой данного модуля, а потом скопировать файлы libeay32.dll и ssleay32.dll из директории DLL Win32 дистрибутива PHP в директорию SYSTEM (Нпример C:\WINNT\SYSTEM32 или C:\WINDOWS\SYSTEM).

Что такое libcurl Libcurl – это библиотека функций, которая позволяет взаимодействовать движок php с удалёнными серверами, по различным протоколам. Пример получения контента с удалённой страницы через PROXY:

<?php
//создаём функцию
function get_proxy($url, $proxy) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.1) Gecko/2008070208');
curl_setopt($ch, CURLOPT_PROXY, "$proxy");
$ss=curl_exec($ch);
curl_close($ch);
return $ss;
}

//вызываем функцию
$proxy = '112.25.12.37:80';
$content = get_proxy('http://300kbit.ru/',$proxy);
echo $content;
?>

Идём дальше.

Обработка данных полученных с сайта-донора т. е. непосредственно парсинг сайта на php.

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

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

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



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


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