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


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

megainformatic - Костя Коробкин - СЕКРЕТНЫЙ ПРОЕКТ - интерактивный комикс (kk scp) - онлайн комикс - страница 3
Костя Коробкин - СЕКРЕТНЫЙ ПРОЕКТ - интерактивный комикс (kk scp) - онлайн комикс - страница 3 Предлагаем вашему вниманию онлайн-комикс Костя Коробкин - СЕКРЕТНЫЙ ПРОЕКТ - интерактивный комикс (kk scp). Не атаковать ! Конечно не атаковать ! Неужели вы будете убивать беззащитную девушку ?
подробнее...

Теги создание сайтов, создание игр, дизайн, игры, информатика, уроки photshop, php, c++, музыка, delphi, cms, робосайт
Статьи сайта
Урок 2 Написание Win32-приложений. Обзор стартового кода Win32-приложения. Добавление ресурса текстовая строка

Урок 3 Создание Win32-приложений. Создание меню и простых диалоговых окон.

Урок 4 Создание Win32-приложений. Стандартные диалоги. Изучение сопутствующих конструкций языка. Консольные Win32-приложения. Указатели. Ссылочный тип. Массивы.

Урок 4 часть 2 Win32. Диалог выбора цвета, смена цвета фона окна приложения

Написание приложения DirectX9c + MFC в среде MSVS 2005

megainformatic - Создание компьютерных игр на основе DirectX в среде Delphi 6, 7

megainformatic - Создание компьютерных игр на основе DirectX в среде Delphi 6, 7 - Почему избраны DX8 и Delphi ?

megainformatic - Основы IDirectMusic8 в среде Delphi6-7

megainformatic - Основы DirectInput8 в среде Delphi 7

megainformatic - Основы DirectSound8 в среде Delphi6-7

megainformatic - Плагин для 3DS MAX из DX9 SDK

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

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

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

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

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

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

Система управления сайтом - megainformatic cms e-shop

Система управления сайтом - megainformatic cms e-shop

Система управления сайтом - megainformatic cms e-shop

megainformatic - Уроки 3ds max - Введение в 3ds max

megainformatic - ГАЛЕРЕЯ 3D-моделей

megainformatic - СОЗДАНИЕ МАКЕТА ПОМЕЩЕНИЯ

megainformatic - Создание макета помещения - этап 2

megainformatic - МОДЕЛИРОВАНИЕ НА УРОВНЕ МНОГОУГОЛЬНИКОВ

megainformatic - СОЗДАНИЕ ПРЕДМЕТОВ ОБСТАНОВКИ ПОМЕЩЕНИЯ

megainformatic - Моделирование обстановки помещения

megainformatic - Создание модели автомобиля

megainformatic - Создание текстурной развертки для модели автомобиля

megainformatic - Создание анимации вращающихся колес автомобиля

megainformatic - игра Нечто: Необъяснимое и в плену желаний

megainformatic - Основы 3D-анимации, экспорт скелетной анимации

megainformatic - Подготовка модели к использованию скелетной анимации

megainformatic - Продолжаем Создание скелета для данной модели

megainformatic - Построение ирерархических связей между объектами и основы 3d анимирования

megainformatic - Особенности экспорта моделей и анимации экспортером kWXPort080719 из 3ds max 2009 

megainformatic - Создание модели броневика (Хэд)

megainformatic cms e-mailer

megainformatic cms e-mailer

megainformatic cms e-mailer

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

megainformatic - Путешествие в мир 3d

megainformatic - Путешествие в мир 3d - страница 2

megainformatic - Путешествие в мир 3d - страница 3

megainformatic - Путешествие в мир 3d - страница 4

megainformatic - Путешествие в мир 3d - страница 5

megainformatic - Путешествие в мир 3d - страница 6

megainformatic - Создание модели броневика (Хэд) - Анимация вращения колес

megainformatic cms express files

megainformatic cms express files

megainformatic cms express files

megainformatic - Уроки Photoshop - Чудеса

megainformatic cms express files - Развертывание сайта на Вашем хостинге

megainformatic - Настольная игра "Веселый Буквоежка"

