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


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

megainformatic - Построение ирерархических связей между объектами и основы 3d анимирования
        [Все уроки 3ds max] [Галерея моделей]
подробнее...

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

megainformatic - Game craft - моделируем scv

megainformatic - Game craft - моделируем scv - шаг 1 (часть 2)

megainformatic - Game craft - моделируем scv - шаг 2 (часть 3)

подробнее

Изменение постоянных свойств в зависимости от контекста





Представьте красную точку. Допустим Вы считаете - что красный цвет - это лучший цвет.

Это отличный цвет, который позволит точке выделиться.

красная точка

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

красная точка на красном фоне или фоне из множества цветных точек

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

Она просто затеряется на фоне других таких же или похожих точек. Затеряется из-за многообразия и большого их количества.

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

И это её отличное свойство - проявится во всей красе. Точка будет уникальной и её
свойство уникальности хорошо проявится. И ваше представление об уникальности красного
цвета подтвердится !

красная точка на красном фоне или фоне из множества цветных точек





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

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





Возникает вопрос: а что же делать ?

Учитывать контекст.

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

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

Любая однозначность сразу же разрушается, если мы поместим её в совершенно нестандартные условия.





Так что как видите, нет ничего однозначного. И кстати, мое утверждение о том, что нет ничего
однозначного тоже не является однозначным !

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





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

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

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

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

А вот пребывание в своем родном городе, в котором он, скорее всего бывает очень редко,
может стать для такого человека настоящим сюрпризом !





Так к чему я вел весь этот разговор ?

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

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

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

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

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

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

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

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

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

изменение постоянных свойств в зависимости от контекста -

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

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

Правила нужны для частых явлений, а исключения - для редких.

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

подробнее


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

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);
}

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

 

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

подробнее

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

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

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

Код html-страницы, который Я вам там привёл может работать правильно не всегда и не в любом браузере.

Почему ?

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


=========================================
I.) Первая проблема - это определение типа html документа, по описанному DOCTYPE.


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

На сайте htmlbook.ru приводится следующее определение для DOCTYPE

Элемент предназначен для указания типа текущего документа — DTD (document type definition, описание типа документа). Это необходимо, чтобы браузер понимал, как следует интерпретировать текущую веб-страницу, поскольку HTML существует в нескольких версиях, кроме того, имеется XHTML (EXtensible HyperText Markup Language, расширенный язык разметки гипертекста), похожий на HTML, но различающийся с ним по синтаксису. Чтобы браузер «не путался» и понимал, согласно какому стандарту отображать веб-страницу и необходимо в первой строке кода задавать .

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

Табл. 1. Допустимые DTD
DOCTYPE Описание
HTML 4.01
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> Строгий синтаксис HTML.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> Переходный синтаксис HTML.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd"> В HTML-документе применяются фреймы.
HTML 5
<!DOCTYPE html> Для всех документов.
XHTML 1.0
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> Строгий синтаксис XHTML.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> Переходный синтаксис XHTML.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> Документ написан на XHTML и содержит фреймы.
XHTML 1.1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> Разработчики XHTML 1.1 предполагают, что он постепенно вытеснит HTML. Никакого деления на виды это определение не имеет, синтаксис один и подчиняется четким правилам.


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

Язык html постоянно развивается, расширяясь и дополняясь его разработчиками. Именно поэтому так необходимо использовать DOCTYPE.

Кроме того, после задания DOCTYPE вам нужно обязательно соблюдать некоторые правила, в записи тегов. Так, если Вы задали для DOCTYPE обычный тип html-документа, то и теги Вы продолжаете записывать так обычно, а вот если Вы задали тип как XHTML, тогда запись тегов может несколько измениться, например символ <br>, вам нужно будет записывать как <br/>

Помимо основных, существуют также некоторые переходные типы DOCTYPE, например <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

Они также были приведены в таблице указанной выше.

Полный перечень и более подробное описание всех возможных вариантов DOCTYPE и их применения можно почерпнуть здесь - http://www.w3.org/TR/html401/struct/global.html

Правда указанная там информация представлена на английском.


=========================================
II.) Вторая проблема - использованная в html-документе кодировка и тег, её задающий.


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

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

1) Сразу после открывающего тега <head> укажите такую строчку -
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">

При этом сам файл страницы должен быть также сохранен в этой же кодировке - windows-1251

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

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

В заключение данной статьи давайте перепишем код нашей первой странички в новом виде -

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>

<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">
<title>Моя первая страница</title>
</head>
<body>
Привет! Это текст на моей первой странице.<br><br>

Ура !!! Работает !!!<br><br>
</body>

</html>

При этом сохраняем файл index.html в кодировке windows-1251 (если сохраняете из блокнота, то указываете её как ANSI)

далее

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

подробнее

Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 16

Онлайн-комикс Костя Коробкин - В гостях у тёти Светы - интерактивный комикс (kk as).

- Ну ладно, уже звонок я побежала !

Костя Коробкин - В гостях у тёти Светы часть 2 Живые машины (- интерактивный комикс (kk as) - онлайн комикс - страница 16

если кликать картинку она будет последовательно меняться в размерах от 620 до 2048 пиксель.

[страница 1][страница 2] [страница 3] [страница 4] [страница 5] [страница 6] [страница 7] [страница 8] [страница 9] [страница 10] [страница 11]  [страница 12] [страница 13]  [страница 14] [страница 15] [страница 16] [страница 17] 



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

Flash. Подготовка к работе.

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

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

 

Эта статья будет посвящена основам flash программирования. Здесь мы установим и настроим среду разработки.


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

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

Для разработки я использую Adobe Flash CS 5, как средство для разработки графики, и среду Flash Develop - для написания кода.

Сам редактор можно найти по адресу http://www.flashdevelop.org/ .

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

  • Flash Player 10.1 ActiveX runtime (для вашего браузера) Flash Player Download
  • TortoiseSVN or TortoiseGit (если вы используете систему контроля версий) TortoiseSVN, TortoiseGit
  • Java 1.6 runtime (JRE) необходима для отладки флешек.

Flash Develop работает на Flex SDK, потому его тоже необходимо скачать.

После того, как все это мы установим, необходим настроить среду разработки.

выбираем пунк меню "Tools", затем "Program Settings"

Устанавливаем путь к Flex SDK. Слева выбираем AS3 Content.

 

Выбираем путь, куда у нас установлен SDK

Собственно все готово к работе. Создадим тестовый проект.

Выбираем в меню "Project" затем "New project"

Выбираем тип проекта AS3 project. Задаем ему имя, путь и отмечаем флаг создание директории для нового проекта.

Наш проект создан. Откомпилировать можно нажав F8. Зпустив F5 или ctrl+ Enter.

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

 

 

На этом заканчиваю. Надеюсь, эта информация была вам интересна.
C уважением, Андрей.

[к содержанию]
megainformatic live chat
Начать беседу
X
 

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



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


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