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


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

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

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

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 - Как создать игру Создание игровых панелей и индикаторов

подробнее

     
  Уроки Photoshop - Рисуем и анимируем  
     
  Уроки Photoshop - Рисуем и анимируем   
 

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

 
     
     
  Введение  
     
 

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

Вся графика была нарисована в программе Adobe Photoshop. Для просмотра созданных анимаций Вы можете использовать небольшую утилиту - Coords2D

Ссылка для скачивания утилиты Coords2D



Скачать Coords2D -


Размер sfx-архива: 36 Mb. Также содержит много примеров спрайтов и других
изображений из проекта fle, bol и др.

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

Какую версию Adobe Photoshop использовать ? Решайте сами, исходя из Ваших возможностей и пожеланий. Могу посоветовать Вам любую версию начиная от CS (8) до CS 5 (12).

Что еще нам потребуется ? Только лишь немного свободного времени и желания создать что-то красивое и совершенное. А как же опыт ? Опыт мы с Вами будем набирать в ходе наших с Вами уроков. Итак, можно начинать !

 
     
 

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

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

Уроки Photoshop;

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

 
     
  В этом сборнике статей мы рассмотрим следующие темы:  
     
 

1. Старт - данная статья доступна онлайн, т. к. предоставляется как ознакомительная, остальные статьи входят в состав сборника и недоступны онлайн. Вы сможете их прочитать только после заказа всего сборника статей - Уроки Photoshop - рисуем и анимируем. Стоимость всего сборника - 250 руб. После оплаты заказа Вы в кратчайшие сроки получаете ссылку на скачивание ПОЛНОЙ ВЕРСИИ сборника, скачиваете его, распаковываете (сборник содержится в виде самораспаковывающегося архива) и читаете интересующие Вас уроки.

 
     
  2. Прорисовка  
     
  3. Раскраска  
     
  4. Секреты свето-тени  
     
  5. Применение фильтров  
     
  6. Подготовка к анимации персонажа  
     
  7. Создание анимации  
     
  8. Окончальтельный результат анимации, альфа-маска, сохранение файла  
     
  9. Создание кустов травы, тест результатов в Редакторе карт SceneEditor  
     
  10. Создание фона неба и земли, тест в редакторе карт  
     
  11. Деревья  
     
  12. Прочие объекты  
     
  13. Существа - пауки и их анимация  
     
  14. Анимация брошенных предметов  
     
  15. Основы создания тутульной заставки  
     
  16. Элементы меню  
     
  17. Оформление игровых панелей  
     
  18. Рисование обстановки помещений  
     
  19. Основы создания мини-комикса - шаг 1  
     
  20. Основы создания мини-комикса - шаг 2  
     
  21. Основы создания мини-комикса - шаг 3  
     
  22. Игровые экраны - настройки, информация, игровые диалоговые окна  
     
  23. Предметы и находки - лопата, лейка, плитки  
     
  24. Специфические предметы - летающий смех и его анимация  
     
  25. Специальные эффекты - создание и анимация дождя, возникновения/исчезновения объектов/героя/существ  
     
  26. Итоги проделанной работы: Чему мы научились ?  
     
 

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

Спасибо за внимание и желаю Вам творческих успехов !!!

 
     
     
     
     
     
     
подробнее

Game craft - Наложение текстуры на модель робота scv - часть 4

[все уроки game craft]  [моделируем scv]  [моделируем scv шаг 1 часть 2] [моделируем scv шаг 2 часть 3]

Откроем созданную модель робота -

Модель робота scv как в Starcraft 2

Можете скачать готовую модель -

[downloads:34]

Вызовите редактор материалов - клавишей [M] или через верхнее меню Rendering > Material Editor. Выберите свободный пустой слот в редакторе материалов (см. рисунок ниже).

Наложение вспомогательной текстуры на модель робота SCV

Загрузите в слот текстуру

вспомогательная текстура

Как показано на рисунках ниже и перенесите её на модель робота SCV.

Изображение образца scv для моделирования - наложение текстуры Изображение образца scv для моделирования - наложение текстуры Наложение вспомогательной текстуры на модель робота SCV

В редакторе материалов выберите материал Default, включите его отображение (нажав кнопку с кубиком), перенесите материал на модель текстуры. Материал переименуйте в scv_base_tex.

Наложение вспомогательной текстуры на модель робота SCV

Теперь выберите модель и в списке модификаторов задайте модификатор Unwrap UVW.

Наложение вспомогательной текстуры на модель робота SCV - модификатор Unwrap UVW