megainformatic - Уроки delphi directx 8.1

megainformatic - Уроки delphi directx 8.1 - Урок 1 - Введение в Delphi DirectX 8.1. Создание шаблона стартового приложения.

подробнее

     
 
megainformatic cms stat kit

Сайт под ключ + продвижение и полная аналитика посещаемости Вашего сайта - megainformatic cms stat kit

Для входа в админ-панель используйте логин: admin и пароль: admin

megainformatic cms stat kit - представляет Вам революционный подход к созданию, продвижению и аналитике посещаемости вашего сайта.

Систему отличает:

- компактность - объем дистрибутива не превышает 5 Mb;

- быстрота установки - всего 20 минут и Ваш сайт готов к работе;

Данная версия использует базы данных my sql.

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

В комплект входят 7 готовых шаблонов внешнего вида вашего сайта, а также набор компонентов и модулей для административной и фронтальной частей сайта:

- модуль входа в административную часть сайта, разделение пользователей по ролям;
- модуль профилей пользователей;
- модуль панели управления (+меню);
- модуль добавления/редактирования страниц сайта;

а также модуль для продвижения сайта:

- мета;

компонент учета посещаемости и формирования отчётов о посещаемости - attendance.

 

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

 
     
 

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

Для решения этой задачи Вам предлагается - megainformatic cms stat kit

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

Разработанный компонент attendance ведет полный лог посещаемости ВСЕХ без исключения страниц вашего сайта и заносит эту информацию в файл.

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

megainformatic cms stat kit

Ввести

логин: admin и пароль: admin

И выбрать пункт меню

КОНТЕНТ > Посещаемость

После этого Вы попадаете на страницу где содержатся 3 кнопки:

log

per_date

per_date_sorted

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

 
     
 

Сайт под ключ, продвижение и аналитика Вашего сайта на базе - megainformatic cms stat kit

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

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

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

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

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

- может использоваться как самостоятельная система для управления сайтом, так и в полном составе megainformatic cms той версии которую вы используете или планируете использовать:

megainformatic cms admin

megainformatic cms seo

megainformatic cms express

megainformatic cms

megainformatic cms e-pro

megainformatic cms e-shop

megainformatic cms e-mailer

 
     
 

 

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

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

Подробнее об установке на хостинг можно почитать здесь

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

 
     
     
 

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

megainformatic cms e-pro

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

Ethernity Вечность страница 6 + решение по анимации закрывающихся дверей лифта.

 

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

 

* * *



Проблема интересна до тех пор, пока решение её неизвестно.


* * *



В данной части Ethernity мы расскажем о такой проблеме:




кадр закрытых дверей лифта, должен остановиться
не перепрыгивая на начальный кадр.


Сначала немного предыстории.

Возьмём утилиту Coords2D и посмотрим, что собой
представляет анимация дверей лифта.



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

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

Для этого достаточно задать лишь отрицательное Delay для спрайта.

Например Delay = -4.5f;


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


А решение, как оказалось, заключается в следующем:

void CD3DGameApp::RestartLadingAnimForOpenDoors()
{
	

	LPD3D9SPRITE Sprite1 = (LPD3D9SPRITE)Sprites2Array->GetAt(bol_stop_lift_at_floor);

	
	Sprite1->Delay = abs(Sprite1->Delay);
	

	Sprite1->StartNotLoopedAnim();

	Sprite1->m_fStartFrame = 15.0f; 
	Sprite1->m_fEndFrame = 14.0f;
	Sprite1->Frame = 0.0f;
}

Результат работы этого решения показан в нижеследующем видео #17 Решение по открыванию
дверей лифта и остановке на кадре открытых дверей в проекте bol.






Т. е. переменная Sprite1->m_fStartFrame спрайта играет роль стоп-маркера, на котором останавливается анимация по её окончанию. Sprite1->Frame = 0.0f; //анимацию начинаем с 0 кадра Видим, что изначально двери открываются и некоторое время отображаются открытыми - поставленная цель выполнена. Вы наблюдали как простая проблема, может иметь и простое решение. Однако решение вырабатывается в ходе выдвижения некоторых предположений и экспериментальной их проверки. Кажущейся простоте может предшествовать достаточно длительный этап подготовки. По понятным причинам я его здесь не привожу - это материал для целой книги, а не отдельной темы статьи - видео-урока.

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

