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


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

megainformatic - Уроки css - атрибут position
Уроки css - атрибут position Сегодня Мы с Вами рассмотрим применение атрибута position [к содержанию] Приготовьтесь много экспериментировать, потому что настоящая верстка - это эксперименты, пробы и ошибки. Особенно когда речь заходит о кроссбраузерности - т. е. одинаковом результате в разны
подробнее...

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

megainformatic - Глубины программирования на C++

megainformatic - Убираем лимит на размер импортируемого файла в PhpMyAdmin

megainformatic - Как создать torrent файл

megainformatic - Нужна ли валидация вашему сайту ?

megainformatic - Антивирус DrWeb

megainformatic - Калькулятор рассчёта стоимости зубопротезирования для стоматологической клиники

megainformatic - Что такое BitTorrent (БитТоррент)

megainformatic - Миссис Даутфайр 1993 фильм torrent

megainformatic - Как скачивать торрент-раздачу ?

megainformatic - Автотелега фильтр

megainformatic - Фильмы

megainformatic - Fahrengeit Фаренгейт игра 2006 для PC

megainformatic - Fez игра для PC 2013

megainformatic - Дневник памяти - фильм 2004

megainformatic - Scooter - The night - Video and Lyrics - Скутер - Ночь - Видео и лирика

megainformatic - Если всё же неудача

megainformatic - Смерть или искупление или избавление

megainformatic - По ту сторону

cj megainformatic - музыкальный альбом БЕСКОНЕЧНОЕ ДВИЖЕНИЕ ОЖИДАНИЕ И ДЕЙСТВИЕ

megainformatic - Костя Коробкин - Секретный проект - интерактивный комикс

megainformatic - Основы анимации во флеш на примере анимирования простейшей окружности

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

megainformatic - Я пишу музыку для себя и для продажи

megainformatic - Статьи на околомузыкальные темы - осень 2014 часть 1

megainformatic - рассказ - Чужие воспоминания - автор Синицин Андрей - 24.09.2014

megainformatic - Сайты живущие вне поисковых систем. Есть ли такие и как их найти ?

megainformatic - Game craft - проект разработки игровых и мультимедийных проектов

подробнее


[к содержанию] [другие статьи Тимонина Андрея]

DirectX9. Создаем основной класс обработки графики.

автор: Тимонин Андрей

дата публикации на сайте Мега Информатик: 18.11.2012

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

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

Здесь я хочу затронуть основные, интересные для меня, моменты. Рассказать вам с чего нужно начинать делать свое первое 3д или 2д приложение.


Существует 2 основные низкоуровневые библиотеки для вывода графики, над которыми пишутся движки, применяемые как в сфере разработки игр, так и прочих графических приложений не связанных с геймдевом. Это DirectX, на данный момент вышла 11 версия и OpenGl. В этой статье мы будем касаться 9 версии директа. Другие версии могут немного отличаться.

Результат наших действий будет такой, как на скриншоте.

И так, перейдем к делу... У нас получается такой интерфейс класса. Здесь все, что необходимо для работы с графическим устройством. По крайней мере, что нам интересно на данный момент. Часть методов я приведу, снабдив, необходимыми для понимания комментариями. Класс у нас в единственном экземпляре, что дает нам возможность объединить возможности в одном классе. В том числе хранение и работа с текстурами и шейдерами. Это будет тема для одной из следующих статей. Смотрим код.