Дальше процесс сводится к тому, что в стеке модификаций нужно раскрыть узел Unwrap UVW и выбрать пункт Face, чтобы иметь возможность выбирать грани для наложения. Удерживая нажатой клавишу [Ctrl] выбрать грани, как показано на рисунке, кликая по ним левой кнопкой мыши. Затем в блоке параметров модификатора Unwrap UVW (нужно прокрутить его ниже за полосу прокрутки справа) нажать кнопку Quick Planar Map, а затем Edit. После этого на экране откроется окно Edit UVW - для редактирования текстурных координат выбранных граней модели.

Наложение вспомогательной текстуры на модель робота SCV - редактирование текстурных координат граней

В окне Edit UVW вам нужно сделать следующее: уменьшить окно - чтобы оно не выходило за пределы экрана, нажать кнопку Options справа внизу окна и в блоке Bitmap Options задать нужные размеры текстуры (256х256 - пока оставим без изменений), снять флажок Tile Bitmap - наша текстура не будет повторяющейся (тайловой), для Brightness (яркость текстуры) задать значение 1,0 вместо 0,5. Cправа вверху в списке выбрать вспомогательную текстуру для отображения - Map #3 (scv.jpg)

Наложение вспомогательной текстуры на модель робота SCV - редактирование текстурных координат граней в окне Edit UVW

Чтобы текстура отображала не один элемент вспомогательной текстуры, а несколько (например 8), т. к. один элемент является достаточно крупным, нужно вызвать редактор материалов [M], в группе Blinn Basic Parameters нажать кнопочку M и в открывшемся блоке параметров для Map #3 в группе Coordinates задать параметр Tiling = 8,0 для U и V. Чтобы изменения отразились и в окне Edit UWV, там нужно справа вверху снова выбрать какой-нибудь другой пункт, а затем снова Map #3 (scv.jpg)

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

Теперь вашей задачей является наложение всех видимых граней модели на изображение текстуры. Т. е. вы должны циклически повторять процесс показаный на рисунке - выбрать нужные грани, нажать кнопку Quick Planar Map, затем Edit

Наложение вспомогательной текстуры на модель робота SCV - редактирование текстурных координат граней

В окне Edit UVW используя панель инструментов -

Наложение вспомогательной текстуры на модель робота SCV - edit uvw

Перемещать и масштабировать все грани, чтобы получить полную текстурную развертку всех граней модели. На которую потом можно будет нарисовать реальную текстуру - как описано в статье Мастер-класс: Создание модели и текстуры Коммандного Центра (как в StarCraft 2)

Рассмотрим небольшой фрагмент такой работы, чтобы лучше понять общий принцип. Выделяем нужные грани на модели, которые будем проецировать на текстуру. Нажимаем Quick Planar и Edit. Затем используя инструменты перемещения и масшабирования - перемещаем и уменьшаем элемент в нужное место и до нужных размеров.

Наложение вспомогательной текстуры на модель робота SCV - edit uvw

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

Процесс наглядно демонстрируется в нижеследующем видео -

В результате этой работы у вас может получиться нечто подобное -

Наложение вспомогательной текстуры на модель робота SCV - edit uvw - первый результат текстурной развертки

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

Оптимизированный вариант текстуры представлен на рисунке ниже -

Наложение вспомогательной текстуры на модель робота SCV - edit uvw - оптимизированный результат текстурной развертки

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

[downloads:35]

В следующем уроке мы займёмся прорисовкой созданной текстурной разверки в Photoshop. Прорисовка текстуры робота SCV шаг 5

[все уроки game craft]  [моделируем scv]  [Моделируем робота SCV шаг 1 часть 2]  [Моделируем робота SCV шаг 2 часть 3]  [Прорисовка текстуры робота SCV шаг 5] 

подробнее

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

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

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

 
     
  [содержание] [назад] [страница 1] [далее]  
     
  Введение в 2d-игры - страница 1  
     
 

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

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

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

 
     
  Запускаем MSVS 2005 или выше - то, что у Вас есть под рукой.  
     
  Выбираем последовательно пункты меню File > New > Project  
     
  В открывшемся окне  
     
  создаем проект win32  
     
 

Выбираем пункты - в окошке Project Types:

Visual C++ > Win32,

в окошке Templates:

Win32 Project

 
     
 

Поля Name, Location, Solution Name заполняем именем проекта, указываем где сохранить проект нажав кнопку Browse...

и нажимаем OK

 
     
  описываем имя и расположение будущего проекта  
     
  Ждём некоторое время и вот - Среда разработки MSVS создает для нас шаблон проекта Win32 с именем Fle, искать его нужно в той папке, куда Вы указали его сохранить - проект будет окончательно создан в указанной папке после выполнения еще двух дополнительных шагов -  
     
 

