30 декабря 2011

С Новым 2012 Годом!

Armanenshaft Team поздравляет вас с Новогодними Праздниками.

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

Продуктивных проектов и скорых релизов.
Убить песни о сегментах Win vs Lin=>Mac.
Прорвать заслоны идиотов с однополюсной истиной.

Дать ход идеям которые не востребованы посредственностью.
Опираться на достоверность и качество информации.

С Новым 2012 Годом!

22 декабря 2011

Add Art / Разработка темы для плагина FireFox-Personas

На медне вышел FireFox9,более года мы не пользовались этим браузером...
Причин и доводов море. Релиз FireFox9 всеж(У) пропелили...
Гибкий реинжениринг Chrome,плюс новый javaScript-движок.
Поличным доводам и тестам Chrome всего на шаг в переди...

***

Базовые темы плагина Personas,в стелс Лисах и облаках))).
Выборочно любительские арты приемлены но...Но...
Ранее мы вояли простенькие стили для плагина...

http://armanenshaft-blender3d.blogspot.com/2009/04/personas.html

На этот раз всё проще и возможно с продолжением :-)).

***

- Debian 6.0.3
- Blender3D 2.49b (SVN)
- Render Blender3D 2.49b
- GIMP 2.6.11
- Gmic

***

Схема как и ранее проста...

- Рендер фона бе(з) мешей
- Атмосфера и небо
- Подбор цвета согласно задумке в World
- Рендер сразу шаблона размером 3000х200 (верх)
- Рендер сразу шаблона размером 3000х100 (низ)
- Работаем по задумке с кистями в GIMP 2.6.11
- Полировка Gmic
- Тестируем локально,заливаем на https://www.getpersonas.com/

***

В целом полный микс софта для практики и удовольствия...

***

Свежая тема от нас -Binary Alchemy-.

https://www.getpersonas.com/en-US/persona/449550

***

Прошлые темы и весь профиль...

https://www.getpersonas.com/en-US/gallery/Designer/aspbazi

Hugin 2011.4.0

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

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

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

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


***

http://sourceforge.net/projects/hugin/files/hugin/hugin-2011.4/

21 декабря 2011

Blender 2.6x Addon / ShaderTools Beta

НАКОНЕЦ кто-то написал приличный менеджер библиотек материалов для
Blender. Удивительно. Теперь все, что нам нужно это он-лайн подключение
к он-лайн хранилищу материалов:)

***

ShaderTools является материалом библиотеки Blender и включает в себя
более чем четыреста пятьдесят материалов. Он использует базу данных
SQLite, чтобы сохранить и импортировать материалы.

Вы можете экспортировать ваши материалы.

***

http://shadertools.tuxfamily.org/

http://tinangel.free.fr/SHADERTOOLS/shader_tools.zip

http://tinangel.free.fr/SHADERTOOLS/shader_tools_src.zip

20 декабря 2011

Add Art / Tux2012-Window

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

***

- Debian 6.0.3
- Blender3D 2.49b (SVN)
- Render Blender3D 2.49b
- GIMP 2.6.11
- Gmic

***

Полный формат...

http://armanenshaft.narod.ru/download/blender/Tux2012-2.png

Шаблончик...

http://armanenshaft.narod.ru/download/blender/Tux2012.blend

LuxMicrosha-x5.1 / Рендер-Ферма / Схема

Пример блок схемы для домашней сети...
Живой пример...
http://armanenshaft-blender3d.blogspot.com/2011/12/luxmicrosha-x51-update.html

***

Станция-0 (terminal)

ОС - Puppy Linux x86
CPU - Pentium 3 Mobile (800 mhz)
RAM - 256 ggb DDR-1
GPU - Intel 830M Mobile

Станция-1 (master)

ОС - Debian squeeze 6.0.3 x86
CPU - Pentium 4 TH (3.13x2 ghz)
RAM - 3 ggb DDR-1 (Dual RAM)
GPU - Nvidia GeForce GT-6600 (DDR-3)


Станция-2 (slave)

ОС - BackTrack 5r1 (Debian) x86
CPU - Pentium 4 (2.4 ghz)
RAM - 1 ggb DDR-1
GPU - Nvidia GeForce 5700


Станция-3 (slave)

ОС - Windows7 x86
CPU - Pentium P 6200 (2.13x2 ghz)
RAM - 2 ggb DDR-3
GPU - Nvidia GeForce 310M CUDA (OpenCL)


Станция-4 (slave)

ОС - Debian squeeze 6.0.3 x86
CPU - Athlon 2000+ (1.2 ghz)
RAM - 512 ggb DDR-1
GPU - Nvidia GeForce FX-440


***

Организация в домашних условиях D-link DIR 300 (WiFi).

15 декабря 2011

Add Art / Joy Division / LuxMix

Дополнительный профиль по арту Joy Division...

***

- Debian 6.0.3
- Blender3D 2.49b (SVN)
- Render LuxRender 0.8
- Renders LuxMicrosha x5.1
- GIMP 2.6.11
- Gmic

***

Заметка по панели Lux...

[tonemapping]
TM_kernel=0
clamp_method=0
TM_reinhard_prescale=0.9
TM_reinhard_postscale=1.1
TM_reinhard_burn=5.7
TM_linear_exposure=1
TM_linear_sensitivity=50
TM_linear_fstop=2.8
TM_linear_gamma=1
TM_contrast_ywa=1

[gamma]
TORGB_gamma=2.20000004768372
CRF_enabled=true
CRF_file=Max_Zoom_800CD

[lightgroup_default]
LG_title=default
LG_enable=true
LG_scale=1
LG_temperature_enabled=false
LG_temperature=6500
LG_rgb_enabled=false
LG_scaleRed=1
LG_scaleGreen=1
LG_scaleBlue=1
LG_scaleX=1
LG_scaleY=1

***

Макет...

http://armanenshaft.narod.ru/download/blender/joy_division2.blend.tar.bz2

Фулл Формат...

http://armanenshaft.narod.ru/download/blender/Joy_D2.png

Сектор Лирики / Русификация Blender3D

После шустрого релиза Blender3D 2.61 запистрило где только можно пост
измена...

***

Мало кто в чейнджлогах упомянул, что с этой версии большая часть Blender
теперь переведена на русский. Включается в File -- User Preferences --
System -- галочка International fonts.
За исправлениями и дополнениями на http://translateblender.ru

***

Настроение было хорошие поэтому ответ был прост...

Мало кто в чейнджлогах упомянул... Русский там даром и не нужен.

***

Ну кореша с http://www.opennet.ru/ решили как всегда вести полукровный
контроль,сообщение удалили...

Но тема развилась...

***

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

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

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

Это не концептуальная проблема перевода, это проблема конкретного
перевода. И её надо исправлять.

Мне кажется, что удобнее переводить только tooltip'ы, а кнопки не
трогать (можно и сейчас так настроить). Хотя, когда будет вводиться
минималистичный интерфейс по-умолчанию русские надписи весьма бы были
кстати.

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

***

Славяне как всегда в своём репиртуаре...
С пустой головой и набором букв.

Повторю ххх раз ДАРОМ не нужен))).
Blender Federation не однакратно выражала скрытый смех к порнухи
Блендера на просторах
пост совдепии.

***

http://www.opennet.ru/openforum/vsluhforumID3/81851.html#1

14 декабря 2011

Blender 2.61 Released

Дождались...

***

Доступен релиз свободного пакета 3D-моделирования Blender 2.61.
Напомним, что вместо промежуточных экспериментальных выпусков, отныне
раз в два месяца формируются стабилизированные релизы, включающие только
завершенные и пригодные к использованию новшества. Постепенно, шаг за
шагом, на базе таких релизов будет реализован весь спектр возможностей,
запланированных для ветки 2.6x.

Основные новшества

Добавление средств "motion tracking" для воссоздания движений камеры и
объектов на сцене на основании реальных видеоданных, на которых
присутствуют контрольные точки. Добавлен новый редактор видеоклипов для
загрузки отснятого видео, отслеживания контрольных точек и реконструкции
движения объектов. В дальнейшем сформированная модель может быть
применена для привязки анимированных объектов или искажения/нормализации
реальных элементов отснятого видео;

Интеграция новейшего движка для рендеринга Cycles, использующего
трассировку лучей (Ray tracing). Ключевыми особенностями данного движка
являются фотореалистичность результатов рендеринга и поддержка
интерактивного рендеринга практически в режиме реального времени.
Интерактивный рендеринг достигается за счёт использования современных
графических ускорителей, поддерживающих технологии CUDA и OpenCL;

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

Инструмент для симуляции деформации поверхности океана;

Расширение Render Engine API для более полной интеграции с пакетом,
добавление механизма для определения изменений на сцене;
Дополнение для экспорта анимационных данных для пакета Adobe After Effects.

***

http://www.blender.org/download/get-blender/

LuxMicrosha-x5.1 / Рендер-Ферма / Update

Дополнительная организация МиниФермы LuxMicrosha x5.1...

***

- Парк пять машин.
- Задача домашний рендерджаз.

***

Станция-0 (terminal)