class Graphics : public singleton<Graphics>
{
friend class singleton<Graphics>;
private:

int _width,_height; //размеры экрана(сделал для удобства)

//интерфейс directX
LPDIRECT3D9 m_pD3D;

//интерфейс устройства вывода
LPDIRECT3DDEVICE9 m_pd3dDevice;

// структкура с параметрами девайса
D3DPRESENT_PARAMETERS m_d3dpp;

typedef std::vector<CTexturePtr> vecTextures;
vecTextures m_vecTextures;

typedef std::vector<CShaderPtr> vecShaders;
vecShaders m_vecShaders;

protected:

//закрыто. нет смысла создавать все равно singleton
Graphics(void);
~Graphics(void);

public:

//возвращает устройство
LPDIRECT3DDEVICE9 GetDevice();

//инициализация устройства
bool Init(HWND hRenderWnd, int width, int height);

//возвращает ширину
int getWidth() const {return _width;}

//возвращает высоту
int getHeight() const {return _height;}

//удаление интерфейсов
void Cleanup();

//сброс
HRESULT Reset();

//начало рендера
bool StartRender(D3DCOLOR bgColor=0xff808080);
//устанавливает формат вершин
HRESULT SetFVF(DWORD FVF);

//устанавливает пиксельный и верш шейдер( в статье не будем рассматривать. рано еще)))
HRESULT SetPixelShader(CShaderPtr shader);
HRESULT SetVertexShader(CShaderPtr shader);

//установка характеристик рендера
HRESULT SetRenderState(D3DRENDERSTATETYPE State, DWORD Value);

//установка характеристик текстур(смешивание, альфа и тд)
HRESULT SetTextureStageState(DWORD Stage, D3DTEXTURESTAGESTATETYPE Type, DWORD Value);

//установка способа отображения семплов( фильтрация)
HRESULT SetSamplerState(DWORD Sampler, D3DSAMPLERSTATETYPE Type, DWORD Value);

//установка текстуры
HRESULT SetTexture(DWORD stage, CTexturePtr pTex);

//начало блока настроек рендера
HRESULT BeginStateBlock();

//конец блока настроек рендера
HRESULT EndStateBlock(LPDIRECT3DSTATEBLOCK9* block);

//отрисовка премитива
HRESULT DPUP( D3DPRIMITIVETYPE PrimitiveType, UINT PrimitiveCount, CONST void* pVertexStreamZeroData, UINT VertexStreamZeroStride);

//конец отрисовки

bool EndRender();

//загрузка текстур и шейдеров(про текстуры будет отдельная статья)
CTexturePtr LoadTexture(const std::wstring& szFileName);
CShaderPtr LoadShader( const std::string& strFileName, const std::string& strFuncName, const std::string& profile);
};

Сейчас нам интересны два интерфейса:

//интерфейс directX
LPDIRECT3D9 m_pD3D;

//интерфейс устройства вывода
LPDIRECT3DDEVICE9 m_pd3dDevice;

Для начала их необходимо обнулить.

Graphics::Graphics()
{
m_pD3D = NULL;
m_pd3dDevice = NULL;
ZeroMemory(&m_d3dpp, sizeof(D3DPRESENT_PARAMETERS)); // обнулим
}

А сейчас посмотрим, как инициализируется устройство.

bool Graphics::Init(HWND hRenderWnd, int width, int height)
{
// сначала проицициализируем сам DirectX 9
m_pD3D = Direct3DCreate9( D3D_SDK_VERSION );
if (m_pD3D==NULL)
return false;
//создаем структуру с режимами дисплея
D3DDISPLAYMODE d3ddm;
//пробуем определить параметры дисплея
if(FAILED(m_pD3D->GetAdapterDisplayMode(D3DADAPTER_DEFAULT, &d3ddm)))
{
//генерируем исключение
ExceptionBase err(GETDISPLAYMODEERROR,L"Не могу определить параметры дисплея");
throw err;
return false;
}

//характеристики заднего буфера---------------------------------------------------------
m_d3dpp.BackBufferWidth = width; // указываем ширину и
m_d3dpp.BackBufferHeight = height; // высоту области рендера
m_d3dpp.BackBufferCount = 1; // один внеэкранный буфер

m_d3dpp.BackBufferFormat = d3ddm.Format;

//-------------------------------------------------------------------------------------------------------
m_d3dpp.Windowed = TRUE; // рендер в окне, а не в полный экран

m_d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD; // так лучше делать всегда
m_d3dpp.EnableAutoDepthStencil = TRUE; // нам нужен Z-буфер
m_d3dpp.AutoDepthStencilFormat = D3DFMT_D24S8; // формат Z-буфера
m_d3dpp.PresentationInterval = D3DPRESENT_INTERVAL_ONE;

// и теперь создадим сам девайс
HRESULT hr = m_pD3D->CreateDevice( D3DADAPTER_DEFAULT,
D3DDEVTYPE_HAL, hRenderWnd, D3DCREATE_HARDWARE_VERTEXPROCESSING,
&m_d3dpp, &m_pd3dDevice );
if (FAILED(hr))
return FALSE;
_height = height;
_width = width;
return TRUE;
}

