Blender для начинающих/Основы Web технологий
Содержание コンテンツ
Blender 2.77 - теория 이론
Blender 2.77 - практика 实践
Blender 2.49 - теория 이론
Старый Blender Содержит информацию о Blender 2.49. После прочтения данной части книги Вы сможете назвать основные плюсы и минусы Blender 2.49. Blender 2.77 & 3DsMax 이론
Blender & 3DsMax Сравнение Blender, 3DsMax, Sweet Home и Art Of Illusion. После прочтения этой главы Вы будете немного знать о различиях этих программ. Программирование 이론
Дополнительное 이론
Постобработка изображений
Музыкальное сопровождение
Одни из главных классов Python: bpy.ops | bpy.data | bpy.types.ID
|
Ссылки на материалы |
---|
|
Возможно, Вас заинтересует следующее: |
О Blender 2.76 | Скачать Blender 2.76 |
Данная глава требует знаний по темам: программирование. Убедительная просьба, изучите основы, иначе часть информации, изложенной здесь, может быть вами не воспринята.
Изучить основы программирования можно здесь: Python и Основы PascalABC.Net. |
«Blend4Web» - аддон, написанный для Blender, и нужный для создания интерактивных Web-страниц с элементами 3D. По данной причине, Вы должны знать основы JS, Ajax и JSON.
JavaScript
[править]JavaScript - скриптовый язык программирования, встраивающийся в web-страницы сайтов, и выполняющийся на стороне клиента (компьютера пользователя), а не сервера.
Подключение JS
[править]Для использования JS в файле.html надо написать следующее между тегами <body> и </body>:
<script type="text/javascript">
//код
</script>
Первая стока указывает тип языка, на котором ниже будет писаться код до </script>. Атрибут type принимает значение «text/javascript», указывающее на то, что ниже располагается код, написаный на JS.
Размещать скрипты можно и в <head> </head>:
<script type="text/javascript">
//код
</script>
Другим способом является использование кода на этом языке из внешнего файла:
<script type="text/javascript" src="путь"></script>
Путь - путь к файлу, в котором лежит ваш скрипт.
Комментарии
[править]Комментарии в JS могут начинаться с //, если они длятся всего одну строку:
// комментарий
Или начинаться с /*, и заканчиваться */, если это многострочные комментарии:
/*
комментарий
*/
Вывод на экран
[править]Вывод чего-либо на страницу производится функцией document.write():
document.write('что-то');
При том, внутри скобок все пишется по правилам HTML (то, что требуется отобразить).
Например, вывод жирного текста:
document.write('<b>пример жирного текста</b>');
Переменные
[править]Все переменные объявляются с ключевого слова var:
var переменная;
Переменная будет локальной, если она объявлена в теле функции. Если же объявлять без var (внутри функции), то созданая переменная будет глобальной. Также, можно сразу указывать ее значение:
var переменная = значение;
К примеру:
var a = 23;
Можно и удалить переменные, написав конструкцию:
delete переменная;
Это действует на переменные, объявленные без var. Если же переменная декларирована с var, то есть два способа ее удалить:
переменная = undefined;
переменная = null;
Переменные let
[править]Эти переменные имеют еще более узкую область видимости - только внутри того блока, в котором объявлены. Например, в следующих блоках:
- if
- for
- while
Их декларация происходит следующим образом:
let переменная = значение;
Массивы
[править]Массивы объявляются с помощью функции Array(), создющую пустой массив:
переменная = new Array()
Для заполнения массива используйте конструкцию:
массив[индекс] = значение
Например:
a = new Array();
a[0] = 12
a[2] = 0
Причем, если Вы указали индекс элемента массива, который превышает все предыдущее, длина массива станет равна i + 1, где i - этот индекс.
Условный оператор if
[править]Условный оператор if в JS имеет синтаксис:
if условие
{
// команды
}
else
{
// команды2
}
В условие могут входить такие знаки сравнения:
Оператор сравнения | Описание |
---|---|
== | равно |
=== | равно (если и типы переменных равны) |
!= | не равно |
> | больше |
>= | больше или равно |
< | меньше |
<= | меньше или равно |
Вывод сообщения в зависимости от значений переменных:
var a = 3;
var b = 7;
if (a==b)
{
document.write('a равно b')
}
else
{
document.write('a не равно b')
}}
Иная форма оператора if представлена ниже:
if условие
{
// команды
}
else if условие2
{
// команды2
}
...
else
{
// командыN
}
Даная форма условного оператора нужна для проверки большого количества условий. Если одно из условий выполнилось, то выполнятся команды написанные для этого условия, и браузер завершит проверку остальных условий.
Например, здесь выведется только одно сообщение - о равенстве переменных:
var a = 3;
var b = 3;
if (a==b)
{
document.write('a равно b')
}
else if (a==b)
{
document.write('a равно b второе сообщение')
}
else
{
document.write('a не равно b')
}
Сложные условия
[править]Для написания более сложных условий требуются специальные логические операторы: && (и), || (или) и ! (не).
Записать условие «a равно либо b, либо c» с их помощью можно следующим образом:
if ((a==b) || (a==c))
Циклы
[править]Бывают 4 вида циклов:
- for
- while
- do while
- for in
Цикл for
[править]Цикл for описывается так:
for (объявление переменной, условие, изменение переменной)
{
//команды
}
Первым объявляется любая переменная, доступная только для использования ее циклом, либо присваивается значение уже существующей переменной. Ее значение изменения прописывается в самом конце.
Команды в теле цикла выполняются до тех пор, пока условие выполняется, к примеру:
for (v=0, v<100, i+1)
{
document.write(v+'</br>')
}
Цикл while
[править]Цикл While нужен тогда, когда надо выполнять какие-то действия до тех пор, пока условие верно:
while условие
{
// команды
}
Например:
while (i<100)
{
i = i + 1
document.write(v+'</br>')
}
Цикл do while
[править]От цикла while он имеет одно отличие - блок команд выполняется всегда от одного или более раз. Например:
do
{
i = i + 1
document.write(v+'</br>')
}
while (i<100);
Цикл for in
[править]Этот цикл нужен лишь тогда, когда некоторая переменная поочередно должна принять все значения массива. Форма его записи такова:
for (переменная in массив)
{
// команды
}
Перебирание всех элементов массива:
var a;
var arr = new Array;
arr[0] = 'Учимся ';
arr[1] = 'программировать ';
arr[2] = 'вместе.';
for (a in arr)
{
document.write(a): // будет выведено 'Учимся программировать вместе.'
}
Команды break и continue
[править]- break используется для выхода из цикла.
- continue - для новой итерации цикла.
Например выход из цикла при равенстве a = 3:
for (a=-2, a<100, a+1)
{
if (a = 3)
{
document.write('Цикл завершен.');
break;
}
document.write('a== ' + a):
}
Функции
[править]Функции оформляются вот так:
var имя=function(параметры)
{
//команды
}
Например:
var d;
var f=function(a, b, c)
{
d = a + b + c;
}
Но функции могут также и возвращать значения с помощью оператора return:
var имя=function(параметры)
{
//команды
return значение
}
Например:
var d;
var f=function(a, b, c)
{
return a + b + c;
}
d = f(1,2,3)
Ajax
[править]Ajax - технология, позволяющая обновить данные страницы, не обновляя страницу полностью. Используется в социальных сетях, таких как: «ВК», «Facebook» и других.
Методы Get и Post
[править]Эти методы используются для передачи данных на сервер. Они различаются при работе тем, что:
- Метод get передает все данные серверу в заголовке, что ограничивает возможный размер передаваемой информации.
- Метод post передает данные серверу, так что на URL это не влияет.
- Как следствие, метод Get не является безопасным для передачи информации.
Этапы работы Ajax
[править]При работе с Ajax придется пройти такие этапы:
- Получение данных с формы.
- Формировние URL для подключения.
- Создание соединения с сервером.
- Установка функции, которая выполнится, когда придет ответ с сервера.
- Передача данных серверу.
JSON
[править]JSON - простой способ хранить сложные структурированные данные.
Представление данных
[править]Любые данные в JSON представляются двумя способами. Для массивов:
[
поле:значение
]
И для объектов:
{
поле:значение
}
Например:
[
"Имя":"Вася",
"Фамилия":"Петров",
]
Данную структуру можно включить в объект:
{
"Дата регистрации":"сегодня",
"Персона":
[
"Имя":"Вася",
"Фамилия":"Петров",
]
}
Конвертирование в строку JSON и наоборот
[править]В JS есть встроенная функция, конвертирующая содержание некоторой переменной в строку JSON - JSON.stringify().
Пусть имеем:
var a = {
"RegistrationDate":"today",
"Person":
[
"Name":"Den",
"FriendName":"Kolya",
]
}
JSON.stringify(a); // получим: '{"RegistrationDate":"today","Person":["Name":"Den","FriendName":Kolya"]}'
Данный метод просто запишет содержание переменной в одну строку.
Противоположное действие имеет метод JSON.parse():
var a = JSON.parse('{"RegistrationDate":"today","Person":["Name":"Den","FriendName":Kolya"]}')
a.Person[0] // равно "Den"