ОС - Puppy Linux x86
CPU - Pentium 3 Mobile (800 mhz)
RAM - 256 ggb DDR-1
GPU - Intel 830M Mobile

Станция-1 (master)

ОС - Debian squeeze 6.0.3 x86
CPU - Pentium 4 TH (3.13x2 ghz)
RAM - 3 ggb DDR-1 (Dual RAM)
GPU - Nvidia GeForce GT-6600 (DDR-3)


Станция-2 (slave)

ОС - BackTrack 5r1 (Debian) x86
CPU - Pentium 4 (2.4 ghz)
RAM - 1 ggb DDR-1
GPU - Nvidia GeForce 5700


Станция-3 (slave)

ОС - Windows7 x86
CPU - Pentium P 6200 (2.13x2 ghz)
RAM - 2 ggb DDR-3
GPU - Nvidia GeForce 310M CUDA (OpenCL)


Станция-4 (slave)

ОС - Debian squeeze 6.0.3 x86
CPU - Athlon 2000+ (1.2 ghz)
RAM - 512 ggb DDR-1
GPU - Nvidia GeForce FX-440


***

Организация в домашних условиях D-link DIR 300 (WiFi).

Станция-0 (terminal) на базе Dell C400 выполняет функцию терминального
сервера для управления фермой.

Варианты LuxRendera на огороде...

- Master / lux-v08-i686-sse2-NoOpenCL
- Slave / lux-v08-i686-sse2-NoOpenCL
- Slave / lux-v08-i686-sse-NoOpenCL
- Slave / lux-v08-i686-sse2-OpenCL

GIMP 2.7.4

Представлен новый экспериментальный выпуск растрового графического
редактора Gimp 2.7.4, на базе которого будет сформирована стабильная
ветка 2.8, релиз которой намечен на январь.

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

На используемые в однооконном режиме вкладки с редактируемым
изображением добавлена кнопка закрытия;

Улучшена наглядность работы инструмента трансформации; UI:
Реализовано корректное раскладывание управляющих элементов на холсте,
так чтобы они не перекрывали друг друга;

Обеспечена корректная запись настроек однооконного и многооконного
режимов работы;
Задействован более оптимальный алгоритм автокорректировки изображений;
Добавлена возможность отображения субкаталогов в виде тегов, упрощая
пользователям поиск установленных коллекций ресурсов;

Прекращено отображение движущихся подсказок;
В libgimp добавлен базовый PDB-интерфейс для динамических красок;

Добавлена поддержка отциональной записи информации о цветовом
пространстве в файлы BMP;

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

13 декабря 2011

Сектор Лирики / Оценка игровой ситуации

«Оценка игровой ситуации» - довольно неоднозначное понятие. В него может
входить как простой подсчет очков, числа попаданий или любой другой
числовой величины, так и общий контроль ситуация в игровом пространстве,
которую мы видим на экране. Разработчики игровых программ обычно
стараются в равной мере использовать как количественную, так и
качественную оценку, однако специфика игры часто диктует свои
требования. Так, в известной игре Tetris нас больше интересует положение
в «стакане», целиком захватывает процесс борьбы с фигурками, их
правильная укладка, а об очках мы вспоминаем, когда игра уже закончена.
Тем не менее, количество набранных очков в этой игре тоже играет важную
роль, так как без них невозможно узнать, становится ли выше от раза к
разу уровень нашего мастерства и каков он по сравнению с уровнем других
игроков. Однако есть и такие популярные игры, как например, Tomahawk,
где игровое пространство выглядит очень просто, зато количественная
оценка ситуации изобилует всевозможной числовой и текстовой информацией.

Опираясь на эти и другие примеры игровых программ, можно сделать общие
выводы относительно того, как формировать блок оценки игровой ситуации

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

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

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

Platinum Arts Sandbox Free 3D Game Maker / Linux

Программа Platinum art sandbox это удобный конструктор трехмерных миров
для детей и подростков. Данное программное обеспечение позволяет за
считанные минуты создавать различные лабиринты, улицы, деревни или даже
целые города и все это в реальном времени.
По сути Platinum art sandbox это виртуальная песочница, где пользователь
может изменять ландшафт, добавлять трехмерные объекты, менять текстуры,
да и делать все, что душе угодно.

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

Коротко об управлении:
Клавиша F1 вызывает меню объектов, где пользователь может выбрать объект
(к примеру, дерево) и разместить его на карте. Клавишей F2 вызывается
меню текстур, F3 можно сохранить или загрузить карту. Передвижение
экрана по карте осуществляется с помощью клавиш W,A,S,D. Клавиша E
(латинская) запускает тестовый режим, где вы можете опробовать свое
творение.

Несколько слов хочется уделить музыке, которой разработчики одарили свою
программу. Она великолепна. Легкие, ласкающие слух мелодии делают работу
в Platinum art sandbox приятной и увлекательной.

Опытные пользователи с помощью Platinum art sandbox могут создавать
собственные полноценные трехмерные игры различных жанров. А
профессионалы могут добавлять в программу что-то новое, благодаря
открытому программному коду.

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

К слову, на этом движке создана игра Cube 2: Sauerbraten

***

http://www.sandboxgamemaker.com/

12 декабря 2011

Сектор Лирики / История-ZX Spectrum / ИГ

ПОСТРОЕНИЕ ИГРОВОГО ПРОСТРАНСТВА

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

Из чего состоит игровое пространство

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

Большое количество компьютерных игр создано по сюжетам приключенческих
фильмов и книг: Robocop, Rambo, Empire, Batman, Death Star и т. д. В
основу других положены распространенные «настольные» игры - Chess,
Poker, Draught. Компьютер позволяет смоделировать и логические игры типа
Tetris, Petris, Sokoban, Bolder Dash и другие. Многие программы
предлагают вам стать участником космических сражений (Elite, Star
Raiders, R-Type, Star Fox), воздушных боев (MIG-29, Spitfire, F-16,
Flying Shark, River Raid) или выполнить рискованные задания (Into The
Eagles Nest, Saboteur, Bruce Lee, Flying Dragons). Получили
распространение игры-имитаторы спортивных состязаний - Emlyn Huger
Soccer, Basket Master.

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

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

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

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

Создание графических объектов

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

Каким образом получить изображение на экране? Во-первых, можно
воспользоваться операторами PLOT и DRAW. Но при этом, как вы понимаете,
программа выйдет достаточно громоздкой и «медлительной». Если не верите
-введите и выполните программку, рисующую на экране ракету:

10 PLOT 120,80: DRAW 3,-3 20 DRAW 0,-11: DRAW 4,-4 30 DRAW 0,-5: DRAW
-4,4 40 DRAW -6,0: DRAW -4,-4 50 DRAW 0,5: DRAW 4;4 60 DRAW 0,11: DRAW 2,2

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

Идея здесь довольно проста. Любое изображение на экране (спрайт) можно
разбить на несколько маленьких спрайтиков. А любые символы (буквы,
цифры) тоже, по сути, маленькие спрайтики, размером в одно знакоместо. И
выводить их на экран проще простого - с помощью оператора PRINT. Значит,
если нам удастся изменить некоторые символы таким образом, чтобы при
выводе в совокупности они составили нужную картинку, то задачу можно
будет считать решенной.

По счастью, разработчики ZX Spectrum предусмотрели возможность изменения
набора символов. Проще всего изменить символы, специально
предназначенные для этого. Они так и называются: символы, определяемые
пользователем - User Defined Graphics (UDG). Они выводятся на экран в
режиме курсора [G] при нажатии клавиш от А до U. Режим курсора [G]
включается (и выключается) одновременным нажатием клавиш Caps Shift и 9.

Теперь перейдем к главному вопросу: как закодировать изображение? Вы
знаете, что символы строго вписываются в знакоместа экрана с размерами
8x8 точек - пикселей. Начертим на листе в клетку поле 8x8 клеток и
изобразим на нем какую-либо фигуру, например, «гномика».

***

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

получим последовательность чисел в двоичном представлении:

00000000 00111000 01010100 00111000 00111000 00101000 01101100 00000000

Для записи двоичных чисел в Бейсике используется ключевое слово BIN.
Например,

PRINT BIN 10010110

или

LET a=BIN 10010110: PRINT a

Наконец, нам остается занести полученный ряд чисел в память. Как это
сделать? Наверное, для вас не будет новостью, что память компьютера
представляет собой последовательность ячеек, предназначенных для
хранения чисел. При этом каждая ячейка имеет свой адрес, только не дом и
не улицу, а номер от 0 до 65535. Чтобы занести в память какое-то число,
нужно выполнить оператор РОКЕ, после которого сначала указывается адрес
ячейки, а затем, после запятой, -само число. Помните только, что
записывать в память можно не любые значения, а лишь целочисленные из
диапазона от 0 до 255. Эти числа в дальнейшем мы будем называть байтами,
а каждый отдельный разряд двоичного числа - битом. Таким образом, байт
состоит из восьми битов.

По каким же адресам расположить числа, составляющие изображение нашего
«гномика»? Узнать адреса размещения символов UDG позволяет функция USR,
аргументом которой должен быть символ нужной клавиши. Например, PRINT
USR "S" напечатает на экране адрес символа, определяемого пользователем,
который соответствует клавише S.