Теперь в открывшемся новом Мастере Настроек проекта нужно задать некоторые опции -

В этом окошке Просто написано, что текущие настройки проекта выполнены для обычного Windows - приложения и нужно нажать кнопку Finish чтобы закрыть окно мастера, либо нажать кнопку Next чтобы увидеть еще некоторые опции

 
     
  окно мастера настроек проекта  
     
  Если хотите увидеть эти дополнительные опции - нажимайте Next  
     
  Менять ничего не нужно, просто нажмите Finish  
     
  Проект создан. Можете убедиться в этом сами - откройте указанную папку и увидите там множество созданных специальных файлов. В большинстве своем это обычные текстовые файлы, которые можно редактировать не только в Среде разработки MSVS, но и любым текстовым редактором, однако не всегда это следует делать, лучше всего делать это непосредственно в самой среде MSVS.  
     
 

Чем же так страшна эта MSVS и что же там такого в ней непонятного ? Об этом мы сейчас и поговорим.

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

 
     
 

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

Можно попробовать выполнить сборку проекта - Build > Build Fle, где Fle имя Вашего проекта, а затем попробовать запустить его на выполнение - прямо из среды MSVS - нажав кнопку Start Debugging на панели инструментов, либо выбрав пункт меню Debug > Start Debugging, либо перейдя в папку созданного проекта, в подпапку Debug - двойным щелчком на созданном файле с именем проекта и расширением EXE.

 
     
  кнопка Start Debugging на панели инструментов  
     
 

Созданное приложение основано на шаблоне Win32 и предназначено для обращения к функциям операционной системы посредством WinAPI.

Однако в реальных игровых приложениях Вам могут понадобиться классы MFC - Microsoft Foundation Classes. В частности, в примере нашей игры ВЕСЕЛЫЙ БУКВОЕЖКА широко будут применяться такие классы как CPtrArray, CWinApp и некоторые другие.

Для того, чтобы использовать MFC совместно с DirectX нужно совсем немного.

Попробуем сделать такое приложение. Закрываем созданный проект - File > Close Solution, если программа спрашивает о сохранении изменений - нажимаем Yes - иначе изменения в проекте не будут сохранены !!!

 
     
 

Делаем всё то же самое, что Вы делали до этого -

File > New > Project

Но далее уже выбираем MFC > MFC Application

 
     
  создание MFC приложения  
     
 

В появившемся окне Мастера настроек MFC - приложения нужно задать следующие опции -

в первом окне просто нажать кнопку Next

 
     
  во втором окне -  
     
  настройки проекта MFC  
     
 

Мы выбрали Dialog Based, потому что наше приложение, да и вообще все игровые приложения должны быть основаны на диалоговых окнах;

Use MFC in a static library - чтобы используемые библиотеки подключались к исполнимому файлу статично - без использования дополнительных DLL;

Resource language: Английский (США) - т. к. других вариантов не наблюдается;

Use Unicode libraries - для использования текстовых строк в формате Unicode

 
     
  В следующем окне уберите все флажки кроме Minimize box и System menu  
     
  В следующем окне уберите все флажки кроме Common Control Manifest  
     
  В последнем окне измените названия создаваемых классов или оставьте как есть  
     
  Ждём некоторое время и вуаля - шаблон приложения создан. Аналогично можно попробовать его собрать и запустить на выполнение - клавиша [F7] - сборка, [F5] - запуск на выполнение.  
     
  Как видим приложение работает достаточно просто - появляется соответствующее окно содержащее кнопки ОК и Cancel.  
     
  Изменив используемый шаблон окна диалога можно убрать всё лишнее и оставить только само окно, кроме того, желательно изменить стандартную иконку MFC приложения на Вашу собственную. О том как создавать иконку для приложения Мы уже рассматривали в уроке Изучаем и модифицируем пример CreateDevice - страница 3  
     
  Современные игры, например от таких издателей как Nevosoft и Alawar содержат специальную игровую оболочку, содержащую кнопки Старт, Купить, Другие игры и что-то еще в этом роде. В следующем уроке мы рассмотрим как быстро и просто реализовать свою собственную оболочку для игры ВЕСЕЛЫЙ БУКВОЕЖКА. Она будет выглядеть примерно так -  
     
  игровая оболочка  
     
     
     
     
  [содержание] [назад] [страница 1] [далее]  
     
подробнее

  Веселый Буквоежка Аудио Комикс  
     
 

Введение в программирование игр на С++ для платформы DirectX 9

Первый старт

 
     
 

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

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

и DirectX SDK 9 версии, или лучше самой последней - DirectX SDK August 2008.

 
     
  [назад] [далее] [к содержанию]  
     
 