Чтобы освободить интерфейс, необходимо вызвать Release. Посмотрим, как удаляются, созданные нами, объекты.

void Graphics::Cleanup()
{
// освобождаем текстуры
vecTextures::iterator itr = m_vecTextures.begin();
while(itr!=m_vecTextures.end())
{
(*itr)->Release();
delete *itr;
itr++;
}
m_vecTextures.clear();

// освобождаем шейдеры
vecShaders::iterator itr2 = m_vecShaders.begin();
while(itr2!=m_vecShaders.end())
{
(*itr2)->Release();
delete *itr2;
itr2++;
}
m_vecShaders.clear();

if (m_pd3dDevice)
{
m_pd3dDevice->Release();
m_pd3dDevice = NULL;
}
if (m_pD3D)
{
m_pD3D->Release();
m_pD3D = NULL;
}
}

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

bool Graphics::StartRender(D3DCOLOR bgColor)
{
if (FAILED(m_pd3dDevice->BeginScene())) // начинаем рисовать
return false;

// очистка экрана
if (FAILED(m_pd3dDevice->Clear(0, NULL, D3DCLEAR_TARGET|
D3DCLEAR_STENCIL| D3DCLEAR_ZBUFFER, bgColor, 1, 0)))
return false;

return true;
}

bool Graphics::EndRender()
{
m_pd3dDevice->EndScene(); // закончили рисовать

// копируем на экран
HRESULT hr = m_pd3dDevice->Present(NULL, NULL, NULL, NULL);
if (FAILED(hr)/*==D3DERR_DEVICELOST*/)
Reset();

if (FAILED(hr))
return false;

return true;
}

Установка формата вершин и отрисовка примитивов.

HRESULT Graphics::SetFVF( DWORD FVF )
{
return m_pd3dDevice->SetFVF(FVF);
}

HRESULT Graphics::DPUP( D3DPRIMITIVETYPE PrimitiveType, UINT PrimitiveCount, CONST void* pVertexStreamZeroData, UINT VertexStreamZeroStride )
{
return m_pd3dDevice->DrawPrimitiveUP(PrimitiveType, PrimitiveCount, pVertexStreamZeroData, VertexStreamZeroStride);
}

И напоследок, посмотрим на настроечные функции.

HRESULT Graphics::SetRenderState( D3DRENDERSTATETYPE State, DWORD Value )
{
return m_pd3dDevice->SetRenderState(State, Value);
}

HRESULT Graphics::SetTextureStageState(DWORD Stage, D3DTEXTURESTAGESTATETYPE Type, DWORD Value )
{
return m_pd3dDevice->SetTextureStageState(Stage,Type,Value);
}

HRESULT Graphics::SetSamplerState( DWORD Sampler, D3DSAMPLERSTATETYPE Type, DWORD Value )
{
return m_pd3dDevice->SetSamplerState(Sampler, Type, Value);
}

На этом пока все. Применение смотрите в следующей части.

 

[к содержанию] [другие статьи Тимонина Андрея]

подробнее

     
 
megainformatic cms free

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

megainformatic cms express files - это простое, быстрое и очень компактное решение для создания первого вашего сайта. НЕ ИСПОЛЬЗУЕТ базы данных mysql. Вместо этого используются файловые базы данных. Поэтому Вы можете использовать систему даже на хостинге с поддержкой php, но без поддержки баз данных my sql.

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

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

 
     
 

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

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

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

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

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

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

 
     
 

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

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

 
     
  Для добавления новых статей на ваш сайт - достаточно выложить файл контента в нужную папку, например papers/my_paper1  
     
 

А затем добавить описание в файл data/papers.csv для этой статьи.

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

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

 
     
 

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