Теперь расположим, начиная с этого адреса, коды изображения «гномика» и
затем выведем его на экран:

10 POKE USR "S", BIN 00000000 20 POKE USR "S"+1,BIN 00111000 30 POKE USR
"S"+2,BIN 01010100 40 POKE USR "S"+3,BIN 00111000 50 POKE USR "S"+4,BIN
00111000 60 POKE USR "S"+5,BIN 00101000 70 POKE USR "S"+6,BIN 01101100
80 POKE USR "S"+7,BIN 00000000 90 PRINT "S"

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

00111000 => 0S128 + 0S64 + 1S32 + 1S16 + 1S8 + 0S4 + 0S2 + 0S1 = 56

Теперь приведем пример программы, записывающей изображение нашего

«гномика» в пользовательский символ, который соответствует клавише А.

10 FOR 1=0 ТО 7

20 READ N: POKE USR "A"+I,N

30 NEXT I

40 DATA 0,56,84,56,56,40,108,0

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

20 - функция USR "А" возвращает адрес символа UDG, соответствующего
букве А, а оператор РОКЕ записывает в ячейку памяти с этим адресом
значения переменной N, которые последовательно считываются оператором
READ из списка данных, следующих за оператором DATA;

30 - конец цикла по переменной I;

40 - коды изображения «гномика», приведенные к десятичному виду.

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

в знакоместо с координатами (10, 15), достаточно набрать в программе
дополнительную строку 50 PRINT AT 10,15;"A" причем клавишу А необходимо
нажимать в режиме курсора [G].

***

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

Рисунок состоит из пяти знакомест. Обозначим их буквами А, В, С, D и Е
(рис. 3.2), а затем закодируем каждое способом, описанным в предыдущем
примере.

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

Программа 7. Спрайт "реактивный самолет".

10 BORDER 1: PAPER 1: INK 6 20 CLS

30 FOR N=0 TO 39 40 READ S

50 POKE USR "A"+N,S 60 NEXT N 70 GO TO 300

100 DATA 24,24,24,24,24,24,60,60: REM A 110 DATA
60,36,36,60,60,60,90,90: REM B 120 DATA 12,13,15,127,255,255,15,0: REM C
130 DATA 219,219,219,219,219,219,255,60: REM D 140 DATA
48,176,240,254,255,255,240,0: REM E 300 PRINT AT 10,10;"A" 310 PRINT AT
11,10;"B" 320 PRINT AT 12,9;"CDE"

10 - установка атрибутов экрана;

20 - очистка экрана;

30 - начало цикла, в котором должно быть прочитано 5x8 = 40 кодов (с 0
по 39 включительно);

40 - в процессе работы цикла оператор READ считывает в переменную S
поочередно все данные из списка DATA;

50 - в этой строке происходит следующее. Число, присвоенное переменной
S, теперь переписывается в ячейку памяти компьютера, имеющую адрес USR
"A" + N. При N = 0 этот адрес составляет 65368. Так как в цикле по N
величина USR "A" + N все время увеличивается на единицу, то требуемые
коды будут последовательно записаны в ячейки памяти с адресами 65368,
65369, 65370, ...

60 - конец цикла Теперь можно либо вывести изображение самолета на экран
(как сделано у нас), либо обратиться к другим частям программы;

70 - переход на строку 300, с которой начинается вывод на экран
изображения самолета;

100... 140 - здесь хранятся коды, соответствующие пяти знакоместам
изображения самолета. Заметим, что мы могли бы записать все данные одним
оператором DATA, но при этом пострадала бы «читабельность» программы;

300 - вывод на экран в знакоместо с координатами (10, 10) фрагмента А
реактивного самолета. (Еще раз напомним, что при наборе строки клавишу А
следует нажимать в режиме курсора [G]);

310 - вывод на экран фрагмента В;

320 - вывод на экран фрагментов С, D и Е.

09 декабря 2011

Blender 2.61 / Подробности Новшеств

Основные новшества Blender 2.61:

Добавление средств "motion tracking" для воссоздания движений камеры и
объектов на сцене на основании реальных видеоданных, на которых
присутствуют контрольные точки. Добавлен новый редактор видеоклипов для
загрузки отснятого видео, отслеживания контрольных точек и реконструкции
движения объектов. В дальнейшем сформированная модель может быть
применена для привязки анимированных объектов или искажения/нормализации
реальных элементов отснятого видео;

Интеграция новейшего движка для рендеринга Cycles, использующего
трассировку лучей (Ray tracing). Ключевыми особенностями данного движка
являются фотореалистичность результатов рендеринга и поддержка
интерактивного рендеринга практически в режиме реального времени.
Интерактивный рендеринг достигается за счёт использования современных
графических ускорителей, поддерживающих технологии CUDA и OpenCL;
Реализация динамической краски, нового модификатора, который может
превратить объекты в холст и кисти для окрашивания;

Инструмент для симуляции деформации поверхности океана;

Расширение Render Engine API для более полной интеграции с пакетом,
добавление механизма для определения изменений на сцене;

Дополнение для экспорта анимационных данных для пакета Adobe After Effects.
Дополнительно можно отметить публикацию интервью об использовании
Blender в компании "3D-Master", а также шутливую публикацию прототипа
интерфейса Blender, выполненного в стиле технологий 19 века.

***

Как обычно рядовое использование не упоминается))).
Дорога Блендера в стиль нон-стоп пост Linux?

Add Art / Joy Division / Full Mix

- Обкатка работы плагинами GIMP.
- В архиве разнообразные примеры.
- Дополнительный архив с макетом.

***

http://armanenshaft.narod.ru/download/blender/joy_dev.7z

http://armanenshaft.narod.ru/download/blender/joy_division.blend.7z

08 декабря 2011

Blender 2.61RC1 Released

На подходе...)))

***

Motion tracking support has been added, to reconstruct camera and object
animation from real footage, and composite 3d rendered object into movie
clips.
A new Movie Clip editor for loading clips, tracking points and
reconstructing motion was added. Constraints can apply this
reconstructed motion into the scene, and compositing nodes are available
for (un)distorting rendered animations or real footage.

Cycles is a new render engine that is available next to Blender
Internal. It is a raytracing based render engine with support for
interactive rendering, a new shading node system, new texture workflow
and GPU acceleration.
It is still in development, and more production features are planned to
be added, this is the first preview release.

Dynamic paint is a new modifier and physics system that can turn objects
into paint canvases and brushes, creating each vertex colors, image
sequences or displacement.

Ocean simulation tools take the form of a modifier, to simulate and
generate a deforming ocean surface, and associated texture, used to
render the simulation data.

The Render Engine API has been extended for closer integration, a
mechanism to detect changes in scenes was and persistent callbacks were
added, along with various other changes.
List of Python changes.

***

http://download.blender.org/release/Blender2.61/

Add Art / Joy Division

Проходная работа на свободную тему...

***

- Debian 6.0.3
- Blender3D 2.49b (SVN)
- Render 2.49b
- GIMP 2.6.11
- Gmic

***

- Работа спесефично выполнена в стиле Фото.
- Joy Division макет Рок группы+СС дивизии.
- Образ играющего дитя на цепи общества.


***

Полная версия...

http://armanenshaft.narod.ru/download/blender/Joy_D_old.png

29 ноября 2011

Blender3D BGE / Minnaret vs Toon


***



http://youtu.be/xhk_5DUrwTc

***

Данная видео заметка характеризует простой пример использования диффузии шейдеров BGE.

- За основу взяты астероиды из проекта SWA.
- PyNodes не используется.
- Расмотрен общий ход настройки материала.
- Общий ход работы Blender3D 2,49b.


Пример для Blender3D 2,49b...

http://armanenshaft.narod.ru/download/blender/asteroid_toon.blend

LuxRender Dev 201x

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

Сделали они немало: рендеринг с распараллеливанием на несколько GPU,
материал "layered" для наслаивания материалов, новые материалы
"glossycoating" и "metal2", а также несколько новых текстур. К этому
списку можно добавить поддержку проекции нормалей (normal mapping) и
многое другое.

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

***

http://www.luxrender.net/en_GB/development_blog#item26

http://www.luxrender.net/forum/viewforum.php?f=30

Игровой движок и аспекты хорошей игры

Статья по архивам http://b3d.mezon.ru/...

***

Что такое Игровой Движок?

Игровой движок - это программа, симулирующая часть реального мира. С
помощью игрового движка вы можете в реальном времени взаимодействовать с
3D миром, управляя объектами, которые взаимодействуют с другими
объектами. Если вы когда-либо играли в видео игры на компьютере, на
игровой консоли или на игровом автомате, то вы уже использовали игровой
движок. Игровой движок - это сердце игры, и состоит он из нескольких
частей. Одна часть отображает 3D мир и объекты в нем на экране, рисует и
перерисовывает сцену когда в ней что то меняется. Другая часть отвечает
за принятие решений ("игровая логика"). Например, если в игре была
создана открывающаяся дверь, эта часть игрового движка будет отвечать за
то, когда это событие должно произойти. Еще одной частью движка является
"симулятор физики". Эта часть отвечает за гравитацию, инерцию, импульс
(momentum) и т.д. Две другие части отвечают за поведение объектов во
время столкновения и движение до и после него.
Игровой движок старается делать все это настолько быстро, насколько это
возможно, для создания ощущения плавной симуляции.

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