подробнее

megainformatic.ru Синицин А. С. Шарики на лифте - Как создать игру - Вставка созданной графики, звуков и музыки в игру

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

к содержанию

 

 

 

 

На протяжении предыдущих уроков мы с Вами занимались тем, что рисовали шарик, делали из него спрайт, затем рисовали фон, учились создавать звуки и музыку. Для чего всё это делалось ? Ну конечно же, чтобы научиться, если Вам это было нужно, а еще для того, чтобы вставить всё это в реально работающую игру и потом поиграть в созданное своими руками !

 

 

 

Это на самом деле непередаваемое ощущение - когда ты не просто нарисовал спрайт или сочинил музыку, но и когда твоё творчество ожило и стало частью игры - почти живого существа, за которым можно наблюдать и с которым можно поиграть !

 

 

 

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

 

 

 

Шарики на лифте - Как создать игру -

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

 

 

 

 

 

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

 

Там я уже наглядно показывал в какой папке размещен фон -

Media\textures\moved_bg\

 

 

 

 

Давайте откроем папку с игрой и внутри неё найдём папку Media. В этой папке лежат все ресурсы используемые игрой.

Ну а теперь Вам остается просто открыть подпапку представленную путём указанным выше, т. е.

Media\textures\moved_bg\

 

 

Шарики на лифте - Как создать игру - Вставляем фон заднего плана в игру

 

 

!!! ВАЖНО !!! Обращаю ваше внимание на то, что все манипуляции со вставкой ресурсов в игру можно выполнять только при выключенной игре. Иначе это приведет к ошибкам. Вновь вставленные ресурсы не будут работать пока игра не будет выключена полностью - т. е. её приложение полностью закрыто, и запущена снова. Поэтому учитывайте этот ВАЖНЫЙ !!! момент.

 

 

Переименовываем файл back_bg.jpg например в back_bg_.jpg

А на его место вставляем новый фон, и называем его также как был назван переименованный - back_bg.jpg

 

 

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

Т. е. варианты Back_bg.jpg или back_bg.JPG и любые их варриации будут неправильными и приведут к ошибкам при запуске игры !

 

 

Также все буквы должны быть записаны латиницей !!! Если вы например "a" или "c" напишете как русскую, это тоже приведет к ошибке при запуске игры.

 

Шарики на лифте - Как создать игру - Вставляем фон заднего плана в игру

 

 

 

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

 

 

 

На скриншоте ниже видно, как фон заднего плана виден через просветы в фонах переднего и среднего планов.

 

Шарики на лифте - Как создать игру - Вставляем фон заднего плана в игру

 

 

 

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

 

Закрываем игру нажав кнопку Close (красная кнопка с белым крестиком) справа вверху окна программы или по клавише [Esc], или выбрав пункт меню Game > Quit

 

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

Media\textures\ball\small_jump\

 

 

Обратите внимание !!! В уроке Анимация прыжков шарика мы создавали спрайт размерами 512х512 пиксель, а в игре для этих шариков используются спрайты 256х256. Вы можете сами уменьшить спрайт до нужных размеров в Photoshop - через пункт меню Изображение > Размер Изображения, либо взять готовый спрайт из папки - bol_hmg\lessons\content\anim_ball\work\ дистрибутива комплекта уроков, спрайт называется anim_ball_256.tga

 

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

 

 

Шарики на лифте - Как создать игру - Некорректно выводимый шарик

 

 

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

 

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

 

Файл green_ball_small_jump.tga переименовываем в green_ball_small_jump.tga, а на его место вставляем новый и называем green_ball_small_jump.tga т. е. в точь-в точь также как назывался первый вариант зеленого шарика.

 

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

 

 

 

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

 

 

Ниже представлены примеры скриншотов на которых видно и наш вставленный в игру шарик и фон заднего плана.

 

 