Запускаем Microsoft Visual Studio (далее просто MSVS для краткости), из папки с установленным DirectX SDK (далее просто DX) открываем папку с каким-либо проектом внутри папки Samples, например

DXSDK_Aug2008\Samples\C++\Direct3D\SkinnedMesh

 
     
  Для правильной сборки примера Вам нужно будет внести в проект небольшие дополнения  
     
  В окошке Solution Explorer нажимаем кнопочку проекта Skinned Mesh  
     
   
     
  Выбираем пункт меню Project > Properties  
     
   
     
  Нужно открыть узел C/C++ и для пункта General в строке Additional Include Directories указать абсолютный или относительный путь к папке из DXSDK_Aug2008\Include. Мы выполнили указание пути к папке с заголовочными файлами, необходимыми для компиляции dx-приложения.  
     
  аналогично для узла Linker, пункт General в строке Additional Library Directories указать путь к папке DXSDK_Aug2008\Lib\x86. Это делается для указания пути к библиотекам dx которые потребуются при сборке directx приложения  
     
  Жмем ОК, выполняем сборку Build > Build Solution  
     
  В папке проекта SkinnedMesh появится папка Debug содержащая отладочную откомпилированную версию exe-файла  
     
  Для изменения на Release выбирайте конфигурацию Release, снова задавайте пути к папкам заголовков и библиотек и снова выполняйте сборку  
     
   
     
  При этом готовый модуль будет помещен в папку Release  
     
  Вы справились с первым, самым самым начальным уроком программирования directx на c++  
     
  Далее мы познакомимся с тем, как расширить пример и внести в него свои коррективы  
             
  [назад] [далее] [к содержанию]
 
     
  Другие уроки можно посмотреть в разделе Статьи  
     
 

WEB-технологии

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

Это своего рода ноу-хау, возможно общеизвестные, а возможно и специфичные.

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

Итак,

 
     
  Проблема с кодировками  
     
 

Наверняка не раз и не два Вы сталкивались с такой проблемой -

открываем какое-то письмо или какой-то сайт, а там вместо нормального текста - абракадабра.

И все уже знают, что проблема эта связана с кодировками.

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

 
     
  Как же избежать таких проблем и как их быстрее и правильнее решить ?  
     
 

Универсальных правил на самом деле не так уж и много.

Перечислим их и разберем как они работают.

 
     
 

1) Проблема отображения страниц в браузере

Если вы создали в редакторе шаблон страницы - не важно в каком виде - в виде html, tpl, php или еще каком-то формате, сохранили его а потом открыли в нужном месте сайт и стали смотреть вашу страницу, получив при этом абракадабру, то

1.1 Проверьте какая кодировка используется для данной страницы - как она задана в заголовке <head> вашей страницы.

Это легко сделать используя плагин firebug для браузера Mozilla FireFox

 
     
   
     
 

Для решения этой проблемы нужно выполнить 2 шага:

1.2 Указать в заголовке создаваемой страницы именну ту кодировку, в которой она сохранена;

1.3 Преобразовать страницу в ту кодировку, в которой она будет отображаться и сохранить файл.

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

 
     
 

Например, в редакторе Notepad++ есть специальная опция -

 

 
     
   
     
 

2) Проблема с кодировкой при обработке данных страницы в php коде

Иногда возникает такая проблема -

 
     
 

На странице кодировка корректна, сама страница сохранена в верной кодировке, НО! обрабатываемые данные дают такую кодировку которая приводит к нарушению корректности.

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

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

Эти проблемы также решаемы.

 
     
 

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

<?php $loc_ru = setlocale(LC_ALL, 'ru_RU@RUB', 'ru_RU', 'ru', 'ru'); ?>

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

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

<?php mysql_query("set names cp1251", $connect); ?>

 
     
 

3) Несоответствие кодировки используемой на сайте и в скрипте.

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

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

Оказывается есть решение и этой проблемы.

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

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

<?php $new_content = iconv('utf-8', 'windows-1251//TRANSLIT//IGNORE', $old_content); ?>

Т. е. текущая кодировка utf-8 будет по возможности преобразована в windows-1251.

Теперь если выводить значение переменной $new_content, то её значение уже будет представлено в новой кодировке.

Аналогично можно сделать и наоборот -

<?php $new_content = iconv('windows-1251', 'utf-8', $old_content); ?>

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

 
     
 

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

Удачи вам!

 
     
  Другие уроки можно посмотреть в разделе Статьи  
     
 

4) Несоответствие кодировки используемой по-умолчанию для файлов сайта и в настройках хостинга.

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

AddDefaultCharset

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

AddDefaultCharset windows-1251

или

AddDefaultCharset utf-8

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

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

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



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


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