Это упрощенный пример. Игровые движки, которые вам доводилось
использовать, гораздо сложнее, и для их создания потребовалась целая
команда программистов и значительный период времени. По крайней мере,
так должно было быть, пока не появился Игровой Движок Blender :)

Игровой Движок Blender -- создание игр в стиле "нажми и потяни"

Blender - первый игровой движок, в котором возможно создавать игры без
необходимости что либо программировать. Благодаря пользовательскому
интерфейсу для создания игр в стиле "нажми и потяни" даже те, кто не
обладает опытом программирования, могут наслаждаться увлекательным
процессом создания веселых и захватывающих игр.
После того, как вы создали 3D-мир и объекты, вам потребуется
воспользоваться всего лишь несколькими выпадающими меню, простыми
сочетаниями клавиш и несколькими кликами мыши для настройки поведения
вашего мира и объектов в нем. Для профессионалов это возможность быстро
создавать прототипы игр, для непрофессионалов - первый шанс создать свою
собственную игру без необходимости тратить годы на изучение
программирования или привлечения команды разработчиков. Для тех, кто
обладает опытом программирования, Blender использует скриптовый язык
Python, с помощью которого программисты могут расширить возможности
игрового движка.
Эта простота использования, на самом деле, скрывает действительную
инновационную суть игрового движка Blender.

"Настоящие" и "псевдо" игровые движки

Blender является "настоящим" 3D-игровым движком. До недавнего времени
игровая логика (система принятия решений) не реализовывалась на уровне
объектов. Это значит, что "высший разум" в игре должен был
контролировать все объекты сразу, перемещать их, когда это нужно, и
следить за состоянием каждого из них (например, жив или мертв).
Преимуществом "настоящего" игрового движка является наличие у каждого
объекта своей собственной сущности. Каждый объект самостоятелен и сам
сообщает о своем состоянии игровому движку.
Например, когда вы играете в игру, где двигаетесь в лабиринте с
потайными дверями, раньше "Высший Разум" должен был решить, находитесь
ли вы достаточно близко от двери и открыть ее. В игровом движке Blender
дверь имеет свой собственный сенсор и способна определить, достаточно ли
близко объект от нее, и самостоятельно открыться.
Другим примером будет "стрелялка". Ружье имеет собственный набор
логических операций, которые определяют, нажат ли спусковой крючок. При
нажатии создается новый объект - "пуля" - с определенной начальной
скоростью. Пуля, которая теперь является независимым объектом,
выстреливается из дула и летит сквозь среду, испытывая на всем пути
сопротивление воздуха и силу тяжести. Сама пуля имеет сенсор и логику
поведения. Она самостоятельно определяет, попала ли она в стену или
поразила цель. Во время удара логика пули и логика пораженного ей
объекта определят, что произойдет дальше.
Раньше, когда вы нажимали на спусковой крючок, игровой движок
рассчитывал, попадет ли пуля в цель еще в момент выстрела. Это не
создает реалистичного поведения пули. Если игровой движок определял
попадание пули, он управлял поведением пораженного объекта, определял,
как он будет реагировать.

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

Хорошие игры

Если вы посмотрите на хорошие игры чуть пристальнее, вы увидите, что все
они содержат три основных аспекта в различных пропорциях. Они известны
как теория "Игрушка, Погружение (Immersive), цель" создания игр.

Игрушка (Toy)

Аспект Игрушки относится к получению удовольствия от самого процесса
игры. Вам не нужно много думать, вы просто берете мышь или джойстик и
сразу начать играть, как вы это делали со своими игрушками в детстве.
Вам не нужно было читать инструкции, что бы поиграть с вашим игрушечным
автомобилем, или тратить время на разработку сложной стратегии действий.
Другими словами, игры с большой долей "фактора игрушки" очень
интуитивны. Вспомните вашу любимую аркадную игру на игровой приставке.
Скорее всего, вам нужен лишь джойстик и две-три кнопки или световой
пистолет.
Это не означает, что такие игры не требуют от вас умений. Но вы можете
получить удовольствие сразу от самого процесса игры.

Погружение

Аспект Погружения - степень, до которой игра заставляет вас забыть, что
вы играете в игру. Иногда его называют "приостановкой недоверия"
("suspension of disbelif"). Авиасимуляторы и автогонки - хороший пример
использования этого аспекта. Реализм - один из наиболее важных факторов
в этих играх. Именно он стал причиной достижения такого высокого уровня
симуляции реального мира. Такие игры, как "Mechwarrior" и "WarBirds",
являются отличным примером игр с эффектом погружения, достигающимся
реалистичным окружением, анимацией и звуком. У обеих этих игр низкий
уровень аспекта "игрушки", требуется некоторое время для изучения
процесса управления, и практически каждая клавиша на клавиатуре
используется для определенной функции.

Старомодные однокнопочные джойстики сменили HOTAS устройства (Hand On
Throttle And Stick - одна рука на дросселе и на джойстике), состоящие из
джойстика с количеством кнопок от 6 до 10 для одной руки, рукоятки
дросселя с подобным количеством кнопок для другой, и даже с педалями для
ног. Такая система, в сочетании с хорошо сделанной игрой, создает
потрясающий эффект погружения. Эти игры часто имеют достаточно высокий
уровень "цели".

Аспект "Цель"

Аспект "цели" - это достижение определенного уровня мастерства, который
требует от вас игра для дальнейшего "продвижения" по ней. Часто это
включает в себя стратегию и планирование. "Age of Empires" и "SimCity" -
примеры игр с очень выраженным аспектом "цели". Игры с ориентацией на
достижение некоторого уровня мастерства обычно имеют очень низкий
уровень аспекта "игрушки". "SimCity", например, сопровождается
достаточно увесистым мануалом, разъясняющим все моменты создания успешно
"растущего" города. Но это не является правилом. "Quake" - также "игра
на достижение некоторого уровня мастерства", но при этом имеет хороший
уровень аспектов "игрушки" и "погружения".

Баланс

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

AS Logo / pyNodes / Sequence Edit



***

http://youtu.be/CkfpbKCfw3A

Наработки нового логотипа...

* Работа выполнена полностью в Blender3D 2,49 SVN.
* Основной материал использован в сочитании с pyNodes.
* Видео эффект для Sequence скоппилирован с исходника truncate

http://www-users.cs.umn.edu/~mein/blender/plugins/sequence/truncate/index.html

* О работе с pyNode расмотрим пример позже.

28 ноября 2011

Blender3D / Video Plugins Demo



***

http://youtu.be/aPcs0HSyeGk

Проходит время Blender3D набирает обороты...
Хорошо это или плохо каждый решает сам.
За последние время Blender3D обрёл много хорошего так и плохого.
Переделанный API и куча доработок...
Грядёт Blender3D 2.61,даже добавили экспортёр для Adobe After Effects (автор смеётся).
Но по личному мнению Blender3D уходит по кривой...
Как и собратья мира Open Source (KDE+GNOME).


Данное видео выполнено как заметка по Sequence Plugins для Blender3D 2.49

Для полноты работы и микса работ с видео редактором Blender3D.

Ссылки...

http://www-users.cs.umn.edu/~mein/blender/plugins/

http://www-users.cs.umn.edu/~mein/blender/plugins/sequence.html

25 ноября 2011

SWA / Editor / Easy BGE.pdf

В корневой релизной папке создан подраздел Editor...


Содержит /Doc/Editor/

- AA multisampling (path для АА).
- rejoystick (манипуляции с эмулированием джойстика).
- Две версии Blender3D 2.49b (релиз и SVN).
- Easy BGE.pdf (Основы работы с BGE).

***

Easy BGE.pdf (Основы работы с BGE) созданы на основе работ сайта
http://younglinux.info/bge.

Зеркало отдельного архива с макетом и PDF...

http://armanenshaft.narod.ru/download/blender/Easy_BGE.tar.bz2

23 ноября 2011

Doom 3 открыты под лицензией GPLv3

Корпорация Zenimax, которой сейчас принадлежит компания id Software,
открыла под лицензией GPL исходные тексты наработок, связанных с игрой
Doom 3, включая игровой движок id Tech 4. Кроме игры Doom 3, выпущенной
в 2004 году, на базе движка id Tech 4 построены и более современные
игры, такие как Quake 4, Prey и Enemy Territory: Quake Wars. Ресурсы
игры (карты, текстуры, звуки и т.д.) по-прежнему являются
интеллектуальной собственностью компании Zenimax и распространяются по
отдельному соглашению EULA.

К сожалению из-за наличия подлежащей лицензированию технологии
формирования теней, запатентованной компанией Creative Labs,
представленный код не включает в себя реализацию метода "depth fail" для
предварительного рендеринга теней. Данная функциональность известна под
именем "Carmack's Reverse". По мнению Джона Кармака (John Carmack),
одного из основателей компании id Software и ведущего разработчика игр
Wolfenstein 3D, Doom и Quake, для обхода патента требуется добавить 4
строки и изменить две строки кода.