Шарики на лифте - Как создать игру - Вставляем фон заднего плана в игру

 

Шарики на лифте - Как создать игру - Вставляем фон заднего плана в игру

 

 

 

Вообщем, как видим, вставка ресурсов в игру не представляет особого труда. По такому же принципу хранятся ресурсы во многих играх. Гораздо сложнее создать этот самый ресурс. А вставка его по сравнению с этим - сущий пустяк. Однако Важно не допустить ошибок. Назвать файл правильно, также как назывался оригинальный файл который Вы заменяете. Еще, если речь идёт о спрайте - важно соблюсти те же правила, которые были определены для первоначального заменяемого вами спрайта. Т. е. спрайт должен иметь те же размеры, то же количество кадров и изображаемый персонаж или объект должен быть примерно такого же масштаба, как и оригинальный.

 

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

 

 

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

 

 

 

Для этого воспользуемся утилитой Coords2D, которую я также упоминал в уроке Анимация прыжков шарика.

 

 

 

Возможно Вы уже сами догадались, что нужно сделать. Это станет понятным из скриншота ниже -

Шарики на лифте - Как создать игру - Вставляем фон заднего плана в игру

 

 

Обратите внимание, что в файле

bol_hmg\lessons\utils\Coords2D\Media\textures\tex_list.txt

содержимое которого Вы и видите на скриншоте выше,

 

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

Так вот, если смотреть слева-направо, то самый первый шарик - он же первый в списке tex_list.txt

ball\anim_ball_256.tga; -0.4f; -0.17f; 0.8f; 0.32f; 0.32f; 64; 128; 0; 0; 4; 8.0f; 7.5f;

Это наш вставленный шарик, но уменьшенный. Сравните масштабные коэффициенты (которые я отметил красным цветом) с этими же значениями у этого же шарика, но того, который самый крайний справа, т. е. по счёту четвертый.

и в списке tex_list.txt он также 4ый и имеет такие параметры -

ball\anim_ball_256.tga; 0.5f; 0.1f; 0.8f; 0.52f; 0.52f; 64; 128; 0; 0; 4; 8.0f; 7.5f;

 

Теперь Вы поняли в чём дело ? Просто изменились значения масштабных коэффициентов xScale и yScale, поэтому шарик стал меньше. Однако как Вы можете судить по картинке - он не очень хорошего качества (сравните левый крайний шарик и все остальные). Поэтому сжимать спрайты или растягивать крайне нежелательно - чтобы как раз не было таких вот визуальных искажений.

 

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

 

Разные масштабные коэффициенты можно применять если например нужно сделать в игре Шарики разных размеров, не рисуя при этом соответствующие спрайты. Правда, как я уже говорил, нужно учитывать визуальные искажения. Но иногда они достаточно приемлемы. Это можно установить экспериментальным путём.

 

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

 

Для этого в файле -

bol_hmg\bol\Media\textures\ball\tex_list.txt

 

Вам нужно строчку -

small_jump\green_ball_small_jump.tga; 300.6f; 180.1f; 0.85f; 0.52f; 0.52f; 64; 128; 0; 0; 4; 8.0f; 25.5f;

 

изменить на -

small_jump\green_ball_small_jump.tga; 300.6f; 180.1f; 0.85f; 0.32f; 0.32f; 64; 128; 0; 0; 4; 8.0f; 25.5f;

 

т. е. масштабные коэффициенты - 0.52f; 0.52f;

заменить на 0.32f; 0.32f;

 

Правда тут нас ждёт неудача. Дело в том, что в игре данные значения жестко прописаны в коде и изменение их в данном файле ни к чему не приведет. Просто потому что значение игнорируется.

 

Но зато теперь Вы знаете как изменить масштаб игрового спрайта в игре, и можете поэкспериментировать в утилите Coords2D.

 

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

 

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

Для изменения звуков создания и удаления шарика - который слышен при нажатии правой и левой кнопок мыши соответственно, Вам нужно заменить такие файлы (по аналогии предварительно переименуйте их, чтобы сохранить оригиналы):