megainformatic cms e-pro

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

     
     
 
МОДЕЛИРОВАНИЕ НА УРОВНЕ МНОГОУГОЛЬНИКОВ
 
[Все уроки 3ds max] [Галерея моделей] [далее]
 

Создание модели книжного шкафа

Нам необходимо смоделировать представленный объект, затем применить к нему материал – дерево.

 
каркасный вид модели книжного шкафа сплошной вид
 

Создайте бокс:

Create Panel > Standard primitives > Box

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

Length = 2,8m; Width = 0,8m; Height = 2,6m;

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

Length Segs = 4; Width Segs = 3; Height Segs = 3;

 

Приступим к процессу видоизменения. Преобразуйте объект в editable poly:

Modify Panel > object name (Box) > щелчок правой кнопкой мышипо 1 пунктуокнастека > Convert To Editable Poly.

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

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

Если вы щелкали вне объекта, то снова выберите объект (щелчком по нему).

Клавишей [F4] включите режим отображения граней (edged faces).

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

В окне стека разверните узел у пункта Editable poly и выберите подпункт Polygon.

Удерживая нажатой клавишу [Ctrl] выделите две грани в центре.

 
выделенные грани
 

Попробуем «вдавить» эти грани внутрь объекта, чтобы сформировать будущее пространство полки.

В окне параметров найдите и нажмите кнопку Extrudeи маленькую кнопку рядом с ней.

В появившемся диалоговом окне задайте: Extrusion Height = -0,7m; Затем OK.

 
грани после вдавливания
 

Расширение размеров пространства полки

Перейдите в окно Top viewport и увеличьте, переместите вид если требуется. На панели Modify раскройте узел Editable poly и выберите уровень суб-объекта Vertex (вершины).

Используя выделение мышью в окне Top viewport выделите средние верхние четыре вершины. При этом будут выделены все видимые и не видимые вершины объекта в данной зоне.

 
выделение двенадцати вершин
 
Удерживая нажатой [Ctrl] выделите аналогично 12 вершин другой стороны.
 
выделение второго набора из 12 вершин с другой стороны
 
Используя Select and Uniform Scale сместите вершины по координатной оси Y. В окне Perspective viewport вы увидите результат вашей работы.
 
раздвижка вершин масштабированием для достижения эффекта тонких стенок
 
Вдавите верхние две грани для получения пространства верхней полки.
 
получение верхней полки
 

Создание 4-х ножек

В окне Perspective viewport переверните шкаф так, чтобы было видно его дно. Используя панель модификации и уровень Polygon выделите 4-ре крайних прямоугольника по периметру дна. Используя кнопку Extrude и кнопку параметров (рядом с ней) – в группе Edit Polygons – выдавите ножки на 0,1m.

 
выдавливание ножек
 

Теперь коснемся понятия рендеринга или отрисовки. Отрисовка (Рендеринг) созданной модели – это растеризация трехмерного изображения в виде плоского.

Выберите пункт меню Rendering > Render.

В открывшемся окне Render Scene в группе Output size щелкните по кнопке 640х480

 
размер выходного изображения при растеризации
 

Нажмите кнопку Render в самом низу окна.

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

Как видим, это лишь прообраз моделирующий форму шкафа. Для придания реализма к объектам применяются различные материалы.

Под материалами в Max подразумеваются плоские изображения (называемые также текстурами) наносимые (или проецируемые) на поверхность созданных объектов.

Применим к нашей модели шкафа материал wood (дерево).

Вызовите редактор материалов – клавиша M или Rendering> Material Editor

В окне образцов щелкните любой пустой слот.

По умолчанию все слоты имеют shader Blinn.

Понятие шейдера (shader) включает следующее – это специальный алгоритм (или набор алгоритмов) моделирующий поведение материала для придания большей реалистичности. Шейдеры моделируют отражение, приломление, поглощение света.

Тип шейдера можно менять в окне параметров – группа Shader Basic Parameters. Каждый из типов шейдеров имеет свой уникальный набор параметров, хотя конечно есть и нечто общее.