В отличие от прошлых игровых движков, по инициативе юристов компании
Zenimax, код был открыт не под лицензией GPLv2, а под GPLv3. При этом
текст лицензионного соглашения GPLv3 был немного изменён. Изменения были
внесены в 15 раздел "Отказ от гарантий" и в 16 раздел "Ограничение
ответственности". Было добавлено упоминание о непредоставлении лицензии
на использование торговых марок и логотипов, и упоминание что при
создании производных проектов на основе представленного кода вся
ответственность перекладывается на разработчика производного продукта,
который будет в суде отвечать на возможные иски от своего имени и не
сможет переложить ответственность на компанию Zenimax.

Открытие Doom 3 продолжило сложившуюся ранее традицию, по которой
компания id Software открывает под лицензией GPL код своих устаревших
игровых движков, с момента выпуска которых прошло 5 лет. Например, в
прошлом году был открыт код игры "Wolfenstein: Enemy Territory and
Return To Castle Wolfenstein" и связанного с ней движка id Tech 3
(Quake3). В настоящий момент открытыми являются движки игр Wolfenstein
3D, Doom, Quake, Quake 2 и Quake 3, что дает возможность энтузиастам
создавать на их базе новые свободные игры. О планах по открытию движка
id Tech 5, на основе которого построены игры Rage и Doom 4, пока ничего
не известно.

***

ftp://ftp.idsoftware.com/idstuff/source/idtech4-doom3-source-GPL.zip

21 ноября 2011

Окклюдер / Заметки

Как известно, на производительность приложения влияет количество
полигонов, которые попадают в область видимости камеры. Причем, не
важно, видно их, или они скрыты другими полигонами, так как движку очень
сложно определить будет ли виден конкретный полигон из какого-то
конкретного расположения камеры. Однако, в некоторых случаях, можно ему
помочь и объяснить, что вот "те" полигоны отсюда уж точно не видно. Для
этих целей создан специальный класс – Occluder, если сказать по-русски,
то получится что-то вроде "блокировщика". Он не виден и занимается
"выкидыванием" из списка отрисовки полигонов, которые находятся за ним
относительно камеры. Его форма строится на основе некоторой геометрии,
передаваемой в метод createForm().

В настоящий момент для его работы необходимо выполнить несколько условий:
Геометрия окклюдера должна быть строго замкнутой
Окклюдер работает только внутри KDContainer, и отсекает только геометрию
из дерева этого контейнера

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

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

***

http://wiki.alternativaplatform.com/%D0%9E%D0%BA%D0%BA%D0%BB%D1%8E%D0%B4%D0%B5%D1%80

***

Окклюдер в Blender3D...

"Окклюдер" следует использовать только на сетевых объектах. Что касается физики, то оно эквивалентно "Нет столкновения".

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

Окклюдер могут быть невидимыми объекты, расположенные внутри более сложных объектов (например: «в стенах» здания со сложной архитектурой). Окклюдеров может иметь "дыры", через который вы будете видеть объекты.

***

obj.occlusion = True
obj.setOcclusion(True, False) #param1=occlusion, param2=recurse in children

***

http://wiki.blender.org/index.php/Doc:2.4/Manual/Game_Engine/Physics/Object_Type/Occluder

SWA / Материя / Общие Понятия

Ранее дополнительные нововведения по геймплею относились к дополнительным тактическим свойствам сектора...
Например развитие так называемых аномалий.
К примеру... http://armanenshaft-blender3d.blogspot.com/2011/11/swa-eye-soul-lvl-add.html

***

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



***

Выдержка пример из переработки Мануала...

Материя (Общие Понятия)

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



Сектор Eye of the Soul...

Содержит материю -Sunny Step-

Материя расположены по 4-ём сторонам сектора / Урон возможен только от вспышек (край аномалии).
Основная тактика движения вашего корабля через центр скопления материи.

В периметре Станций находится Большая Солнечная Материя которая взаимодействует только с кораблём игрока.
Задача материи притягивать корабль и сбить курс. На ботов не распространяется.
Дополнительно можно услышать характерный звук (гул).

Большая Солнечная Материя взаимодействует (активируется) только при визуальном обзоре пилота.


Сектор Mother Ship...

Содержит материю -Plexus of Motion-

В Секторе присутствуют материя которая наносят 100% урон кораблю игрока + визуально усложняют управление кораблём / скорость корабля игрока падает до полной остановки.
Боты атакуют схожими материями / 100% урон / атаки ботов эффективны только с близкого расстояния.


Сектор StarGate...

Содержит материю -Null Space-

- Сектор имеет два коридора материи, которые задают другие пространственные координаты корабля игрока. Обратите внимание, что вражеские корабли (Боты) также успешно используют их. Сектор имеет два входа координат и один выход. Более успешно используется с сочетанием Сенсора (буя корабля).


17 ноября 2011

SWA / Story / Paladi.pdf

Первая редакция описания расы Палади...

- Орбитальные характеристики.
- Параметры планеты.
- Формы жизни на  Rekonar.
- Раса Paladi.
- Добавлена ссылка для links.inf

***

http://sourceforge.net/projects/silverweb/files/Story/Paladi.pdf/download


16 ноября 2011

SWA / GIT update 2011-11-16

Version - SWA_1.4.1


- A_map.blend
- Briefing_1.blend
- Briefing_2.blend
- Briefing_3.blend
- Eye_Soul_1.blend
- Menu.blend
- Mothership_2.blend
- Star_Gate_3.blend

***

- (1/2/3) Коррективы скрипта для группы Шотов (переменная).
- (1/2/3) Добавлена озвучка фокусировки боевого HUD.
- (Menu) Добавлена озвучка Куба в меню 3D.
- (brif) Смена текстуры иконки голоса брифингов.
- (1/2/3) Смена поведения корабля игрока при столкновении (IPO) с
астероидами.
- (1/2/3) Оптимизация физики корабля игрока.
- (3) Доработки физики Врат+частей Врат.
- (Menu) Правка UV текстуры Большой Звезды.
- (1/2/3) Доработки IPO боевого прицела / Звук фиксации навиг. прицела.
- (1/2/3) Доработки мапинга выхлопа двигателей корабля игрока.
- (1/2/3) Доработки боевого прицела / фиксатор-сфера сектора.
- (Map) Коррекция текстур с альфа каналом / bc3-dxt5.
- (Map) Фиксация сцены Лого Палади / esc.
- (1/2/3) Коррекция текстур с альфа каналом / bc3-dxt5 / logo paladi.
- (Art) Добавлена ссылка на арт в links.inf.
- (3) Фиксация Целей (Маркировка) / разработка.
- (Edit) Добавлена в папку Doc сборка Blender3D_2.49b_SVN_41638.
- (make) Переход разработки на Blender3D_2.49b_SVN_41638.
- (bin) Пересборка бинарников под SVN_41638.
- (3) Фиксация Целей (Маркировка) базовые наработки / логики клавиши /
цвет / IPO синхр. с HUDs / вращение.
- (bin) Основной бинарник (32) из версии beta-1.2.
- (3) Фиксация Целей (Маркировка) базовые наработки / смена текстуры /
nodes / коррект визибла / IPO синхр. с HUDs выкл.
- (Man) Добполнен мануал по Фиксация Целей (Маркировка).
- (1/2) Фиксация Целей (Маркировка) базовые наработки / смена текстуры /
nodes / коррект визибла / IPO синхр. с HUDs выкл.
- (2) Фиксация Целей (Маркировка) базовые наработки / nodes / коррект цвета.
- (3) Фиксация Целей (Маркировка) базовые наработки / nodes / коррект цвета.
- (1/2/3) Коррекция врат старта/финиша уровня согласно начала стартовой
позиции.
- (1) Добавлен вызов поддержки Lunar (после уничт. 3-х вызов только 1-го).
- (1) Добавлена базовая версия SunW.
- (Man) Добавлено описание / Аномалий в lvl-1.
- (Video) Перекодировка формата .ogg для видео Logo.ogg.
- (1) Добавлена базовая версия SunW / большая аномалия / затягивает
корабль игрока / логика звук текстура.
- (Man) Добавлено описание / Большой Аномалий в lvl-1.
- (1) Доработка модели большой аномалии / ноды.

***

git://silverweb.git.sourceforge.net/gitroot/silverweb/silverweb

15 ноября 2011

SWA / Eye Soul lvl / Add

Доработка первого игрового сектора...

- Баланс для тактики.
- Баланс для антитактики.

***

Дополнительно есть возможность завлечь противника в Солнечные Аномалии /
Урон игроку стандартен 5 ед. / Урон вражеским кораблям равен 2 ед.
Дополнительно можно услышать характерный звук (гул только для ботов).

Аномалии расположены по 4-ём сторонам сектора / Урон возможен только от
вспышек (край аномалии).
Основная тактика движения вашего корабля через центр аномалии.