bol_hmg\bol\Media\sounds\bol_create.wav - это звук создания шарика

bol_hmg\bol\Media\sounds\bol_delete.wav - это звук удаления шарика

 

Файлы должны быть в качестве 16 bit, 44100 Hz, стерео.

Это важно учитывать, иначе игра просто не сможет загрузить и использовать данный звук. Кроме того, звуки не должны быть слишком долгими. Например длина представленных всего 0,5 сек. Слишком длинные звуки приведут к большим задержкам прежде чем Вы кликните и услышите следующий звук.

 

С музыкой дело обстоит еще проще.

Вам достаточно даже не заменять, а всего лишь положить Ваш mp3 файл в папку

bol_hmg\bol\Media\sounds\music\

И добавить его имя в список

bol_hmg\bol\Media\sounds\music\music_themes_list.txt

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

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

Не забудьте только при этом внести изменения в файл

bol_hmg\bol\Media\sounds\music\music_themes_list.txt

 

 

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

 

 

 

 

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

 

 





к содержанию

подробнее

Пишем свою cms - шаг 2

В предыдущей статье - Пишем свою cms - шаг 1
был показан код расположенный в index.php, который закладывает
основу Вашей будущей cms.

Конечно не всё так просто, скажете Вы, и будете в какой-то степени правы.

Конечно писать свою cms Вы тоже будете и должны сами, а не просто читать текст данной статьи. :))))

Однако общие принципы, которые лежат в разработке собственной cms, думаю, будут Вам всё же полезны.

Принцип 1: старайтесь писать внутри модулей Вашей cms максимально независимый от других её частей код.

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

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

И самое главное - Ваша cms станет легко модифицируемой и расширяемой.

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

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

После того, как Вы увидели, какие файлы составляют основу index.php, пришло время
один за другим рассмотреть код, описанный в этих файлах.

Код можно скачать здесь - megainformatic cms free

А я собственно разъясню что и как.

config.php

Внутри мы видим следующий код -

//набор доступных шаблонов
$templates = array('green', 'blue');
//имя шаблона по-умолчанию
$template_name = "green";

//если в браузер через форму методом POST был передан параметр template
if ( isset($_POST['template']) && $_POST['template'] != "" )
{
//и если значение этого параметра представляет собой имя одного из доступных шаблонов сайта
if ( in_array($_POST['template'], $templates) )
//тогда запоминаем имя этого шаблона в переменной template_name
$template_name = $_POST['template'];
}

//формируем путь к шаблону сайта, который включает название папки - design + собственно имя выбранного шаблона
$template_path = "design/".$template_name;

Если вернуться к коду index.php, то становится понятным назначение переменной $template_name.

Вы можете заметить, что логичнее было бы использовать просто переменную $template_path

:))) Разумеется !!! С этим никто и не спорит !!!

Просто когда пишешь свою cms с нуля не всё и не сразу становится так очевидно.

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

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

/* подключаем файл конфигурации (данный файл может хранить какие-то базовые настройки сайта, например используемый на сайте шаблон */
include_once 'config.php';

/* подключаем файл из текущего шаблона, который отвечает за вывод блока и шапки сайта */
include $template_path."/header.php";

/* подключаем файл из текущего шаблона, который отвечает за вывод блока меню сайта */
include $template_path."/menu.php";

/* подключаем файл из текущего шаблона, который отвечает за вывод блока контента (т. е. текста страниц, картинок, ссылок - статей, которые мы читаем) */
include $template_path."/content.php";

/* подключаем файл из текущего шаблона, который отвечает за вывод нижней части сайта (footer, подвал) который обычно содержит копирайт и коды счётчиков */
include $template_path."/footer.php";

Главное после таких изменений проверить работоспособность сделанных изменений.

И если при этом не будет ошибок в работе сайта, значит улучшение имеет право на жизнь. ;)

Как видно Мы с Вами, и Вы читающий эти строки, и Я, который пишу их, получаем от этого обоюдную пользу !

Вы учитесь писать свою cms и экспериментировать,

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

В следующей статье мы продолжим эти приятные занятия :)))

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



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

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

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

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



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


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