Названия шейдеров обычно представляют или имена авторов или свойства и поведение и т.д.: Blinn, Anizotropic, Metal и другие.

Для моделирования поведения большинства простых материалов подходит именно шейдер Blinn, который применяется наиболее часто. Другие шейдеры больше подходят для специфических материалов – Anizotropic и Metal – для анизотропных веществ, т.е. кристаллов, металлов – материалов в которых свойства среды зависят от направления.

В качестве краски (цвета), который можно использовать для заполнения объекта можно использовать растровое изображение (текстуру):

В группе Blinn Basic Parameters есть три пункта:

Ambient – окружающий свет

Diffuse – рассеянный свет

Specular – отраженный свет.

 
редактор материалов и рассеянный свет
 

Нажмите пустую кнопку напротив пункта Diffuse – и мы используем в качестве рассеянного света материала текстуру.

В появившемся окне Material/Map Browser выберите рисунок wood. Двойной щелчек приведет к автовыбору.

 
выбор материала wood
 
Будет открыто окно параметров проекций (Map) – здесь пока ничего не будем менять, а просто выберем в верхнем выпадающем списке самый первый пункт – имя создаваемого материала.
 
переход на уровень параметров материала в целом
 

Мы снова попадем в окно свойств этого материала. Переименуйте материал назвав, например wood_01. Если материал имеет несколько проекций (Maps), то их тоже можно переименовывать давая другие названия. Все изменения будут сохранены вместе с вашим файлом сцены.

Применим созданный материал к нашему объекту – шкафу – щелкните слот материала и перетаскивайте его на объект в окне Perspective viewport. Если никаких изменений не произошло, то нажмите кнопку Show map in viewport в окне редактора материалов.

 
кнопка управления отображением материала в окне вида
 

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

 

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

Поправим дело: вызовите редактор материалов и доберитесь в нем до параметров проекции с рисунком дерева (wood). В группе Coordinates можно управлять наложением рисунка на объект, а именно:

Offset – производить смещение на указанное число единиц по данной координатной оси;

Tiling – организовывать цикличное (повторяющееся) заполнение образцом указанное количество раз. Это нам и требуется – попробуйте изменять значения и сравнивать изменения проводя Рендеринг.

Angle – позволяет поворачивать образец на некоторый угол. Попробуйте повернуть по координате Y на 90 градусов.

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

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

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

Используя Modify panel > Editable Poly > Polygons выберите две прямоугольных грани в нижней части шкафа.

 
окончательный вариант модели книжного шкафа
 

Используя кнопку Extrude вдавите дверки на значение (Amount = -0,1m).

Создание ручек

Создайте маленький цилиндр (Cylinder) или конус (Cone) (0,01 х 0,06). Выровняйте расположение ручки, примените материал, создайте вторую ручку.

Между ручками создайте планку (используйте бокс нужных размеров).

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

 

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

     
 

Доверенные партнеры сайта Мега Информатик -

 
     
 
Яковенко Андрей Яковенко Андрей. Интересный и разносторонний человек. Занимается созданием сайтов под ключ на cms WordPress, Joomla и DLE. Помимо этого примерный семьянин и увлекающийся человек. Самое главное - очень открытый, которому можно смело довериться. Подробнее узнать об Яковенко Андрее можно обратившись на его личный сайт - Яковенко Андрей

 
 
     
 

ignazius.ru

Сайт Тимонина Андрея - начинающего сайтостроителя и игродела :)

 
 
     
   
     
 

 
 
     
     
     
 

Вам понравился наш сайт ? И Вы хотите обменяться с нами ссылками ?

Отлично! Сделать это просто - разместите на страницах своего сайта следующий код -

 
     
 


or this

 
     
 

И пришлите на адрес creator@megainformatic.ru код ссылки Вашего сайта - он будет размещен здесь !

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

Модуль галерей для любой 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|;

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

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

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

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

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



Гасан,  09 января 2013

Спасибо:)


Ответ админа >>>,  09 января 2013

Всегда рад помочь, пожалуйста, Гасан ! Заходите еще.


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


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