В периметре Станций находится Большая Солнечная Аномалия которая
взаимодействует только с кораблём игрока.
Задача аномалии притягивать корабль и сбить курс. На ботов не
распространяется.
Дополнительно можно услышать характерный звук (гул).

Большая Солнечная Аномалия взаимодействует (активируется) только при
визуальном обзоре пилота.

12 ноября 2011

Обмен цветами между GIMP, Inkscape и Gpick

В обзоре Gpick упоминается, что цвета с его виджетов можно легко
перебрасывать в Inkscape или GIMP. Но вот информация, что цветами можно
свободное перебрасывать между этими тремя приложениями, как-то затерялась.

Так что вот вам небольшой видеоролик, показывающий как это работает для
палитр, объектов, выделений GIMP, а также объектов и опорных точек
градиентов в Inkscape.

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

***

http://vimeo.com/31490276

GIMP plug-in Toy для имитации тильт-шифта

Рюдигер Шнайдер выпустил первую публичную версию расширения Toy, которое
упрощает имитацию тильт-шифта, обычно сводящуюся к созданию эффекта
игрушечности объектов на снимке.

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

Модуль упрощает самую важную часть процесса: определение зоны резко
изображаемого пространства. Для этого в области предпросмотра есть
отрезок с двумя ручками. Зелёная ручка указывает на точку, через которую
перпендикулярно отрезку проходит зона максимальной резкости. Красная
ручка указывает точку, в которой нерезкость переходит в максимальную.

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


***

http://gimp.ru/news.php?readmore=173

11 ноября 2011

SWA / Фиксация Целей (Маркировка) / Основная База

Бозовая версия Фиксации Целей (Маркировка).

- Смена текстуры.
- Доработка Нодов фиксации цвета.
- Корректив визибла+рассчёт до цели.

***

Фиксация Целей (Маркировка)

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

Маркеры исчезают на определённой дистанции и активируется при удалении
от цели.
Для полной динамики используется дальний тактический обзор сектора (F3).
При обновлении целей сектора произвести Re-Маркировку.
Дополнительно рекомендуется визуально,согласно визиблу маркеров
вычислять расстояние до цели.

SWA / GIT update 2011-10-27

Version - SWA_1.4.0

- Eye_Soul_1.blend
- Menu.blend
- Mothership_2.blend
- Star_Gate_3.blend

***

- (1/2/3) Коррективы скрипта для группы Шотов (переменная).
- (1/2/3) Добавлена озвучка фокусировки боевого HUD.
- (Menu) Добавлена озвучка Куба в меню 3D.


git://silverweb.git.sourceforge.net/gitroot/silverweb/silverweb

10 ноября 2011

ParaView 3.12.0

araView — это открытая программа для параллельной интерактивной научной
визуализации, имеет клиент-серверную архитектуру для облегчения
удалённой визуализации баз данных и генерирования моделей уровней
детализации (level of detail — LOD). Стоит отметить, что данная
программа основана на библиотеке VTK (Visualization Toolkit), которая
предоставляет визуализационные сервисы для различных видов параллельной
обработки данных, поэтому ParaView может быть запущена на кластерах и
компьютерах с общей или распределённой памятью. ParaView разрабатывается
Kitware Inc. и Лос-Аламосской национальной лабораторией и
распространяется под лицензией BSD.

Изменения по сравнению с предыдущей стабильной версией:

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

***

http://paraview.org/paraview/resources/software.html

08 ноября 2011

Spring 0.83

Главные изменения:

добавлена поддержка библиотеки ASSIMP, предназначенной для импорта и
постобработки данных в различных форматах трёхмерной графики (еще не всё
готово, но работа в этом направлении ведется);
поддержка EFX/EAX;

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

это первый релиз, содержащий версию для Mac OS X, и хотя lobby-клиент
под Mac OS X отсутствует, можно воспользоваться тестовым weblobby;
добавлена поддержка dynamic lighting для моделей и карт, через Lua
скрипты (демонстрация).
Spring RTS — это свободный игровой движок, в основном предназначенный
для стратегий. Изначальной задачей проекта была реинкарнация
оригинального RTS Total Annihilation, однако в процессе разработки было
решено сделать игровой движок с поддержкой модов. На данный момент их
огромное количество. Игра заточена под мультиплеер через интернет или
локальную сеть.

***

http://springrts.com/

Suicidator City Engine 0.5

City-builder add-on Suicidator has been updated for Blender 2.6. While a
free version is still available, you'll have to pay for more complex
city models.

From their website:

- Automatic building generator
- Automatic street generator
- Automatic building texture generator
- Terrain elevation control
- Optimized and fast

***

http://arnaud.ile.nc/sce/

07 ноября 2011

Blender 2.63 Подробнее

BMesh - новая система построения сетки, которая снимает ограничение в 3
или 4 вершины на 1 полигон и позволяет создавать N-сторонние полигоны. В
частности появился инструмент Dissolve, который позволяет удалять
вершины, рёбра и грани без образования отверстий в меше; новый
инструмент Inset; сильно улучшенный инструмент Knife, который использует
достоинство N-гонов для генерации чистых разрезов. Инструменты Subdivide
и Loop Cut также образуют чистую топологию;
Рендер-движок Cycles. Добавлена панорамная камера, проход теней (shadow
render pass), Ambient Occlusion, некоторые другие улучшения;
Небольшие улучшения в Motion Tracking;
Скрытие в режиме скульптуры. Для увеличения производительности и
улучшения доступа в труднодоступные места в режиме скульптуры теперь
можно спрятать часть сетки;
Некоторые новые возможности, например, вывод нодов композиции в
несколько файлов одновременно или в многослойный EXR-файл, поддержка
drag'n'drop из других приложений в Linux, различные исправления ошибок.

***

http://www.blender.org/download/get-blender/

06 ноября 2011

Web ресурсы по 3D / Заметки

Texturas, imagens e HDRIS

Got3d – www.free-textures.got3d.com
TextureKing – www.textureking.com
JHT's Planetary Pixel Imporium (planetas) –
planetpixelemporium.com/planets.html
Michal Kotek – www.michalkotek.com/download.html
Lugher Texture – www.lughertexture.com
Texturama – www.texturama.com/main.php
Lynnart – www.lynnart.net
3d.sk (All the Human Photo References and Textures 3D Artist Wants) –
www.3d.sk/site/index
Suurland – www.suurland.com
RGBStock - www.rgbstock.com
Character Designs (também disponibiliza texturas) – www.characterdesigns.com
Imageafter – www.imageafter.com
3D-Rekonstruktionen – www.3d-rekonstruktionen.de
Free 3ds Textures – www.free3dstextures.com
ArchiveTextures – archivetextures.net
YourDailyTexture – www.yourdailytexture.com
Aversis – www.aversis.be/textures
AccStudio (também possui HDRI) – www.accustudio.com
TextureZ – texturez.com
Ben Cloward – www.bencloward.com/resources_textures.shtml
Free Texture Site – www.dougturner.net/blendersite
3D
Valley – www.3dvalley.com/free-textures
Arroway – www.arroway-textures.com
Texture Love – texturelove.com/textures
Cinema4D
User – www.cinema4duser.com
The Texture Barn – texturebarn.headfirstdm.com

***

Imagens HDRI

Aversis – www.aversis.be/hdri
ICT Graphics Lab – www.gl.ict.usc.edu/Data/HighResProbes
Paul Debevec – www.ict.debevec.org/~debevec/Probes
HDRMill – www.hdrmill.com/Freebies.htm
Evermotion – www.evermotion.org
YBOO Multimedia – www.yboo.net/hdri
LightWorks – www.my-aspects.com
Unparent – www.unparent.com
Orkron Studios – www.orkron.com/category/freebies/hdri

Modelos .blend

Resources blogscopia – resources.blogscopia.com
Kator Legaz – www.katorlegaz.com/3d_models
Official Blender Model Repository –
www.e2-productions.com/repository/index.php

Materiais

Blender Open Material Reposiotry – www.matrep.parastudios.de
Sweblend Material Library vol.1 – www.swemat01.sweblend.se

Imagens

Free digital photos – www.freedigitalphotos.net
Getty Images – www.gettyimages.com
FreePhotosBank – www.freephotosbank.com
stock.xchng – www.sxc.hu
everystockphoto – www.everystockphoto.com
5000 Free Stock Photos – www.public-domain-photos.com

Inspiração em Computação Gráfica

CGChannel – www.forums.cgchannel.com/
IT'S ART Magazine – www.itsartmag.com/index.html
CGSociety – www.forums.cgsociety.org/
3DM3
www.3dm3.com/forum/f7/
CGbrainchild – www.cgbrainchild.com

Blueprints

Car Blueprints – www.carblueprints.narod.ru
David Guerra – www.davegh.com

04 ноября 2011

SWA / Фиксация Целей (Маркировка)

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



***

Фиксация Целей (Маркировка)

Фиксацию целей можно произвести нажав клавишу Т.
При нажатии произойдёт звуковое оповещение для игрока.
Маркировка целей единообразна,только корабли противника.
Исключая главные цели и второстепенные.
Маркеры исчезают на определённой дистанции и активируется при удалении от цели.
Для полной динамики используется дальний тактический обзор сектора (F3).

03 ноября 2011

SWA / Add Art / Beta-1.4

Давненько не было Арта по проекту SWA...
Дополнительно прошла обкатка движка Blender3D 2.60.
Арт создан с основного фона карты проекта.

***

- Debian 6.0.2 squeeze
- Make Blender3D 2.49b
- Render Blender3D 2.60
- GIMP 2.6.11 (GMIC)

***

Полный формат... (.tiff-5mb).

http://sourceforge.net/projects/silverweb/files/Art/SWA_1.4.tif/download

Книга «Основы Blender 2.60» / Заметки

Книга описывает все основные методики и инструменты по моделированию,
анимации, текстурированию и созданию игр в Blender. Составленная как
учебный курс с делением материала на теорию и практику по каждой теме,
книга отлично подойдёт для проведения занятий и курсов по компьютерной и
3D-Графике в любом учебном заведении (начиная со школы).

На данный момент «Основы Blender 4-е издание» — это первая и
единственная книга по Blender 2.6 на русском языке.

Выход PDF-версии для печати планируется к новому году.

***

http://b3d.mezon.ru/index.php/Blender_Basics_4-rd_edition

02 ноября 2011

SWA / Маркеры-навигаторы / Боевой Прицел

Ввиду развития динамики Маркеров-Навигации (прицелов) был добавлен
дополнительный фиксатор.

- Сфера сектора в вертекальном разрезе.
- Соотношение позиций корабля игрока.
- Дубль реализации скрипта setOrientation(GameLogic.ori).
- Фиксатор выражен минимально для усложнения.
- Соблюдение баланса между всеми Маркерами.
- Основная задача фиксатора снизить необходимость преключения на
Маркер-Навигации.

***

Возможны дальнейшие дополнения.

31 октября 2011

OpenSim - открытый проект по моделированию движения человека

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

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

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

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

***

http://opensim.stanford.edu/

https://simtk.org/project/xml/downloads.xml?group_id=91

http://www.youtube.com/watch?v=ME0VHfCtIM0

28 октября 2011

Ведётся работа над поддержкой Alembic в Blender

Эстебан Товальяри недавно приятно удивил общественность тем, что начал
работать над экспортировщиком в Alembic для Blender.

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

Проект был начат в прошлом году Sony Pictures Imageworks и Industrial
Light & Magic, быстро получив одобрение и поддержку таких лидеров
индустрии как Autodesk, The Foundry, Luxology и Side Effects Software.

***

Несколько месяцев назад во время SIGGRAPH была выпущена первая
стабильная версия фреймворка (видеозапись выше сделана именно там), а на
следующий же день состоялась неформальная встреча разработчиков
OpenColorIO, Ptex, OpenImageIO, OpenEXR и Blender.

Эстебана не было на этой встрече, что нисколько не помешало ему взяться
за проект и добиться определённого успеха. Готовую пропатченную сборку
Blender для 64-разрядных систем Linux можно скачать на Graphicall, а
исходный код временно доступен на Github (ветка "alembic"), но скоро
будет заменён на обычный патч.

Разработчик любезно согласился ответить на несколько вопросов.

Эстебан, судя по недавним проектам, ты серьёзно заинтересовался вопросом
совместимости между софтом, взявшись сначала за Cortex, а теперь ещё и
за Alembic. У тебя есть на это какие-то особые причины?

Да, Cortex, Alembic и прочие разработки такого рода мне попросту
интересны. Они уже поддерживаются в других инструментах, которые я
использую, но мне захотелось поработать с ними в Blender, а заодно —
получше их изучить.

http://linuxgraphics.ru/news.php?readmore=1896

25 октября 2011

В Blender3D появился ввод юникодных символов

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

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

***

Новшество пока не работает с арабской и прочими письменностями, где
направление письма — справа налево. К счастью, об этом уже думают.
Поддержки функций OpenType вроде лигатур и концевых форм пока тоже нет.

Предположительно, это нововведение войдёт в состав версии 2.61,
запланированной на декабрь этого года. Так или иначе, спасибо Кэмпбеллу!

***

http://vimeo.com/31045116

24 октября 2011

Blender 2.60a update

Оперативный update недавней версии...

***

Фиксы...

3D window: Armature-bones with wire draw type were not displaying in
solid view mode - r41113
3D window header: After collapsing the pull-down menus, no icon
available to make them show again. - r41117

Dopesheet: Fixed crash when moving keys in editor - r41128
Audio export: 7.1 export was being miscalculated - r41132

Game Engine: Action actuator breaks animation. IPO options can be set
too frequently - r41134
3D Window: missing updates when changing smoke flow settings - r41151

Node editor: missing updates when assigning/removing Materials on
Objects - r41152
Adding a new pose to the Pose Library crashed - r41175
Fix for un-handled exception in audio library - r41203

Incorrect keying set names 'Scale' vs 'Scaling', where 'Scale' was hard
coded in auto keyframe when 'Only Insert Needed' - r41211

Python: RNA/API, getting Event.ascii would crash - r41214
Addons / Exporter: Quake MAP export gives an error for UV textured
geometry - r2504

22 октября 2011

Декомпиляция Java / На примере кода проекта l2jserver

От себя...

По разным причинам состояние l2jserver имеет разный ход в миру.
К примеру целенаправленная продажа проекта,разделяя его функциональность
на публичный сборки и коммерческие,в лице пары балбесов из Сан-Петербурга.
Де компиляция прежде всего порой необходима для личных нужд.
К примеру убрать копирайтеры так называемых создателей и копипастеров.
А также при необходимости работа над классами ядра и его дополнение.

***

Опираться будем на Linux софт...
Работаем с программой java decompiler free.

http://java.decompiler.free.fr/

JD-Core and JD-GUI are written in C++. This allows an extremely fast
decompilation and a display.
JD-Core does not require the Java runtime environment for its
functioning, therefore no special setup is required.

JD-Core works with most current compilers including the following:

jdk1.1.8
jdk1.3.1
jdk1.4.2
jdk1.5.0
jdk1.6.0
jdk1.7.0

jikes-1.22
harmony-jdk-r533500
Eclipse Java Compiler v_677_R32x, 3.2.1 release
jrockit90_150_06
JD-Core supports the following new features of Java 5:
Annotations
Generics
Type "enum"

JD-GUI supports Drag and Drop.
JD-GUI supports JAR files.
JD-GUI displays color coded Java source code.
JD-GUI allows you to browse the "class" files hierarchy.
JD-GUI displays "log" files, and allow you to decompile "class" files
appearing in Java stack traces.
JD-Core, JD-GUI and JD-Eclipse use the excellent cross-platform
wxWidgets toolkit.

***

- Открываем jar архив с нужным нам классом.
- Декомпилируем нужный нам класс в исходные коды (java).
- Собираем обратно используя классы ядра.

Простой пример...

$ javac -classpath l2jserver.jar -Xlint:unchecked Имя__класса.java

***

Заметка не обсуждает дополнительные принципы de или com Java а лишь
затрагивает цель просмотра внутреннего кода и знакомства с ним.

***

На зубок и к пиву...

http://www.wasm.ru/print.php?article=1009005

19 октября 2011

Blender 2.60 Released!

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

Самое главное:

добавлен трёхмерный звук и анимируемые громкоговорители (GSoC2011);
восстановлено прокси-редактирование в видеосеквенсере;
улучшена система анимации (GSoC2011);
улучшена поддержка COLLADA (GSoC2011);
добавлены модификаторы групп вершин;
реализована поддержка recast & detour для поиска оптимального пути в
игровом движке (GSoC2010);
пользовательский интерфейс снова локализуем, ведётся работа над русской
локализацией
Более подробная информация изложена в официальном анонсе.

***

I don't want to hear more about #b3d release cycles, I want to hear
about a Cycles release. mike_pan@twitter

Именно так :) Новый движок рендеринга Cycles запланирован на версию
2.61, выпуск которой ожидается в декабре этого года. Там же появится
motion/camera tracking.

http://www.blender.org/development/release-logs/blender-260/

18 октября 2011

Николас Бишоп рассказал о своей реализации динамической топологии в Blender

Николас Бишоп наконец-то написал в блоге про свой новый проект, которым
он занимается с лета — динамическая топология в Blender.

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

Функция основана на научной работе "Freestyle: Sculpting meshes with
self-adaptive topology" (не путать с Freestyle из BGE), отправленной в
этом году на SIGGRAPH.

***

Код никак не зависит ни от схожего проекта Farsthary по названием
"Unlimited clay", ни от BMesh самого Николаса. Пока что исходники
выкладываются на Gitorious. Возможно, скоро появятся сборки на
Graphicall. Все подробности расписаны в блоге разработчиков.

http://linuxgraphics.ru/news.php?readmore=1888

L2jserver / Multisell / Примеры работы

За основу взят проект http://www.l2jserver.com/
Примеры игровых событий (установки событий).
Соблюдайте форматирование кода для работоспособности.

Дополнительная информация http://www.l2jserver.com/wiki/Multisell

***

Посуте реализация Multisell проста и встроенна в ядро l2jserver.
Имеет ряд недоработок и багов но очень проста в работе.
Основная задача Multisell быстрая работа с ивентами и контроль обмена.

***

Работаем с папкой /gameserver/multisell/

Example:

<?xml version='1.0' encoding='utf-8'?>
<list applyTaxes="true" maintainEnchantment="true">
</list>


Разрешаем Taxes,Разрешаем Enchantment...

applyTaxes="true"
maintainEnchantment="true"


Описываем итемы и условия...

<list>
<item id="no#">
  <ingredient id="ingredientitemID#">
  <production id="productionitemID#">
 </item>

Где...

- ingredient id
- production id

Проверка условий обмена и эвента.

Пример с enchant...

<item id="1">
<ingredient id="352" enchant="0">
<production id="352" enchant="15">
</item>

***

Example 1:

 <item id="1">
 <ingredient id="57" count="1000" />
 <production id="22" count="1" />
 </item>

No taxes are applied even if applyTaxes="true".

Example 2:

 <item id="1">
 <ingredient id="57" count="1200" isTaxIngredient="true" />
 <production id="22" count="1" />
 </item>

Amount of adena is increased by taxes, resulting price=1320 adena (1200*1.1).

Example 3:

 <item id="1">
 <ingredient id="6673" count="1200" isTaxIngredient="true" />
 <production id="22" count="1" />
 </item>


• item id= - это номер нашего предмета в списке. Каждый предмет, должен иметь свой id.
• ingredient – это то, что мы требуем взамен нашему предмету.
• production – это то, что мы получаем взамен ingredient.
• id – предмет который мы продаем и который мы требуем.
• count – количество предметов которые мы получаем или отдаем.

***

Работа происходит с заданным NPC (например 2020),
Ссылка на файл...

<a action="bypass -h npc_%objectId%_multisell list_id">Insert name here</a>
<a action="bypass -h npc_%objectId%_multisell 5000">Insert name here</a>

Пример...

Файл 2020.htm...

<html><body>Test<br>
Приветствую тебя странник!<br>
У меня есть для тебя дивные товары, которые я продаю по очень низким ценам. Благодаря этому, меня знают как лучшего продавца во всей округе.<br>
Чего желаешь купить?</body></html>

<br><a action="bypass -h npc_%objectId%_multisell 5000">Явства</a>

Java+Python / Игровые События / 3

За основу взят проект http://www.l2jserver.com/
Примеры игровых событий (установки событий+доработки кода).
Дальнейшее развитие кода и доработки...
Соблюдайте форматирование кода для работоспособности.

***

От себя...

В русско-украинском сегменте проект l2jserver сильно испохаблен сайтами
однодневками либо
полукровными малалетними пидорами якобы которые создают проект для
продажи.
При работе с проектами l2jserver рекомендуется обратиться на страницу
проекта.
Сам проект имеет статус Open Source.

***

Квестовые скрипты Jython-а по существу наследуются из классов Java
net.sf.l2j.gameserver.model.quest.Quest. Разработчики, свободно
владеющие языком Java могут посмотреть исходники этого класса, которые
размещены на сайте www.l2jserver.com проекта l2jserver, для более
детального изучения функций. Кроме того, кое-что вы сможете прочитать в
этой документации.

***

Классы...

import sys
from net.sf.l2j.gameserver.model.actor.instance import L2PcInstance
from java.util import Iterator
from net.sf.l2j.gameserver.datatables import SkillTable
from net.sf.l2j import L2DatabaseFactory
from net.sf.l2j.gameserver.model.quest import State
from net.sf.l2j.gameserver.model.quest import QuestState
from net.sf.l2j.gameserver.model.quest.jython import QuestJython as JQuest

Основа по работе с таблицами SkillTable (sql) в этом примере важна.

***

Переменные...


#Включение\выключение разделов. Для выключения замените ON на OFF

attack = "ON"


NPC = [40001]
prise_ID = 5575
QuestId = 912
QuestName = "buffer"
QuestDesc = "custom"
InitialHtml = "buff.htm"

#Выставление цен на события

min_level = 20
max_level = 90
min_prise = 6000
buff_prise = 2500

***

Затем мы объявляем непосредственно сам класс quest. Quest – класс
python, который расширяет java класс
net.sf.l2j.gameserver.model.quest.jython.QuestJyth on. Затем мы
объявляем метод onEvent, который вызывается Явой.

class Quest (JQuest) :

def __init__(self,id,name,descr): JQuest.__init__(self,id,name,descr)


def onEvent(self,event,st):
htmltext = event
count=st.getQuestItemsCount(prise_ID)
if count < min_prise :
htmltext = "<html><head><body>No Many AA!.</body></html>"
if st.getPlayer().getLevel() < min_level :
htmltext = "<html><head><body>Need LvL-20!.</body></html>"
if st.getPlayer().getLevel() < max_level :
htmltext = "<html><head><body>Big LvL!.</body></html>"

else:
st.takeItems(prise_ID,0)
st.getPlayer().setTarget(st.getPlayer())


Довольно интересно но в 90% случаев описание переменной if count < min_prise
То есть проверка наличия суммы для события (if count < 6000) имеет
недоработки.
Это связано либо с тупым копипастом кода из англоязычных примеров либо
умышленное форсирование кода для малалетних издёвок на фри шарах игровых
серверов.

Пример...

Если максимальная цена события равна 10000 едениц а if count < min_prise
равен минимальной сумме проверки (6000) то достаточно иметь 5999 или 2
еденицы,
скрипт вычтет последние 2 или 5999 как разницу 5999<10000 (2<10000).
Тоесть достаточно иметь для реализации события 1 еденицу.

Дополнительной ошибкой является установка if count < min_prise = 0.
Тоесть if count < 0 или 1. Простым и быстрым фиксом без дитального
описания переменных
можно считать установку if count < min_prise по сумме равной 10000.
Тоесь максимально запрашиваемая сумма в событии. Если игрок её не имеет...

if count < min_prise :
htmltext = "<html><head><body>No Many AA!.</body></html>"


***

Если всё в порядке вести диалог и вычетание суммы prise_ID...
Установка игроку+установить таргет режим положительным на игрока...


else:
st.takeItems(prise_ID,0)
st.getPlayer().setTarget(st.getPlayer())


#Full buff fighter

if event == "124":
st.takeItems(prise_ID,Full_buff_f3_prise)
st.getPlayer().stopAllEffects()
st.getPlayer().sendMessage("Abra-Kadabra-Kerdyk!")
SkillTable.getInstance().getInfo(1068,3).getEffects(st.getPlayer(),st.getPlayer())

st.getPlayer().setCurrentHpMp(st.getPlayer().getMaxHp(),
st.getPlayer().getMaxMp())
st.playSound("ItemSound.quest_finish")
return "buff.htm"
st.setState(COMPLETED)


Обращение из htm... Проверка события.

if event == "124":
st.takeItems(prise_ID,Full_buff_f3_prise)

Произвести остановку всех события для игрока...
Вывести сис сообщение в чат.

st.getPlayer().stopAllEffects()
st.getPlayer().sendMessage("Abra-Kadabra-Kerdyk!")

Установить событие... Дополнить stats игрока.

SkillTable.getInstance().getInfo(1068,3).getEffects(st.getPlayer(),st.getPlayer())
st.getPlayer().setCurrentHpMp(st.getPlayer().getMaxHp(),
st.getPlayer().getMaxMp())

Проиграть сис звук...Возврат к buff.htm...Завершить событие.

st.playSound("ItemSound.quest_finish")
return "buff.htm"
st.setState(COMPLETED)

***

Пример ON-OFF...

if event == "2":
if attack == "ON":
st.takeItems(prise_ID,buff_prise)
SkillTable.getInstance().getInfo(1068,3).getEffects(st.getPlayer(),st.getPlayer())

st.playSound("ItemSound.quest_finish")
return "buff_attack.htm"
st.setState(COMPLETED)

else:
htmltext = "<html><head><body>Этот раздел отключен.</body></html>"

Проверка if attack == "ON" если ОК...

st.takeItems(prise_ID,buff_prise)
SkillTable.getInstance().getInfo(1068,3).getEffects(st.getPlayer(),st.getPlayer())
st.playSound("ItemSound.quest_finish")
return "buff_attack.htm"
st.setState(COMPLETED)

Проверка if attack == "OFF" если NO...

else:
htmltext = "<html><head><body>Этот раздел отключен.</body></html>"

***

Общяя инициализация функций сервером...

if htmltext != event:
st.setState(COMPLETED)
st.exitQuest(1)
return htmltext


def onTalk (self,npc,player):
st = player.getQuestState(qn)
htmltext = "<html><head><body>I have nothing to say to you</body></html>"
st.setState(STARTED)
return InitialHtml

QUEST = Quest(912,qn,"custom")
CREATED = State('Start',QUEST)
STARTED = State('Started',QUEST)
COMPLETED = State('Completed',QUEST)

QUEST.setInitialState(CREATED)

for npcId in NPC:
QUEST.addStartNpc(npcId)
QUEST.addTalkId(npcId)

Сектора Лирики